use crate::models;
#[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
#[derive(derivative::Derivative)]
#[derivative(Default)]
pub struct LinkConfiguration {
#[serde(rename = "AutoSpeedNegotiationCapable")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub auto_speed_negotiation_capable: Option<bool>,
#[serde(rename = "AutoSpeedNegotiationEnabled")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub auto_speed_negotiation_enabled: Option<bool>,
#[serde(rename = "CapableLinkSpeedGbps")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub capable_link_speed_gbps: Option<Vec<f64>>,
#[serde(rename = "ConfiguredNetworkLinks")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub configured_network_links: Option<Vec<models::port::v1_8_0::ConfiguredNetworkLink>>,
}
impl crate::Metadata<'static> for LinkConfiguration {
const JSON_SCHEMA: &'static str = "Port.v1_8_0.json";
}