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