use crate::models;
#[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
#[derive(derivative::Derivative)]
#[derivative(Default)]
pub struct TransferCriteria {
#[serde(rename = "OverNominalFrequencyHz")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub over_nominal_frequency_hz: Option<f64>,
#[serde(rename = "OverVoltageRMSPercentage")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub over_voltage_rms_percentage: Option<f64>,
#[serde(rename = "TransferSensitivity")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub transfer_sensitivity: Option<models::power_distribution::v1_3_1::TransferSensitivityType>,
#[serde(rename = "UnderNominalFrequencyHz")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub under_nominal_frequency_hz: Option<f64>,
#[serde(rename = "UnderVoltageRMSPercentage")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub under_voltage_rms_percentage: Option<f64>,
}
impl crate::Metadata<'static> for TransferCriteria {
const JSON_SCHEMA: &'static str = "PowerDistribution.v1_3_1.json";
}