use crate::models;
#[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
#[derive(derivative::Derivative)]
#[derivative(Default)]
pub struct SecurityCapabilities {
#[serde(rename = "ConfigurationLockCapable")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub configuration_lock_capable: Option<bool>,
#[serde(rename = "DataLockCapable")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub data_lock_capable: Option<bool>,
#[serde(rename = "MaxPassphraseCount")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub max_passphrase_count: Option<i64>,
#[serde(rename = "PassphraseCapable")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub passphrase_capable: Option<bool>,
#[serde(rename = "PassphraseLockLimit")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub passphrase_lock_limit: Option<i64>,
#[serde(rename = "SecurityStates")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub security_states: Option<Vec<models::memory::v1_17_1::SecurityStates>>,
}
impl crate::Metadata<'static> for SecurityCapabilities {
const JSON_SCHEMA: &'static str = "Memory.v1_17_1.json";
}