/*
 * API Documentation
 *
 * Source of truth and network automation platform
 *
 * The version of the OpenAPI document: 3.1.0 (3.1)
 *
 * Generated by: https://openapi-generator.tech
 */

///
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum PowerOutletTypeChoices {
    #[serde(rename = "iec-60320-c5")]
    Iec60320C5,
    #[serde(rename = "iec-60320-c7")]
    Iec60320C7,
    #[serde(rename = "iec-60320-c13")]
    Iec60320C13,
    #[serde(rename = "iec-60320-c15")]
    Iec60320C15,
    #[serde(rename = "iec-60320-c19")]
    Iec60320C19,
    #[serde(rename = "iec-60320-c21")]
    Iec60320C21,
    #[serde(rename = "iec-60309-p-n-e-4h")]
    Iec60309PNE4h,
    #[serde(rename = "iec-60309-p-n-e-6h")]
    Iec60309PNE6h,
    #[serde(rename = "iec-60309-p-n-e-9h")]
    Iec60309PNE9h,
    #[serde(rename = "iec-60309-2p-e-4h")]
    Iec603092pE4h,
    #[serde(rename = "iec-60309-2p-e-6h")]
    Iec603092pE6h,
    #[serde(rename = "iec-60309-2p-e-9h")]
    Iec603092pE9h,
    #[serde(rename = "iec-60309-3p-e-4h")]
    Iec603093pE4h,
    #[serde(rename = "iec-60309-3p-e-6h")]
    Iec603093pE6h,
    #[serde(rename = "iec-60309-3p-e-9h")]
    Iec603093pE9h,
    #[serde(rename = "iec-60309-3p-n-e-4h")]
    Iec603093pNE4h,
    #[serde(rename = "iec-60309-3p-n-e-6h")]
    Iec603093pNE6h,
    #[serde(rename = "iec-60309-3p-n-e-9h")]
    Iec603093pNE9h,
    #[serde(rename = "iec-60906-1")]
    Iec609061,
    #[serde(rename = "nbr-14136-10a")]
    Nbr1413610a,
    #[serde(rename = "nbr-14136-20a")]
    Nbr1413620a,
    #[serde(rename = "nema-1-15r")]
    Nema115r,
    #[serde(rename = "nema-5-15r")]
    Nema515r,
    #[serde(rename = "nema-5-20r")]
    Nema520r,
    #[serde(rename = "nema-5-30r")]
    Nema530r,
    #[serde(rename = "nema-5-50r")]
    Nema550r,
    #[serde(rename = "nema-6-15r")]
    Nema615r,
    #[serde(rename = "nema-6-20r")]
    Nema620r,
    #[serde(rename = "nema-6-30r")]
    Nema630r,
    #[serde(rename = "nema-6-50r")]
    Nema650r,
    #[serde(rename = "nema-10-30r")]
    Nema1030r,
    #[serde(rename = "nema-10-50r")]
    Nema1050r,
    #[serde(rename = "nema-14-20r")]
    Nema1420r,
    #[serde(rename = "nema-14-30r")]
    Nema1430r,
    #[serde(rename = "nema-14-50r")]
    Nema1450r,
    #[serde(rename = "nema-14-60r")]
    Nema1460r,
    #[serde(rename = "nema-15-15r")]
    Nema1515r,
    #[serde(rename = "nema-15-20r")]
    Nema1520r,
    #[serde(rename = "nema-15-30r")]
    Nema1530r,
    #[serde(rename = "nema-15-50r")]
    Nema1550r,
    #[serde(rename = "nema-15-60r")]
    Nema1560r,
    #[serde(rename = "nema-l1-15r")]
    NemaL115r,
    #[serde(rename = "nema-l5-15r")]
    NemaL515r,
    #[serde(rename = "nema-l5-20r")]
    NemaL520r,
    #[serde(rename = "nema-l5-30r")]
    NemaL530r,
    #[serde(rename = "nema-l5-50r")]
    NemaL550r,
    #[serde(rename = "nema-l6-15r")]
    NemaL615r,
    #[serde(rename = "nema-l6-20r")]
    NemaL620r,
    #[serde(rename = "nema-l6-30r")]
    NemaL630r,
    #[serde(rename = "nema-l6-50r")]
    NemaL650r,
    #[serde(rename = "nema-l10-30r")]
    NemaL1030r,
    #[serde(rename = "nema-l14-20r")]
    NemaL1420r,
    #[serde(rename = "nema-l14-30r")]
    NemaL1430r,
    #[serde(rename = "nema-l14-50r")]
    NemaL1450r,
    #[serde(rename = "nema-l14-60r")]
    NemaL1460r,
    #[serde(rename = "nema-l15-20r")]
    NemaL1520r,
    #[serde(rename = "nema-l15-30r")]
    NemaL1530r,
    #[serde(rename = "nema-l15-50r")]
    NemaL1550r,
    #[serde(rename = "nema-l15-60r")]
    NemaL1560r,
    #[serde(rename = "nema-l21-20r")]
    NemaL2120r,
    #[serde(rename = "nema-l21-30r")]
    NemaL2130r,
    #[serde(rename = "nema-l22-30r")]
    NemaL2230r,
    #[serde(rename = "CS6360C")]
    Cs6360C,
    #[serde(rename = "CS6364C")]
    Cs6364C,
    #[serde(rename = "CS8164C")]
    Cs8164C,
    #[serde(rename = "CS8264C")]
    Cs8264C,
    #[serde(rename = "CS8364C")]
    Cs8364C,
    #[serde(rename = "CS8464C")]
    Cs8464C,
    #[serde(rename = "ita-e")]
    ItaE,
    #[serde(rename = "ita-f")]
    ItaF,
    #[serde(rename = "ita-g")]
    ItaG,
    #[serde(rename = "ita-h")]
    ItaH,
    #[serde(rename = "ita-i")]
    ItaI,
    #[serde(rename = "ita-j")]
    ItaJ,
    #[serde(rename = "ita-k")]
    ItaK,
    #[serde(rename = "ita-l")]
    ItaL,
    #[serde(rename = "ita-m")]
    ItaM,
    #[serde(rename = "ita-n")]
    ItaN,
    #[serde(rename = "ita-o")]
    ItaO,
    #[serde(rename = "ita-multistandard")]
    ItaMultistandard,
    #[serde(rename = "usb-a")]
    UsbA,
    #[serde(rename = "usb-micro-b")]
    UsbMicroB,
    #[serde(rename = "usb-c")]
    UsbC,
    #[serde(rename = "dc-terminal")]
    DcTerminal,
    #[serde(rename = "hdot-cx")]
    HdotCx,
    #[serde(rename = "saf-d-grid")]
    SafDGrid,
    #[serde(rename = "neutrik-powercon-20a")]
    NeutrikPowercon20a,
    #[serde(rename = "neutrik-powercon-32a")]
    NeutrikPowercon32a,
    #[serde(rename = "neutrik-powercon-true1")]
    NeutrikPowerconTrue1,
    #[serde(rename = "neutrik-powercon-true1-top")]
    NeutrikPowerconTrue1Top,
    #[serde(rename = "ubiquiti-smartpower")]
    UbiquitiSmartpower,
    #[serde(rename = "eaton-c39")]
    EatonC39,
    #[serde(rename = "hardwired")]
    Hardwired,
    #[serde(rename = "other")]
    Other,
}

impl ToString for PowerOutletTypeChoices {
    fn to_string(&self) -> String {
        match self {
            Self::Iec60320C5 => String::from("iec-60320-c5"),
            Self::Iec60320C7 => String::from("iec-60320-c7"),
            Self::Iec60320C13 => String::from("iec-60320-c13"),
            Self::Iec60320C15 => String::from("iec-60320-c15"),
            Self::Iec60320C19 => String::from("iec-60320-c19"),
            Self::Iec60320C21 => String::from("iec-60320-c21"),
            Self::Iec60309PNE4h => String::from("iec-60309-p-n-e-4h"),
            Self::Iec60309PNE6h => String::from("iec-60309-p-n-e-6h"),
            Self::Iec60309PNE9h => String::from("iec-60309-p-n-e-9h"),
            Self::Iec603092pE4h => String::from("iec-60309-2p-e-4h"),
            Self::Iec603092pE6h => String::from("iec-60309-2p-e-6h"),
            Self::Iec603092pE9h => String::from("iec-60309-2p-e-9h"),
            Self::Iec603093pE4h => String::from("iec-60309-3p-e-4h"),
            Self::Iec603093pE6h => String::from("iec-60309-3p-e-6h"),
            Self::Iec603093pE9h => String::from("iec-60309-3p-e-9h"),
            Self::Iec603093pNE4h => String::from("iec-60309-3p-n-e-4h"),
            Self::Iec603093pNE6h => String::from("iec-60309-3p-n-e-6h"),
            Self::Iec603093pNE9h => String::from("iec-60309-3p-n-e-9h"),
            Self::Iec609061 => String::from("iec-60906-1"),
            Self::Nbr1413610a => String::from("nbr-14136-10a"),
            Self::Nbr1413620a => String::from("nbr-14136-20a"),
            Self::Nema115r => String::from("nema-1-15r"),
            Self::Nema515r => String::from("nema-5-15r"),
            Self::Nema520r => String::from("nema-5-20r"),
            Self::Nema530r => String::from("nema-5-30r"),
            Self::Nema550r => String::from("nema-5-50r"),
            Self::Nema615r => String::from("nema-6-15r"),
            Self::Nema620r => String::from("nema-6-20r"),
            Self::Nema630r => String::from("nema-6-30r"),
            Self::Nema650r => String::from("nema-6-50r"),
            Self::Nema1030r => String::from("nema-10-30r"),
            Self::Nema1050r => String::from("nema-10-50r"),
            Self::Nema1420r => String::from("nema-14-20r"),
            Self::Nema1430r => String::from("nema-14-30r"),
            Self::Nema1450r => String::from("nema-14-50r"),
            Self::Nema1460r => String::from("nema-14-60r"),
            Self::Nema1515r => String::from("nema-15-15r"),
            Self::Nema1520r => String::from("nema-15-20r"),
            Self::Nema1530r => String::from("nema-15-30r"),
            Self::Nema1550r => String::from("nema-15-50r"),
            Self::Nema1560r => String::from("nema-15-60r"),
            Self::NemaL115r => String::from("nema-l1-15r"),
            Self::NemaL515r => String::from("nema-l5-15r"),
            Self::NemaL520r => String::from("nema-l5-20r"),
            Self::NemaL530r => String::from("nema-l5-30r"),
            Self::NemaL550r => String::from("nema-l5-50r"),
            Self::NemaL615r => String::from("nema-l6-15r"),
            Self::NemaL620r => String::from("nema-l6-20r"),
            Self::NemaL630r => String::from("nema-l6-30r"),
            Self::NemaL650r => String::from("nema-l6-50r"),
            Self::NemaL1030r => String::from("nema-l10-30r"),
            Self::NemaL1420r => String::from("nema-l14-20r"),
            Self::NemaL1430r => String::from("nema-l14-30r"),
            Self::NemaL1450r => String::from("nema-l14-50r"),
            Self::NemaL1460r => String::from("nema-l14-60r"),
            Self::NemaL1520r => String::from("nema-l15-20r"),
            Self::NemaL1530r => String::from("nema-l15-30r"),
            Self::NemaL1550r => String::from("nema-l15-50r"),
            Self::NemaL1560r => String::from("nema-l15-60r"),
            Self::NemaL2120r => String::from("nema-l21-20r"),
            Self::NemaL2130r => String::from("nema-l21-30r"),
            Self::NemaL2230r => String::from("nema-l22-30r"),
            Self::Cs6360C => String::from("CS6360C"),
            Self::Cs6364C => String::from("CS6364C"),
            Self::Cs8164C => String::from("CS8164C"),
            Self::Cs8264C => String::from("CS8264C"),
            Self::Cs8364C => String::from("CS8364C"),
            Self::Cs8464C => String::from("CS8464C"),
            Self::ItaE => String::from("ita-e"),
            Self::ItaF => String::from("ita-f"),
            Self::ItaG => String::from("ita-g"),
            Self::ItaH => String::from("ita-h"),
            Self::ItaI => String::from("ita-i"),
            Self::ItaJ => String::from("ita-j"),
            Self::ItaK => String::from("ita-k"),
            Self::ItaL => String::from("ita-l"),
            Self::ItaM => String::from("ita-m"),
            Self::ItaN => String::from("ita-n"),
            Self::ItaO => String::from("ita-o"),
            Self::ItaMultistandard => String::from("ita-multistandard"),
            Self::UsbA => String::from("usb-a"),
            Self::UsbMicroB => String::from("usb-micro-b"),
            Self::UsbC => String::from("usb-c"),
            Self::DcTerminal => String::from("dc-terminal"),
            Self::HdotCx => String::from("hdot-cx"),
            Self::SafDGrid => String::from("saf-d-grid"),
            Self::NeutrikPowercon20a => String::from("neutrik-powercon-20a"),
            Self::NeutrikPowercon32a => String::from("neutrik-powercon-32a"),
            Self::NeutrikPowerconTrue1 => String::from("neutrik-powercon-true1"),
            Self::NeutrikPowerconTrue1Top => String::from("neutrik-powercon-true1-top"),
            Self::UbiquitiSmartpower => String::from("ubiquiti-smartpower"),
            Self::EatonC39 => String::from("eaton-c39"),
            Self::Hardwired => String::from("hardwired"),
            Self::Other => String::from("other"),
        }
    }
}

impl Default for PowerOutletTypeChoices {
    fn default() -> PowerOutletTypeChoices {
        Self::Iec60320C5
    }
}
