Skip to main content

netbox_openapi/models/
bulk_interface_request.rs

1/*
2 * NetBox REST API
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * The version of the OpenAPI document: 4.6.8 (4.6)
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11/// BulkInterfaceRequest : Adds an `owner` field for models which have a ForeignKey to users.Owner.
12
13#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
14pub struct BulkInterfaceRequest {
15    #[serde(rename = "id")]
16    pub id: i32,
17    #[serde(rename = "device")]
18    pub device: Box<crate::models::BriefInterfaceRequestDevice>,
19    #[serde(rename = "vdcs", skip_serializing_if = "Option::is_none")]
20    pub vdcs: Option<Vec<i32>>,
21    #[serde(
22        rename = "module",
23        default,
24        with = "::serde_with::rust::double_option",
25        skip_serializing_if = "Option::is_none"
26    )]
27    pub module: Option<Option<Box<crate::models::BulkConsolePortRequestModule>>>,
28    #[serde(rename = "name")]
29    pub name: String,
30    /// Physical label
31    #[serde(rename = "label", skip_serializing_if = "Option::is_none")]
32    pub label: Option<String>,
33    /// * `virtual` - Virtual * `bridge` - Bridge * `lag` - Link Aggregation Group (LAG) * `100base-fx` - 100BASE-FX (10/100ME) * `100base-lfx` - 100BASE-LFX (10/100ME) * `100base-tx` - 100BASE-TX (10/100ME) * `100base-t1` - 100BASE-T1 (10/100ME) * `1000base-bx10-d` - 1000BASE-BX10-D (1GE BiDi Down) * `1000base-bx10-u` - 1000BASE-BX10-U (1GE BiDi Up) * `1000base-cwdm` - 1000BASE-CWDM (1GE) * `1000base-cx` - 1000BASE-CX (1GE DAC) * `1000base-dwdm` - 1000BASE-DWDM (1GE) * `1000base-ex` - 1000BASE-EX (1GE) * `1000base-lsx` - 1000BASE-LSX (1GE) * `1000base-lx` - 1000BASE-LX (1GE) * `1000base-lx10` - 1000BASE-LX10/LH (1GE) * `1000base-sx` - 1000BASE-SX (1GE) * `1000base-t` - 1000BASE-T (1GE) * `1000base-tx` - 1000BASE-TX (1GE) * `1000base-zx` - 1000BASE-ZX (1GE) * `2.5gbase-t` - 2.5GBASE-T (2.5GE) * `5gbase-t` - 5GBASE-T (5GE) * `10gbase-br-d` - 10GBASE-BR-D (10GE BiDi Down) * `10gbase-br-u` - 10GBASE-BR-U (10GE BiDi Up) * `10gbase-cu` - 10GBASE-CU (10GE DAC Passive Twinax) * `10gbase-cx4` - 10GBASE-CX4 (10GE DAC) * `10gbase-er` - 10GBASE-ER (10GE) * `10gbase-lr` - 10GBASE-LR (10GE) * `10gbase-lrm` - 10GBASE-LRM (10GE) * `10gbase-lx4` - 10GBASE-LX4 (10GE) * `10gbase-sr` - 10GBASE-SR (10GE) * `10gbase-t` - 10GBASE-T (10GE) * `10gbase-zr` - 10GBASE-ZR (10GE) * `25gbase-cr` - 25GBASE-CR (25GE DAC) * `25gbase-er` - 25GBASE-ER (25GE) * `25gbase-lr` - 25GBASE-LR (25GE) * `25gbase-sr` - 25GBASE-SR (25GE) * `25gbase-t` - 25GBASE-T (25GE) * `40gbase-cr4` - 40GBASE-CR4 (40GE DAC) * `40gbase-er4` - 40GBASE-ER4 (40GE) * `40gbase-fr4` - 40GBASE-FR4 (40GE) * `40gbase-lr4` - 40GBASE-LR4 (40GE) * `40gbase-sr4` - 40GBASE-SR4 (40GE) * `40gbase-sr4-bd` - 40GBASE-SR4 (40GE BiDi) * `50gbase-cr` - 50GBASE-CR (50GE DAC) * `50gbase-er` - 50GBASE-ER (50GE) * `50gbase-fr` - 50GBASE-FR (50GE) * `50gbase-lr` - 50GBASE-LR (50GE) * `50gbase-sr` - 50GBASE-SR (50GE) * `100gbase-cr1` - 100GBASE-CR1 (100GE DAC) * `100gbase-cr2` - 100GBASE-CR2 (100GE DAC) * `100gbase-cr4` - 100GBASE-CR4 (100GE DAC) * `100gbase-cr10` - 100GBASE-CR10 (100GE DAC) * `100gbase-cwdm4` - 100GBASE-CWDM4 (100GE) * `100gbase-dr` - 100GBASE-DR (100GE) * `100gbase-er4` - 100GBASE-ER4 (100GE) * `100gbase-fr1` - 100GBASE-FR1 (100GE) * `100gbase-lr1` - 100GBASE-LR1 (100GE) * `100gbase-lr4` - 100GBASE-LR4 (100GE) * `100gbase-sr1` - 100GBASE-SR1 (100GE) * `100gbase-sr1.2` - 100GBASE-SR1.2 (100GE BiDi) * `100gbase-sr2` - 100GBASE-SR2 (100GE) * `100gbase-sr4` - 100GBASE-SR4 (100GE) * `100gbase-sr10` - 100GBASE-SR10 (100GE) * `100gbase-zr` - 100GBASE-ZR (100GE) * `200gbase-cr2` - 200GBASE-CR2 (200GE) * `200gbase-cr4` - 200GBASE-CR4 (200GE) * `200gbase-dr4` - 200GBASE-DR4 (200GE) * `200gbase-er4` - 200GBASE-ER4 (200GE) * `200gbase-fr4` - 200GBASE-FR4 (200GE) * `200gbase-lr4` - 200GBASE-LR4 (200GE) * `200gbase-sr2` - 200GBASE-SR2 (200GE) * `200gbase-sr4` - 200GBASE-SR4 (200GE) * `200gbase-vr2` - 200GBASE-VR2 (200GE) * `400gbase-cr4` - 400GBASE-CR4 (400GE) * `400gbase-dr4` - 400GBASE-DR4 (400GE) * `400gbase-er8` - 400GBASE-ER8 (400GE) * `400gbase-fr4` - 400GBASE-FR4 (400GE) * `400gbase-fr8` - 400GBASE-FR8 (400GE) * `400gbase-lr4` - 400GBASE-LR4 (400GE) * `400gbase-lr8` - 400GBASE-LR8 (400GE) * `400gbase-sr4` - 400GBASE-SR4 (400GE) * `400gbase-sr4_2` - 400GBASE-SR4.2 (400GE BiDi) * `400gbase-sr8` - 400GBASE-SR8 (400GE) * `400gbase-sr16` - 400GBASE-SR16 (400GE) * `400gbase-vr4` - 400GBASE-VR4 (400GE) * `400gbase-zr` - 400GBASE-ZR (400GE) * `800gbase-cr8` - 800GBASE-CR8 (800GE) * `800gbase-dr8` - 800GBASE-DR8 (800GE) * `800gbase-sr8` - 800GBASE-SR8 (800GE) * `800gbase-vr8` - 800GBASE-VR8 (800GE) * `1.6tbase-cr8` - 1.6TBASE-CR8 (1.6TE) * `1.6tbase-dr8` - 1.6TBASE-DR8 (1.6TE) * `1.6tbase-dr8-2` - 1.6TBASE-DR8-2 (1.6TE) * `100base-x-sfp` - SFP (100ME) * `1000base-x-gbic` - GBIC (1GE) * `1000base-x-sfp` - SFP (1GE) * `2.5gbase-x-sfp` - SFP (2.5GE) * `10gbase-x-sfpp` - SFP+ (10GE) * `10gbase-x-xenpak` - XENPAK (10GE) * `10gbase-x-xfp` - XFP (10GE) * `10gbase-x-x2` - X2 (10GE) * `25gbase-x-sfp28` - SFP28 (25GE) * `40gbase-x-qsfpp` - QSFP+ (40GE) * `50gbase-x-sfp28` - QSFP28 (50GE) * `50gbase-x-sfp56` - SFP56 (50GE) * `100gbase-x-cfp` - CFP (100GE) * `100gbase-x-cfp2` - CFP2 (100GE) * `100gbase-x-cfp4` - CFP4 (100GE) * `100gbase-x-cxp` - CXP (100GE) * `100gbase-x-cpak` - Cisco CPAK (100GE) * `100gbase-x-dsfp` - DSFP (100GE) * `100gbase-x-qsfp28` - QSFP28 (100GE) * `100gbase-x-qsfpdd` - QSFP-DD (100GE) * `100gbase-x-sfpdd` - SFP-DD (100GE) * `200gbase-x-cfp2` - CFP2 (200GE) * `200gbase-x-qsfp56` - QSFP56 (200GE) * `200gbase-x-qsfpdd` - QSFP-DD (200GE) * `400gbase-x-qsfp112` - QSFP112 (400GE) * `400gbase-x-qsfpdd` - QSFP-DD (400GE) * `400gbase-x-cdfp` - CDFP (400GE) * `400gbase-x-cfp2` - CFP2 (400GE) * `400gbase-x-cfp8` - CPF8 (400GE) * `400gbase-x-osfp` - OSFP (400GE) * `400gbase-x-osfp-rhs` - OSFP-RHS (400GE) * `800gbase-x-osfp` - OSFP (800GE) * `800gbase-x-qsfpdd` - QSFP-DD (800GE) * `1.6tbase-x-osfp1600` - OSFP1600 (1.6TE) * `1.6tbase-x-osfp1600-rhs` - OSFP1600-RHS (1.6TE) * `1.6tbase-x-qsfpdd1600` - QSFP-DD1600 (1.6TE) * `1000base-kx` - 1000BASE-KX (1GE) * `2.5gbase-kx` - 2.5GBASE-KX (2.5GE) * `5gbase-kr` - 5GBASE-KR (5GE) * `10gbase-kr` - 10GBASE-KR (10GE) * `10gbase-kx4` - 10GBASE-KX4 (10GE) * `25gbase-kr` - 25GBASE-KR (25GE) * `40gbase-kr4` - 40GBASE-KR4 (40GE) * `50gbase-kr` - 50GBASE-KR (50GE) * `100gbase-kp4` - 100GBASE-KP4 (100GE) * `100gbase-kr2` - 100GBASE-KR2 (100GE) * `100gbase-kr4` - 100GBASE-KR4 (100GE) * `1.6tbase-kr8` - 1.6TBASE-KR8 (1.6TE) * `ieee802.11a` - IEEE 802.11a * `ieee802.11g` - IEEE 802.11b/g * `ieee802.11n` - IEEE 802.11n (Wi-Fi 4) * `ieee802.11ac` - IEEE 802.11ac (Wi-Fi 5) * `ieee802.11ad` - IEEE 802.11ad (WiGig) * `ieee802.11ax` - IEEE 802.11ax (Wi-Fi 6) * `ieee802.11ay` - IEEE 802.11ay (WiGig) * `ieee802.11be` - IEEE 802.11be (Wi-Fi 7) * `ieee802.15.1` - IEEE 802.15.1 (Bluetooth) * `ieee802.15.4` - IEEE 802.15.4 (LR-WPAN) * `other-wireless` - Other (Wireless) * `gsm` - GSM * `cdma` - CDMA * `lte` - LTE * `4g` - 4G * `5g` - 5G * `sonet-oc3` - OC-3/STM-1 * `sonet-oc12` - OC-12/STM-4 * `sonet-oc48` - OC-48/STM-16 * `sonet-oc192` - OC-192/STM-64 * `sonet-oc768` - OC-768/STM-256 * `sonet-oc1920` - OC-1920/STM-640 * `sonet-oc3840` - OC-3840/STM-1234 * `1gfc-sfp` - SFP (1GFC) * `2gfc-sfp` - SFP (2GFC) * `4gfc-sfp` - SFP (4GFC) * `8gfc-sfpp` - SFP+ (8GFC) * `16gfc-sfpp` - SFP+ (16GFC) * `32gfc-sfp28` - SFP28 (32GFC) * `32gfc-sfpp` - SFP+ (32GFC) * `64gfc-qsfpp` - QSFP+ (64GFC) * `64gfc-sfpdd` - SFP-DD (64GFC) * `64gfc-sfpp` - SFP+ (64GFC) * `128gfc-qsfp28` - QSFP28 (128GFC) * `infiniband-sdr` - SDR (2 Gbps) * `infiniband-ddr` - DDR (4 Gbps) * `infiniband-qdr` - QDR (8 Gbps) * `infiniband-fdr10` - FDR10 (10 Gbps) * `infiniband-fdr` - FDR (13.5 Gbps) * `infiniband-edr` - EDR (25 Gbps) * `infiniband-hdr` - HDR (50 Gbps) * `infiniband-ndr` - NDR (100 Gbps) * `infiniband-xdr` - XDR (250 Gbps) * `t1` - T1 (1.544 Mbps) * `e1` - E1 (2.048 Mbps) * `t3` - T3 (45 Mbps) * `e3` - E3 (34 Mbps) * `xdsl` - xDSL * `docsis` - DOCSIS * `moca` - MoCA * `bpon` - BPON (622 Mbps / 155 Mbps) * `epon` - EPON (1 Gbps) * `10g-epon` - 10G-EPON (10 Gbps) * `gpon` - GPON (2.5 Gbps / 1.25 Gbps) * `xg-pon` - XG-PON (10 Gbps / 2.5 Gbps) * `xgs-pon` - XGS-PON (10 Gbps) * `ng-pon2` - NG-PON2 (TWDM-PON) (4x10 Gbps) * `25g-pon` - 25G-PON (25 Gbps) * `50g-pon` - 50G-PON (50 Gbps) * `cisco-stackwise` - Cisco StackWise * `cisco-stackwise-plus` - Cisco StackWise Plus * `cisco-flexstack` - Cisco FlexStack * `cisco-flexstack-plus` - Cisco FlexStack Plus * `cisco-stackwise-80` - Cisco StackWise-80 * `cisco-stackwise-160` - Cisco StackWise-160 * `cisco-stackwise-320` - Cisco StackWise-320 * `cisco-stackwise-480` - Cisco StackWise-480 * `cisco-stackwise-1t` - Cisco StackWise-1T * `juniper-vcp` - Juniper VCP * `extreme-summitstack` - Extreme SummitStack * `extreme-summitstack-128` - Extreme SummitStack-128 * `extreme-summitstack-256` - Extreme SummitStack-256 * `extreme-summitstack-512` - Extreme SummitStack-512 * `other` - Other
34    #[serde(rename = "type")]
35    pub r#type: RHashType,
36    #[serde(rename = "enabled", skip_serializing_if = "Option::is_none")]
37    pub enabled: Option<bool>,
38    #[serde(
39        rename = "parent",
40        default,
41        with = "::serde_with::rust::double_option",
42        skip_serializing_if = "Option::is_none"
43    )]
44    pub parent: Option<Option<Box<crate::models::NestedInterfaceRequest>>>,
45    #[serde(
46        rename = "bridge",
47        default,
48        with = "::serde_with::rust::double_option",
49        skip_serializing_if = "Option::is_none"
50    )]
51    pub bridge: Option<Option<Box<crate::models::NestedInterfaceRequest>>>,
52    #[serde(
53        rename = "lag",
54        default,
55        with = "::serde_with::rust::double_option",
56        skip_serializing_if = "Option::is_none"
57    )]
58    pub lag: Option<Option<Box<crate::models::NestedInterfaceRequest>>>,
59    #[serde(
60        rename = "mtu",
61        default,
62        with = "::serde_with::rust::double_option",
63        skip_serializing_if = "Option::is_none"
64    )]
65    pub mtu: Option<Option<i32>>,
66    #[serde(
67        rename = "primary_mac_address",
68        default,
69        with = "::serde_with::rust::double_option",
70        skip_serializing_if = "Option::is_none"
71    )]
72    pub primary_mac_address:
73        Option<Option<Box<crate::models::BulkInterfaceRequestPrimaryMacAddress>>>,
74    #[serde(
75        rename = "speed",
76        default,
77        with = "::serde_with::rust::double_option",
78        skip_serializing_if = "Option::is_none"
79    )]
80    pub speed: Option<Option<i64>>,
81    /// * `half` - Half * `full` - Full * `auto` - Auto
82    #[serde(
83        rename = "duplex",
84        default,
85        with = "::serde_with::rust::double_option",
86        skip_serializing_if = "Option::is_none"
87    )]
88    pub duplex: Option<Option<Duplex>>,
89    #[serde(
90        rename = "wwn",
91        default,
92        with = "::serde_with::rust::double_option",
93        skip_serializing_if = "Option::is_none"
94    )]
95    pub wwn: Option<Option<String>>,
96    /// This interface is used only for out-of-band management
97    #[serde(rename = "mgmt_only", skip_serializing_if = "Option::is_none")]
98    pub mgmt_only: Option<bool>,
99    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
100    pub description: Option<String>,
101    /// * `access` - Access * `tagged` - Tagged * `tagged-all` - Tagged (All) * `q-in-q` - Q-in-Q (802.1ad)
102    #[serde(rename = "mode", skip_serializing_if = "Option::is_none")]
103    pub mode: Option<Mode>,
104    /// * `ap` - Access point * `station` - Station
105    #[serde(rename = "rf_role", skip_serializing_if = "Option::is_none")]
106    pub rf_role: Option<RfRole>,
107    /// * `2.4g-1-2412-22` - 1 (2412 MHz) * `2.4g-2-2417-22` - 2 (2417 MHz) * `2.4g-3-2422-22` - 3 (2422 MHz) * `2.4g-4-2427-22` - 4 (2427 MHz) * `2.4g-5-2432-22` - 5 (2432 MHz) * `2.4g-6-2437-22` - 6 (2437 MHz) * `2.4g-7-2442-22` - 7 (2442 MHz) * `2.4g-8-2447-22` - 8 (2447 MHz) * `2.4g-9-2452-22` - 9 (2452 MHz) * `2.4g-10-2457-22` - 10 (2457 MHz) * `2.4g-11-2462-22` - 11 (2462 MHz) * `2.4g-12-2467-22` - 12 (2467 MHz) * `2.4g-13-2472-22` - 13 (2472 MHz) * `5g-32-5160-20` - 32 (5160/20 MHz) * `5g-34-5170-40` - 34 (5170/40 MHz) * `5g-36-5180-20` - 36 (5180/20 MHz) * `5g-38-5190-40` - 38 (5190/40 MHz) * `5g-40-5200-20` - 40 (5200/20 MHz) * `5g-42-5210-80` - 42 (5210/80 MHz) * `5g-44-5220-20` - 44 (5220/20 MHz) * `5g-46-5230-40` - 46 (5230/40 MHz) * `5g-48-5240-20` - 48 (5240/20 MHz) * `5g-50-5250-160` - 50 (5250/160 MHz) * `5g-52-5260-20` - 52 (5260/20 MHz) * `5g-54-5270-40` - 54 (5270/40 MHz) * `5g-56-5280-20` - 56 (5280/20 MHz) * `5g-58-5290-80` - 58 (5290/80 MHz) * `5g-60-5300-20` - 60 (5300/20 MHz) * `5g-62-5310-40` - 62 (5310/40 MHz) * `5g-64-5320-20` - 64 (5320/20 MHz) * `5g-100-5500-20` - 100 (5500/20 MHz) * `5g-102-5510-40` - 102 (5510/40 MHz) * `5g-104-5520-20` - 104 (5520/20 MHz) * `5g-106-5530-80` - 106 (5530/80 MHz) * `5g-108-5540-20` - 108 (5540/20 MHz) * `5g-110-5550-40` - 110 (5550/40 MHz) * `5g-112-5560-20` - 112 (5560/20 MHz) * `5g-114-5570-160` - 114 (5570/160 MHz) * `5g-116-5580-20` - 116 (5580/20 MHz) * `5g-118-5590-40` - 118 (5590/40 MHz) * `5g-120-5600-20` - 120 (5600/20 MHz) * `5g-122-5610-80` - 122 (5610/80 MHz) * `5g-124-5620-20` - 124 (5620/20 MHz) * `5g-126-5630-40` - 126 (5630/40 MHz) * `5g-128-5640-20` - 128 (5640/20 MHz) * `5g-132-5660-20` - 132 (5660/20 MHz) * `5g-134-5670-40` - 134 (5670/40 MHz) * `5g-136-5680-20` - 136 (5680/20 MHz) * `5g-138-5690-80` - 138 (5690/80 MHz) * `5g-140-5700-20` - 140 (5700/20 MHz) * `5g-142-5710-40` - 142 (5710/40 MHz) * `5g-144-5720-20` - 144 (5720/20 MHz) * `5g-149-5745-20` - 149 (5745/20 MHz) * `5g-151-5755-40` - 151 (5755/40 MHz) * `5g-153-5765-20` - 153 (5765/20 MHz) * `5g-155-5775-80` - 155 (5775/80 MHz) * `5g-157-5785-20` - 157 (5785/20 MHz) * `5g-159-5795-40` - 159 (5795/40 MHz) * `5g-161-5805-20` - 161 (5805/20 MHz) * `5g-163-5815-160` - 163 (5815/160 MHz) * `5g-165-5825-20` - 165 (5825/20 MHz) * `5g-167-5835-40` - 167 (5835/40 MHz) * `5g-169-5845-20` - 169 (5845/20 MHz) * `5g-171-5855-80` - 171 (5855/80 MHz) * `5g-173-5865-20` - 173 (5865/20 MHz) * `5g-175-5875-40` - 175 (5875/40 MHz) * `5g-177-5885-20` - 177 (5885/20 MHz) * `6g-1-5955-20` - 1 (5955/20 MHz) * `6g-3-5965-40` - 3 (5965/40 MHz) * `6g-5-5975-20` - 5 (5975/20 MHz) * `6g-7-5985-80` - 7 (5985/80 MHz) * `6g-9-5995-20` - 9 (5995/20 MHz) * `6g-11-6005-40` - 11 (6005/40 MHz) * `6g-13-6015-20` - 13 (6015/20 MHz) * `6g-15-6025-160` - 15 (6025/160 MHz) * `6g-17-6035-20` - 17 (6035/20 MHz) * `6g-19-6045-40` - 19 (6045/40 MHz) * `6g-21-6055-20` - 21 (6055/20 MHz) * `6g-23-6065-80` - 23 (6065/80 MHz) * `6g-25-6075-20` - 25 (6075/20 MHz) * `6g-27-6085-40` - 27 (6085/40 MHz) * `6g-29-6095-20` - 29 (6095/20 MHz) * `6g-31-6105-320` - 31 (6105/320 MHz) * `6g-33-6115-20` - 33 (6115/20 MHz) * `6g-35-6125-40` - 35 (6125/40 MHz) * `6g-37-6135-20` - 37 (6135/20 MHz) * `6g-39-6145-80` - 39 (6145/80 MHz) * `6g-41-6155-20` - 41 (6155/20 MHz) * `6g-43-6165-40` - 43 (6165/40 MHz) * `6g-45-6175-20` - 45 (6175/20 MHz) * `6g-47-6185-160` - 47 (6185/160 MHz) * `6g-49-6195-20` - 49 (6195/20 MHz) * `6g-51-6205-40` - 51 (6205/40 MHz) * `6g-53-6215-20` - 53 (6215/20 MHz) * `6g-55-6225-80` - 55 (6225/80 MHz) * `6g-57-6235-20` - 57 (6235/20 MHz) * `6g-59-6245-40` - 59 (6245/40 MHz) * `6g-61-6255-20` - 61 (6255/20 MHz) * `6g-65-6275-20` - 65 (6275/20 MHz) * `6g-67-6285-40` - 67 (6285/40 MHz) * `6g-69-6295-20` - 69 (6295/20 MHz) * `6g-71-6305-80` - 71 (6305/80 MHz) * `6g-73-6315-20` - 73 (6315/20 MHz) * `6g-75-6325-40` - 75 (6325/40 MHz) * `6g-77-6335-20` - 77 (6335/20 MHz) * `6g-79-6345-160` - 79 (6345/160 MHz) * `6g-81-6355-20` - 81 (6355/20 MHz) * `6g-83-6365-40` - 83 (6365/40 MHz) * `6g-85-6375-20` - 85 (6375/20 MHz) * `6g-87-6385-80` - 87 (6385/80 MHz) * `6g-89-6395-20` - 89 (6395/20 MHz) * `6g-91-6405-40` - 91 (6405/40 MHz) * `6g-93-6415-20` - 93 (6415/20 MHz) * `6g-95-6425-320` - 95 (6425/320 MHz) * `6g-97-6435-20` - 97 (6435/20 MHz) * `6g-99-6445-40` - 99 (6445/40 MHz) * `6g-101-6455-20` - 101 (6455/20 MHz) * `6g-103-6465-80` - 103 (6465/80 MHz) * `6g-105-6475-20` - 105 (6475/20 MHz) * `6g-107-6485-40` - 107 (6485/40 MHz) * `6g-109-6495-20` - 109 (6495/20 MHz) * `6g-111-6505-160` - 111 (6505/160 MHz) * `6g-113-6515-20` - 113 (6515/20 MHz) * `6g-115-6525-40` - 115 (6525/40 MHz) * `6g-117-6535-20` - 117 (6535/20 MHz) * `6g-119-6545-80` - 119 (6545/80 MHz) * `6g-121-6555-20` - 121 (6555/20 MHz) * `6g-123-6565-40` - 123 (6565/40 MHz) * `6g-125-6575-20` - 125 (6575/20 MHz) * `6g-129-6595-20` - 129 (6595/20 MHz) * `6g-131-6605-40` - 131 (6605/40 MHz) * `6g-133-6615-20` - 133 (6615/20 MHz) * `6g-135-6625-80` - 135 (6625/80 MHz) * `6g-137-6635-20` - 137 (6635/20 MHz) * `6g-139-6645-40` - 139 (6645/40 MHz) * `6g-141-6655-20` - 141 (6655/20 MHz) * `6g-143-6665-160` - 143 (6665/160 MHz) * `6g-145-6675-20` - 145 (6675/20 MHz) * `6g-147-6685-40` - 147 (6685/40 MHz) * `6g-149-6695-20` - 149 (6695/20 MHz) * `6g-151-6705-80` - 151 (6705/80 MHz) * `6g-153-6715-20` - 153 (6715/20 MHz) * `6g-155-6725-40` - 155 (6725/40 MHz) * `6g-157-6735-20` - 157 (6735/20 MHz) * `6g-159-6745-320` - 159 (6745/320 MHz) * `6g-161-6755-20` - 161 (6755/20 MHz) * `6g-163-6765-40` - 163 (6765/40 MHz) * `6g-165-6775-20` - 165 (6775/20 MHz) * `6g-167-6785-80` - 167 (6785/80 MHz) * `6g-169-6795-20` - 169 (6795/20 MHz) * `6g-171-6805-40` - 171 (6805/40 MHz) * `6g-173-6815-20` - 173 (6815/20 MHz) * `6g-175-6825-160` - 175 (6825/160 MHz) * `6g-177-6835-20` - 177 (6835/20 MHz) * `6g-179-6845-40` - 179 (6845/40 MHz) * `6g-181-6855-20` - 181 (6855/20 MHz) * `6g-183-6865-80` - 183 (6865/80 MHz) * `6g-185-6875-20` - 185 (6875/20 MHz) * `6g-187-6885-40` - 187 (6885/40 MHz) * `6g-189-6895-20` - 189 (6895/20 MHz) * `6g-193-6915-20` - 193 (6915/20 MHz) * `6g-195-6925-40` - 195 (6925/40 MHz) * `6g-197-6935-20` - 197 (6935/20 MHz) * `6g-199-6945-80` - 199 (6945/80 MHz) * `6g-201-6955-20` - 201 (6955/20 MHz) * `6g-203-6965-40` - 203 (6965/40 MHz) * `6g-205-6975-20` - 205 (6975/20 MHz) * `6g-207-6985-160` - 207 (6985/160 MHz) * `6g-209-6995-20` - 209 (6995/20 MHz) * `6g-211-7005-40` - 211 (7005/40 MHz) * `6g-213-7015-20` - 213 (7015/20 MHz) * `6g-215-7025-80` - 215 (7025/80 MHz) * `6g-217-7035-20` - 217 (7035/20 MHz) * `6g-219-7045-40` - 219 (7045/40 MHz) * `6g-221-7055-20` - 221 (7055/20 MHz) * `6g-225-7075-20` - 225 (7075/20 MHz) * `6g-227-7085-40` - 227 (7085/40 MHz) * `6g-229-7095-20` - 229 (7095/20 MHz) * `6g-233-7115-20` - 233 (7115/20 MHz) * `60g-1-58320-2160` - 1 (58.32/2.16 GHz) * `60g-2-60480-2160` - 2 (60.48/2.16 GHz) * `60g-3-62640-2160` - 3 (62.64/2.16 GHz) * `60g-4-64800-2160` - 4 (64.80/2.16 GHz) * `60g-5-66960-2160` - 5 (66.96/2.16 GHz) * `60g-6-69120-2160` - 6 (69.12/2.16 GHz) * `60g-9-59400-4320` - 9 (59.40/4.32 GHz) * `60g-10-61560-4320` - 10 (61.56/4.32 GHz) * `60g-11-63720-4320` - 11 (63.72/4.32 GHz) * `60g-12-65880-4320` - 12 (65.88/4.32 GHz) * `60g-13-68040-4320` - 13 (68.04/4.32 GHz) * `60g-17-60480-6480` - 17 (60.48/6.48 GHz) * `60g-18-62640-6480` - 18 (62.64/6.48 GHz) * `60g-19-64800-6480` - 19 (64.80/6.48 GHz) * `60g-20-66960-6480` - 20 (66.96/6.48 GHz) * `60g-25-61560-6480` - 25 (61.56/8.64 GHz) * `60g-26-63720-6480` - 26 (63.72/8.64 GHz) * `60g-27-65880-6480` - 27 (65.88/8.64 GHz)
108    #[serde(rename = "rf_channel", skip_serializing_if = "Option::is_none")]
109    pub rf_channel: Option<RfChannel>,
110    /// * `pd` - PD * `pse` - PSE
111    #[serde(rename = "poe_mode", skip_serializing_if = "Option::is_none")]
112    pub poe_mode: Option<PoeMode>,
113    /// * `type1-ieee802.3af` - 802.3af (Type 1) * `type2-ieee802.3at` - 802.3at (Type 2) * `type3-ieee802.3bt` - 802.3bt (Type 3) * `type4-ieee802.3bt` - 802.3bt (Type 4) * `passive-24v-2pair` - Passive 24V (2-pair) * `passive-24v-4pair` - Passive 24V (4-pair) * `passive-48v-2pair` - Passive 48V (2-pair) * `passive-48v-4pair` - Passive 48V (4-pair)
114    #[serde(rename = "poe_type", skip_serializing_if = "Option::is_none")]
115    pub poe_type: Option<PoeType>,
116    /// Populated by selected channel (if set)
117    #[serde(
118        rename = "rf_channel_frequency",
119        default,
120        with = "::serde_with::rust::double_option",
121        skip_serializing_if = "Option::is_none"
122    )]
123    pub rf_channel_frequency: Option<Option<f64>>,
124    /// Populated by selected channel (if set)
125    #[serde(
126        rename = "rf_channel_width",
127        default,
128        with = "::serde_with::rust::double_option",
129        skip_serializing_if = "Option::is_none"
130    )]
131    pub rf_channel_width: Option<Option<f64>>,
132    #[serde(
133        rename = "tx_power",
134        default,
135        with = "::serde_with::rust::double_option",
136        skip_serializing_if = "Option::is_none"
137    )]
138    pub tx_power: Option<Option<i32>>,
139    #[serde(
140        rename = "untagged_vlan",
141        default,
142        with = "::serde_with::rust::double_option",
143        skip_serializing_if = "Option::is_none"
144    )]
145    pub untagged_vlan: Option<Option<Box<crate::models::BulkInterfaceRequestUntaggedVlan>>>,
146    #[serde(rename = "tagged_vlans", skip_serializing_if = "Option::is_none")]
147    pub tagged_vlans: Option<Vec<i32>>,
148    #[serde(
149        rename = "qinq_svlan",
150        default,
151        with = "::serde_with::rust::double_option",
152        skip_serializing_if = "Option::is_none"
153    )]
154    pub qinq_svlan: Option<Option<Box<crate::models::BulkInterfaceRequestUntaggedVlan>>>,
155    #[serde(
156        rename = "vlan_translation_policy",
157        default,
158        with = "::serde_with::rust::double_option",
159        skip_serializing_if = "Option::is_none"
160    )]
161    pub vlan_translation_policy:
162        Option<Option<Box<crate::models::BulkInterfaceRequestVlanTranslationPolicy>>>,
163    /// Treat as if a cable is connected
164    #[serde(rename = "mark_connected", skip_serializing_if = "Option::is_none")]
165    pub mark_connected: Option<bool>,
166    #[serde(rename = "wireless_lans", skip_serializing_if = "Option::is_none")]
167    pub wireless_lans: Option<Vec<i32>>,
168    #[serde(
169        rename = "vrf",
170        default,
171        with = "::serde_with::rust::double_option",
172        skip_serializing_if = "Option::is_none"
173    )]
174    pub vrf: Option<Option<Box<crate::models::BulkIpAddressRequestVrf>>>,
175    #[serde(
176        rename = "owner",
177        default,
178        with = "::serde_with::rust::double_option",
179        skip_serializing_if = "Option::is_none"
180    )]
181    pub owner: Option<Option<Box<crate::models::AsnRangeRequestOwner>>>,
182    #[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
183    pub tags: Option<Vec<crate::models::NestedTagRequest>>,
184    #[serde(rename = "custom_fields", skip_serializing_if = "Option::is_none")]
185    pub custom_fields: Option<::std::collections::HashMap<String, serde_json::Value>>,
186}
187
188impl BulkInterfaceRequest {
189    /// Adds an `owner` field for models which have a ForeignKey to users.Owner.
190    pub fn new(
191        id: i32,
192        device: crate::models::BriefInterfaceRequestDevice,
193        name: String,
194        r#type: RHashType,
195    ) -> BulkInterfaceRequest {
196        BulkInterfaceRequest {
197            id,
198            device: Box::new(device),
199            vdcs: None,
200            module: None,
201            name,
202            label: None,
203            r#type,
204            enabled: None,
205            parent: None,
206            bridge: None,
207            lag: None,
208            mtu: None,
209            primary_mac_address: None,
210            speed: None,
211            duplex: None,
212            wwn: None,
213            mgmt_only: None,
214            description: None,
215            mode: None,
216            rf_role: None,
217            rf_channel: None,
218            poe_mode: None,
219            poe_type: None,
220            rf_channel_frequency: None,
221            rf_channel_width: None,
222            tx_power: None,
223            untagged_vlan: None,
224            tagged_vlans: None,
225            qinq_svlan: None,
226            vlan_translation_policy: None,
227            mark_connected: None,
228            wireless_lans: None,
229            vrf: None,
230            owner: None,
231            tags: None,
232            custom_fields: None,
233        }
234    }
235}
236
237/// * `virtual` - Virtual * `bridge` - Bridge * `lag` - Link Aggregation Group (LAG) * `100base-fx` - 100BASE-FX (10/100ME) * `100base-lfx` - 100BASE-LFX (10/100ME) * `100base-tx` - 100BASE-TX (10/100ME) * `100base-t1` - 100BASE-T1 (10/100ME) * `1000base-bx10-d` - 1000BASE-BX10-D (1GE BiDi Down) * `1000base-bx10-u` - 1000BASE-BX10-U (1GE BiDi Up) * `1000base-cwdm` - 1000BASE-CWDM (1GE) * `1000base-cx` - 1000BASE-CX (1GE DAC) * `1000base-dwdm` - 1000BASE-DWDM (1GE) * `1000base-ex` - 1000BASE-EX (1GE) * `1000base-lsx` - 1000BASE-LSX (1GE) * `1000base-lx` - 1000BASE-LX (1GE) * `1000base-lx10` - 1000BASE-LX10/LH (1GE) * `1000base-sx` - 1000BASE-SX (1GE) * `1000base-t` - 1000BASE-T (1GE) * `1000base-tx` - 1000BASE-TX (1GE) * `1000base-zx` - 1000BASE-ZX (1GE) * `2.5gbase-t` - 2.5GBASE-T (2.5GE) * `5gbase-t` - 5GBASE-T (5GE) * `10gbase-br-d` - 10GBASE-BR-D (10GE BiDi Down) * `10gbase-br-u` - 10GBASE-BR-U (10GE BiDi Up) * `10gbase-cu` - 10GBASE-CU (10GE DAC Passive Twinax) * `10gbase-cx4` - 10GBASE-CX4 (10GE DAC) * `10gbase-er` - 10GBASE-ER (10GE) * `10gbase-lr` - 10GBASE-LR (10GE) * `10gbase-lrm` - 10GBASE-LRM (10GE) * `10gbase-lx4` - 10GBASE-LX4 (10GE) * `10gbase-sr` - 10GBASE-SR (10GE) * `10gbase-t` - 10GBASE-T (10GE) * `10gbase-zr` - 10GBASE-ZR (10GE) * `25gbase-cr` - 25GBASE-CR (25GE DAC) * `25gbase-er` - 25GBASE-ER (25GE) * `25gbase-lr` - 25GBASE-LR (25GE) * `25gbase-sr` - 25GBASE-SR (25GE) * `25gbase-t` - 25GBASE-T (25GE) * `40gbase-cr4` - 40GBASE-CR4 (40GE DAC) * `40gbase-er4` - 40GBASE-ER4 (40GE) * `40gbase-fr4` - 40GBASE-FR4 (40GE) * `40gbase-lr4` - 40GBASE-LR4 (40GE) * `40gbase-sr4` - 40GBASE-SR4 (40GE) * `40gbase-sr4-bd` - 40GBASE-SR4 (40GE BiDi) * `50gbase-cr` - 50GBASE-CR (50GE DAC) * `50gbase-er` - 50GBASE-ER (50GE) * `50gbase-fr` - 50GBASE-FR (50GE) * `50gbase-lr` - 50GBASE-LR (50GE) * `50gbase-sr` - 50GBASE-SR (50GE) * `100gbase-cr1` - 100GBASE-CR1 (100GE DAC) * `100gbase-cr2` - 100GBASE-CR2 (100GE DAC) * `100gbase-cr4` - 100GBASE-CR4 (100GE DAC) * `100gbase-cr10` - 100GBASE-CR10 (100GE DAC) * `100gbase-cwdm4` - 100GBASE-CWDM4 (100GE) * `100gbase-dr` - 100GBASE-DR (100GE) * `100gbase-er4` - 100GBASE-ER4 (100GE) * `100gbase-fr1` - 100GBASE-FR1 (100GE) * `100gbase-lr1` - 100GBASE-LR1 (100GE) * `100gbase-lr4` - 100GBASE-LR4 (100GE) * `100gbase-sr1` - 100GBASE-SR1 (100GE) * `100gbase-sr1.2` - 100GBASE-SR1.2 (100GE BiDi) * `100gbase-sr2` - 100GBASE-SR2 (100GE) * `100gbase-sr4` - 100GBASE-SR4 (100GE) * `100gbase-sr10` - 100GBASE-SR10 (100GE) * `100gbase-zr` - 100GBASE-ZR (100GE) * `200gbase-cr2` - 200GBASE-CR2 (200GE) * `200gbase-cr4` - 200GBASE-CR4 (200GE) * `200gbase-dr4` - 200GBASE-DR4 (200GE) * `200gbase-er4` - 200GBASE-ER4 (200GE) * `200gbase-fr4` - 200GBASE-FR4 (200GE) * `200gbase-lr4` - 200GBASE-LR4 (200GE) * `200gbase-sr2` - 200GBASE-SR2 (200GE) * `200gbase-sr4` - 200GBASE-SR4 (200GE) * `200gbase-vr2` - 200GBASE-VR2 (200GE) * `400gbase-cr4` - 400GBASE-CR4 (400GE) * `400gbase-dr4` - 400GBASE-DR4 (400GE) * `400gbase-er8` - 400GBASE-ER8 (400GE) * `400gbase-fr4` - 400GBASE-FR4 (400GE) * `400gbase-fr8` - 400GBASE-FR8 (400GE) * `400gbase-lr4` - 400GBASE-LR4 (400GE) * `400gbase-lr8` - 400GBASE-LR8 (400GE) * `400gbase-sr4` - 400GBASE-SR4 (400GE) * `400gbase-sr4_2` - 400GBASE-SR4.2 (400GE BiDi) * `400gbase-sr8` - 400GBASE-SR8 (400GE) * `400gbase-sr16` - 400GBASE-SR16 (400GE) * `400gbase-vr4` - 400GBASE-VR4 (400GE) * `400gbase-zr` - 400GBASE-ZR (400GE) * `800gbase-cr8` - 800GBASE-CR8 (800GE) * `800gbase-dr8` - 800GBASE-DR8 (800GE) * `800gbase-sr8` - 800GBASE-SR8 (800GE) * `800gbase-vr8` - 800GBASE-VR8 (800GE) * `1.6tbase-cr8` - 1.6TBASE-CR8 (1.6TE) * `1.6tbase-dr8` - 1.6TBASE-DR8 (1.6TE) * `1.6tbase-dr8-2` - 1.6TBASE-DR8-2 (1.6TE) * `100base-x-sfp` - SFP (100ME) * `1000base-x-gbic` - GBIC (1GE) * `1000base-x-sfp` - SFP (1GE) * `2.5gbase-x-sfp` - SFP (2.5GE) * `10gbase-x-sfpp` - SFP+ (10GE) * `10gbase-x-xenpak` - XENPAK (10GE) * `10gbase-x-xfp` - XFP (10GE) * `10gbase-x-x2` - X2 (10GE) * `25gbase-x-sfp28` - SFP28 (25GE) * `40gbase-x-qsfpp` - QSFP+ (40GE) * `50gbase-x-sfp28` - QSFP28 (50GE) * `50gbase-x-sfp56` - SFP56 (50GE) * `100gbase-x-cfp` - CFP (100GE) * `100gbase-x-cfp2` - CFP2 (100GE) * `100gbase-x-cfp4` - CFP4 (100GE) * `100gbase-x-cxp` - CXP (100GE) * `100gbase-x-cpak` - Cisco CPAK (100GE) * `100gbase-x-dsfp` - DSFP (100GE) * `100gbase-x-qsfp28` - QSFP28 (100GE) * `100gbase-x-qsfpdd` - QSFP-DD (100GE) * `100gbase-x-sfpdd` - SFP-DD (100GE) * `200gbase-x-cfp2` - CFP2 (200GE) * `200gbase-x-qsfp56` - QSFP56 (200GE) * `200gbase-x-qsfpdd` - QSFP-DD (200GE) * `400gbase-x-qsfp112` - QSFP112 (400GE) * `400gbase-x-qsfpdd` - QSFP-DD (400GE) * `400gbase-x-cdfp` - CDFP (400GE) * `400gbase-x-cfp2` - CFP2 (400GE) * `400gbase-x-cfp8` - CPF8 (400GE) * `400gbase-x-osfp` - OSFP (400GE) * `400gbase-x-osfp-rhs` - OSFP-RHS (400GE) * `800gbase-x-osfp` - OSFP (800GE) * `800gbase-x-qsfpdd` - QSFP-DD (800GE) * `1.6tbase-x-osfp1600` - OSFP1600 (1.6TE) * `1.6tbase-x-osfp1600-rhs` - OSFP1600-RHS (1.6TE) * `1.6tbase-x-qsfpdd1600` - QSFP-DD1600 (1.6TE) * `1000base-kx` - 1000BASE-KX (1GE) * `2.5gbase-kx` - 2.5GBASE-KX (2.5GE) * `5gbase-kr` - 5GBASE-KR (5GE) * `10gbase-kr` - 10GBASE-KR (10GE) * `10gbase-kx4` - 10GBASE-KX4 (10GE) * `25gbase-kr` - 25GBASE-KR (25GE) * `40gbase-kr4` - 40GBASE-KR4 (40GE) * `50gbase-kr` - 50GBASE-KR (50GE) * `100gbase-kp4` - 100GBASE-KP4 (100GE) * `100gbase-kr2` - 100GBASE-KR2 (100GE) * `100gbase-kr4` - 100GBASE-KR4 (100GE) * `1.6tbase-kr8` - 1.6TBASE-KR8 (1.6TE) * `ieee802.11a` - IEEE 802.11a * `ieee802.11g` - IEEE 802.11b/g * `ieee802.11n` - IEEE 802.11n (Wi-Fi 4) * `ieee802.11ac` - IEEE 802.11ac (Wi-Fi 5) * `ieee802.11ad` - IEEE 802.11ad (WiGig) * `ieee802.11ax` - IEEE 802.11ax (Wi-Fi 6) * `ieee802.11ay` - IEEE 802.11ay (WiGig) * `ieee802.11be` - IEEE 802.11be (Wi-Fi 7) * `ieee802.15.1` - IEEE 802.15.1 (Bluetooth) * `ieee802.15.4` - IEEE 802.15.4 (LR-WPAN) * `other-wireless` - Other (Wireless) * `gsm` - GSM * `cdma` - CDMA * `lte` - LTE * `4g` - 4G * `5g` - 5G * `sonet-oc3` - OC-3/STM-1 * `sonet-oc12` - OC-12/STM-4 * `sonet-oc48` - OC-48/STM-16 * `sonet-oc192` - OC-192/STM-64 * `sonet-oc768` - OC-768/STM-256 * `sonet-oc1920` - OC-1920/STM-640 * `sonet-oc3840` - OC-3840/STM-1234 * `1gfc-sfp` - SFP (1GFC) * `2gfc-sfp` - SFP (2GFC) * `4gfc-sfp` - SFP (4GFC) * `8gfc-sfpp` - SFP+ (8GFC) * `16gfc-sfpp` - SFP+ (16GFC) * `32gfc-sfp28` - SFP28 (32GFC) * `32gfc-sfpp` - SFP+ (32GFC) * `64gfc-qsfpp` - QSFP+ (64GFC) * `64gfc-sfpdd` - SFP-DD (64GFC) * `64gfc-sfpp` - SFP+ (64GFC) * `128gfc-qsfp28` - QSFP28 (128GFC) * `infiniband-sdr` - SDR (2 Gbps) * `infiniband-ddr` - DDR (4 Gbps) * `infiniband-qdr` - QDR (8 Gbps) * `infiniband-fdr10` - FDR10 (10 Gbps) * `infiniband-fdr` - FDR (13.5 Gbps) * `infiniband-edr` - EDR (25 Gbps) * `infiniband-hdr` - HDR (50 Gbps) * `infiniband-ndr` - NDR (100 Gbps) * `infiniband-xdr` - XDR (250 Gbps) * `t1` - T1 (1.544 Mbps) * `e1` - E1 (2.048 Mbps) * `t3` - T3 (45 Mbps) * `e3` - E3 (34 Mbps) * `xdsl` - xDSL * `docsis` - DOCSIS * `moca` - MoCA * `bpon` - BPON (622 Mbps / 155 Mbps) * `epon` - EPON (1 Gbps) * `10g-epon` - 10G-EPON (10 Gbps) * `gpon` - GPON (2.5 Gbps / 1.25 Gbps) * `xg-pon` - XG-PON (10 Gbps / 2.5 Gbps) * `xgs-pon` - XGS-PON (10 Gbps) * `ng-pon2` - NG-PON2 (TWDM-PON) (4x10 Gbps) * `25g-pon` - 25G-PON (25 Gbps) * `50g-pon` - 50G-PON (50 Gbps) * `cisco-stackwise` - Cisco StackWise * `cisco-stackwise-plus` - Cisco StackWise Plus * `cisco-flexstack` - Cisco FlexStack * `cisco-flexstack-plus` - Cisco FlexStack Plus * `cisco-stackwise-80` - Cisco StackWise-80 * `cisco-stackwise-160` - Cisco StackWise-160 * `cisco-stackwise-320` - Cisco StackWise-320 * `cisco-stackwise-480` - Cisco StackWise-480 * `cisco-stackwise-1t` - Cisco StackWise-1T * `juniper-vcp` - Juniper VCP * `extreme-summitstack` - Extreme SummitStack * `extreme-summitstack-128` - Extreme SummitStack-128 * `extreme-summitstack-256` - Extreme SummitStack-256 * `extreme-summitstack-512` - Extreme SummitStack-512 * `other` - Other
238#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
239pub enum RHashType {
240    #[serde(rename = "virtual")]
241    Virtual,
242    #[serde(rename = "bridge")]
243    Bridge,
244    #[serde(rename = "lag")]
245    Lag,
246    #[serde(rename = "100base-fx")]
247    Variant100baseFx,
248    #[serde(rename = "100base-lfx")]
249    Variant100baseLfx,
250    #[serde(rename = "100base-tx")]
251    Variant100baseTx,
252    #[serde(rename = "100base-t1")]
253    Variant100baseT1,
254    #[serde(rename = "1000base-bx10-d")]
255    Variant1000baseBx10D,
256    #[serde(rename = "1000base-bx10-u")]
257    Variant1000baseBx10U,
258    #[serde(rename = "1000base-cwdm")]
259    Variant1000baseCwdm,
260    #[serde(rename = "1000base-cx")]
261    Variant1000baseCx,
262    #[serde(rename = "1000base-dwdm")]
263    Variant1000baseDwdm,
264    #[serde(rename = "1000base-ex")]
265    Variant1000baseEx,
266    #[serde(rename = "1000base-lsx")]
267    Variant1000baseLsx,
268    #[serde(rename = "1000base-lx")]
269    Variant1000baseLx,
270    #[serde(rename = "1000base-lx10")]
271    Variant1000baseLx10,
272    #[serde(rename = "1000base-sx")]
273    Variant1000baseSx,
274    #[serde(rename = "1000base-t")]
275    Variant1000baseT,
276    #[serde(rename = "1000base-tx")]
277    Variant1000baseTx,
278    #[serde(rename = "1000base-zx")]
279    Variant1000baseZx,
280    #[serde(rename = "2.5gbase-t")]
281    Variant2Period5gbaseT,
282    #[serde(rename = "5gbase-t")]
283    Variant5gbaseT,
284    #[serde(rename = "10gbase-br-d")]
285    Variant10gbaseBrD,
286    #[serde(rename = "10gbase-br-u")]
287    Variant10gbaseBrU,
288    #[serde(rename = "10gbase-cu")]
289    Variant10gbaseCu,
290    #[serde(rename = "10gbase-cx4")]
291    Variant10gbaseCx4,
292    #[serde(rename = "10gbase-er")]
293    Variant10gbaseEr,
294    #[serde(rename = "10gbase-lr")]
295    Variant10gbaseLr,
296    #[serde(rename = "10gbase-lrm")]
297    Variant10gbaseLrm,
298    #[serde(rename = "10gbase-lx4")]
299    Variant10gbaseLx4,
300    #[serde(rename = "10gbase-sr")]
301    Variant10gbaseSr,
302    #[serde(rename = "10gbase-t")]
303    Variant10gbaseT,
304    #[serde(rename = "10gbase-zr")]
305    Variant10gbaseZr,
306    #[serde(rename = "25gbase-cr")]
307    Variant25gbaseCr,
308    #[serde(rename = "25gbase-er")]
309    Variant25gbaseEr,
310    #[serde(rename = "25gbase-lr")]
311    Variant25gbaseLr,
312    #[serde(rename = "25gbase-sr")]
313    Variant25gbaseSr,
314    #[serde(rename = "25gbase-t")]
315    Variant25gbaseT,
316    #[serde(rename = "40gbase-cr4")]
317    Variant40gbaseCr4,
318    #[serde(rename = "40gbase-er4")]
319    Variant40gbaseEr4,
320    #[serde(rename = "40gbase-fr4")]
321    Variant40gbaseFr4,
322    #[serde(rename = "40gbase-lr4")]
323    Variant40gbaseLr4,
324    #[serde(rename = "40gbase-sr4")]
325    Variant40gbaseSr4,
326    #[serde(rename = "40gbase-sr4-bd")]
327    Variant40gbaseSr4Bd,
328    #[serde(rename = "50gbase-cr")]
329    Variant50gbaseCr,
330    #[serde(rename = "50gbase-er")]
331    Variant50gbaseEr,
332    #[serde(rename = "50gbase-fr")]
333    Variant50gbaseFr,
334    #[serde(rename = "50gbase-lr")]
335    Variant50gbaseLr,
336    #[serde(rename = "50gbase-sr")]
337    Variant50gbaseSr,
338    #[serde(rename = "100gbase-cr1")]
339    Variant100gbaseCr1,
340    #[serde(rename = "100gbase-cr2")]
341    Variant100gbaseCr2,
342    #[serde(rename = "100gbase-cr4")]
343    Variant100gbaseCr4,
344    #[serde(rename = "100gbase-cr10")]
345    Variant100gbaseCr10,
346    #[serde(rename = "100gbase-cwdm4")]
347    Variant100gbaseCwdm4,
348    #[serde(rename = "100gbase-dr")]
349    Variant100gbaseDr,
350    #[serde(rename = "100gbase-er4")]
351    Variant100gbaseEr4,
352    #[serde(rename = "100gbase-fr1")]
353    Variant100gbaseFr1,
354    #[serde(rename = "100gbase-lr1")]
355    Variant100gbaseLr1,
356    #[serde(rename = "100gbase-lr4")]
357    Variant100gbaseLr4,
358    #[serde(rename = "100gbase-sr1")]
359    Variant100gbaseSr1,
360    #[serde(rename = "100gbase-sr1.2")]
361    Variant100gbaseSr1Period2,
362    #[serde(rename = "100gbase-sr2")]
363    Variant100gbaseSr2,
364    #[serde(rename = "100gbase-sr4")]
365    Variant100gbaseSr4,
366    #[serde(rename = "100gbase-sr10")]
367    Variant100gbaseSr10,
368    #[serde(rename = "100gbase-zr")]
369    Variant100gbaseZr,
370    #[serde(rename = "200gbase-cr2")]
371    Variant200gbaseCr2,
372    #[serde(rename = "200gbase-cr4")]
373    Variant200gbaseCr4,
374    #[serde(rename = "200gbase-dr4")]
375    Variant200gbaseDr4,
376    #[serde(rename = "200gbase-er4")]
377    Variant200gbaseEr4,
378    #[serde(rename = "200gbase-fr4")]
379    Variant200gbaseFr4,
380    #[serde(rename = "200gbase-lr4")]
381    Variant200gbaseLr4,
382    #[serde(rename = "200gbase-sr2")]
383    Variant200gbaseSr2,
384    #[serde(rename = "200gbase-sr4")]
385    Variant200gbaseSr4,
386    #[serde(rename = "200gbase-vr2")]
387    Variant200gbaseVr2,
388    #[serde(rename = "400gbase-cr4")]
389    Variant400gbaseCr4,
390    #[serde(rename = "400gbase-dr4")]
391    Variant400gbaseDr4,
392    #[serde(rename = "400gbase-er8")]
393    Variant400gbaseEr8,
394    #[serde(rename = "400gbase-fr4")]
395    Variant400gbaseFr4,
396    #[serde(rename = "400gbase-fr8")]
397    Variant400gbaseFr8,
398    #[serde(rename = "400gbase-lr4")]
399    Variant400gbaseLr4,
400    #[serde(rename = "400gbase-lr8")]
401    Variant400gbaseLr8,
402    #[serde(rename = "400gbase-sr4")]
403    Variant400gbaseSr4,
404    #[serde(rename = "400gbase-sr4_2")]
405    Variant400gbaseSr42,
406    #[serde(rename = "400gbase-sr8")]
407    Variant400gbaseSr8,
408    #[serde(rename = "400gbase-sr16")]
409    Variant400gbaseSr16,
410    #[serde(rename = "400gbase-vr4")]
411    Variant400gbaseVr4,
412    #[serde(rename = "400gbase-zr")]
413    Variant400gbaseZr,
414    #[serde(rename = "800gbase-cr8")]
415    Variant800gbaseCr8,
416    #[serde(rename = "800gbase-dr8")]
417    Variant800gbaseDr8,
418    #[serde(rename = "800gbase-sr8")]
419    Variant800gbaseSr8,
420    #[serde(rename = "800gbase-vr8")]
421    Variant800gbaseVr8,
422    #[serde(rename = "1.6tbase-cr8")]
423    Variant1Period6tbaseCr8,
424    #[serde(rename = "1.6tbase-dr8")]
425    Variant1Period6tbaseDr8,
426    #[serde(rename = "1.6tbase-dr8-2")]
427    Variant1Period6tbaseDr82,
428    #[serde(rename = "100base-x-sfp")]
429    Variant100baseXSfp,
430    #[serde(rename = "1000base-x-gbic")]
431    Variant1000baseXGbic,
432    #[serde(rename = "1000base-x-sfp")]
433    Variant1000baseXSfp,
434    #[serde(rename = "2.5gbase-x-sfp")]
435    Variant2Period5gbaseXSfp,
436    #[serde(rename = "10gbase-x-sfpp")]
437    Variant10gbaseXSfpp,
438    #[serde(rename = "10gbase-x-xenpak")]
439    Variant10gbaseXXenpak,
440    #[serde(rename = "10gbase-x-xfp")]
441    Variant10gbaseXXfp,
442    #[serde(rename = "10gbase-x-x2")]
443    Variant10gbaseXx2,
444    #[serde(rename = "25gbase-x-sfp28")]
445    Variant25gbaseXSfp28,
446    #[serde(rename = "40gbase-x-qsfpp")]
447    Variant40gbaseXQsfpp,
448    #[serde(rename = "50gbase-x-sfp28")]
449    Variant50gbaseXSfp28,
450    #[serde(rename = "50gbase-x-sfp56")]
451    Variant50gbaseXSfp56,
452    #[serde(rename = "100gbase-x-cfp")]
453    Variant100gbaseXCfp,
454    #[serde(rename = "100gbase-x-cfp2")]
455    Variant100gbaseXCfp2,
456    #[serde(rename = "100gbase-x-cfp4")]
457    Variant100gbaseXCfp4,
458    #[serde(rename = "100gbase-x-cxp")]
459    Variant100gbaseXCxp,
460    #[serde(rename = "100gbase-x-cpak")]
461    Variant100gbaseXCpak,
462    #[serde(rename = "100gbase-x-dsfp")]
463    Variant100gbaseXDsfp,
464    #[serde(rename = "100gbase-x-qsfp28")]
465    Variant100gbaseXQsfp28,
466    #[serde(rename = "100gbase-x-qsfpdd")]
467    Variant100gbaseXQsfpdd,
468    #[serde(rename = "100gbase-x-sfpdd")]
469    Variant100gbaseXSfpdd,
470    #[serde(rename = "200gbase-x-cfp2")]
471    Variant200gbaseXCfp2,
472    #[serde(rename = "200gbase-x-qsfp56")]
473    Variant200gbaseXQsfp56,
474    #[serde(rename = "200gbase-x-qsfpdd")]
475    Variant200gbaseXQsfpdd,
476    #[serde(rename = "400gbase-x-qsfp112")]
477    Variant400gbaseXQsfp112,
478    #[serde(rename = "400gbase-x-qsfpdd")]
479    Variant400gbaseXQsfpdd,
480    #[serde(rename = "400gbase-x-cdfp")]
481    Variant400gbaseXCdfp,
482    #[serde(rename = "400gbase-x-cfp2")]
483    Variant400gbaseXCfp2,
484    #[serde(rename = "400gbase-x-cfp8")]
485    Variant400gbaseXCfp8,
486    #[serde(rename = "400gbase-x-osfp")]
487    Variant400gbaseXOsfp,
488    #[serde(rename = "400gbase-x-osfp-rhs")]
489    Variant400gbaseXOsfpRhs,
490    #[serde(rename = "800gbase-x-osfp")]
491    Variant800gbaseXOsfp,
492    #[serde(rename = "800gbase-x-qsfpdd")]
493    Variant800gbaseXQsfpdd,
494    #[serde(rename = "1.6tbase-x-osfp1600")]
495    Variant1Period6tbaseXOsfp1600,
496    #[serde(rename = "1.6tbase-x-osfp1600-rhs")]
497    Variant1Period6tbaseXOsfp1600Rhs,
498    #[serde(rename = "1.6tbase-x-qsfpdd1600")]
499    Variant1Period6tbaseXQsfpdd1600,
500    #[serde(rename = "1000base-kx")]
501    Variant1000baseKx,
502    #[serde(rename = "2.5gbase-kx")]
503    Variant2Period5gbaseKx,
504    #[serde(rename = "5gbase-kr")]
505    Variant5gbaseKr,
506    #[serde(rename = "10gbase-kr")]
507    Variant10gbaseKr,
508    #[serde(rename = "10gbase-kx4")]
509    Variant10gbaseKx4,
510    #[serde(rename = "25gbase-kr")]
511    Variant25gbaseKr,
512    #[serde(rename = "40gbase-kr4")]
513    Variant40gbaseKr4,
514    #[serde(rename = "50gbase-kr")]
515    Variant50gbaseKr,
516    #[serde(rename = "100gbase-kp4")]
517    Variant100gbaseKp4,
518    #[serde(rename = "100gbase-kr2")]
519    Variant100gbaseKr2,
520    #[serde(rename = "100gbase-kr4")]
521    Variant100gbaseKr4,
522    #[serde(rename = "1.6tbase-kr8")]
523    Variant1Period6tbaseKr8,
524    #[serde(rename = "ieee802.11a")]
525    Ieee802Period11a,
526    #[serde(rename = "ieee802.11g")]
527    Ieee802Period11g,
528    #[serde(rename = "ieee802.11n")]
529    Ieee802Period11n,
530    #[serde(rename = "ieee802.11ac")]
531    Ieee802Period11ac,
532    #[serde(rename = "ieee802.11ad")]
533    Ieee802Period11ad,
534    #[serde(rename = "ieee802.11ax")]
535    Ieee802Period11ax,
536    #[serde(rename = "ieee802.11ay")]
537    Ieee802Period11ay,
538    #[serde(rename = "ieee802.11be")]
539    Ieee802Period11be,
540    #[serde(rename = "ieee802.15.1")]
541    Ieee802Period15Period1,
542    #[serde(rename = "ieee802.15.4")]
543    Ieee802Period15Period4,
544    #[serde(rename = "other-wireless")]
545    OtherWireless,
546    #[serde(rename = "gsm")]
547    Gsm,
548    #[serde(rename = "cdma")]
549    Cdma,
550    #[serde(rename = "lte")]
551    Lte,
552    #[serde(rename = "4g")]
553    Variant4g,
554    #[serde(rename = "5g")]
555    Variant5g,
556    #[serde(rename = "sonet-oc3")]
557    SonetOc3,
558    #[serde(rename = "sonet-oc12")]
559    SonetOc12,
560    #[serde(rename = "sonet-oc48")]
561    SonetOc48,
562    #[serde(rename = "sonet-oc192")]
563    SonetOc192,
564    #[serde(rename = "sonet-oc768")]
565    SonetOc768,
566    #[serde(rename = "sonet-oc1920")]
567    SonetOc1920,
568    #[serde(rename = "sonet-oc3840")]
569    SonetOc3840,
570    #[serde(rename = "1gfc-sfp")]
571    Variant1gfcSfp,
572    #[serde(rename = "2gfc-sfp")]
573    Variant2gfcSfp,
574    #[serde(rename = "4gfc-sfp")]
575    Variant4gfcSfp,
576    #[serde(rename = "8gfc-sfpp")]
577    Variant8gfcSfpp,
578    #[serde(rename = "16gfc-sfpp")]
579    Variant16gfcSfpp,
580    #[serde(rename = "32gfc-sfp28")]
581    Variant32gfcSfp28,
582    #[serde(rename = "32gfc-sfpp")]
583    Variant32gfcSfpp,
584    #[serde(rename = "64gfc-qsfpp")]
585    Variant64gfcQsfpp,
586    #[serde(rename = "64gfc-sfpdd")]
587    Variant64gfcSfpdd,
588    #[serde(rename = "64gfc-sfpp")]
589    Variant64gfcSfpp,
590    #[serde(rename = "128gfc-qsfp28")]
591    Variant128gfcQsfp28,
592    #[serde(rename = "infiniband-sdr")]
593    InfinibandSdr,
594    #[serde(rename = "infiniband-ddr")]
595    InfinibandDdr,
596    #[serde(rename = "infiniband-qdr")]
597    InfinibandQdr,
598    #[serde(rename = "infiniband-fdr10")]
599    InfinibandFdr10,
600    #[serde(rename = "infiniband-fdr")]
601    InfinibandFdr,
602    #[serde(rename = "infiniband-edr")]
603    InfinibandEdr,
604    #[serde(rename = "infiniband-hdr")]
605    InfinibandHdr,
606    #[serde(rename = "infiniband-ndr")]
607    InfinibandNdr,
608    #[serde(rename = "infiniband-xdr")]
609    InfinibandXdr,
610    #[serde(rename = "t1")]
611    T1,
612    #[serde(rename = "e1")]
613    E1,
614    #[serde(rename = "t3")]
615    T3,
616    #[serde(rename = "e3")]
617    E3,
618    #[serde(rename = "xdsl")]
619    Xdsl,
620    #[serde(rename = "docsis")]
621    Docsis,
622    #[serde(rename = "moca")]
623    Moca,
624    #[serde(rename = "bpon")]
625    Bpon,
626    #[serde(rename = "epon")]
627    Epon,
628    #[serde(rename = "10g-epon")]
629    Variant10gEpon,
630    #[serde(rename = "gpon")]
631    Gpon,
632    #[serde(rename = "xg-pon")]
633    XgPon,
634    #[serde(rename = "xgs-pon")]
635    XgsPon,
636    #[serde(rename = "ng-pon2")]
637    NgPon2,
638    #[serde(rename = "25g-pon")]
639    Variant25gPon,
640    #[serde(rename = "50g-pon")]
641    Variant50gPon,
642    #[serde(rename = "cisco-stackwise")]
643    CiscoStackwise,
644    #[serde(rename = "cisco-stackwise-plus")]
645    CiscoStackwisePlus,
646    #[serde(rename = "cisco-flexstack")]
647    CiscoFlexstack,
648    #[serde(rename = "cisco-flexstack-plus")]
649    CiscoFlexstackPlus,
650    #[serde(rename = "cisco-stackwise-80")]
651    CiscoStackwise80,
652    #[serde(rename = "cisco-stackwise-160")]
653    CiscoStackwise160,
654    #[serde(rename = "cisco-stackwise-320")]
655    CiscoStackwise320,
656    #[serde(rename = "cisco-stackwise-480")]
657    CiscoStackwise480,
658    #[serde(rename = "cisco-stackwise-1t")]
659    CiscoStackwise1t,
660    #[serde(rename = "juniper-vcp")]
661    JuniperVcp,
662    #[serde(rename = "extreme-summitstack")]
663    ExtremeSummitstack,
664    #[serde(rename = "extreme-summitstack-128")]
665    ExtremeSummitstack128,
666    #[serde(rename = "extreme-summitstack-256")]
667    ExtremeSummitstack256,
668    #[serde(rename = "extreme-summitstack-512")]
669    ExtremeSummitstack512,
670    #[serde(rename = "other")]
671    Other,
672}
673
674impl Default for RHashType {
675    fn default() -> RHashType {
676        Self::Virtual
677    }
678}
679/// * `half` - Half * `full` - Full * `auto` - Auto
680#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
681pub enum Duplex {
682    #[serde(rename = "half")]
683    Half,
684    #[serde(rename = "full")]
685    Full,
686    #[serde(rename = "auto")]
687    Auto,
688    #[serde(rename = "")]
689    Empty,
690    #[serde(rename = "null")]
691    Null,
692}
693
694impl Default for Duplex {
695    fn default() -> Duplex {
696        Self::Half
697    }
698}
699/// * `access` - Access * `tagged` - Tagged * `tagged-all` - Tagged (All) * `q-in-q` - Q-in-Q (802.1ad)
700#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
701pub enum Mode {
702    #[serde(rename = "access")]
703    Access,
704    #[serde(rename = "tagged")]
705    Tagged,
706    #[serde(rename = "tagged-all")]
707    TaggedAll,
708    #[serde(rename = "q-in-q")]
709    QInQ,
710    #[serde(rename = "")]
711    Empty,
712}
713
714impl Default for Mode {
715    fn default() -> Mode {
716        Self::Access
717    }
718}
719/// * `ap` - Access point * `station` - Station
720#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
721pub enum RfRole {
722    #[serde(rename = "ap")]
723    Ap,
724    #[serde(rename = "station")]
725    Station,
726    #[serde(rename = "")]
727    Empty,
728}
729
730impl Default for RfRole {
731    fn default() -> RfRole {
732        Self::Ap
733    }
734}
735/// * `2.4g-1-2412-22` - 1 (2412 MHz) * `2.4g-2-2417-22` - 2 (2417 MHz) * `2.4g-3-2422-22` - 3 (2422 MHz) * `2.4g-4-2427-22` - 4 (2427 MHz) * `2.4g-5-2432-22` - 5 (2432 MHz) * `2.4g-6-2437-22` - 6 (2437 MHz) * `2.4g-7-2442-22` - 7 (2442 MHz) * `2.4g-8-2447-22` - 8 (2447 MHz) * `2.4g-9-2452-22` - 9 (2452 MHz) * `2.4g-10-2457-22` - 10 (2457 MHz) * `2.4g-11-2462-22` - 11 (2462 MHz) * `2.4g-12-2467-22` - 12 (2467 MHz) * `2.4g-13-2472-22` - 13 (2472 MHz) * `5g-32-5160-20` - 32 (5160/20 MHz) * `5g-34-5170-40` - 34 (5170/40 MHz) * `5g-36-5180-20` - 36 (5180/20 MHz) * `5g-38-5190-40` - 38 (5190/40 MHz) * `5g-40-5200-20` - 40 (5200/20 MHz) * `5g-42-5210-80` - 42 (5210/80 MHz) * `5g-44-5220-20` - 44 (5220/20 MHz) * `5g-46-5230-40` - 46 (5230/40 MHz) * `5g-48-5240-20` - 48 (5240/20 MHz) * `5g-50-5250-160` - 50 (5250/160 MHz) * `5g-52-5260-20` - 52 (5260/20 MHz) * `5g-54-5270-40` - 54 (5270/40 MHz) * `5g-56-5280-20` - 56 (5280/20 MHz) * `5g-58-5290-80` - 58 (5290/80 MHz) * `5g-60-5300-20` - 60 (5300/20 MHz) * `5g-62-5310-40` - 62 (5310/40 MHz) * `5g-64-5320-20` - 64 (5320/20 MHz) * `5g-100-5500-20` - 100 (5500/20 MHz) * `5g-102-5510-40` - 102 (5510/40 MHz) * `5g-104-5520-20` - 104 (5520/20 MHz) * `5g-106-5530-80` - 106 (5530/80 MHz) * `5g-108-5540-20` - 108 (5540/20 MHz) * `5g-110-5550-40` - 110 (5550/40 MHz) * `5g-112-5560-20` - 112 (5560/20 MHz) * `5g-114-5570-160` - 114 (5570/160 MHz) * `5g-116-5580-20` - 116 (5580/20 MHz) * `5g-118-5590-40` - 118 (5590/40 MHz) * `5g-120-5600-20` - 120 (5600/20 MHz) * `5g-122-5610-80` - 122 (5610/80 MHz) * `5g-124-5620-20` - 124 (5620/20 MHz) * `5g-126-5630-40` - 126 (5630/40 MHz) * `5g-128-5640-20` - 128 (5640/20 MHz) * `5g-132-5660-20` - 132 (5660/20 MHz) * `5g-134-5670-40` - 134 (5670/40 MHz) * `5g-136-5680-20` - 136 (5680/20 MHz) * `5g-138-5690-80` - 138 (5690/80 MHz) * `5g-140-5700-20` - 140 (5700/20 MHz) * `5g-142-5710-40` - 142 (5710/40 MHz) * `5g-144-5720-20` - 144 (5720/20 MHz) * `5g-149-5745-20` - 149 (5745/20 MHz) * `5g-151-5755-40` - 151 (5755/40 MHz) * `5g-153-5765-20` - 153 (5765/20 MHz) * `5g-155-5775-80` - 155 (5775/80 MHz) * `5g-157-5785-20` - 157 (5785/20 MHz) * `5g-159-5795-40` - 159 (5795/40 MHz) * `5g-161-5805-20` - 161 (5805/20 MHz) * `5g-163-5815-160` - 163 (5815/160 MHz) * `5g-165-5825-20` - 165 (5825/20 MHz) * `5g-167-5835-40` - 167 (5835/40 MHz) * `5g-169-5845-20` - 169 (5845/20 MHz) * `5g-171-5855-80` - 171 (5855/80 MHz) * `5g-173-5865-20` - 173 (5865/20 MHz) * `5g-175-5875-40` - 175 (5875/40 MHz) * `5g-177-5885-20` - 177 (5885/20 MHz) * `6g-1-5955-20` - 1 (5955/20 MHz) * `6g-3-5965-40` - 3 (5965/40 MHz) * `6g-5-5975-20` - 5 (5975/20 MHz) * `6g-7-5985-80` - 7 (5985/80 MHz) * `6g-9-5995-20` - 9 (5995/20 MHz) * `6g-11-6005-40` - 11 (6005/40 MHz) * `6g-13-6015-20` - 13 (6015/20 MHz) * `6g-15-6025-160` - 15 (6025/160 MHz) * `6g-17-6035-20` - 17 (6035/20 MHz) * `6g-19-6045-40` - 19 (6045/40 MHz) * `6g-21-6055-20` - 21 (6055/20 MHz) * `6g-23-6065-80` - 23 (6065/80 MHz) * `6g-25-6075-20` - 25 (6075/20 MHz) * `6g-27-6085-40` - 27 (6085/40 MHz) * `6g-29-6095-20` - 29 (6095/20 MHz) * `6g-31-6105-320` - 31 (6105/320 MHz) * `6g-33-6115-20` - 33 (6115/20 MHz) * `6g-35-6125-40` - 35 (6125/40 MHz) * `6g-37-6135-20` - 37 (6135/20 MHz) * `6g-39-6145-80` - 39 (6145/80 MHz) * `6g-41-6155-20` - 41 (6155/20 MHz) * `6g-43-6165-40` - 43 (6165/40 MHz) * `6g-45-6175-20` - 45 (6175/20 MHz) * `6g-47-6185-160` - 47 (6185/160 MHz) * `6g-49-6195-20` - 49 (6195/20 MHz) * `6g-51-6205-40` - 51 (6205/40 MHz) * `6g-53-6215-20` - 53 (6215/20 MHz) * `6g-55-6225-80` - 55 (6225/80 MHz) * `6g-57-6235-20` - 57 (6235/20 MHz) * `6g-59-6245-40` - 59 (6245/40 MHz) * `6g-61-6255-20` - 61 (6255/20 MHz) * `6g-65-6275-20` - 65 (6275/20 MHz) * `6g-67-6285-40` - 67 (6285/40 MHz) * `6g-69-6295-20` - 69 (6295/20 MHz) * `6g-71-6305-80` - 71 (6305/80 MHz) * `6g-73-6315-20` - 73 (6315/20 MHz) * `6g-75-6325-40` - 75 (6325/40 MHz) * `6g-77-6335-20` - 77 (6335/20 MHz) * `6g-79-6345-160` - 79 (6345/160 MHz) * `6g-81-6355-20` - 81 (6355/20 MHz) * `6g-83-6365-40` - 83 (6365/40 MHz) * `6g-85-6375-20` - 85 (6375/20 MHz) * `6g-87-6385-80` - 87 (6385/80 MHz) * `6g-89-6395-20` - 89 (6395/20 MHz) * `6g-91-6405-40` - 91 (6405/40 MHz) * `6g-93-6415-20` - 93 (6415/20 MHz) * `6g-95-6425-320` - 95 (6425/320 MHz) * `6g-97-6435-20` - 97 (6435/20 MHz) * `6g-99-6445-40` - 99 (6445/40 MHz) * `6g-101-6455-20` - 101 (6455/20 MHz) * `6g-103-6465-80` - 103 (6465/80 MHz) * `6g-105-6475-20` - 105 (6475/20 MHz) * `6g-107-6485-40` - 107 (6485/40 MHz) * `6g-109-6495-20` - 109 (6495/20 MHz) * `6g-111-6505-160` - 111 (6505/160 MHz) * `6g-113-6515-20` - 113 (6515/20 MHz) * `6g-115-6525-40` - 115 (6525/40 MHz) * `6g-117-6535-20` - 117 (6535/20 MHz) * `6g-119-6545-80` - 119 (6545/80 MHz) * `6g-121-6555-20` - 121 (6555/20 MHz) * `6g-123-6565-40` - 123 (6565/40 MHz) * `6g-125-6575-20` - 125 (6575/20 MHz) * `6g-129-6595-20` - 129 (6595/20 MHz) * `6g-131-6605-40` - 131 (6605/40 MHz) * `6g-133-6615-20` - 133 (6615/20 MHz) * `6g-135-6625-80` - 135 (6625/80 MHz) * `6g-137-6635-20` - 137 (6635/20 MHz) * `6g-139-6645-40` - 139 (6645/40 MHz) * `6g-141-6655-20` - 141 (6655/20 MHz) * `6g-143-6665-160` - 143 (6665/160 MHz) * `6g-145-6675-20` - 145 (6675/20 MHz) * `6g-147-6685-40` - 147 (6685/40 MHz) * `6g-149-6695-20` - 149 (6695/20 MHz) * `6g-151-6705-80` - 151 (6705/80 MHz) * `6g-153-6715-20` - 153 (6715/20 MHz) * `6g-155-6725-40` - 155 (6725/40 MHz) * `6g-157-6735-20` - 157 (6735/20 MHz) * `6g-159-6745-320` - 159 (6745/320 MHz) * `6g-161-6755-20` - 161 (6755/20 MHz) * `6g-163-6765-40` - 163 (6765/40 MHz) * `6g-165-6775-20` - 165 (6775/20 MHz) * `6g-167-6785-80` - 167 (6785/80 MHz) * `6g-169-6795-20` - 169 (6795/20 MHz) * `6g-171-6805-40` - 171 (6805/40 MHz) * `6g-173-6815-20` - 173 (6815/20 MHz) * `6g-175-6825-160` - 175 (6825/160 MHz) * `6g-177-6835-20` - 177 (6835/20 MHz) * `6g-179-6845-40` - 179 (6845/40 MHz) * `6g-181-6855-20` - 181 (6855/20 MHz) * `6g-183-6865-80` - 183 (6865/80 MHz) * `6g-185-6875-20` - 185 (6875/20 MHz) * `6g-187-6885-40` - 187 (6885/40 MHz) * `6g-189-6895-20` - 189 (6895/20 MHz) * `6g-193-6915-20` - 193 (6915/20 MHz) * `6g-195-6925-40` - 195 (6925/40 MHz) * `6g-197-6935-20` - 197 (6935/20 MHz) * `6g-199-6945-80` - 199 (6945/80 MHz) * `6g-201-6955-20` - 201 (6955/20 MHz) * `6g-203-6965-40` - 203 (6965/40 MHz) * `6g-205-6975-20` - 205 (6975/20 MHz) * `6g-207-6985-160` - 207 (6985/160 MHz) * `6g-209-6995-20` - 209 (6995/20 MHz) * `6g-211-7005-40` - 211 (7005/40 MHz) * `6g-213-7015-20` - 213 (7015/20 MHz) * `6g-215-7025-80` - 215 (7025/80 MHz) * `6g-217-7035-20` - 217 (7035/20 MHz) * `6g-219-7045-40` - 219 (7045/40 MHz) * `6g-221-7055-20` - 221 (7055/20 MHz) * `6g-225-7075-20` - 225 (7075/20 MHz) * `6g-227-7085-40` - 227 (7085/40 MHz) * `6g-229-7095-20` - 229 (7095/20 MHz) * `6g-233-7115-20` - 233 (7115/20 MHz) * `60g-1-58320-2160` - 1 (58.32/2.16 GHz) * `60g-2-60480-2160` - 2 (60.48/2.16 GHz) * `60g-3-62640-2160` - 3 (62.64/2.16 GHz) * `60g-4-64800-2160` - 4 (64.80/2.16 GHz) * `60g-5-66960-2160` - 5 (66.96/2.16 GHz) * `60g-6-69120-2160` - 6 (69.12/2.16 GHz) * `60g-9-59400-4320` - 9 (59.40/4.32 GHz) * `60g-10-61560-4320` - 10 (61.56/4.32 GHz) * `60g-11-63720-4320` - 11 (63.72/4.32 GHz) * `60g-12-65880-4320` - 12 (65.88/4.32 GHz) * `60g-13-68040-4320` - 13 (68.04/4.32 GHz) * `60g-17-60480-6480` - 17 (60.48/6.48 GHz) * `60g-18-62640-6480` - 18 (62.64/6.48 GHz) * `60g-19-64800-6480` - 19 (64.80/6.48 GHz) * `60g-20-66960-6480` - 20 (66.96/6.48 GHz) * `60g-25-61560-6480` - 25 (61.56/8.64 GHz) * `60g-26-63720-6480` - 26 (63.72/8.64 GHz) * `60g-27-65880-6480` - 27 (65.88/8.64 GHz)
736#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
737pub enum RfChannel {
738    #[serde(rename = "2.4g-1-2412-22")]
739    Variant2Period4g1241222,
740    #[serde(rename = "2.4g-2-2417-22")]
741    Variant2Period4g2241722,
742    #[serde(rename = "2.4g-3-2422-22")]
743    Variant2Period4g3242222,
744    #[serde(rename = "2.4g-4-2427-22")]
745    Variant2Period4g4242722,
746    #[serde(rename = "2.4g-5-2432-22")]
747    Variant2Period4g5243222,
748    #[serde(rename = "2.4g-6-2437-22")]
749    Variant2Period4g6243722,
750    #[serde(rename = "2.4g-7-2442-22")]
751    Variant2Period4g7244222,
752    #[serde(rename = "2.4g-8-2447-22")]
753    Variant2Period4g8244722,
754    #[serde(rename = "2.4g-9-2452-22")]
755    Variant2Period4g9245222,
756    #[serde(rename = "2.4g-10-2457-22")]
757    Variant2Period4g10245722,
758    #[serde(rename = "2.4g-11-2462-22")]
759    Variant2Period4g11246222,
760    #[serde(rename = "2.4g-12-2467-22")]
761    Variant2Period4g12246722,
762    #[serde(rename = "2.4g-13-2472-22")]
763    Variant2Period4g13247222,
764    #[serde(rename = "5g-32-5160-20")]
765    Variant5g32516020,
766    #[serde(rename = "5g-34-5170-40")]
767    Variant5g34517040,
768    #[serde(rename = "5g-36-5180-20")]
769    Variant5g36518020,
770    #[serde(rename = "5g-38-5190-40")]
771    Variant5g38519040,
772    #[serde(rename = "5g-40-5200-20")]
773    Variant5g40520020,
774    #[serde(rename = "5g-42-5210-80")]
775    Variant5g42521080,
776    #[serde(rename = "5g-44-5220-20")]
777    Variant5g44522020,
778    #[serde(rename = "5g-46-5230-40")]
779    Variant5g46523040,
780    #[serde(rename = "5g-48-5240-20")]
781    Variant5g48524020,
782    #[serde(rename = "5g-50-5250-160")]
783    Variant5g505250160,
784    #[serde(rename = "5g-52-5260-20")]
785    Variant5g52526020,
786    #[serde(rename = "5g-54-5270-40")]
787    Variant5g54527040,
788    #[serde(rename = "5g-56-5280-20")]
789    Variant5g56528020,
790    #[serde(rename = "5g-58-5290-80")]
791    Variant5g58529080,
792    #[serde(rename = "5g-60-5300-20")]
793    Variant5g60530020,
794    #[serde(rename = "5g-62-5310-40")]
795    Variant5g62531040,
796    #[serde(rename = "5g-64-5320-20")]
797    Variant5g64532020,
798    #[serde(rename = "5g-100-5500-20")]
799    Variant5g100550020,
800    #[serde(rename = "5g-102-5510-40")]
801    Variant5g102551040,
802    #[serde(rename = "5g-104-5520-20")]
803    Variant5g104552020,
804    #[serde(rename = "5g-106-5530-80")]
805    Variant5g106553080,
806    #[serde(rename = "5g-108-5540-20")]
807    Variant5g108554020,
808    #[serde(rename = "5g-110-5550-40")]
809    Variant5g110555040,
810    #[serde(rename = "5g-112-5560-20")]
811    Variant5g112556020,
812    #[serde(rename = "5g-114-5570-160")]
813    Variant5g1145570160,
814    #[serde(rename = "5g-116-5580-20")]
815    Variant5g116558020,
816    #[serde(rename = "5g-118-5590-40")]
817    Variant5g118559040,
818    #[serde(rename = "5g-120-5600-20")]
819    Variant5g120560020,
820    #[serde(rename = "5g-122-5610-80")]
821    Variant5g122561080,
822    #[serde(rename = "5g-124-5620-20")]
823    Variant5g124562020,
824    #[serde(rename = "5g-126-5630-40")]
825    Variant5g126563040,
826    #[serde(rename = "5g-128-5640-20")]
827    Variant5g128564020,
828    #[serde(rename = "5g-132-5660-20")]
829    Variant5g132566020,
830    #[serde(rename = "5g-134-5670-40")]
831    Variant5g134567040,
832    #[serde(rename = "5g-136-5680-20")]
833    Variant5g136568020,
834    #[serde(rename = "5g-138-5690-80")]
835    Variant5g138569080,
836    #[serde(rename = "5g-140-5700-20")]
837    Variant5g140570020,
838    #[serde(rename = "5g-142-5710-40")]
839    Variant5g142571040,
840    #[serde(rename = "5g-144-5720-20")]
841    Variant5g144572020,
842    #[serde(rename = "5g-149-5745-20")]
843    Variant5g149574520,
844    #[serde(rename = "5g-151-5755-40")]
845    Variant5g151575540,
846    #[serde(rename = "5g-153-5765-20")]
847    Variant5g153576520,
848    #[serde(rename = "5g-155-5775-80")]
849    Variant5g155577580,
850    #[serde(rename = "5g-157-5785-20")]
851    Variant5g157578520,
852    #[serde(rename = "5g-159-5795-40")]
853    Variant5g159579540,
854    #[serde(rename = "5g-161-5805-20")]
855    Variant5g161580520,
856    #[serde(rename = "5g-163-5815-160")]
857    Variant5g1635815160,
858    #[serde(rename = "5g-165-5825-20")]
859    Variant5g165582520,
860    #[serde(rename = "5g-167-5835-40")]
861    Variant5g167583540,
862    #[serde(rename = "5g-169-5845-20")]
863    Variant5g169584520,
864    #[serde(rename = "5g-171-5855-80")]
865    Variant5g171585580,
866    #[serde(rename = "5g-173-5865-20")]
867    Variant5g173586520,
868    #[serde(rename = "5g-175-5875-40")]
869    Variant5g175587540,
870    #[serde(rename = "5g-177-5885-20")]
871    Variant5g177588520,
872    #[serde(rename = "6g-1-5955-20")]
873    Variant6g1595520,
874    #[serde(rename = "6g-3-5965-40")]
875    Variant6g3596540,
876    #[serde(rename = "6g-5-5975-20")]
877    Variant6g5597520,
878    #[serde(rename = "6g-7-5985-80")]
879    Variant6g7598580,
880    #[serde(rename = "6g-9-5995-20")]
881    Variant6g9599520,
882    #[serde(rename = "6g-11-6005-40")]
883    Variant6g11600540,
884    #[serde(rename = "6g-13-6015-20")]
885    Variant6g13601520,
886    #[serde(rename = "6g-15-6025-160")]
887    Variant6g156025160,
888    #[serde(rename = "6g-17-6035-20")]
889    Variant6g17603520,
890    #[serde(rename = "6g-19-6045-40")]
891    Variant6g19604540,
892    #[serde(rename = "6g-21-6055-20")]
893    Variant6g21605520,
894    #[serde(rename = "6g-23-6065-80")]
895    Variant6g23606580,
896    #[serde(rename = "6g-25-6075-20")]
897    Variant6g25607520,
898    #[serde(rename = "6g-27-6085-40")]
899    Variant6g27608540,
900    #[serde(rename = "6g-29-6095-20")]
901    Variant6g29609520,
902    #[serde(rename = "6g-31-6105-320")]
903    Variant6g316105320,
904    #[serde(rename = "6g-33-6115-20")]
905    Variant6g33611520,
906    #[serde(rename = "6g-35-6125-40")]
907    Variant6g35612540,
908    #[serde(rename = "6g-37-6135-20")]
909    Variant6g37613520,
910    #[serde(rename = "6g-39-6145-80")]
911    Variant6g39614580,
912    #[serde(rename = "6g-41-6155-20")]
913    Variant6g41615520,
914    #[serde(rename = "6g-43-6165-40")]
915    Variant6g43616540,
916    #[serde(rename = "6g-45-6175-20")]
917    Variant6g45617520,
918    #[serde(rename = "6g-47-6185-160")]
919    Variant6g476185160,
920    #[serde(rename = "6g-49-6195-20")]
921    Variant6g49619520,
922    #[serde(rename = "6g-51-6205-40")]
923    Variant6g51620540,
924    #[serde(rename = "6g-53-6215-20")]
925    Variant6g53621520,
926    #[serde(rename = "6g-55-6225-80")]
927    Variant6g55622580,
928    #[serde(rename = "6g-57-6235-20")]
929    Variant6g57623520,
930    #[serde(rename = "6g-59-6245-40")]
931    Variant6g59624540,
932    #[serde(rename = "6g-61-6255-20")]
933    Variant6g61625520,
934    #[serde(rename = "6g-65-6275-20")]
935    Variant6g65627520,
936    #[serde(rename = "6g-67-6285-40")]
937    Variant6g67628540,
938    #[serde(rename = "6g-69-6295-20")]
939    Variant6g69629520,
940    #[serde(rename = "6g-71-6305-80")]
941    Variant6g71630580,
942    #[serde(rename = "6g-73-6315-20")]
943    Variant6g73631520,
944    #[serde(rename = "6g-75-6325-40")]
945    Variant6g75632540,
946    #[serde(rename = "6g-77-6335-20")]
947    Variant6g77633520,
948    #[serde(rename = "6g-79-6345-160")]
949    Variant6g796345160,
950    #[serde(rename = "6g-81-6355-20")]
951    Variant6g81635520,
952    #[serde(rename = "6g-83-6365-40")]
953    Variant6g83636540,
954    #[serde(rename = "6g-85-6375-20")]
955    Variant6g85637520,
956    #[serde(rename = "6g-87-6385-80")]
957    Variant6g87638580,
958    #[serde(rename = "6g-89-6395-20")]
959    Variant6g89639520,
960    #[serde(rename = "6g-91-6405-40")]
961    Variant6g91640540,
962    #[serde(rename = "6g-93-6415-20")]
963    Variant6g93641520,
964    #[serde(rename = "6g-95-6425-320")]
965    Variant6g956425320,
966    #[serde(rename = "6g-97-6435-20")]
967    Variant6g97643520,
968    #[serde(rename = "6g-99-6445-40")]
969    Variant6g99644540,
970    #[serde(rename = "6g-101-6455-20")]
971    Variant6g101645520,
972    #[serde(rename = "6g-103-6465-80")]
973    Variant6g103646580,
974    #[serde(rename = "6g-105-6475-20")]
975    Variant6g105647520,
976    #[serde(rename = "6g-107-6485-40")]
977    Variant6g107648540,
978    #[serde(rename = "6g-109-6495-20")]
979    Variant6g109649520,
980    #[serde(rename = "6g-111-6505-160")]
981    Variant6g1116505160,
982    #[serde(rename = "6g-113-6515-20")]
983    Variant6g113651520,
984    #[serde(rename = "6g-115-6525-40")]
985    Variant6g115652540,
986    #[serde(rename = "6g-117-6535-20")]
987    Variant6g117653520,
988    #[serde(rename = "6g-119-6545-80")]
989    Variant6g119654580,
990    #[serde(rename = "6g-121-6555-20")]
991    Variant6g121655520,
992    #[serde(rename = "6g-123-6565-40")]
993    Variant6g123656540,
994    #[serde(rename = "6g-125-6575-20")]
995    Variant6g125657520,
996    #[serde(rename = "6g-129-6595-20")]
997    Variant6g129659520,
998    #[serde(rename = "6g-131-6605-40")]
999    Variant6g131660540,
1000    #[serde(rename = "6g-133-6615-20")]
1001    Variant6g133661520,
1002    #[serde(rename = "6g-135-6625-80")]
1003    Variant6g135662580,
1004    #[serde(rename = "6g-137-6635-20")]
1005    Variant6g137663520,
1006    #[serde(rename = "6g-139-6645-40")]
1007    Variant6g139664540,
1008    #[serde(rename = "6g-141-6655-20")]
1009    Variant6g141665520,
1010    #[serde(rename = "6g-143-6665-160")]
1011    Variant6g1436665160,
1012    #[serde(rename = "6g-145-6675-20")]
1013    Variant6g145667520,
1014    #[serde(rename = "6g-147-6685-40")]
1015    Variant6g147668540,
1016    #[serde(rename = "6g-149-6695-20")]
1017    Variant6g149669520,
1018    #[serde(rename = "6g-151-6705-80")]
1019    Variant6g151670580,
1020    #[serde(rename = "6g-153-6715-20")]
1021    Variant6g153671520,
1022    #[serde(rename = "6g-155-6725-40")]
1023    Variant6g155672540,
1024    #[serde(rename = "6g-157-6735-20")]
1025    Variant6g157673520,
1026    #[serde(rename = "6g-159-6745-320")]
1027    Variant6g1596745320,
1028    #[serde(rename = "6g-161-6755-20")]
1029    Variant6g161675520,
1030    #[serde(rename = "6g-163-6765-40")]
1031    Variant6g163676540,
1032    #[serde(rename = "6g-165-6775-20")]
1033    Variant6g165677520,
1034    #[serde(rename = "6g-167-6785-80")]
1035    Variant6g167678580,
1036    #[serde(rename = "6g-169-6795-20")]
1037    Variant6g169679520,
1038    #[serde(rename = "6g-171-6805-40")]
1039    Variant6g171680540,
1040    #[serde(rename = "6g-173-6815-20")]
1041    Variant6g173681520,
1042    #[serde(rename = "6g-175-6825-160")]
1043    Variant6g1756825160,
1044    #[serde(rename = "6g-177-6835-20")]
1045    Variant6g177683520,
1046    #[serde(rename = "6g-179-6845-40")]
1047    Variant6g179684540,
1048    #[serde(rename = "6g-181-6855-20")]
1049    Variant6g181685520,
1050    #[serde(rename = "6g-183-6865-80")]
1051    Variant6g183686580,
1052    #[serde(rename = "6g-185-6875-20")]
1053    Variant6g185687520,
1054    #[serde(rename = "6g-187-6885-40")]
1055    Variant6g187688540,
1056    #[serde(rename = "6g-189-6895-20")]
1057    Variant6g189689520,
1058    #[serde(rename = "6g-193-6915-20")]
1059    Variant6g193691520,
1060    #[serde(rename = "6g-195-6925-40")]
1061    Variant6g195692540,
1062    #[serde(rename = "6g-197-6935-20")]
1063    Variant6g197693520,
1064    #[serde(rename = "6g-199-6945-80")]
1065    Variant6g199694580,
1066    #[serde(rename = "6g-201-6955-20")]
1067    Variant6g201695520,
1068    #[serde(rename = "6g-203-6965-40")]
1069    Variant6g203696540,
1070    #[serde(rename = "6g-205-6975-20")]
1071    Variant6g205697520,
1072    #[serde(rename = "6g-207-6985-160")]
1073    Variant6g2076985160,
1074    #[serde(rename = "6g-209-6995-20")]
1075    Variant6g209699520,
1076    #[serde(rename = "6g-211-7005-40")]
1077    Variant6g211700540,
1078    #[serde(rename = "6g-213-7015-20")]
1079    Variant6g213701520,
1080    #[serde(rename = "6g-215-7025-80")]
1081    Variant6g215702580,
1082    #[serde(rename = "6g-217-7035-20")]
1083    Variant6g217703520,
1084    #[serde(rename = "6g-219-7045-40")]
1085    Variant6g219704540,
1086    #[serde(rename = "6g-221-7055-20")]
1087    Variant6g221705520,
1088    #[serde(rename = "6g-225-7075-20")]
1089    Variant6g225707520,
1090    #[serde(rename = "6g-227-7085-40")]
1091    Variant6g227708540,
1092    #[serde(rename = "6g-229-7095-20")]
1093    Variant6g229709520,
1094    #[serde(rename = "6g-233-7115-20")]
1095    Variant6g233711520,
1096    #[serde(rename = "60g-1-58320-2160")]
1097    Variant60g1583202160,
1098    #[serde(rename = "60g-2-60480-2160")]
1099    Variant60g2604802160,
1100    #[serde(rename = "60g-3-62640-2160")]
1101    Variant60g3626402160,
1102    #[serde(rename = "60g-4-64800-2160")]
1103    Variant60g4648002160,
1104    #[serde(rename = "60g-5-66960-2160")]
1105    Variant60g5669602160,
1106    #[serde(rename = "60g-6-69120-2160")]
1107    Variant60g6691202160,
1108    #[serde(rename = "60g-9-59400-4320")]
1109    Variant60g9594004320,
1110    #[serde(rename = "60g-10-61560-4320")]
1111    Variant60g10615604320,
1112    #[serde(rename = "60g-11-63720-4320")]
1113    Variant60g11637204320,
1114    #[serde(rename = "60g-12-65880-4320")]
1115    Variant60g12658804320,
1116    #[serde(rename = "60g-13-68040-4320")]
1117    Variant60g13680404320,
1118    #[serde(rename = "60g-17-60480-6480")]
1119    Variant60g17604806480,
1120    #[serde(rename = "60g-18-62640-6480")]
1121    Variant60g18626406480,
1122    #[serde(rename = "60g-19-64800-6480")]
1123    Variant60g19648006480,
1124    #[serde(rename = "60g-20-66960-6480")]
1125    Variant60g20669606480,
1126    #[serde(rename = "60g-25-61560-6480")]
1127    Variant60g25615606480,
1128    #[serde(rename = "60g-26-63720-6480")]
1129    Variant60g26637206480,
1130    #[serde(rename = "60g-27-65880-6480")]
1131    Variant60g27658806480,
1132    #[serde(rename = "")]
1133    Empty,
1134}
1135
1136impl Default for RfChannel {
1137    fn default() -> RfChannel {
1138        Self::Variant2Period4g1241222
1139    }
1140}
1141/// * `pd` - PD * `pse` - PSE
1142#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
1143pub enum PoeMode {
1144    #[serde(rename = "pd")]
1145    Pd,
1146    #[serde(rename = "pse")]
1147    Pse,
1148    #[serde(rename = "")]
1149    Empty,
1150}
1151
1152impl Default for PoeMode {
1153    fn default() -> PoeMode {
1154        Self::Pd
1155    }
1156}
1157/// * `type1-ieee802.3af` - 802.3af (Type 1) * `type2-ieee802.3at` - 802.3at (Type 2) * `type3-ieee802.3bt` - 802.3bt (Type 3) * `type4-ieee802.3bt` - 802.3bt (Type 4) * `passive-24v-2pair` - Passive 24V (2-pair) * `passive-24v-4pair` - Passive 24V (4-pair) * `passive-48v-2pair` - Passive 48V (2-pair) * `passive-48v-4pair` - Passive 48V (4-pair)
1158#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
1159pub enum PoeType {
1160    #[serde(rename = "type1-ieee802.3af")]
1161    Type1Ieee802Period3af,
1162    #[serde(rename = "type2-ieee802.3at")]
1163    Type2Ieee802Period3at,
1164    #[serde(rename = "type3-ieee802.3bt")]
1165    Type3Ieee802Period3bt,
1166    #[serde(rename = "type4-ieee802.3bt")]
1167    Type4Ieee802Period3bt,
1168    #[serde(rename = "passive-24v-2pair")]
1169    Passive24v2pair,
1170    #[serde(rename = "passive-24v-4pair")]
1171    Passive24v4pair,
1172    #[serde(rename = "passive-48v-2pair")]
1173    Passive48v2pair,
1174    #[serde(rename = "passive-48v-4pair")]
1175    Passive48v4pair,
1176    #[serde(rename = "")]
1177    Empty,
1178}
1179
1180impl Default for PoeType {
1181    fn default() -> PoeType {
1182        Self::Type1Ieee802Period3af
1183    }
1184}