mcai_models/common/
start_parameter.rs1use super::{Icon, StartParameterType};
2use schemars::JsonSchema;
3use serde::{Deserialize, Serialize};
4
5#[derive(Clone, Debug, Deserialize, JsonSchema, PartialEq, Serialize)]
6#[serde(rename = "start_parameter")]
7pub struct StartParameter {
8 #[serde(default, skip_serializing_if = "Option::is_none")]
10 pub accept: Option<String>,
11 pub id: String,
13 pub label: String,
15 #[serde(flatten)]
17 pub kind: StartParameterType,
18 #[serde(default, skip_serializing_if = "crate::is_false")]
20 pub required: bool,
21 #[serde(default, skip_serializing_if = "Option::is_none")]
23 pub icon: Option<Icon>,
24 #[serde(default, skip_serializing_if = "Option::is_none")]
26 pub step: Option<f32>,
27 #[serde(default, skip_serializing_if = "Option::is_none")]
29 pub work_dir: Option<String>,
30}