use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct LifecycleBlock {
#[serde(default)]
pub states: Vec<LifecycleState>,
#[serde(default)]
pub transitions: Vec<LifecycleTransition>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct LifecycleState {
pub name: String,
#[serde(default)]
pub initial: bool,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct LifecycleTransition {
pub from: String,
pub to: String,
pub event: String,
}