use crate::format_string::FormatString;
use serde::Deserialize;
#[derive(Debug, Clone, Deserialize)]
#[serde(rename_all = "camelCase", deny_unknown_fields)]
pub struct HostRequirements {
pub amounts: Option<Vec<AmountRequirement>>,
pub attributes: Option<Vec<AttributeRequirement>>,
}
#[derive(Debug, Clone, Deserialize)]
#[serde(rename_all = "camelCase", deny_unknown_fields)]
pub struct AmountRequirement {
pub name: String,
pub min: Option<FormatString>,
pub max: Option<FormatString>,
}
#[derive(Debug, Clone, Deserialize)]
#[serde(rename_all = "camelCase", deny_unknown_fields)]
pub struct AttributeRequirement {
pub name: String,
pub any_of: Option<Vec<FormatString>>,
pub all_of: Option<Vec<FormatString>>,
}