use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
#[serde(rename_all = "lowercase")]
#[non_exhaustive]
pub enum StepStatus {
Running,
Completed,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct StepProgress {
pub step_index: usize,
pub step_id: String,
pub status: StepStatus,
pub progress_percent: u8,
#[serde(skip_serializing_if = "Option::is_none")]
pub message: Option<String>,
}