@azure/arm-managednetworkfabric 1.0.2-alpha.20260311.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1999) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +17 -18
  3. package/dist/browser/api/accessControlLists/index.d.ts +3 -0
  4. package/dist/browser/api/accessControlLists/index.js +4 -0
  5. package/dist/browser/api/accessControlLists/index.js.map +1 -0
  6. package/dist/browser/api/accessControlLists/operations.d.ts +43 -0
  7. package/dist/browser/api/accessControlLists/operations.js +306 -0
  8. package/dist/browser/api/accessControlLists/operations.js.map +1 -0
  9. package/dist/browser/api/accessControlLists/options.d.ts +41 -0
  10. package/dist/browser/api/accessControlLists/options.js +4 -0
  11. package/dist/browser/api/accessControlLists/options.js.map +1 -0
  12. package/dist/browser/api/azureNetworkFabricManagementServiceAPIContext.d.ts +22 -0
  13. package/dist/browser/api/azureNetworkFabricManagementServiceAPIContext.js +30 -0
  14. package/dist/browser/api/azureNetworkFabricManagementServiceAPIContext.js.map +1 -0
  15. package/dist/browser/api/externalNetworks/index.d.ts +3 -0
  16. package/dist/browser/api/externalNetworks/index.js +4 -0
  17. package/dist/browser/api/externalNetworks/index.js.map +1 -0
  18. package/dist/browser/api/externalNetworks/operations.d.ts +39 -0
  19. package/dist/browser/api/externalNetworks/operations.js +295 -0
  20. package/dist/browser/api/externalNetworks/operations.js.map +1 -0
  21. package/dist/browser/api/externalNetworks/options.d.ts +38 -0
  22. package/dist/browser/api/externalNetworks/options.js +4 -0
  23. package/dist/browser/api/externalNetworks/options.js.map +1 -0
  24. package/dist/browser/api/index.d.ts +3 -0
  25. package/dist/browser/api/index.js +4 -0
  26. package/dist/browser/api/index.js.map +1 -0
  27. package/dist/browser/api/internalNetworks/index.d.ts +3 -0
  28. package/dist/browser/api/internalNetworks/index.js +4 -0
  29. package/dist/browser/api/internalNetworks/index.js.map +1 -0
  30. package/dist/browser/api/internalNetworks/operations.d.ts +43 -0
  31. package/dist/browser/api/internalNetworks/operations.js +333 -0
  32. package/dist/browser/api/internalNetworks/operations.js.map +1 -0
  33. package/dist/browser/api/internalNetworks/options.d.ts +43 -0
  34. package/dist/browser/api/internalNetworks/options.js +4 -0
  35. package/dist/browser/api/internalNetworks/options.js.map +1 -0
  36. package/dist/browser/api/internetGatewayRules/index.d.ts +3 -0
  37. package/dist/browser/api/internetGatewayRules/index.js +4 -0
  38. package/dist/browser/api/internetGatewayRules/index.js.map +1 -0
  39. package/dist/browser/api/internetGatewayRules/operations.d.ts +31 -0
  40. package/dist/browser/api/internetGatewayRules/operations.js +199 -0
  41. package/dist/browser/api/internetGatewayRules/operations.js.map +1 -0
  42. package/dist/browser/api/internetGatewayRules/options.d.ts +26 -0
  43. package/dist/browser/api/internetGatewayRules/options.js +4 -0
  44. package/dist/browser/api/internetGatewayRules/options.js.map +1 -0
  45. package/dist/browser/api/internetGateways/index.d.ts +3 -0
  46. package/dist/browser/api/internetGateways/index.js +4 -0
  47. package/dist/browser/api/internetGateways/index.js.map +1 -0
  48. package/dist/browser/api/internetGateways/operations.d.ts +31 -0
  49. package/dist/browser/api/internetGateways/operations.js +199 -0
  50. package/dist/browser/api/internetGateways/operations.js.map +1 -0
  51. package/dist/browser/api/internetGateways/options.d.ts +26 -0
  52. package/dist/browser/api/internetGateways/options.js +4 -0
  53. package/dist/browser/api/internetGateways/options.js.map +1 -0
  54. package/dist/browser/api/ipCommunities/index.d.ts +3 -0
  55. package/dist/browser/api/ipCommunities/index.js +4 -0
  56. package/dist/browser/api/ipCommunities/index.js.map +1 -0
  57. package/dist/browser/api/ipCommunities/operations.d.ts +31 -0
  58. package/dist/browser/api/ipCommunities/operations.js +199 -0
  59. package/dist/browser/api/ipCommunities/operations.js.map +1 -0
  60. package/dist/browser/api/ipCommunities/options.d.ts +26 -0
  61. package/dist/browser/api/ipCommunities/options.js +4 -0
  62. package/dist/browser/api/ipCommunities/options.js.map +1 -0
  63. package/dist/browser/api/ipExtendedCommunities/index.d.ts +3 -0
  64. package/dist/browser/api/ipExtendedCommunities/index.js +4 -0
  65. package/dist/browser/api/ipExtendedCommunities/index.js.map +1 -0
  66. package/dist/browser/api/ipExtendedCommunities/operations.d.ts +31 -0
  67. package/dist/browser/api/ipExtendedCommunities/operations.js +199 -0
  68. package/dist/browser/api/ipExtendedCommunities/operations.js.map +1 -0
  69. package/dist/browser/api/ipExtendedCommunities/options.d.ts +26 -0
  70. package/dist/browser/api/ipExtendedCommunities/options.js +4 -0
  71. package/dist/browser/api/ipExtendedCommunities/options.js.map +1 -0
  72. package/dist/browser/api/ipPrefixes/index.d.ts +3 -0
  73. package/dist/browser/api/ipPrefixes/index.js +4 -0
  74. package/dist/browser/api/ipPrefixes/index.js.map +1 -0
  75. package/dist/browser/api/ipPrefixes/operations.d.ts +31 -0
  76. package/dist/browser/api/ipPrefixes/operations.js +199 -0
  77. package/dist/browser/api/ipPrefixes/operations.js.map +1 -0
  78. package/dist/browser/api/ipPrefixes/options.d.ts +26 -0
  79. package/dist/browser/api/ipPrefixes/options.js +4 -0
  80. package/dist/browser/api/ipPrefixes/options.js.map +1 -0
  81. package/dist/browser/api/l2IsolationDomains/index.d.ts +3 -0
  82. package/dist/browser/api/l2IsolationDomains/index.js +4 -0
  83. package/dist/browser/api/l2IsolationDomains/index.js.map +1 -0
  84. package/dist/browser/api/l2IsolationDomains/operations.d.ts +43 -0
  85. package/dist/browser/api/l2IsolationDomains/operations.js +306 -0
  86. package/dist/browser/api/l2IsolationDomains/operations.js.map +1 -0
  87. package/dist/browser/api/l2IsolationDomains/options.d.ts +41 -0
  88. package/dist/browser/api/l2IsolationDomains/options.js +4 -0
  89. package/dist/browser/api/l2IsolationDomains/options.js.map +1 -0
  90. package/dist/browser/api/l3IsolationDomains/index.d.ts +3 -0
  91. package/dist/browser/api/l3IsolationDomains/index.js +4 -0
  92. package/dist/browser/api/l3IsolationDomains/index.js.map +1 -0
  93. package/dist/browser/api/l3IsolationDomains/operations.d.ts +43 -0
  94. package/dist/browser/api/l3IsolationDomains/operations.js +306 -0
  95. package/dist/browser/api/l3IsolationDomains/operations.js.map +1 -0
  96. package/dist/browser/api/l3IsolationDomains/options.d.ts +41 -0
  97. package/dist/browser/api/l3IsolationDomains/options.js +4 -0
  98. package/dist/browser/api/l3IsolationDomains/options.js.map +1 -0
  99. package/dist/browser/api/neighborGroups/index.d.ts +3 -0
  100. package/dist/browser/api/neighborGroups/index.js +4 -0
  101. package/dist/browser/api/neighborGroups/index.js.map +1 -0
  102. package/dist/browser/api/neighborGroups/operations.d.ts +35 -0
  103. package/dist/browser/api/neighborGroups/operations.js +234 -0
  104. package/dist/browser/api/neighborGroups/operations.js.map +1 -0
  105. package/dist/browser/api/neighborGroups/options.d.ts +31 -0
  106. package/dist/browser/api/neighborGroups/options.js +4 -0
  107. package/dist/browser/api/neighborGroups/options.js.map +1 -0
  108. package/dist/browser/api/networkBootstrapDevices/index.d.ts +3 -0
  109. package/dist/browser/api/networkBootstrapDevices/index.js +4 -0
  110. package/dist/browser/api/networkBootstrapDevices/index.js.map +1 -0
  111. package/dist/browser/api/networkBootstrapDevices/operations.d.ts +51 -0
  112. package/dist/browser/api/networkBootstrapDevices/operations.js +378 -0
  113. package/dist/browser/api/networkBootstrapDevices/operations.js.map +1 -0
  114. package/dist/browser/api/networkBootstrapDevices/options.d.ts +51 -0
  115. package/dist/browser/api/networkBootstrapDevices/options.js +4 -0
  116. package/dist/browser/api/networkBootstrapDevices/options.js.map +1 -0
  117. package/dist/browser/api/networkBootstrapInterfaces/index.d.ts +3 -0
  118. package/dist/browser/api/networkBootstrapInterfaces/index.js +4 -0
  119. package/dist/browser/api/networkBootstrapInterfaces/index.js.map +1 -0
  120. package/dist/browser/api/networkBootstrapInterfaces/operations.d.ts +31 -0
  121. package/dist/browser/api/networkBootstrapInterfaces/operations.js +223 -0
  122. package/dist/browser/api/networkBootstrapInterfaces/operations.js.map +1 -0
  123. package/dist/browser/api/networkBootstrapInterfaces/options.d.ts +28 -0
  124. package/dist/browser/api/networkBootstrapInterfaces/options.js +4 -0
  125. package/dist/browser/api/networkBootstrapInterfaces/options.js.map +1 -0
  126. package/dist/browser/api/networkDeviceSkus/index.d.ts +3 -0
  127. package/dist/browser/api/networkDeviceSkus/index.js +4 -0
  128. package/dist/browser/api/networkDeviceSkus/index.js.map +1 -0
  129. package/dist/browser/api/networkDeviceSkus/operations.d.ts +14 -0
  130. package/dist/browser/api/networkDeviceSkus/operations.js +63 -0
  131. package/dist/browser/api/networkDeviceSkus/operations.js.map +1 -0
  132. package/dist/browser/api/networkDeviceSkus/options.d.ts +8 -0
  133. package/dist/browser/api/networkDeviceSkus/options.js +4 -0
  134. package/dist/browser/api/networkDeviceSkus/options.js.map +1 -0
  135. package/dist/browser/api/networkDevices/index.d.ts +3 -0
  136. package/dist/browser/api/networkDevices/index.js +4 -0
  137. package/dist/browser/api/networkDevices/index.js.map +1 -0
  138. package/dist/browser/api/networkDevices/operations.d.ts +63 -0
  139. package/dist/browser/api/networkDevices/operations.js +489 -0
  140. package/dist/browser/api/networkDevices/operations.js.map +1 -0
  141. package/dist/browser/api/networkDevices/options.d.ts +66 -0
  142. package/dist/browser/api/networkDevices/options.js +4 -0
  143. package/dist/browser/api/networkDevices/options.js.map +1 -0
  144. package/dist/browser/api/networkFabricControllers/index.d.ts +3 -0
  145. package/dist/browser/api/networkFabricControllers/index.js +4 -0
  146. package/dist/browser/api/networkFabricControllers/index.js.map +1 -0
  147. package/dist/browser/api/networkFabricControllers/operations.d.ts +31 -0
  148. package/dist/browser/api/networkFabricControllers/operations.js +199 -0
  149. package/dist/browser/api/networkFabricControllers/operations.js.map +1 -0
  150. package/dist/browser/api/networkFabricControllers/options.d.ts +26 -0
  151. package/dist/browser/api/networkFabricControllers/options.js +4 -0
  152. package/dist/browser/api/networkFabricControllers/options.js.map +1 -0
  153. package/dist/browser/api/networkFabricSkus/index.d.ts +3 -0
  154. package/dist/browser/api/networkFabricSkus/index.js +4 -0
  155. package/dist/browser/api/networkFabricSkus/index.js.map +1 -0
  156. package/dist/browser/api/networkFabricSkus/operations.d.ts +14 -0
  157. package/dist/browser/api/networkFabricSkus/operations.js +63 -0
  158. package/dist/browser/api/networkFabricSkus/operations.js.map +1 -0
  159. package/dist/browser/api/networkFabricSkus/options.d.ts +8 -0
  160. package/dist/browser/api/networkFabricSkus/options.js +4 -0
  161. package/dist/browser/api/networkFabricSkus/options.js.map +1 -0
  162. package/dist/browser/api/networkFabrics/index.d.ts +3 -0
  163. package/dist/browser/api/networkFabrics/index.js +4 -0
  164. package/dist/browser/api/networkFabrics/index.js.map +1 -0
  165. package/dist/browser/api/networkFabrics/operations.d.ts +114 -0
  166. package/dist/browser/api/networkFabrics/operations.js +864 -0
  167. package/dist/browser/api/networkFabrics/operations.js.map +1 -0
  168. package/dist/browser/api/networkFabrics/options.d.ts +119 -0
  169. package/dist/browser/api/networkFabrics/options.js +4 -0
  170. package/dist/browser/api/networkFabrics/options.js.map +1 -0
  171. package/dist/browser/api/networkInterfaces/index.d.ts +3 -0
  172. package/dist/browser/api/networkInterfaces/index.js +4 -0
  173. package/dist/browser/api/networkInterfaces/index.js.map +1 -0
  174. package/dist/browser/api/networkInterfaces/operations.d.ts +31 -0
  175. package/dist/browser/api/networkInterfaces/operations.js +215 -0
  176. package/dist/browser/api/networkInterfaces/operations.js.map +1 -0
  177. package/dist/browser/api/networkInterfaces/options.d.ts +28 -0
  178. package/dist/browser/api/networkInterfaces/options.js +4 -0
  179. package/dist/browser/api/networkInterfaces/options.js.map +1 -0
  180. package/dist/browser/api/networkMonitors/index.d.ts +3 -0
  181. package/dist/browser/api/networkMonitors/index.js +4 -0
  182. package/dist/browser/api/networkMonitors/index.js.map +1 -0
  183. package/dist/browser/api/networkMonitors/operations.d.ts +35 -0
  184. package/dist/browser/api/networkMonitors/operations.js +236 -0
  185. package/dist/browser/api/networkMonitors/operations.js.map +1 -0
  186. package/dist/browser/api/networkMonitors/options.d.ts +31 -0
  187. package/dist/browser/api/networkMonitors/options.js +4 -0
  188. package/dist/browser/api/networkMonitors/options.js.map +1 -0
  189. package/dist/browser/api/networkPacketBrokers/index.d.ts +3 -0
  190. package/dist/browser/api/networkPacketBrokers/index.js +4 -0
  191. package/dist/browser/api/networkPacketBrokers/index.js.map +1 -0
  192. package/dist/browser/api/networkPacketBrokers/operations.d.ts +31 -0
  193. package/dist/browser/api/networkPacketBrokers/operations.js +199 -0
  194. package/dist/browser/api/networkPacketBrokers/operations.js.map +1 -0
  195. package/dist/browser/api/networkPacketBrokers/options.d.ts +26 -0
  196. package/dist/browser/api/networkPacketBrokers/options.js +4 -0
  197. package/dist/browser/api/networkPacketBrokers/options.js.map +1 -0
  198. package/dist/browser/api/networkRacks/index.d.ts +3 -0
  199. package/dist/browser/api/networkRacks/index.js +4 -0
  200. package/dist/browser/api/networkRacks/index.js.map +1 -0
  201. package/dist/browser/api/networkRacks/operations.d.ts +31 -0
  202. package/dist/browser/api/networkRacks/operations.js +199 -0
  203. package/dist/browser/api/networkRacks/operations.js.map +1 -0
  204. package/dist/browser/api/networkRacks/options.d.ts +26 -0
  205. package/dist/browser/api/networkRacks/options.js +4 -0
  206. package/dist/browser/api/networkRacks/options.js.map +1 -0
  207. package/dist/browser/api/networkTapRules/index.d.ts +3 -0
  208. package/dist/browser/api/networkTapRules/index.js +4 -0
  209. package/dist/browser/api/networkTapRules/index.js.map +1 -0
  210. package/dist/browser/api/networkTapRules/operations.d.ts +43 -0
  211. package/dist/browser/api/networkTapRules/operations.js +306 -0
  212. package/dist/browser/api/networkTapRules/operations.js.map +1 -0
  213. package/dist/browser/api/networkTapRules/options.d.ts +41 -0
  214. package/dist/browser/api/networkTapRules/options.js +4 -0
  215. package/dist/browser/api/networkTapRules/options.js.map +1 -0
  216. package/dist/browser/api/networkTaps/index.d.ts +3 -0
  217. package/dist/browser/api/networkTaps/index.js +4 -0
  218. package/dist/browser/api/networkTaps/index.js.map +1 -0
  219. package/dist/browser/api/networkTaps/operations.d.ts +39 -0
  220. package/dist/browser/api/networkTaps/operations.js +271 -0
  221. package/dist/browser/api/networkTaps/operations.js.map +1 -0
  222. package/dist/browser/api/networkTaps/options.d.ts +36 -0
  223. package/dist/browser/api/networkTaps/options.js +4 -0
  224. package/dist/browser/api/networkTaps/options.js.map +1 -0
  225. package/dist/browser/api/networkToNetworkInterconnects/index.d.ts +3 -0
  226. package/dist/browser/api/networkToNetworkInterconnects/index.js +4 -0
  227. package/dist/browser/api/networkToNetworkInterconnects/index.js.map +1 -0
  228. package/dist/browser/api/networkToNetworkInterconnects/operations.d.ts +39 -0
  229. package/dist/browser/api/networkToNetworkInterconnects/operations.js +303 -0
  230. package/dist/browser/api/networkToNetworkInterconnects/operations.js.map +1 -0
  231. package/dist/browser/api/networkToNetworkInterconnects/options.d.ts +38 -0
  232. package/dist/browser/api/networkToNetworkInterconnects/options.js +4 -0
  233. package/dist/browser/api/networkToNetworkInterconnects/options.js.map +1 -0
  234. package/dist/browser/api/operations/index.d.ts +3 -0
  235. package/dist/browser/api/operations/index.js +4 -0
  236. package/dist/browser/api/operations/index.js.map +1 -0
  237. package/dist/browser/api/operations/operations.d.ts +10 -0
  238. package/dist/browser/api/operations/operations.js +33 -0
  239. package/dist/browser/api/operations/operations.js.map +1 -0
  240. package/dist/browser/api/operations/options.d.ts +5 -0
  241. package/dist/browser/api/operations/options.js +4 -0
  242. package/dist/browser/api/operations/options.js.map +1 -0
  243. package/dist/browser/api/routePolicies/index.d.ts +3 -0
  244. package/dist/browser/api/routePolicies/index.js +4 -0
  245. package/dist/browser/api/routePolicies/index.js.map +1 -0
  246. package/dist/browser/api/routePolicies/operations.d.ts +43 -0
  247. package/dist/browser/api/routePolicies/operations.js +306 -0
  248. package/dist/browser/api/routePolicies/operations.js.map +1 -0
  249. package/dist/browser/api/routePolicies/options.d.ts +41 -0
  250. package/dist/browser/api/routePolicies/options.js +4 -0
  251. package/dist/browser/api/routePolicies/options.js.map +1 -0
  252. package/dist/browser/azureNetworkFabricManagementServiceAPI.d.ts +91 -41
  253. package/dist/browser/azureNetworkFabricManagementServiceAPI.js +122 -145
  254. package/dist/browser/azureNetworkFabricManagementServiceAPI.js.map +1 -1
  255. package/dist/browser/classic/accessControlLists/index.d.ts +53 -0
  256. package/dist/browser/classic/accessControlLists/index.js +71 -0
  257. package/dist/browser/classic/accessControlLists/index.js.map +1 -0
  258. package/dist/browser/classic/externalNetworks/index.d.ts +51 -0
  259. package/dist/browser/classic/externalNetworks/index.js +70 -0
  260. package/dist/browser/classic/externalNetworks/index.js.map +1 -0
  261. package/dist/browser/classic/index.d.ts +28 -0
  262. package/dist/browser/classic/index.js +4 -0
  263. package/dist/browser/classic/index.js.map +1 -0
  264. package/dist/browser/classic/internalNetworks/index.d.ts +57 -0
  265. package/dist/browser/classic/internalNetworks/index.js +79 -0
  266. package/dist/browser/classic/internalNetworks/index.js.map +1 -0
  267. package/dist/browser/classic/internetGatewayRules/index.d.ts +35 -0
  268. package/dist/browser/classic/internetGatewayRules/index.js +44 -0
  269. package/dist/browser/classic/internetGatewayRules/index.js.map +1 -0
  270. package/dist/browser/classic/internetGateways/index.d.ts +35 -0
  271. package/dist/browser/classic/internetGateways/index.js +44 -0
  272. package/dist/browser/classic/internetGateways/index.js.map +1 -0
  273. package/dist/browser/classic/ipCommunities/index.d.ts +35 -0
  274. package/dist/browser/classic/ipCommunities/index.js +44 -0
  275. package/dist/browser/classic/ipCommunities/index.js.map +1 -0
  276. package/dist/browser/classic/ipExtendedCommunities/index.d.ts +35 -0
  277. package/dist/browser/classic/ipExtendedCommunities/index.js +44 -0
  278. package/dist/browser/classic/ipExtendedCommunities/index.js.map +1 -0
  279. package/dist/browser/classic/ipPrefixes/index.d.ts +35 -0
  280. package/dist/browser/classic/ipPrefixes/index.js +44 -0
  281. package/dist/browser/classic/ipPrefixes/index.js.map +1 -0
  282. package/dist/browser/classic/l2IsolationDomains/index.d.ts +53 -0
  283. package/dist/browser/classic/l2IsolationDomains/index.js +71 -0
  284. package/dist/browser/classic/l2IsolationDomains/index.js.map +1 -0
  285. package/dist/browser/classic/l3IsolationDomains/index.d.ts +53 -0
  286. package/dist/browser/classic/l3IsolationDomains/index.js +71 -0
  287. package/dist/browser/classic/l3IsolationDomains/index.js.map +1 -0
  288. package/dist/browser/classic/neighborGroups/index.d.ts +41 -0
  289. package/dist/browser/classic/neighborGroups/index.js +53 -0
  290. package/dist/browser/classic/neighborGroups/index.js.map +1 -0
  291. package/dist/browser/classic/networkBootstrapDevices/index.d.ts +65 -0
  292. package/dist/browser/classic/networkBootstrapDevices/index.js +89 -0
  293. package/dist/browser/classic/networkBootstrapDevices/index.js.map +1 -0
  294. package/dist/browser/classic/networkBootstrapInterfaces/index.d.ts +39 -0
  295. package/dist/browser/classic/networkBootstrapInterfaces/index.js +52 -0
  296. package/dist/browser/classic/networkBootstrapInterfaces/index.js.map +1 -0
  297. package/dist/browser/classic/networkDeviceSkus/index.d.ts +13 -0
  298. package/dist/browser/classic/networkDeviceSkus/index.js +15 -0
  299. package/dist/browser/classic/networkDeviceSkus/index.js.map +1 -0
  300. package/dist/browser/classic/networkDevices/index.d.ts +83 -0
  301. package/dist/browser/classic/networkDevices/index.js +116 -0
  302. package/dist/browser/classic/networkDevices/index.js.map +1 -0
  303. package/dist/browser/classic/networkFabricControllers/index.d.ts +35 -0
  304. package/dist/browser/classic/networkFabricControllers/index.js +44 -0
  305. package/dist/browser/classic/networkFabricControllers/index.js.map +1 -0
  306. package/dist/browser/classic/networkFabricSkus/index.d.ts +13 -0
  307. package/dist/browser/classic/networkFabricSkus/index.js +15 -0
  308. package/dist/browser/classic/networkFabricSkus/index.js.map +1 -0
  309. package/dist/browser/classic/networkFabrics/index.d.ts +154 -0
  310. package/dist/browser/classic/networkFabrics/index.js +206 -0
  311. package/dist/browser/classic/networkFabrics/index.js.map +1 -0
  312. package/dist/browser/classic/networkInterfaces/index.d.ts +39 -0
  313. package/dist/browser/classic/networkInterfaces/index.js +52 -0
  314. package/dist/browser/classic/networkInterfaces/index.js.map +1 -0
  315. package/dist/browser/classic/networkMonitors/index.d.ts +41 -0
  316. package/dist/browser/classic/networkMonitors/index.js +53 -0
  317. package/dist/browser/classic/networkMonitors/index.js.map +1 -0
  318. package/dist/browser/classic/networkPacketBrokers/index.d.ts +35 -0
  319. package/dist/browser/classic/networkPacketBrokers/index.js +44 -0
  320. package/dist/browser/classic/networkPacketBrokers/index.js.map +1 -0
  321. package/dist/browser/classic/networkRacks/index.d.ts +35 -0
  322. package/dist/browser/classic/networkRacks/index.js +44 -0
  323. package/dist/browser/classic/networkRacks/index.js.map +1 -0
  324. package/dist/browser/classic/networkTapRules/index.d.ts +53 -0
  325. package/dist/browser/classic/networkTapRules/index.js +71 -0
  326. package/dist/browser/classic/networkTapRules/index.js.map +1 -0
  327. package/dist/browser/classic/networkTaps/index.d.ts +47 -0
  328. package/dist/browser/classic/networkTaps/index.js +62 -0
  329. package/dist/browser/classic/networkTaps/index.js.map +1 -0
  330. package/dist/browser/classic/networkToNetworkInterconnects/index.d.ts +51 -0
  331. package/dist/browser/classic/networkToNetworkInterconnects/index.js +70 -0
  332. package/dist/browser/classic/networkToNetworkInterconnects/index.js.map +1 -0
  333. package/dist/browser/classic/operations/index.d.ts +11 -0
  334. package/dist/browser/classic/operations/index.js +14 -0
  335. package/dist/browser/classic/operations/index.js.map +1 -0
  336. package/dist/browser/classic/routePolicies/index.d.ts +53 -0
  337. package/dist/browser/classic/routePolicies/index.js +71 -0
  338. package/dist/browser/classic/routePolicies/index.js.map +1 -0
  339. package/dist/browser/index.d.ts +41 -3
  340. package/dist/browser/index.js +7 -11
  341. package/dist/browser/index.js.map +1 -1
  342. package/dist/browser/logger.d.ts +2 -0
  343. package/dist/browser/logger.js +5 -0
  344. package/dist/browser/logger.js.map +1 -0
  345. package/dist/browser/models/index.d.ts +2 -5379
  346. package/dist/browser/models/index.js +3 -481
  347. package/dist/browser/models/index.js.map +1 -1
  348. package/dist/browser/models/models.d.ts +7474 -0
  349. package/dist/browser/models/models.js +8926 -0
  350. package/dist/browser/models/models.js.map +1 -0
  351. package/dist/browser/restorePollerHelpers.d.ts +21 -0
  352. package/dist/browser/restorePollerHelpers.js +421 -0
  353. package/dist/browser/restorePollerHelpers.js.map +1 -0
  354. package/dist/browser/static-helpers/cloudSettingHelpers.d.ts +22 -0
  355. package/dist/browser/static-helpers/cloudSettingHelpers.js +38 -0
  356. package/dist/browser/static-helpers/cloudSettingHelpers.js.map +1 -0
  357. package/dist/browser/static-helpers/pagingHelpers.d.ts +74 -0
  358. package/dist/browser/static-helpers/pagingHelpers.js +143 -0
  359. package/dist/browser/static-helpers/pagingHelpers.js.map +1 -0
  360. package/dist/browser/static-helpers/pollingHelpers.d.ts +34 -0
  361. package/dist/browser/static-helpers/pollingHelpers.js +95 -0
  362. package/dist/browser/static-helpers/pollingHelpers.js.map +1 -0
  363. package/dist/browser/static-helpers/serialization/check-prop-undefined.d.ts +8 -0
  364. package/dist/browser/static-helpers/serialization/check-prop-undefined.js +17 -0
  365. package/dist/browser/static-helpers/serialization/check-prop-undefined.js.map +1 -0
  366. package/dist/browser/static-helpers/simplePollerHelpers.d.ts +73 -0
  367. package/dist/browser/static-helpers/simplePollerHelpers.js +44 -0
  368. package/dist/browser/static-helpers/simplePollerHelpers.js.map +1 -0
  369. package/dist/browser/static-helpers/urlTemplate.d.ts +5 -0
  370. package/dist/browser/static-helpers/urlTemplate.js +200 -0
  371. package/dist/browser/static-helpers/urlTemplate.js.map +1 -0
  372. package/dist/commonjs/api/accessControlLists/index.d.ts +3 -0
  373. package/dist/commonjs/api/accessControlLists/index.js +44 -0
  374. package/dist/commonjs/api/accessControlLists/index.js.map +7 -0
  375. package/dist/commonjs/api/accessControlLists/operations.d.ts +43 -0
  376. package/dist/commonjs/api/accessControlLists/operations.js +432 -0
  377. package/dist/commonjs/api/accessControlLists/operations.js.map +7 -0
  378. package/dist/commonjs/api/accessControlLists/options.d.ts +41 -0
  379. package/dist/commonjs/api/accessControlLists/options.js +16 -0
  380. package/dist/commonjs/api/accessControlLists/options.js.map +7 -0
  381. package/dist/commonjs/api/azureNetworkFabricManagementServiceAPIContext.d.ts +22 -0
  382. package/dist/commonjs/api/azureNetworkFabricManagementServiceAPIContext.js +51 -0
  383. package/dist/commonjs/api/azureNetworkFabricManagementServiceAPIContext.js.map +7 -0
  384. package/dist/commonjs/api/externalNetworks/index.d.ts +3 -0
  385. package/dist/commonjs/api/externalNetworks/index.js +42 -0
  386. package/dist/commonjs/api/externalNetworks/index.js.map +7 -0
  387. package/dist/commonjs/api/externalNetworks/operations.d.ts +39 -0
  388. package/dist/commonjs/api/externalNetworks/operations.js +451 -0
  389. package/dist/commonjs/api/externalNetworks/operations.js.map +7 -0
  390. package/dist/commonjs/api/externalNetworks/options.d.ts +38 -0
  391. package/dist/commonjs/api/externalNetworks/options.js +16 -0
  392. package/dist/commonjs/api/externalNetworks/options.js.map +7 -0
  393. package/dist/commonjs/api/index.d.ts +3 -0
  394. package/dist/commonjs/api/index.js +28 -0
  395. package/dist/commonjs/api/index.js.map +7 -0
  396. package/dist/commonjs/api/internalNetworks/index.d.ts +3 -0
  397. package/dist/commonjs/api/internalNetworks/index.js +44 -0
  398. package/dist/commonjs/api/internalNetworks/index.js.map +7 -0
  399. package/dist/commonjs/api/internalNetworks/operations.d.ts +43 -0
  400. package/dist/commonjs/api/internalNetworks/operations.js +510 -0
  401. package/dist/commonjs/api/internalNetworks/operations.js.map +7 -0
  402. package/dist/commonjs/api/internalNetworks/options.d.ts +43 -0
  403. package/dist/commonjs/api/internalNetworks/options.js +16 -0
  404. package/dist/commonjs/api/internalNetworks/options.js.map +7 -0
  405. package/dist/commonjs/api/internetGatewayRules/index.d.ts +3 -0
  406. package/dist/commonjs/api/internetGatewayRules/index.js +38 -0
  407. package/dist/commonjs/api/internetGatewayRules/index.js.map +7 -0
  408. package/dist/commonjs/api/internetGatewayRules/operations.d.ts +31 -0
  409. package/dist/commonjs/api/internetGatewayRules/operations.js +287 -0
  410. package/dist/commonjs/api/internetGatewayRules/operations.js.map +7 -0
  411. package/dist/commonjs/api/internetGatewayRules/options.d.ts +26 -0
  412. package/dist/commonjs/api/internetGatewayRules/options.js +16 -0
  413. package/dist/commonjs/api/internetGatewayRules/options.js.map +7 -0
  414. package/dist/commonjs/api/internetGateways/index.d.ts +3 -0
  415. package/dist/commonjs/api/internetGateways/index.js +38 -0
  416. package/dist/commonjs/api/internetGateways/index.js.map +7 -0
  417. package/dist/commonjs/api/internetGateways/operations.d.ts +31 -0
  418. package/dist/commonjs/api/internetGateways/operations.js +287 -0
  419. package/dist/commonjs/api/internetGateways/operations.js.map +7 -0
  420. package/dist/commonjs/api/internetGateways/options.d.ts +26 -0
  421. package/dist/commonjs/api/internetGateways/options.js +16 -0
  422. package/dist/commonjs/api/internetGateways/options.js.map +7 -0
  423. package/dist/commonjs/api/ipCommunities/index.d.ts +3 -0
  424. package/dist/commonjs/api/ipCommunities/index.js +38 -0
  425. package/dist/commonjs/api/ipCommunities/index.js.map +7 -0
  426. package/dist/commonjs/api/ipCommunities/operations.d.ts +31 -0
  427. package/dist/commonjs/api/ipCommunities/operations.js +287 -0
  428. package/dist/commonjs/api/ipCommunities/operations.js.map +7 -0
  429. package/dist/commonjs/api/ipCommunities/options.d.ts +26 -0
  430. package/dist/commonjs/api/ipCommunities/options.js +16 -0
  431. package/dist/commonjs/api/ipCommunities/options.js.map +7 -0
  432. package/dist/commonjs/api/ipExtendedCommunities/index.d.ts +3 -0
  433. package/dist/commonjs/api/ipExtendedCommunities/index.js +38 -0
  434. package/dist/commonjs/api/ipExtendedCommunities/index.js.map +7 -0
  435. package/dist/commonjs/api/ipExtendedCommunities/operations.d.ts +31 -0
  436. package/dist/commonjs/api/ipExtendedCommunities/operations.js +287 -0
  437. package/dist/commonjs/api/ipExtendedCommunities/operations.js.map +7 -0
  438. package/dist/commonjs/api/ipExtendedCommunities/options.d.ts +26 -0
  439. package/dist/commonjs/api/ipExtendedCommunities/options.js +16 -0
  440. package/dist/commonjs/api/ipExtendedCommunities/options.js.map +7 -0
  441. package/dist/commonjs/api/ipPrefixes/index.d.ts +3 -0
  442. package/dist/commonjs/api/ipPrefixes/index.js +38 -0
  443. package/dist/commonjs/api/ipPrefixes/index.js.map +7 -0
  444. package/dist/commonjs/api/ipPrefixes/operations.d.ts +31 -0
  445. package/dist/commonjs/api/ipPrefixes/operations.js +287 -0
  446. package/dist/commonjs/api/ipPrefixes/operations.js.map +7 -0
  447. package/dist/commonjs/api/ipPrefixes/options.d.ts +26 -0
  448. package/dist/commonjs/api/ipPrefixes/options.js +16 -0
  449. package/dist/commonjs/api/ipPrefixes/options.js.map +7 -0
  450. package/dist/commonjs/api/l2IsolationDomains/index.d.ts +3 -0
  451. package/dist/commonjs/api/l2IsolationDomains/index.js +44 -0
  452. package/dist/commonjs/api/l2IsolationDomains/index.js.map +7 -0
  453. package/dist/commonjs/api/l2IsolationDomains/operations.d.ts +43 -0
  454. package/dist/commonjs/api/l2IsolationDomains/operations.js +432 -0
  455. package/dist/commonjs/api/l2IsolationDomains/operations.js.map +7 -0
  456. package/dist/commonjs/api/l2IsolationDomains/options.d.ts +41 -0
  457. package/dist/commonjs/api/l2IsolationDomains/options.js +16 -0
  458. package/dist/commonjs/api/l2IsolationDomains/options.js.map +7 -0
  459. package/dist/commonjs/api/l3IsolationDomains/index.d.ts +3 -0
  460. package/dist/commonjs/api/l3IsolationDomains/index.js +44 -0
  461. package/dist/commonjs/api/l3IsolationDomains/index.js.map +7 -0
  462. package/dist/commonjs/api/l3IsolationDomains/operations.d.ts +43 -0
  463. package/dist/commonjs/api/l3IsolationDomains/operations.js +432 -0
  464. package/dist/commonjs/api/l3IsolationDomains/operations.js.map +7 -0
  465. package/dist/commonjs/api/l3IsolationDomains/options.d.ts +41 -0
  466. package/dist/commonjs/api/l3IsolationDomains/options.js +16 -0
  467. package/dist/commonjs/api/l3IsolationDomains/options.js.map +7 -0
  468. package/dist/commonjs/api/neighborGroups/index.d.ts +3 -0
  469. package/dist/commonjs/api/neighborGroups/index.js +40 -0
  470. package/dist/commonjs/api/neighborGroups/index.js.map +7 -0
  471. package/dist/commonjs/api/neighborGroups/operations.d.ts +35 -0
  472. package/dist/commonjs/api/neighborGroups/operations.js +331 -0
  473. package/dist/commonjs/api/neighborGroups/operations.js.map +7 -0
  474. package/dist/commonjs/api/neighborGroups/options.d.ts +31 -0
  475. package/dist/commonjs/api/neighborGroups/options.js +16 -0
  476. package/dist/commonjs/api/neighborGroups/options.js.map +7 -0
  477. package/dist/commonjs/api/networkBootstrapDevices/index.d.ts +3 -0
  478. package/dist/commonjs/api/networkBootstrapDevices/index.js +48 -0
  479. package/dist/commonjs/api/networkBootstrapDevices/index.js.map +7 -0
  480. package/dist/commonjs/api/networkBootstrapDevices/operations.d.ts +51 -0
  481. package/dist/commonjs/api/networkBootstrapDevices/operations.js +522 -0
  482. package/dist/commonjs/api/networkBootstrapDevices/operations.js.map +7 -0
  483. package/dist/commonjs/api/networkBootstrapDevices/options.d.ts +51 -0
  484. package/dist/commonjs/api/networkBootstrapDevices/options.js +16 -0
  485. package/dist/commonjs/api/networkBootstrapDevices/options.js.map +7 -0
  486. package/dist/commonjs/api/networkBootstrapInterfaces/index.d.ts +3 -0
  487. package/dist/commonjs/api/networkBootstrapInterfaces/index.js +38 -0
  488. package/dist/commonjs/api/networkBootstrapInterfaces/index.js.map +7 -0
  489. package/dist/commonjs/api/networkBootstrapInterfaces/operations.d.ts +31 -0
  490. package/dist/commonjs/api/networkBootstrapInterfaces/operations.js +348 -0
  491. package/dist/commonjs/api/networkBootstrapInterfaces/operations.js.map +7 -0
  492. package/dist/commonjs/api/networkBootstrapInterfaces/options.d.ts +28 -0
  493. package/dist/commonjs/api/networkBootstrapInterfaces/options.js +16 -0
  494. package/dist/commonjs/api/networkBootstrapInterfaces/options.js.map +7 -0
  495. package/dist/commonjs/api/networkDeviceSkus/index.d.ts +3 -0
  496. package/dist/commonjs/api/networkDeviceSkus/index.js +30 -0
  497. package/dist/commonjs/api/networkDeviceSkus/index.js.map +7 -0
  498. package/dist/commonjs/api/networkDeviceSkus/operations.d.ts +14 -0
  499. package/dist/commonjs/api/networkDeviceSkus/operations.js +109 -0
  500. package/dist/commonjs/api/networkDeviceSkus/operations.js.map +7 -0
  501. package/dist/commonjs/api/networkDeviceSkus/options.d.ts +8 -0
  502. package/dist/commonjs/api/networkDeviceSkus/options.js +16 -0
  503. package/dist/commonjs/api/networkDeviceSkus/options.js.map +7 -0
  504. package/dist/commonjs/api/networkDevices/index.d.ts +3 -0
  505. package/dist/commonjs/api/networkDevices/index.js +54 -0
  506. package/dist/commonjs/api/networkDevices/index.js.map +7 -0
  507. package/dist/commonjs/api/networkDevices/operations.d.ts +63 -0
  508. package/dist/commonjs/api/networkDevices/operations.js +660 -0
  509. package/dist/commonjs/api/networkDevices/operations.js.map +7 -0
  510. package/dist/commonjs/api/networkDevices/options.d.ts +66 -0
  511. package/dist/commonjs/api/networkDevices/options.js +16 -0
  512. package/dist/commonjs/api/networkDevices/options.js.map +7 -0
  513. package/dist/commonjs/api/networkFabricControllers/index.d.ts +3 -0
  514. package/dist/commonjs/api/networkFabricControllers/index.js +38 -0
  515. package/dist/commonjs/api/networkFabricControllers/index.js.map +7 -0
  516. package/dist/commonjs/api/networkFabricControllers/operations.d.ts +31 -0
  517. package/dist/commonjs/api/networkFabricControllers/operations.js +287 -0
  518. package/dist/commonjs/api/networkFabricControllers/operations.js.map +7 -0
  519. package/dist/commonjs/api/networkFabricControllers/options.d.ts +26 -0
  520. package/dist/commonjs/api/networkFabricControllers/options.js +16 -0
  521. package/dist/commonjs/api/networkFabricControllers/options.js.map +7 -0
  522. package/dist/commonjs/api/networkFabricSkus/index.d.ts +3 -0
  523. package/dist/commonjs/api/networkFabricSkus/index.js +30 -0
  524. package/dist/commonjs/api/networkFabricSkus/index.js.map +7 -0
  525. package/dist/commonjs/api/networkFabricSkus/operations.d.ts +14 -0
  526. package/dist/commonjs/api/networkFabricSkus/operations.js +109 -0
  527. package/dist/commonjs/api/networkFabricSkus/operations.js.map +7 -0
  528. package/dist/commonjs/api/networkFabricSkus/options.d.ts +8 -0
  529. package/dist/commonjs/api/networkFabricSkus/options.js +16 -0
  530. package/dist/commonjs/api/networkFabricSkus/options.js.map +7 -0
  531. package/dist/commonjs/api/networkFabrics/index.d.ts +3 -0
  532. package/dist/commonjs/api/networkFabrics/index.js +74 -0
  533. package/dist/commonjs/api/networkFabrics/index.js.map +7 -0
  534. package/dist/commonjs/api/networkFabrics/operations.d.ts +114 -0
  535. package/dist/commonjs/api/networkFabrics/operations.js +1125 -0
  536. package/dist/commonjs/api/networkFabrics/operations.js.map +7 -0
  537. package/dist/commonjs/api/networkFabrics/options.d.ts +119 -0
  538. package/dist/commonjs/api/networkFabrics/options.js +16 -0
  539. package/dist/commonjs/api/networkFabrics/options.js.map +7 -0
  540. package/dist/commonjs/api/networkInterfaces/index.d.ts +3 -0
  541. package/dist/commonjs/api/networkInterfaces/index.js +38 -0
  542. package/dist/commonjs/api/networkInterfaces/index.js.map +7 -0
  543. package/dist/commonjs/api/networkInterfaces/operations.d.ts +31 -0
  544. package/dist/commonjs/api/networkInterfaces/operations.js +329 -0
  545. package/dist/commonjs/api/networkInterfaces/operations.js.map +7 -0
  546. package/dist/commonjs/api/networkInterfaces/options.d.ts +28 -0
  547. package/dist/commonjs/api/networkInterfaces/options.js +16 -0
  548. package/dist/commonjs/api/networkInterfaces/options.js.map +7 -0
  549. package/dist/commonjs/api/networkMonitors/index.d.ts +3 -0
  550. package/dist/commonjs/api/networkMonitors/index.js +40 -0
  551. package/dist/commonjs/api/networkMonitors/index.js.map +7 -0
  552. package/dist/commonjs/api/networkMonitors/operations.d.ts +35 -0
  553. package/dist/commonjs/api/networkMonitors/operations.js +344 -0
  554. package/dist/commonjs/api/networkMonitors/operations.js.map +7 -0
  555. package/dist/commonjs/api/networkMonitors/options.d.ts +31 -0
  556. package/dist/commonjs/api/networkMonitors/options.js +16 -0
  557. package/dist/commonjs/api/networkMonitors/options.js.map +7 -0
  558. package/dist/commonjs/api/networkPacketBrokers/index.d.ts +3 -0
  559. package/dist/commonjs/api/networkPacketBrokers/index.js +38 -0
  560. package/dist/commonjs/api/networkPacketBrokers/index.js.map +7 -0
  561. package/dist/commonjs/api/networkPacketBrokers/operations.d.ts +31 -0
  562. package/dist/commonjs/api/networkPacketBrokers/operations.js +287 -0
  563. package/dist/commonjs/api/networkPacketBrokers/operations.js.map +7 -0
  564. package/dist/commonjs/api/networkPacketBrokers/options.d.ts +26 -0
  565. package/dist/commonjs/api/networkPacketBrokers/options.js +16 -0
  566. package/dist/commonjs/api/networkPacketBrokers/options.js.map +7 -0
  567. package/dist/commonjs/api/networkRacks/index.d.ts +3 -0
  568. package/dist/commonjs/api/networkRacks/index.js +38 -0
  569. package/dist/commonjs/api/networkRacks/index.js.map +7 -0
  570. package/dist/commonjs/api/networkRacks/operations.d.ts +31 -0
  571. package/dist/commonjs/api/networkRacks/operations.js +287 -0
  572. package/dist/commonjs/api/networkRacks/operations.js.map +7 -0
  573. package/dist/commonjs/api/networkRacks/options.d.ts +26 -0
  574. package/dist/commonjs/api/networkRacks/options.js +16 -0
  575. package/dist/commonjs/api/networkRacks/options.js.map +7 -0
  576. package/dist/commonjs/api/networkTapRules/index.d.ts +3 -0
  577. package/dist/commonjs/api/networkTapRules/index.js +44 -0
  578. package/dist/commonjs/api/networkTapRules/index.js.map +7 -0
  579. package/dist/commonjs/api/networkTapRules/operations.d.ts +43 -0
  580. package/dist/commonjs/api/networkTapRules/operations.js +432 -0
  581. package/dist/commonjs/api/networkTapRules/operations.js.map +7 -0
  582. package/dist/commonjs/api/networkTapRules/options.d.ts +41 -0
  583. package/dist/commonjs/api/networkTapRules/options.js +16 -0
  584. package/dist/commonjs/api/networkTapRules/options.js.map +7 -0
  585. package/dist/commonjs/api/networkTaps/index.d.ts +3 -0
  586. package/dist/commonjs/api/networkTaps/index.js +42 -0
  587. package/dist/commonjs/api/networkTaps/index.js.map +7 -0
  588. package/dist/commonjs/api/networkTaps/operations.d.ts +39 -0
  589. package/dist/commonjs/api/networkTaps/operations.js +382 -0
  590. package/dist/commonjs/api/networkTaps/operations.js.map +7 -0
  591. package/dist/commonjs/api/networkTaps/options.d.ts +36 -0
  592. package/dist/commonjs/api/networkTaps/options.js +16 -0
  593. package/dist/commonjs/api/networkTaps/options.js.map +7 -0
  594. package/dist/commonjs/api/networkToNetworkInterconnects/index.d.ts +3 -0
  595. package/dist/commonjs/api/networkToNetworkInterconnects/index.js +42 -0
  596. package/dist/commonjs/api/networkToNetworkInterconnects/index.js.map +7 -0
  597. package/dist/commonjs/api/networkToNetworkInterconnects/operations.d.ts +39 -0
  598. package/dist/commonjs/api/networkToNetworkInterconnects/operations.js +465 -0
  599. package/dist/commonjs/api/networkToNetworkInterconnects/operations.js.map +7 -0
  600. package/dist/commonjs/api/networkToNetworkInterconnects/options.d.ts +38 -0
  601. package/dist/commonjs/api/networkToNetworkInterconnects/options.js +16 -0
  602. package/dist/commonjs/api/networkToNetworkInterconnects/options.js.map +7 -0
  603. package/dist/commonjs/api/operations/index.d.ts +3 -0
  604. package/dist/commonjs/api/operations/index.js +28 -0
  605. package/dist/commonjs/api/operations/index.js.map +7 -0
  606. package/dist/commonjs/api/operations/operations.d.ts +10 -0
  607. package/dist/commonjs/api/operations/operations.js +70 -0
  608. package/dist/commonjs/api/operations/operations.js.map +7 -0
  609. package/dist/commonjs/api/operations/options.d.ts +5 -0
  610. package/dist/commonjs/api/operations/options.js +16 -0
  611. package/dist/commonjs/api/operations/options.js.map +7 -0
  612. package/dist/commonjs/api/routePolicies/index.d.ts +3 -0
  613. package/dist/commonjs/api/routePolicies/index.js +44 -0
  614. package/dist/commonjs/api/routePolicies/index.js.map +7 -0
  615. package/dist/commonjs/api/routePolicies/operations.d.ts +43 -0
  616. package/dist/commonjs/api/routePolicies/operations.js +426 -0
  617. package/dist/commonjs/api/routePolicies/operations.js.map +7 -0
  618. package/dist/commonjs/api/routePolicies/options.d.ts +41 -0
  619. package/dist/commonjs/api/routePolicies/options.js +16 -0
  620. package/dist/commonjs/api/routePolicies/options.js.map +7 -0
  621. package/dist/commonjs/azureNetworkFabricManagementServiceAPI.d.ts +91 -41
  622. package/dist/commonjs/azureNetworkFabricManagementServiceAPI.js +119 -143
  623. package/dist/commonjs/azureNetworkFabricManagementServiceAPI.js.map +3 -3
  624. package/dist/commonjs/classic/accessControlLists/index.d.ts +53 -0
  625. package/dist/commonjs/classic/accessControlLists/index.js +117 -0
  626. package/dist/commonjs/classic/accessControlLists/index.js.map +7 -0
  627. package/dist/commonjs/classic/externalNetworks/index.d.ts +51 -0
  628. package/dist/commonjs/classic/externalNetworks/index.js +197 -0
  629. package/dist/commonjs/classic/externalNetworks/index.js.map +7 -0
  630. package/dist/commonjs/classic/index.d.ts +28 -0
  631. package/dist/commonjs/classic/index.js +16 -0
  632. package/dist/commonjs/classic/index.js.map +7 -0
  633. package/dist/commonjs/classic/internalNetworks/index.d.ts +57 -0
  634. package/dist/commonjs/classic/internalNetworks/index.js +227 -0
  635. package/dist/commonjs/classic/internalNetworks/index.js.map +7 -0
  636. package/dist/commonjs/classic/internetGatewayRules/index.d.ts +35 -0
  637. package/dist/commonjs/classic/internetGatewayRules/index.js +68 -0
  638. package/dist/commonjs/classic/internetGatewayRules/index.js.map +7 -0
  639. package/dist/commonjs/classic/internetGateways/index.d.ts +35 -0
  640. package/dist/commonjs/classic/internetGateways/index.js +68 -0
  641. package/dist/commonjs/classic/internetGateways/index.js.map +7 -0
  642. package/dist/commonjs/classic/ipCommunities/index.d.ts +35 -0
  643. package/dist/commonjs/classic/ipCommunities/index.js +68 -0
  644. package/dist/commonjs/classic/ipCommunities/index.js.map +7 -0
  645. package/dist/commonjs/classic/ipExtendedCommunities/index.d.ts +35 -0
  646. package/dist/commonjs/classic/ipExtendedCommunities/index.js +68 -0
  647. package/dist/commonjs/classic/ipExtendedCommunities/index.js.map +7 -0
  648. package/dist/commonjs/classic/ipPrefixes/index.d.ts +35 -0
  649. package/dist/commonjs/classic/ipPrefixes/index.js +68 -0
  650. package/dist/commonjs/classic/ipPrefixes/index.js.map +7 -0
  651. package/dist/commonjs/classic/l2IsolationDomains/index.d.ts +53 -0
  652. package/dist/commonjs/classic/l2IsolationDomains/index.js +122 -0
  653. package/dist/commonjs/classic/l2IsolationDomains/index.js.map +7 -0
  654. package/dist/commonjs/classic/l3IsolationDomains/index.d.ts +53 -0
  655. package/dist/commonjs/classic/l3IsolationDomains/index.js +122 -0
  656. package/dist/commonjs/classic/l3IsolationDomains/index.js.map +7 -0
  657. package/dist/commonjs/classic/neighborGroups/index.d.ts +41 -0
  658. package/dist/commonjs/classic/neighborGroups/index.js +77 -0
  659. package/dist/commonjs/classic/neighborGroups/index.js.map +7 -0
  660. package/dist/commonjs/classic/networkBootstrapDevices/index.d.ts +65 -0
  661. package/dist/commonjs/classic/networkBootstrapDevices/index.js +146 -0
  662. package/dist/commonjs/classic/networkBootstrapDevices/index.js.map +7 -0
  663. package/dist/commonjs/classic/networkBootstrapInterfaces/index.d.ts +39 -0
  664. package/dist/commonjs/classic/networkBootstrapInterfaces/index.js +163 -0
  665. package/dist/commonjs/classic/networkBootstrapInterfaces/index.js.map +7 -0
  666. package/dist/commonjs/classic/networkDeviceSkus/index.d.ts +13 -0
  667. package/dist/commonjs/classic/networkDeviceSkus/index.js +39 -0
  668. package/dist/commonjs/classic/networkDeviceSkus/index.js.map +7 -0
  669. package/dist/commonjs/classic/networkDevices/index.d.ts +83 -0
  670. package/dist/commonjs/classic/networkDevices/index.js +152 -0
  671. package/dist/commonjs/classic/networkDevices/index.js.map +7 -0
  672. package/dist/commonjs/classic/networkFabricControllers/index.d.ts +35 -0
  673. package/dist/commonjs/classic/networkFabricControllers/index.js +68 -0
  674. package/dist/commonjs/classic/networkFabricControllers/index.js.map +7 -0
  675. package/dist/commonjs/classic/networkFabricSkus/index.d.ts +13 -0
  676. package/dist/commonjs/classic/networkFabricSkus/index.js +39 -0
  677. package/dist/commonjs/classic/networkFabricSkus/index.js.map +7 -0
  678. package/dist/commonjs/classic/networkFabrics/index.d.ts +154 -0
  679. package/dist/commonjs/classic/networkFabrics/index.js +295 -0
  680. package/dist/commonjs/classic/networkFabrics/index.js.map +7 -0
  681. package/dist/commonjs/classic/networkInterfaces/index.d.ts +39 -0
  682. package/dist/commonjs/classic/networkInterfaces/index.js +137 -0
  683. package/dist/commonjs/classic/networkInterfaces/index.js.map +7 -0
  684. package/dist/commonjs/classic/networkMonitors/index.d.ts +41 -0
  685. package/dist/commonjs/classic/networkMonitors/index.js +89 -0
  686. package/dist/commonjs/classic/networkMonitors/index.js.map +7 -0
  687. package/dist/commonjs/classic/networkPacketBrokers/index.d.ts +35 -0
  688. package/dist/commonjs/classic/networkPacketBrokers/index.js +68 -0
  689. package/dist/commonjs/classic/networkPacketBrokers/index.js.map +7 -0
  690. package/dist/commonjs/classic/networkRacks/index.d.ts +35 -0
  691. package/dist/commonjs/classic/networkRacks/index.js +68 -0
  692. package/dist/commonjs/classic/networkRacks/index.js.map +7 -0
  693. package/dist/commonjs/classic/networkTapRules/index.d.ts +53 -0
  694. package/dist/commonjs/classic/networkTapRules/index.js +107 -0
  695. package/dist/commonjs/classic/networkTapRules/index.js.map +7 -0
  696. package/dist/commonjs/classic/networkTaps/index.d.ts +47 -0
  697. package/dist/commonjs/classic/networkTaps/index.js +98 -0
  698. package/dist/commonjs/classic/networkTaps/index.js.map +7 -0
  699. package/dist/commonjs/classic/networkToNetworkInterconnects/index.d.ts +51 -0
  700. package/dist/commonjs/classic/networkToNetworkInterconnects/index.js +217 -0
  701. package/dist/commonjs/classic/networkToNetworkInterconnects/index.js.map +7 -0
  702. package/dist/commonjs/classic/operations/index.d.ts +11 -0
  703. package/dist/commonjs/classic/operations/index.js +38 -0
  704. package/dist/commonjs/classic/operations/index.js.map +7 -0
  705. package/dist/commonjs/classic/routePolicies/index.d.ts +53 -0
  706. package/dist/commonjs/classic/routePolicies/index.js +107 -0
  707. package/dist/commonjs/classic/routePolicies/index.js.map +7 -0
  708. package/dist/commonjs/index.d.ts +41 -3
  709. package/dist/commonjs/index.js +177 -8
  710. package/dist/commonjs/index.js.map +3 -3
  711. package/dist/commonjs/logger.d.ts +2 -0
  712. package/dist/commonjs/logger.js +29 -0
  713. package/dist/commonjs/logger.js.map +7 -0
  714. package/dist/commonjs/models/index.d.ts +2 -5379
  715. package/dist/commonjs/models/index.js +119 -334
  716. package/dist/commonjs/models/index.js.map +4 -4
  717. package/dist/commonjs/models/models.d.ts +7474 -0
  718. package/dist/commonjs/models/models.js +8469 -0
  719. package/dist/commonjs/models/models.js.map +7 -0
  720. package/dist/commonjs/restorePollerHelpers.d.ts +21 -0
  721. package/dist/commonjs/restorePollerHelpers.js +434 -0
  722. package/dist/commonjs/restorePollerHelpers.js.map +7 -0
  723. package/dist/commonjs/static-helpers/cloudSettingHelpers.d.ts +22 -0
  724. package/dist/commonjs/static-helpers/cloudSettingHelpers.js +52 -0
  725. package/dist/commonjs/static-helpers/cloudSettingHelpers.js.map +7 -0
  726. package/dist/commonjs/static-helpers/pagingHelpers.d.ts +74 -0
  727. package/dist/commonjs/static-helpers/pagingHelpers.js +143 -0
  728. package/dist/commonjs/static-helpers/pagingHelpers.js.map +7 -0
  729. package/dist/commonjs/static-helpers/pollingHelpers.d.ts +34 -0
  730. package/dist/commonjs/static-helpers/pollingHelpers.js +101 -0
  731. package/dist/commonjs/static-helpers/pollingHelpers.js.map +7 -0
  732. package/dist/commonjs/static-helpers/serialization/check-prop-undefined.d.ts +8 -0
  733. package/dist/commonjs/static-helpers/serialization/check-prop-undefined.js +35 -0
  734. package/dist/commonjs/static-helpers/serialization/check-prop-undefined.js.map +7 -0
  735. package/dist/commonjs/static-helpers/simplePollerHelpers.d.ts +73 -0
  736. package/dist/commonjs/static-helpers/simplePollerHelpers.js +67 -0
  737. package/dist/commonjs/static-helpers/simplePollerHelpers.js.map +7 -0
  738. package/dist/commonjs/static-helpers/urlTemplate.d.ts +5 -0
  739. package/dist/commonjs/static-helpers/urlTemplate.js +197 -0
  740. package/dist/commonjs/static-helpers/urlTemplate.js.map +7 -0
  741. package/dist/commonjs/tsdoc-metadata.json +1 -1
  742. package/dist/esm/api/accessControlLists/index.d.ts +3 -0
  743. package/dist/esm/api/accessControlLists/index.js +4 -0
  744. package/dist/esm/api/accessControlLists/index.js.map +1 -0
  745. package/dist/esm/api/accessControlLists/operations.d.ts +43 -0
  746. package/dist/esm/api/accessControlLists/operations.js +306 -0
  747. package/dist/esm/api/accessControlLists/operations.js.map +1 -0
  748. package/dist/esm/api/accessControlLists/options.d.ts +41 -0
  749. package/dist/esm/api/accessControlLists/options.js +4 -0
  750. package/dist/esm/api/accessControlLists/options.js.map +1 -0
  751. package/dist/esm/api/azureNetworkFabricManagementServiceAPIContext.d.ts +22 -0
  752. package/dist/esm/api/azureNetworkFabricManagementServiceAPIContext.js +30 -0
  753. package/dist/esm/api/azureNetworkFabricManagementServiceAPIContext.js.map +1 -0
  754. package/dist/esm/api/externalNetworks/index.d.ts +3 -0
  755. package/dist/esm/api/externalNetworks/index.js +4 -0
  756. package/dist/esm/api/externalNetworks/index.js.map +1 -0
  757. package/dist/esm/api/externalNetworks/operations.d.ts +39 -0
  758. package/dist/esm/api/externalNetworks/operations.js +295 -0
  759. package/dist/esm/api/externalNetworks/operations.js.map +1 -0
  760. package/dist/esm/api/externalNetworks/options.d.ts +38 -0
  761. package/dist/esm/api/externalNetworks/options.js +4 -0
  762. package/dist/esm/api/externalNetworks/options.js.map +1 -0
  763. package/dist/esm/api/index.d.ts +3 -0
  764. package/dist/esm/api/index.js +4 -0
  765. package/dist/esm/api/index.js.map +1 -0
  766. package/dist/esm/api/internalNetworks/index.d.ts +3 -0
  767. package/dist/esm/api/internalNetworks/index.js +4 -0
  768. package/dist/esm/api/internalNetworks/index.js.map +1 -0
  769. package/dist/esm/api/internalNetworks/operations.d.ts +43 -0
  770. package/dist/esm/api/internalNetworks/operations.js +333 -0
  771. package/dist/esm/api/internalNetworks/operations.js.map +1 -0
  772. package/dist/esm/api/internalNetworks/options.d.ts +43 -0
  773. package/dist/esm/api/internalNetworks/options.js +4 -0
  774. package/dist/esm/api/internalNetworks/options.js.map +1 -0
  775. package/dist/esm/api/internetGatewayRules/index.d.ts +3 -0
  776. package/dist/esm/api/internetGatewayRules/index.js +4 -0
  777. package/dist/esm/api/internetGatewayRules/index.js.map +1 -0
  778. package/dist/esm/api/internetGatewayRules/operations.d.ts +31 -0
  779. package/dist/esm/api/internetGatewayRules/operations.js +199 -0
  780. package/dist/esm/api/internetGatewayRules/operations.js.map +1 -0
  781. package/dist/esm/api/internetGatewayRules/options.d.ts +26 -0
  782. package/dist/esm/api/internetGatewayRules/options.js +4 -0
  783. package/dist/esm/api/internetGatewayRules/options.js.map +1 -0
  784. package/dist/esm/api/internetGateways/index.d.ts +3 -0
  785. package/dist/esm/api/internetGateways/index.js +4 -0
  786. package/dist/esm/api/internetGateways/index.js.map +1 -0
  787. package/dist/esm/api/internetGateways/operations.d.ts +31 -0
  788. package/dist/esm/api/internetGateways/operations.js +199 -0
  789. package/dist/esm/api/internetGateways/operations.js.map +1 -0
  790. package/dist/esm/api/internetGateways/options.d.ts +26 -0
  791. package/dist/esm/api/internetGateways/options.js +4 -0
  792. package/dist/esm/api/internetGateways/options.js.map +1 -0
  793. package/dist/esm/api/ipCommunities/index.d.ts +3 -0
  794. package/dist/esm/api/ipCommunities/index.js +4 -0
  795. package/dist/esm/api/ipCommunities/index.js.map +1 -0
  796. package/dist/esm/api/ipCommunities/operations.d.ts +31 -0
  797. package/dist/esm/api/ipCommunities/operations.js +199 -0
  798. package/dist/esm/api/ipCommunities/operations.js.map +1 -0
  799. package/dist/esm/api/ipCommunities/options.d.ts +26 -0
  800. package/dist/esm/api/ipCommunities/options.js +4 -0
  801. package/dist/esm/api/ipCommunities/options.js.map +1 -0
  802. package/dist/esm/api/ipExtendedCommunities/index.d.ts +3 -0
  803. package/dist/esm/api/ipExtendedCommunities/index.js +4 -0
  804. package/dist/esm/api/ipExtendedCommunities/index.js.map +1 -0
  805. package/dist/esm/api/ipExtendedCommunities/operations.d.ts +31 -0
  806. package/dist/esm/api/ipExtendedCommunities/operations.js +199 -0
  807. package/dist/esm/api/ipExtendedCommunities/operations.js.map +1 -0
  808. package/dist/esm/api/ipExtendedCommunities/options.d.ts +26 -0
  809. package/dist/esm/api/ipExtendedCommunities/options.js +4 -0
  810. package/dist/esm/api/ipExtendedCommunities/options.js.map +1 -0
  811. package/dist/esm/api/ipPrefixes/index.d.ts +3 -0
  812. package/dist/esm/api/ipPrefixes/index.js +4 -0
  813. package/dist/esm/api/ipPrefixes/index.js.map +1 -0
  814. package/dist/esm/api/ipPrefixes/operations.d.ts +31 -0
  815. package/dist/esm/api/ipPrefixes/operations.js +199 -0
  816. package/dist/esm/api/ipPrefixes/operations.js.map +1 -0
  817. package/dist/esm/api/ipPrefixes/options.d.ts +26 -0
  818. package/dist/esm/api/ipPrefixes/options.js +4 -0
  819. package/dist/esm/api/ipPrefixes/options.js.map +1 -0
  820. package/dist/esm/api/l2IsolationDomains/index.d.ts +3 -0
  821. package/dist/esm/api/l2IsolationDomains/index.js +4 -0
  822. package/dist/esm/api/l2IsolationDomains/index.js.map +1 -0
  823. package/dist/esm/api/l2IsolationDomains/operations.d.ts +43 -0
  824. package/dist/esm/api/l2IsolationDomains/operations.js +306 -0
  825. package/dist/esm/api/l2IsolationDomains/operations.js.map +1 -0
  826. package/dist/esm/api/l2IsolationDomains/options.d.ts +41 -0
  827. package/dist/esm/api/l2IsolationDomains/options.js +4 -0
  828. package/dist/esm/api/l2IsolationDomains/options.js.map +1 -0
  829. package/dist/esm/api/l3IsolationDomains/index.d.ts +3 -0
  830. package/dist/esm/api/l3IsolationDomains/index.js +4 -0
  831. package/dist/esm/api/l3IsolationDomains/index.js.map +1 -0
  832. package/dist/esm/api/l3IsolationDomains/operations.d.ts +43 -0
  833. package/dist/esm/api/l3IsolationDomains/operations.js +306 -0
  834. package/dist/esm/api/l3IsolationDomains/operations.js.map +1 -0
  835. package/dist/esm/api/l3IsolationDomains/options.d.ts +41 -0
  836. package/dist/esm/api/l3IsolationDomains/options.js +4 -0
  837. package/dist/esm/api/l3IsolationDomains/options.js.map +1 -0
  838. package/dist/esm/api/neighborGroups/index.d.ts +3 -0
  839. package/dist/esm/api/neighborGroups/index.js +4 -0
  840. package/dist/esm/api/neighborGroups/index.js.map +1 -0
  841. package/dist/esm/api/neighborGroups/operations.d.ts +35 -0
  842. package/dist/esm/api/neighborGroups/operations.js +234 -0
  843. package/dist/esm/api/neighborGroups/operations.js.map +1 -0
  844. package/dist/esm/api/neighborGroups/options.d.ts +31 -0
  845. package/dist/esm/api/neighborGroups/options.js +4 -0
  846. package/dist/esm/api/neighborGroups/options.js.map +1 -0
  847. package/dist/esm/api/networkBootstrapDevices/index.d.ts +3 -0
  848. package/dist/esm/api/networkBootstrapDevices/index.js +4 -0
  849. package/dist/esm/api/networkBootstrapDevices/index.js.map +1 -0
  850. package/dist/esm/api/networkBootstrapDevices/operations.d.ts +51 -0
  851. package/dist/esm/api/networkBootstrapDevices/operations.js +378 -0
  852. package/dist/esm/api/networkBootstrapDevices/operations.js.map +1 -0
  853. package/dist/esm/api/networkBootstrapDevices/options.d.ts +51 -0
  854. package/dist/esm/api/networkBootstrapDevices/options.js +4 -0
  855. package/dist/esm/api/networkBootstrapDevices/options.js.map +1 -0
  856. package/dist/esm/api/networkBootstrapInterfaces/index.d.ts +3 -0
  857. package/dist/esm/api/networkBootstrapInterfaces/index.js +4 -0
  858. package/dist/esm/api/networkBootstrapInterfaces/index.js.map +1 -0
  859. package/dist/esm/api/networkBootstrapInterfaces/operations.d.ts +31 -0
  860. package/dist/esm/api/networkBootstrapInterfaces/operations.js +223 -0
  861. package/dist/esm/api/networkBootstrapInterfaces/operations.js.map +1 -0
  862. package/dist/esm/api/networkBootstrapInterfaces/options.d.ts +28 -0
  863. package/dist/esm/api/networkBootstrapInterfaces/options.js +4 -0
  864. package/dist/esm/api/networkBootstrapInterfaces/options.js.map +1 -0
  865. package/dist/esm/api/networkDeviceSkus/index.d.ts +3 -0
  866. package/dist/esm/api/networkDeviceSkus/index.js +4 -0
  867. package/dist/esm/api/networkDeviceSkus/index.js.map +1 -0
  868. package/dist/esm/api/networkDeviceSkus/operations.d.ts +14 -0
  869. package/dist/esm/api/networkDeviceSkus/operations.js +63 -0
  870. package/dist/esm/api/networkDeviceSkus/operations.js.map +1 -0
  871. package/dist/esm/api/networkDeviceSkus/options.d.ts +8 -0
  872. package/dist/esm/api/networkDeviceSkus/options.js +4 -0
  873. package/dist/esm/api/networkDeviceSkus/options.js.map +1 -0
  874. package/dist/esm/api/networkDevices/index.d.ts +3 -0
  875. package/dist/esm/api/networkDevices/index.js +4 -0
  876. package/dist/esm/api/networkDevices/index.js.map +1 -0
  877. package/dist/esm/api/networkDevices/operations.d.ts +63 -0
  878. package/dist/esm/api/networkDevices/operations.js +489 -0
  879. package/dist/esm/api/networkDevices/operations.js.map +1 -0
  880. package/dist/esm/api/networkDevices/options.d.ts +66 -0
  881. package/dist/esm/api/networkDevices/options.js +4 -0
  882. package/dist/esm/api/networkDevices/options.js.map +1 -0
  883. package/dist/esm/api/networkFabricControllers/index.d.ts +3 -0
  884. package/dist/esm/api/networkFabricControllers/index.js +4 -0
  885. package/dist/esm/api/networkFabricControllers/index.js.map +1 -0
  886. package/dist/esm/api/networkFabricControllers/operations.d.ts +31 -0
  887. package/dist/esm/api/networkFabricControllers/operations.js +199 -0
  888. package/dist/esm/api/networkFabricControllers/operations.js.map +1 -0
  889. package/dist/esm/api/networkFabricControllers/options.d.ts +26 -0
  890. package/dist/esm/api/networkFabricControllers/options.js +4 -0
  891. package/dist/esm/api/networkFabricControllers/options.js.map +1 -0
  892. package/dist/esm/api/networkFabricSkus/index.d.ts +3 -0
  893. package/dist/esm/api/networkFabricSkus/index.js +4 -0
  894. package/dist/esm/api/networkFabricSkus/index.js.map +1 -0
  895. package/dist/esm/api/networkFabricSkus/operations.d.ts +14 -0
  896. package/dist/esm/api/networkFabricSkus/operations.js +63 -0
  897. package/dist/esm/api/networkFabricSkus/operations.js.map +1 -0
  898. package/dist/esm/api/networkFabricSkus/options.d.ts +8 -0
  899. package/dist/esm/api/networkFabricSkus/options.js +4 -0
  900. package/dist/esm/api/networkFabricSkus/options.js.map +1 -0
  901. package/dist/esm/api/networkFabrics/index.d.ts +3 -0
  902. package/dist/esm/api/networkFabrics/index.js +4 -0
  903. package/dist/esm/api/networkFabrics/index.js.map +1 -0
  904. package/dist/esm/api/networkFabrics/operations.d.ts +114 -0
  905. package/dist/esm/api/networkFabrics/operations.js +864 -0
  906. package/dist/esm/api/networkFabrics/operations.js.map +1 -0
  907. package/dist/esm/api/networkFabrics/options.d.ts +119 -0
  908. package/dist/esm/api/networkFabrics/options.js +4 -0
  909. package/dist/esm/api/networkFabrics/options.js.map +1 -0
  910. package/dist/esm/api/networkInterfaces/index.d.ts +3 -0
  911. package/dist/esm/api/networkInterfaces/index.js +4 -0
  912. package/dist/esm/api/networkInterfaces/index.js.map +1 -0
  913. package/dist/esm/api/networkInterfaces/operations.d.ts +31 -0
  914. package/dist/esm/api/networkInterfaces/operations.js +215 -0
  915. package/dist/esm/api/networkInterfaces/operations.js.map +1 -0
  916. package/dist/esm/api/networkInterfaces/options.d.ts +28 -0
  917. package/dist/esm/api/networkInterfaces/options.js +4 -0
  918. package/dist/esm/api/networkInterfaces/options.js.map +1 -0
  919. package/dist/esm/api/networkMonitors/index.d.ts +3 -0
  920. package/dist/esm/api/networkMonitors/index.js +4 -0
  921. package/dist/esm/api/networkMonitors/index.js.map +1 -0
  922. package/dist/esm/api/networkMonitors/operations.d.ts +35 -0
  923. package/dist/esm/api/networkMonitors/operations.js +236 -0
  924. package/dist/esm/api/networkMonitors/operations.js.map +1 -0
  925. package/dist/esm/api/networkMonitors/options.d.ts +31 -0
  926. package/dist/esm/api/networkMonitors/options.js +4 -0
  927. package/dist/esm/api/networkMonitors/options.js.map +1 -0
  928. package/dist/esm/api/networkPacketBrokers/index.d.ts +3 -0
  929. package/dist/esm/api/networkPacketBrokers/index.js +4 -0
  930. package/dist/esm/api/networkPacketBrokers/index.js.map +1 -0
  931. package/dist/esm/api/networkPacketBrokers/operations.d.ts +31 -0
  932. package/dist/esm/api/networkPacketBrokers/operations.js +199 -0
  933. package/dist/esm/api/networkPacketBrokers/operations.js.map +1 -0
  934. package/dist/esm/api/networkPacketBrokers/options.d.ts +26 -0
  935. package/dist/esm/api/networkPacketBrokers/options.js +4 -0
  936. package/dist/esm/api/networkPacketBrokers/options.js.map +1 -0
  937. package/dist/esm/api/networkRacks/index.d.ts +3 -0
  938. package/dist/esm/api/networkRacks/index.js +4 -0
  939. package/dist/esm/api/networkRacks/index.js.map +1 -0
  940. package/dist/esm/api/networkRacks/operations.d.ts +31 -0
  941. package/dist/esm/api/networkRacks/operations.js +199 -0
  942. package/dist/esm/api/networkRacks/operations.js.map +1 -0
  943. package/dist/esm/api/networkRacks/options.d.ts +26 -0
  944. package/dist/esm/api/networkRacks/options.js +4 -0
  945. package/dist/esm/api/networkRacks/options.js.map +1 -0
  946. package/dist/esm/api/networkTapRules/index.d.ts +3 -0
  947. package/dist/esm/api/networkTapRules/index.js +4 -0
  948. package/dist/esm/api/networkTapRules/index.js.map +1 -0
  949. package/dist/esm/api/networkTapRules/operations.d.ts +43 -0
  950. package/dist/esm/api/networkTapRules/operations.js +306 -0
  951. package/dist/esm/api/networkTapRules/operations.js.map +1 -0
  952. package/dist/esm/api/networkTapRules/options.d.ts +41 -0
  953. package/dist/esm/api/networkTapRules/options.js +4 -0
  954. package/dist/esm/api/networkTapRules/options.js.map +1 -0
  955. package/dist/esm/api/networkTaps/index.d.ts +3 -0
  956. package/dist/esm/api/networkTaps/index.js +4 -0
  957. package/dist/esm/api/networkTaps/index.js.map +1 -0
  958. package/dist/esm/api/networkTaps/operations.d.ts +39 -0
  959. package/dist/esm/api/networkTaps/operations.js +271 -0
  960. package/dist/esm/api/networkTaps/operations.js.map +1 -0
  961. package/dist/esm/api/networkTaps/options.d.ts +36 -0
  962. package/dist/esm/api/networkTaps/options.js +4 -0
  963. package/dist/esm/api/networkTaps/options.js.map +1 -0
  964. package/dist/esm/api/networkToNetworkInterconnects/index.d.ts +3 -0
  965. package/dist/esm/api/networkToNetworkInterconnects/index.js +4 -0
  966. package/dist/esm/api/networkToNetworkInterconnects/index.js.map +1 -0
  967. package/dist/esm/api/networkToNetworkInterconnects/operations.d.ts +39 -0
  968. package/dist/esm/api/networkToNetworkInterconnects/operations.js +303 -0
  969. package/dist/esm/api/networkToNetworkInterconnects/operations.js.map +1 -0
  970. package/dist/esm/api/networkToNetworkInterconnects/options.d.ts +38 -0
  971. package/dist/esm/api/networkToNetworkInterconnects/options.js +4 -0
  972. package/dist/esm/api/networkToNetworkInterconnects/options.js.map +1 -0
  973. package/dist/esm/api/operations/index.d.ts +3 -0
  974. package/dist/esm/api/operations/index.js +4 -0
  975. package/dist/esm/api/operations/index.js.map +1 -0
  976. package/dist/esm/api/operations/operations.d.ts +10 -0
  977. package/dist/esm/api/operations/operations.js +33 -0
  978. package/dist/esm/api/operations/operations.js.map +1 -0
  979. package/dist/esm/api/operations/options.d.ts +5 -0
  980. package/dist/esm/api/operations/options.js +4 -0
  981. package/dist/esm/api/operations/options.js.map +1 -0
  982. package/dist/esm/api/routePolicies/index.d.ts +3 -0
  983. package/dist/esm/api/routePolicies/index.js +4 -0
  984. package/dist/esm/api/routePolicies/index.js.map +1 -0
  985. package/dist/esm/api/routePolicies/operations.d.ts +43 -0
  986. package/dist/esm/api/routePolicies/operations.js +306 -0
  987. package/dist/esm/api/routePolicies/operations.js.map +1 -0
  988. package/dist/esm/api/routePolicies/options.d.ts +41 -0
  989. package/dist/esm/api/routePolicies/options.js +4 -0
  990. package/dist/esm/api/routePolicies/options.js.map +1 -0
  991. package/dist/esm/azureNetworkFabricManagementServiceAPI.d.ts +91 -41
  992. package/dist/esm/azureNetworkFabricManagementServiceAPI.js +127 -165
  993. package/dist/esm/azureNetworkFabricManagementServiceAPI.js.map +1 -7
  994. package/dist/esm/classic/accessControlLists/index.d.ts +53 -0
  995. package/dist/esm/classic/accessControlLists/index.js +71 -0
  996. package/dist/esm/classic/accessControlLists/index.js.map +1 -0
  997. package/dist/esm/classic/externalNetworks/index.d.ts +51 -0
  998. package/dist/esm/classic/externalNetworks/index.js +70 -0
  999. package/dist/esm/classic/externalNetworks/index.js.map +1 -0
  1000. package/dist/esm/classic/index.d.ts +28 -0
  1001. package/dist/esm/classic/index.js +4 -0
  1002. package/dist/esm/classic/index.js.map +1 -0
  1003. package/dist/esm/classic/internalNetworks/index.d.ts +57 -0
  1004. package/dist/esm/classic/internalNetworks/index.js +79 -0
  1005. package/dist/esm/classic/internalNetworks/index.js.map +1 -0
  1006. package/dist/esm/classic/internetGatewayRules/index.d.ts +35 -0
  1007. package/dist/esm/classic/internetGatewayRules/index.js +44 -0
  1008. package/dist/esm/classic/internetGatewayRules/index.js.map +1 -0
  1009. package/dist/esm/classic/internetGateways/index.d.ts +35 -0
  1010. package/dist/esm/classic/internetGateways/index.js +44 -0
  1011. package/dist/esm/classic/internetGateways/index.js.map +1 -0
  1012. package/dist/esm/classic/ipCommunities/index.d.ts +35 -0
  1013. package/dist/esm/classic/ipCommunities/index.js +44 -0
  1014. package/dist/esm/classic/ipCommunities/index.js.map +1 -0
  1015. package/dist/esm/classic/ipExtendedCommunities/index.d.ts +35 -0
  1016. package/dist/esm/classic/ipExtendedCommunities/index.js +44 -0
  1017. package/dist/esm/classic/ipExtendedCommunities/index.js.map +1 -0
  1018. package/dist/esm/classic/ipPrefixes/index.d.ts +35 -0
  1019. package/dist/esm/classic/ipPrefixes/index.js +44 -0
  1020. package/dist/esm/classic/ipPrefixes/index.js.map +1 -0
  1021. package/dist/esm/classic/l2IsolationDomains/index.d.ts +53 -0
  1022. package/dist/esm/classic/l2IsolationDomains/index.js +71 -0
  1023. package/dist/esm/classic/l2IsolationDomains/index.js.map +1 -0
  1024. package/dist/esm/classic/l3IsolationDomains/index.d.ts +53 -0
  1025. package/dist/esm/classic/l3IsolationDomains/index.js +71 -0
  1026. package/dist/esm/classic/l3IsolationDomains/index.js.map +1 -0
  1027. package/dist/esm/classic/neighborGroups/index.d.ts +41 -0
  1028. package/dist/esm/classic/neighborGroups/index.js +53 -0
  1029. package/dist/esm/classic/neighborGroups/index.js.map +1 -0
  1030. package/dist/esm/classic/networkBootstrapDevices/index.d.ts +65 -0
  1031. package/dist/esm/classic/networkBootstrapDevices/index.js +89 -0
  1032. package/dist/esm/classic/networkBootstrapDevices/index.js.map +1 -0
  1033. package/dist/esm/classic/networkBootstrapInterfaces/index.d.ts +39 -0
  1034. package/dist/esm/classic/networkBootstrapInterfaces/index.js +52 -0
  1035. package/dist/esm/classic/networkBootstrapInterfaces/index.js.map +1 -0
  1036. package/dist/esm/classic/networkDeviceSkus/index.d.ts +13 -0
  1037. package/dist/esm/classic/networkDeviceSkus/index.js +15 -0
  1038. package/dist/esm/classic/networkDeviceSkus/index.js.map +1 -0
  1039. package/dist/esm/classic/networkDevices/index.d.ts +83 -0
  1040. package/dist/esm/classic/networkDevices/index.js +116 -0
  1041. package/dist/esm/classic/networkDevices/index.js.map +1 -0
  1042. package/dist/esm/classic/networkFabricControllers/index.d.ts +35 -0
  1043. package/dist/esm/classic/networkFabricControllers/index.js +44 -0
  1044. package/dist/esm/classic/networkFabricControllers/index.js.map +1 -0
  1045. package/dist/esm/classic/networkFabricSkus/index.d.ts +13 -0
  1046. package/dist/esm/classic/networkFabricSkus/index.js +15 -0
  1047. package/dist/esm/classic/networkFabricSkus/index.js.map +1 -0
  1048. package/dist/esm/classic/networkFabrics/index.d.ts +154 -0
  1049. package/dist/esm/classic/networkFabrics/index.js +206 -0
  1050. package/dist/esm/classic/networkFabrics/index.js.map +1 -0
  1051. package/dist/esm/classic/networkInterfaces/index.d.ts +39 -0
  1052. package/dist/esm/classic/networkInterfaces/index.js +52 -0
  1053. package/dist/esm/classic/networkInterfaces/index.js.map +1 -0
  1054. package/dist/esm/classic/networkMonitors/index.d.ts +41 -0
  1055. package/dist/esm/classic/networkMonitors/index.js +53 -0
  1056. package/dist/esm/classic/networkMonitors/index.js.map +1 -0
  1057. package/dist/esm/classic/networkPacketBrokers/index.d.ts +35 -0
  1058. package/dist/esm/classic/networkPacketBrokers/index.js +44 -0
  1059. package/dist/esm/classic/networkPacketBrokers/index.js.map +1 -0
  1060. package/dist/esm/classic/networkRacks/index.d.ts +35 -0
  1061. package/dist/esm/classic/networkRacks/index.js +44 -0
  1062. package/dist/esm/classic/networkRacks/index.js.map +1 -0
  1063. package/dist/esm/classic/networkTapRules/index.d.ts +53 -0
  1064. package/dist/esm/classic/networkTapRules/index.js +71 -0
  1065. package/dist/esm/classic/networkTapRules/index.js.map +1 -0
  1066. package/dist/esm/classic/networkTaps/index.d.ts +47 -0
  1067. package/dist/esm/classic/networkTaps/index.js +62 -0
  1068. package/dist/esm/classic/networkTaps/index.js.map +1 -0
  1069. package/dist/esm/classic/networkToNetworkInterconnects/index.d.ts +51 -0
  1070. package/dist/esm/classic/networkToNetworkInterconnects/index.js +70 -0
  1071. package/dist/esm/classic/networkToNetworkInterconnects/index.js.map +1 -0
  1072. package/dist/esm/classic/operations/index.d.ts +11 -0
  1073. package/dist/esm/classic/operations/index.js +14 -0
  1074. package/dist/esm/classic/operations/index.js.map +1 -0
  1075. package/dist/esm/classic/routePolicies/index.d.ts +53 -0
  1076. package/dist/esm/classic/routePolicies/index.js +71 -0
  1077. package/dist/esm/classic/routePolicies/index.js.map +1 -0
  1078. package/dist/esm/index.d.ts +41 -3
  1079. package/dist/esm/index.js +9 -8
  1080. package/dist/esm/index.js.map +1 -7
  1081. package/dist/esm/logger.d.ts +2 -0
  1082. package/dist/esm/logger.js +5 -0
  1083. package/dist/esm/logger.js.map +1 -0
  1084. package/dist/esm/models/index.d.ts +2 -5379
  1085. package/dist/esm/models/index.js +4 -335
  1086. package/dist/esm/models/index.js.map +1 -7
  1087. package/dist/esm/models/models.d.ts +7474 -0
  1088. package/dist/esm/models/models.js +8926 -0
  1089. package/dist/esm/models/models.js.map +1 -0
  1090. package/dist/esm/restorePollerHelpers.d.ts +21 -0
  1091. package/dist/esm/restorePollerHelpers.js +421 -0
  1092. package/dist/esm/restorePollerHelpers.js.map +1 -0
  1093. package/dist/esm/static-helpers/cloudSettingHelpers.d.ts +22 -0
  1094. package/dist/esm/static-helpers/cloudSettingHelpers.js +38 -0
  1095. package/dist/esm/static-helpers/cloudSettingHelpers.js.map +1 -0
  1096. package/dist/esm/static-helpers/pagingHelpers.d.ts +74 -0
  1097. package/dist/esm/static-helpers/pagingHelpers.js +143 -0
  1098. package/dist/esm/static-helpers/pagingHelpers.js.map +1 -0
  1099. package/dist/esm/static-helpers/pollingHelpers.d.ts +34 -0
  1100. package/dist/esm/static-helpers/pollingHelpers.js +95 -0
  1101. package/dist/esm/static-helpers/pollingHelpers.js.map +1 -0
  1102. package/dist/esm/static-helpers/serialization/check-prop-undefined.d.ts +8 -0
  1103. package/dist/esm/static-helpers/serialization/check-prop-undefined.js +17 -0
  1104. package/dist/esm/static-helpers/serialization/check-prop-undefined.js.map +1 -0
  1105. package/dist/esm/static-helpers/simplePollerHelpers.d.ts +73 -0
  1106. package/dist/esm/static-helpers/simplePollerHelpers.js +44 -0
  1107. package/dist/esm/static-helpers/simplePollerHelpers.js.map +1 -0
  1108. package/dist/esm/static-helpers/urlTemplate.d.ts +5 -0
  1109. package/dist/esm/static-helpers/urlTemplate.js +200 -0
  1110. package/dist/esm/static-helpers/urlTemplate.js.map +1 -0
  1111. package/package.json +494 -78
  1112. package/CHANGELOG.md +0 -21
  1113. package/dist/browser/azureNetworkFabricManagementServiceAPI.d.ts.map +0 -1
  1114. package/dist/browser/index.d.ts.map +0 -1
  1115. package/dist/browser/lroImpl.d.ts +0 -11
  1116. package/dist/browser/lroImpl.d.ts.map +0 -1
  1117. package/dist/browser/lroImpl.js +0 -18
  1118. package/dist/browser/lroImpl.js.map +0 -1
  1119. package/dist/browser/models/index.d.ts.map +0 -1
  1120. package/dist/browser/models/mappers.d.ts +0 -292
  1121. package/dist/browser/models/mappers.d.ts.map +0 -1
  1122. package/dist/browser/models/mappers.js +0 -9051
  1123. package/dist/browser/models/mappers.js.map +0 -1
  1124. package/dist/browser/models/parameters.d.ts +0 -79
  1125. package/dist/browser/models/parameters.d.ts.map +0 -1
  1126. package/dist/browser/models/parameters.js +0 -506
  1127. package/dist/browser/models/parameters.js.map +0 -1
  1128. package/dist/browser/operations/accessControlLists.d.ts +0 -151
  1129. package/dist/browser/operations/accessControlLists.d.ts.map +0 -1
  1130. package/dist/browser/operations/accessControlLists.js +0 -788
  1131. package/dist/browser/operations/accessControlLists.js.map +0 -1
  1132. package/dist/browser/operations/externalNetworks.d.ts +0 -136
  1133. package/dist/browser/operations/externalNetworks.d.ts.map +0 -1
  1134. package/dist/browser/operations/externalNetworks.js +0 -660
  1135. package/dist/browser/operations/externalNetworks.js.map +0 -1
  1136. package/dist/browser/operations/index.d.ts +0 -25
  1137. package/dist/browser/operations/index.d.ts.map +0 -1
  1138. package/dist/browser/operations/index.js +0 -32
  1139. package/dist/browser/operations/index.js.map +0 -1
  1140. package/dist/browser/operations/internalNetworks.d.ts +0 -154
  1141. package/dist/browser/operations/internalNetworks.d.ts.map +0 -1
  1142. package/dist/browser/operations/internalNetworks.js +0 -760
  1143. package/dist/browser/operations/internalNetworks.js.map +0 -1
  1144. package/dist/browser/operations/internetGatewayRules.d.ts +0 -107
  1145. package/dist/browser/operations/internetGatewayRules.d.ts.map +0 -1
  1146. package/dist/browser/operations/internetGatewayRules.js +0 -523
  1147. package/dist/browser/operations/internetGatewayRules.js.map +0 -1
  1148. package/dist/browser/operations/internetGateways.d.ts +0 -107
  1149. package/dist/browser/operations/internetGateways.d.ts.map +0 -1
  1150. package/dist/browser/operations/internetGateways.js +0 -515
  1151. package/dist/browser/operations/internetGateways.js.map +0 -1
  1152. package/dist/browser/operations/ipCommunities.d.ts +0 -107
  1153. package/dist/browser/operations/ipCommunities.d.ts.map +0 -1
  1154. package/dist/browser/operations/ipCommunities.js +0 -523
  1155. package/dist/browser/operations/ipCommunities.js.map +0 -1
  1156. package/dist/browser/operations/ipExtendedCommunities.d.ts +0 -107
  1157. package/dist/browser/operations/ipExtendedCommunities.d.ts.map +0 -1
  1158. package/dist/browser/operations/ipExtendedCommunities.js +0 -523
  1159. package/dist/browser/operations/ipExtendedCommunities.js.map +0 -1
  1160. package/dist/browser/operations/ipPrefixes.d.ts +0 -107
  1161. package/dist/browser/operations/ipPrefixes.d.ts.map +0 -1
  1162. package/dist/browser/operations/ipPrefixes.js +0 -523
  1163. package/dist/browser/operations/ipPrefixes.js.map +0 -1
  1164. package/dist/browser/operations/l2IsolationDomains.d.ts +0 -153
  1165. package/dist/browser/operations/l2IsolationDomains.d.ts.map +0 -1
  1166. package/dist/browser/operations/l2IsolationDomains.js +0 -782
  1167. package/dist/browser/operations/l2IsolationDomains.js.map +0 -1
  1168. package/dist/browser/operations/l3IsolationDomains.d.ts +0 -155
  1169. package/dist/browser/operations/l3IsolationDomains.d.ts.map +0 -1
  1170. package/dist/browser/operations/l3IsolationDomains.js +0 -784
  1171. package/dist/browser/operations/l3IsolationDomains.js.map +0 -1
  1172. package/dist/browser/operations/neighborGroups.d.ts +0 -107
  1173. package/dist/browser/operations/neighborGroups.d.ts.map +0 -1
  1174. package/dist/browser/operations/neighborGroups.js +0 -515
  1175. package/dist/browser/operations/neighborGroups.js.map +0 -1
  1176. package/dist/browser/operations/networkDeviceSkus.d.ts +0 -38
  1177. package/dist/browser/operations/networkDeviceSkus.d.ts.map +0 -1
  1178. package/dist/browser/operations/networkDeviceSkus.js +0 -148
  1179. package/dist/browser/operations/networkDeviceSkus.js.map +0 -1
  1180. package/dist/browser/operations/networkDevices.d.ts +0 -169
  1181. package/dist/browser/operations/networkDevices.d.ts.map +0 -1
  1182. package/dist/browser/operations/networkDevices.js +0 -875
  1183. package/dist/browser/operations/networkDevices.js.map +0 -1
  1184. package/dist/browser/operations/networkFabricControllers.d.ts +0 -107
  1185. package/dist/browser/operations/networkFabricControllers.d.ts.map +0 -1
  1186. package/dist/browser/operations/networkFabricControllers.js +0 -523
  1187. package/dist/browser/operations/networkFabricControllers.js.map +0 -1
  1188. package/dist/browser/operations/networkFabricSkus.d.ts +0 -38
  1189. package/dist/browser/operations/networkFabricSkus.d.ts.map +0 -1
  1190. package/dist/browser/operations/networkFabricSkus.js +0 -148
  1191. package/dist/browser/operations/networkFabricSkus.js.map +0 -1
  1192. package/dist/browser/operations/networkFabrics.d.ts +0 -245
  1193. package/dist/browser/operations/networkFabrics.d.ts.map +0 -1
  1194. package/dist/browser/operations/networkFabrics.js +0 -1326
  1195. package/dist/browser/operations/networkFabrics.js.map +0 -1
  1196. package/dist/browser/operations/networkInterfaces.d.ts +0 -117
  1197. package/dist/browser/operations/networkInterfaces.d.ts.map +0 -1
  1198. package/dist/browser/operations/networkInterfaces.js +0 -554
  1199. package/dist/browser/operations/networkInterfaces.js.map +0 -1
  1200. package/dist/browser/operations/networkPacketBrokers.d.ts +0 -107
  1201. package/dist/browser/operations/networkPacketBrokers.d.ts.map +0 -1
  1202. package/dist/browser/operations/networkPacketBrokers.js +0 -515
  1203. package/dist/browser/operations/networkPacketBrokers.js.map +0 -1
  1204. package/dist/browser/operations/networkRacks.d.ts +0 -107
  1205. package/dist/browser/operations/networkRacks.d.ts.map +0 -1
  1206. package/dist/browser/operations/networkRacks.js +0 -515
  1207. package/dist/browser/operations/networkRacks.js.map +0 -1
  1208. package/dist/browser/operations/networkTapRules.d.ts +0 -151
  1209. package/dist/browser/operations/networkTapRules.d.ts.map +0 -1
  1210. package/dist/browser/operations/networkTapRules.js +0 -788
  1211. package/dist/browser/operations/networkTapRules.js.map +0 -1
  1212. package/dist/browser/operations/networkTaps.d.ts +0 -137
  1213. package/dist/browser/operations/networkTaps.d.ts.map +0 -1
  1214. package/dist/browser/operations/networkTaps.js +0 -693
  1215. package/dist/browser/operations/networkTaps.js.map +0 -1
  1216. package/dist/browser/operations/networkToNetworkInterconnects.d.ts +0 -135
  1217. package/dist/browser/operations/networkToNetworkInterconnects.d.ts.map +0 -1
  1218. package/dist/browser/operations/networkToNetworkInterconnects.js +0 -659
  1219. package/dist/browser/operations/networkToNetworkInterconnects.js.map +0 -1
  1220. package/dist/browser/operations/operations.d.ts +0 -32
  1221. package/dist/browser/operations/operations.d.ts.map +0 -1
  1222. package/dist/browser/operations/operations.js +0 -116
  1223. package/dist/browser/operations/operations.js.map +0 -1
  1224. package/dist/browser/operations/routePolicies.d.ts +0 -151
  1225. package/dist/browser/operations/routePolicies.d.ts.map +0 -1
  1226. package/dist/browser/operations/routePolicies.js +0 -780
  1227. package/dist/browser/operations/routePolicies.js.map +0 -1
  1228. package/dist/browser/operationsInterfaces/accessControlLists.d.ts +0 -115
  1229. package/dist/browser/operationsInterfaces/accessControlLists.d.ts.map +0 -1
  1230. package/dist/browser/operationsInterfaces/accessControlLists.js +0 -9
  1231. package/dist/browser/operationsInterfaces/accessControlLists.js.map +0 -1
  1232. package/dist/browser/operationsInterfaces/externalNetworks.d.ts +0 -110
  1233. package/dist/browser/operationsInterfaces/externalNetworks.d.ts.map +0 -1
  1234. package/dist/browser/operationsInterfaces/externalNetworks.js +0 -9
  1235. package/dist/browser/operationsInterfaces/externalNetworks.js.map +0 -1
  1236. package/dist/browser/operationsInterfaces/index.d.ts +0 -25
  1237. package/dist/browser/operationsInterfaces/index.d.ts.map +0 -1
  1238. package/dist/browser/operationsInterfaces/index.js +0 -32
  1239. package/dist/browser/operationsInterfaces/index.js.map +0 -1
  1240. package/dist/browser/operationsInterfaces/internalNetworks.d.ts +0 -128
  1241. package/dist/browser/operationsInterfaces/internalNetworks.d.ts.map +0 -1
  1242. package/dist/browser/operationsInterfaces/internalNetworks.js +0 -9
  1243. package/dist/browser/operationsInterfaces/internalNetworks.js.map +0 -1
  1244. package/dist/browser/operationsInterfaces/internetGatewayRules.d.ts +0 -71
  1245. package/dist/browser/operationsInterfaces/internetGatewayRules.d.ts.map +0 -1
  1246. package/dist/browser/operationsInterfaces/internetGatewayRules.js +0 -9
  1247. package/dist/browser/operationsInterfaces/internetGatewayRules.js.map +0 -1
  1248. package/dist/browser/operationsInterfaces/internetGateways.d.ts +0 -71
  1249. package/dist/browser/operationsInterfaces/internetGateways.d.ts.map +0 -1
  1250. package/dist/browser/operationsInterfaces/internetGateways.js +0 -9
  1251. package/dist/browser/operationsInterfaces/internetGateways.js.map +0 -1
  1252. package/dist/browser/operationsInterfaces/ipCommunities.d.ts +0 -71
  1253. package/dist/browser/operationsInterfaces/ipCommunities.d.ts.map +0 -1
  1254. package/dist/browser/operationsInterfaces/ipCommunities.js +0 -9
  1255. package/dist/browser/operationsInterfaces/ipCommunities.js.map +0 -1
  1256. package/dist/browser/operationsInterfaces/ipExtendedCommunities.d.ts +0 -71
  1257. package/dist/browser/operationsInterfaces/ipExtendedCommunities.d.ts.map +0 -1
  1258. package/dist/browser/operationsInterfaces/ipExtendedCommunities.js +0 -9
  1259. package/dist/browser/operationsInterfaces/ipExtendedCommunities.js.map +0 -1
  1260. package/dist/browser/operationsInterfaces/ipPrefixes.d.ts +0 -71
  1261. package/dist/browser/operationsInterfaces/ipPrefixes.d.ts.map +0 -1
  1262. package/dist/browser/operationsInterfaces/ipPrefixes.js +0 -9
  1263. package/dist/browser/operationsInterfaces/ipPrefixes.js.map +0 -1
  1264. package/dist/browser/operationsInterfaces/l2IsolationDomains.d.ts +0 -117
  1265. package/dist/browser/operationsInterfaces/l2IsolationDomains.d.ts.map +0 -1
  1266. package/dist/browser/operationsInterfaces/l2IsolationDomains.js +0 -9
  1267. package/dist/browser/operationsInterfaces/l2IsolationDomains.js.map +0 -1
  1268. package/dist/browser/operationsInterfaces/l3IsolationDomains.d.ts +0 -119
  1269. package/dist/browser/operationsInterfaces/l3IsolationDomains.d.ts.map +0 -1
  1270. package/dist/browser/operationsInterfaces/l3IsolationDomains.js +0 -9
  1271. package/dist/browser/operationsInterfaces/l3IsolationDomains.js.map +0 -1
  1272. package/dist/browser/operationsInterfaces/neighborGroups.d.ts +0 -71
  1273. package/dist/browser/operationsInterfaces/neighborGroups.d.ts.map +0 -1
  1274. package/dist/browser/operationsInterfaces/neighborGroups.js +0 -9
  1275. package/dist/browser/operationsInterfaces/neighborGroups.js.map +0 -1
  1276. package/dist/browser/operationsInterfaces/networkDeviceSkus.d.ts +0 -17
  1277. package/dist/browser/operationsInterfaces/networkDeviceSkus.d.ts.map +0 -1
  1278. package/dist/browser/operationsInterfaces/networkDeviceSkus.js +0 -9
  1279. package/dist/browser/operationsInterfaces/networkDeviceSkus.js.map +0 -1
  1280. package/dist/browser/operationsInterfaces/networkDevices.d.ts +0 -133
  1281. package/dist/browser/operationsInterfaces/networkDevices.d.ts.map +0 -1
  1282. package/dist/browser/operationsInterfaces/networkDevices.js +0 -9
  1283. package/dist/browser/operationsInterfaces/networkDevices.js.map +0 -1
  1284. package/dist/browser/operationsInterfaces/networkFabricControllers.d.ts +0 -71
  1285. package/dist/browser/operationsInterfaces/networkFabricControllers.d.ts.map +0 -1
  1286. package/dist/browser/operationsInterfaces/networkFabricControllers.js +0 -9
  1287. package/dist/browser/operationsInterfaces/networkFabricControllers.js.map +0 -1
  1288. package/dist/browser/operationsInterfaces/networkFabricSkus.d.ts +0 -17
  1289. package/dist/browser/operationsInterfaces/networkFabricSkus.d.ts.map +0 -1
  1290. package/dist/browser/operationsInterfaces/networkFabricSkus.js +0 -9
  1291. package/dist/browser/operationsInterfaces/networkFabricSkus.js.map +0 -1
  1292. package/dist/browser/operationsInterfaces/networkFabrics.d.ts +0 -209
  1293. package/dist/browser/operationsInterfaces/networkFabrics.d.ts.map +0 -1
  1294. package/dist/browser/operationsInterfaces/networkFabrics.js +0 -9
  1295. package/dist/browser/operationsInterfaces/networkFabrics.js.map +0 -1
  1296. package/dist/browser/operationsInterfaces/networkInterfaces.d.ts +0 -92
  1297. package/dist/browser/operationsInterfaces/networkInterfaces.d.ts.map +0 -1
  1298. package/dist/browser/operationsInterfaces/networkInterfaces.js +0 -9
  1299. package/dist/browser/operationsInterfaces/networkInterfaces.js.map +0 -1
  1300. package/dist/browser/operationsInterfaces/networkPacketBrokers.d.ts +0 -71
  1301. package/dist/browser/operationsInterfaces/networkPacketBrokers.d.ts.map +0 -1
  1302. package/dist/browser/operationsInterfaces/networkPacketBrokers.js +0 -9
  1303. package/dist/browser/operationsInterfaces/networkPacketBrokers.js.map +0 -1
  1304. package/dist/browser/operationsInterfaces/networkRacks.d.ts +0 -71
  1305. package/dist/browser/operationsInterfaces/networkRacks.d.ts.map +0 -1
  1306. package/dist/browser/operationsInterfaces/networkRacks.js +0 -9
  1307. package/dist/browser/operationsInterfaces/networkRacks.js.map +0 -1
  1308. package/dist/browser/operationsInterfaces/networkTapRules.d.ts +0 -115
  1309. package/dist/browser/operationsInterfaces/networkTapRules.d.ts.map +0 -1
  1310. package/dist/browser/operationsInterfaces/networkTapRules.js +0 -9
  1311. package/dist/browser/operationsInterfaces/networkTapRules.js.map +0 -1
  1312. package/dist/browser/operationsInterfaces/networkTaps.d.ts +0 -101
  1313. package/dist/browser/operationsInterfaces/networkTaps.d.ts.map +0 -1
  1314. package/dist/browser/operationsInterfaces/networkTaps.js +0 -9
  1315. package/dist/browser/operationsInterfaces/networkTaps.js.map +0 -1
  1316. package/dist/browser/operationsInterfaces/networkToNetworkInterconnects.d.ts +0 -110
  1317. package/dist/browser/operationsInterfaces/networkToNetworkInterconnects.d.ts.map +0 -1
  1318. package/dist/browser/operationsInterfaces/networkToNetworkInterconnects.js +0 -9
  1319. package/dist/browser/operationsInterfaces/networkToNetworkInterconnects.js.map +0 -1
  1320. package/dist/browser/operationsInterfaces/operations.d.ts +0 -11
  1321. package/dist/browser/operationsInterfaces/operations.d.ts.map +0 -1
  1322. package/dist/browser/operationsInterfaces/operations.js +0 -9
  1323. package/dist/browser/operationsInterfaces/operations.js.map +0 -1
  1324. package/dist/browser/operationsInterfaces/routePolicies.d.ts +0 -115
  1325. package/dist/browser/operationsInterfaces/routePolicies.d.ts.map +0 -1
  1326. package/dist/browser/operationsInterfaces/routePolicies.js +0 -9
  1327. package/dist/browser/operationsInterfaces/routePolicies.js.map +0 -1
  1328. package/dist/browser/pagingHelper.d.ts +0 -13
  1329. package/dist/browser/pagingHelper.d.ts.map +0 -1
  1330. package/dist/browser/pagingHelper.js +0 -30
  1331. package/dist/browser/pagingHelper.js.map +0 -1
  1332. package/dist/commonjs/azureNetworkFabricManagementServiceAPI.d.ts.map +0 -1
  1333. package/dist/commonjs/index.d.ts.map +0 -1
  1334. package/dist/commonjs/lroImpl.d.ts +0 -11
  1335. package/dist/commonjs/lroImpl.d.ts.map +0 -1
  1336. package/dist/commonjs/lroImpl.js +0 -43
  1337. package/dist/commonjs/lroImpl.js.map +0 -7
  1338. package/dist/commonjs/models/index.d.ts.map +0 -1
  1339. package/dist/commonjs/models/mappers.d.ts +0 -292
  1340. package/dist/commonjs/models/mappers.d.ts.map +0 -1
  1341. package/dist/commonjs/models/mappers.js +0 -9647
  1342. package/dist/commonjs/models/mappers.js.map +0 -7
  1343. package/dist/commonjs/models/parameters.d.ts +0 -79
  1344. package/dist/commonjs/models/parameters.d.ts.map +0 -1
  1345. package/dist/commonjs/models/parameters.js +0 -676
  1346. package/dist/commonjs/models/parameters.js.map +0 -7
  1347. package/dist/commonjs/operations/accessControlLists.d.ts +0 -151
  1348. package/dist/commonjs/operations/accessControlLists.d.ts.map +0 -1
  1349. package/dist/commonjs/operations/accessControlLists.js +0 -870
  1350. package/dist/commonjs/operations/accessControlLists.js.map +0 -7
  1351. package/dist/commonjs/operations/externalNetworks.d.ts +0 -136
  1352. package/dist/commonjs/operations/externalNetworks.d.ts.map +0 -1
  1353. package/dist/commonjs/operations/externalNetworks.js +0 -749
  1354. package/dist/commonjs/operations/externalNetworks.js.map +0 -7
  1355. package/dist/commonjs/operations/index.d.ts +0 -25
  1356. package/dist/commonjs/operations/index.d.ts.map +0 -1
  1357. package/dist/commonjs/operations/index.js +0 -67
  1358. package/dist/commonjs/operations/index.js.map +0 -7
  1359. package/dist/commonjs/operations/internalNetworks.d.ts +0 -154
  1360. package/dist/commonjs/operations/internalNetworks.d.ts.map +0 -1
  1361. package/dist/commonjs/operations/internalNetworks.js +0 -855
  1362. package/dist/commonjs/operations/internalNetworks.js.map +0 -7
  1363. package/dist/commonjs/operations/internetGatewayRules.d.ts +0 -107
  1364. package/dist/commonjs/operations/internetGatewayRules.d.ts.map +0 -1
  1365. package/dist/commonjs/operations/internetGatewayRules.js +0 -592
  1366. package/dist/commonjs/operations/internetGatewayRules.js.map +0 -7
  1367. package/dist/commonjs/operations/internetGateways.d.ts +0 -107
  1368. package/dist/commonjs/operations/internetGateways.d.ts.map +0 -1
  1369. package/dist/commonjs/operations/internetGateways.js +0 -584
  1370. package/dist/commonjs/operations/internetGateways.js.map +0 -7
  1371. package/dist/commonjs/operations/ipCommunities.d.ts +0 -107
  1372. package/dist/commonjs/operations/ipCommunities.d.ts.map +0 -1
  1373. package/dist/commonjs/operations/ipCommunities.js +0 -592
  1374. package/dist/commonjs/operations/ipCommunities.js.map +0 -7
  1375. package/dist/commonjs/operations/ipExtendedCommunities.d.ts +0 -107
  1376. package/dist/commonjs/operations/ipExtendedCommunities.d.ts.map +0 -1
  1377. package/dist/commonjs/operations/ipExtendedCommunities.js +0 -592
  1378. package/dist/commonjs/operations/ipExtendedCommunities.js.map +0 -7
  1379. package/dist/commonjs/operations/ipPrefixes.d.ts +0 -107
  1380. package/dist/commonjs/operations/ipPrefixes.d.ts.map +0 -1
  1381. package/dist/commonjs/operations/ipPrefixes.js +0 -592
  1382. package/dist/commonjs/operations/ipPrefixes.js.map +0 -7
  1383. package/dist/commonjs/operations/l2IsolationDomains.d.ts +0 -153
  1384. package/dist/commonjs/operations/l2IsolationDomains.d.ts.map +0 -1
  1385. package/dist/commonjs/operations/l2IsolationDomains.js +0 -864
  1386. package/dist/commonjs/operations/l2IsolationDomains.js.map +0 -7
  1387. package/dist/commonjs/operations/l3IsolationDomains.d.ts +0 -155
  1388. package/dist/commonjs/operations/l3IsolationDomains.d.ts.map +0 -1
  1389. package/dist/commonjs/operations/l3IsolationDomains.js +0 -866
  1390. package/dist/commonjs/operations/l3IsolationDomains.js.map +0 -7
  1391. package/dist/commonjs/operations/neighborGroups.d.ts +0 -107
  1392. package/dist/commonjs/operations/neighborGroups.d.ts.map +0 -1
  1393. package/dist/commonjs/operations/neighborGroups.js +0 -584
  1394. package/dist/commonjs/operations/neighborGroups.js.map +0 -7
  1395. package/dist/commonjs/operations/networkDeviceSkus.d.ts +0 -38
  1396. package/dist/commonjs/operations/networkDeviceSkus.d.ts.map +0 -1
  1397. package/dist/commonjs/operations/networkDeviceSkus.js +0 -186
  1398. package/dist/commonjs/operations/networkDeviceSkus.js.map +0 -7
  1399. package/dist/commonjs/operations/networkDevices.d.ts +0 -169
  1400. package/dist/commonjs/operations/networkDevices.d.ts.map +0 -1
  1401. package/dist/commonjs/operations/networkDevices.js +0 -963
  1402. package/dist/commonjs/operations/networkDevices.js.map +0 -7
  1403. package/dist/commonjs/operations/networkFabricControllers.d.ts +0 -107
  1404. package/dist/commonjs/operations/networkFabricControllers.d.ts.map +0 -1
  1405. package/dist/commonjs/operations/networkFabricControllers.js +0 -592
  1406. package/dist/commonjs/operations/networkFabricControllers.js.map +0 -7
  1407. package/dist/commonjs/operations/networkFabricSkus.d.ts +0 -38
  1408. package/dist/commonjs/operations/networkFabricSkus.d.ts.map +0 -1
  1409. package/dist/commonjs/operations/networkFabricSkus.js +0 -186
  1410. package/dist/commonjs/operations/networkFabricSkus.js.map +0 -7
  1411. package/dist/commonjs/operations/networkFabrics.d.ts +0 -245
  1412. package/dist/commonjs/operations/networkFabrics.d.ts.map +0 -1
  1413. package/dist/commonjs/operations/networkFabrics.js +0 -1435
  1414. package/dist/commonjs/operations/networkFabrics.js.map +0 -7
  1415. package/dist/commonjs/operations/networkInterfaces.d.ts +0 -117
  1416. package/dist/commonjs/operations/networkInterfaces.d.ts.map +0 -1
  1417. package/dist/commonjs/operations/networkInterfaces.js +0 -637
  1418. package/dist/commonjs/operations/networkInterfaces.js.map +0 -7
  1419. package/dist/commonjs/operations/networkPacketBrokers.d.ts +0 -107
  1420. package/dist/commonjs/operations/networkPacketBrokers.d.ts.map +0 -1
  1421. package/dist/commonjs/operations/networkPacketBrokers.js +0 -584
  1422. package/dist/commonjs/operations/networkPacketBrokers.js.map +0 -7
  1423. package/dist/commonjs/operations/networkRacks.d.ts +0 -107
  1424. package/dist/commonjs/operations/networkRacks.d.ts.map +0 -1
  1425. package/dist/commonjs/operations/networkRacks.js +0 -584
  1426. package/dist/commonjs/operations/networkRacks.js.map +0 -7
  1427. package/dist/commonjs/operations/networkTapRules.d.ts +0 -151
  1428. package/dist/commonjs/operations/networkTapRules.d.ts.map +0 -1
  1429. package/dist/commonjs/operations/networkTapRules.js +0 -870
  1430. package/dist/commonjs/operations/networkTapRules.js.map +0 -7
  1431. package/dist/commonjs/operations/networkTaps.d.ts +0 -137
  1432. package/dist/commonjs/operations/networkTaps.d.ts.map +0 -1
  1433. package/dist/commonjs/operations/networkTaps.js +0 -771
  1434. package/dist/commonjs/operations/networkTaps.js.map +0 -7
  1435. package/dist/commonjs/operations/networkToNetworkInterconnects.d.ts +0 -135
  1436. package/dist/commonjs/operations/networkToNetworkInterconnects.d.ts.map +0 -1
  1437. package/dist/commonjs/operations/networkToNetworkInterconnects.js +0 -748
  1438. package/dist/commonjs/operations/networkToNetworkInterconnects.js.map +0 -7
  1439. package/dist/commonjs/operations/operations.d.ts +0 -32
  1440. package/dist/commonjs/operations/operations.d.ts.map +0 -1
  1441. package/dist/commonjs/operations/operations.js +0 -148
  1442. package/dist/commonjs/operations/operations.js.map +0 -7
  1443. package/dist/commonjs/operations/routePolicies.d.ts +0 -151
  1444. package/dist/commonjs/operations/routePolicies.d.ts.map +0 -1
  1445. package/dist/commonjs/operations/routePolicies.js +0 -862
  1446. package/dist/commonjs/operations/routePolicies.js.map +0 -7
  1447. package/dist/commonjs/operationsInterfaces/accessControlLists.d.ts +0 -115
  1448. package/dist/commonjs/operationsInterfaces/accessControlLists.d.ts.map +0 -1
  1449. package/dist/commonjs/operationsInterfaces/accessControlLists.js +0 -15
  1450. package/dist/commonjs/operationsInterfaces/accessControlLists.js.map +0 -7
  1451. package/dist/commonjs/operationsInterfaces/externalNetworks.d.ts +0 -110
  1452. package/dist/commonjs/operationsInterfaces/externalNetworks.d.ts.map +0 -1
  1453. package/dist/commonjs/operationsInterfaces/externalNetworks.js +0 -15
  1454. package/dist/commonjs/operationsInterfaces/externalNetworks.js.map +0 -7
  1455. package/dist/commonjs/operationsInterfaces/index.d.ts +0 -25
  1456. package/dist/commonjs/operationsInterfaces/index.d.ts.map +0 -1
  1457. package/dist/commonjs/operationsInterfaces/index.js +0 -67
  1458. package/dist/commonjs/operationsInterfaces/index.js.map +0 -7
  1459. package/dist/commonjs/operationsInterfaces/internalNetworks.d.ts +0 -128
  1460. package/dist/commonjs/operationsInterfaces/internalNetworks.d.ts.map +0 -1
  1461. package/dist/commonjs/operationsInterfaces/internalNetworks.js +0 -15
  1462. package/dist/commonjs/operationsInterfaces/internalNetworks.js.map +0 -7
  1463. package/dist/commonjs/operationsInterfaces/internetGatewayRules.d.ts +0 -71
  1464. package/dist/commonjs/operationsInterfaces/internetGatewayRules.d.ts.map +0 -1
  1465. package/dist/commonjs/operationsInterfaces/internetGatewayRules.js +0 -15
  1466. package/dist/commonjs/operationsInterfaces/internetGatewayRules.js.map +0 -7
  1467. package/dist/commonjs/operationsInterfaces/internetGateways.d.ts +0 -71
  1468. package/dist/commonjs/operationsInterfaces/internetGateways.d.ts.map +0 -1
  1469. package/dist/commonjs/operationsInterfaces/internetGateways.js +0 -15
  1470. package/dist/commonjs/operationsInterfaces/internetGateways.js.map +0 -7
  1471. package/dist/commonjs/operationsInterfaces/ipCommunities.d.ts +0 -71
  1472. package/dist/commonjs/operationsInterfaces/ipCommunities.d.ts.map +0 -1
  1473. package/dist/commonjs/operationsInterfaces/ipCommunities.js +0 -15
  1474. package/dist/commonjs/operationsInterfaces/ipCommunities.js.map +0 -7
  1475. package/dist/commonjs/operationsInterfaces/ipExtendedCommunities.d.ts +0 -71
  1476. package/dist/commonjs/operationsInterfaces/ipExtendedCommunities.d.ts.map +0 -1
  1477. package/dist/commonjs/operationsInterfaces/ipExtendedCommunities.js +0 -15
  1478. package/dist/commonjs/operationsInterfaces/ipExtendedCommunities.js.map +0 -7
  1479. package/dist/commonjs/operationsInterfaces/ipPrefixes.d.ts +0 -71
  1480. package/dist/commonjs/operationsInterfaces/ipPrefixes.d.ts.map +0 -1
  1481. package/dist/commonjs/operationsInterfaces/ipPrefixes.js +0 -15
  1482. package/dist/commonjs/operationsInterfaces/ipPrefixes.js.map +0 -7
  1483. package/dist/commonjs/operationsInterfaces/l2IsolationDomains.d.ts +0 -117
  1484. package/dist/commonjs/operationsInterfaces/l2IsolationDomains.d.ts.map +0 -1
  1485. package/dist/commonjs/operationsInterfaces/l2IsolationDomains.js +0 -15
  1486. package/dist/commonjs/operationsInterfaces/l2IsolationDomains.js.map +0 -7
  1487. package/dist/commonjs/operationsInterfaces/l3IsolationDomains.d.ts +0 -119
  1488. package/dist/commonjs/operationsInterfaces/l3IsolationDomains.d.ts.map +0 -1
  1489. package/dist/commonjs/operationsInterfaces/l3IsolationDomains.js +0 -15
  1490. package/dist/commonjs/operationsInterfaces/l3IsolationDomains.js.map +0 -7
  1491. package/dist/commonjs/operationsInterfaces/neighborGroups.d.ts +0 -71
  1492. package/dist/commonjs/operationsInterfaces/neighborGroups.d.ts.map +0 -1
  1493. package/dist/commonjs/operationsInterfaces/neighborGroups.js +0 -15
  1494. package/dist/commonjs/operationsInterfaces/neighborGroups.js.map +0 -7
  1495. package/dist/commonjs/operationsInterfaces/networkDeviceSkus.d.ts +0 -17
  1496. package/dist/commonjs/operationsInterfaces/networkDeviceSkus.d.ts.map +0 -1
  1497. package/dist/commonjs/operationsInterfaces/networkDeviceSkus.js +0 -15
  1498. package/dist/commonjs/operationsInterfaces/networkDeviceSkus.js.map +0 -7
  1499. package/dist/commonjs/operationsInterfaces/networkDevices.d.ts +0 -133
  1500. package/dist/commonjs/operationsInterfaces/networkDevices.d.ts.map +0 -1
  1501. package/dist/commonjs/operationsInterfaces/networkDevices.js +0 -15
  1502. package/dist/commonjs/operationsInterfaces/networkDevices.js.map +0 -7
  1503. package/dist/commonjs/operationsInterfaces/networkFabricControllers.d.ts +0 -71
  1504. package/dist/commonjs/operationsInterfaces/networkFabricControllers.d.ts.map +0 -1
  1505. package/dist/commonjs/operationsInterfaces/networkFabricControllers.js +0 -15
  1506. package/dist/commonjs/operationsInterfaces/networkFabricControllers.js.map +0 -7
  1507. package/dist/commonjs/operationsInterfaces/networkFabricSkus.d.ts +0 -17
  1508. package/dist/commonjs/operationsInterfaces/networkFabricSkus.d.ts.map +0 -1
  1509. package/dist/commonjs/operationsInterfaces/networkFabricSkus.js +0 -15
  1510. package/dist/commonjs/operationsInterfaces/networkFabricSkus.js.map +0 -7
  1511. package/dist/commonjs/operationsInterfaces/networkFabrics.d.ts +0 -209
  1512. package/dist/commonjs/operationsInterfaces/networkFabrics.d.ts.map +0 -1
  1513. package/dist/commonjs/operationsInterfaces/networkFabrics.js +0 -15
  1514. package/dist/commonjs/operationsInterfaces/networkFabrics.js.map +0 -7
  1515. package/dist/commonjs/operationsInterfaces/networkInterfaces.d.ts +0 -92
  1516. package/dist/commonjs/operationsInterfaces/networkInterfaces.d.ts.map +0 -1
  1517. package/dist/commonjs/operationsInterfaces/networkInterfaces.js +0 -15
  1518. package/dist/commonjs/operationsInterfaces/networkInterfaces.js.map +0 -7
  1519. package/dist/commonjs/operationsInterfaces/networkPacketBrokers.d.ts +0 -71
  1520. package/dist/commonjs/operationsInterfaces/networkPacketBrokers.d.ts.map +0 -1
  1521. package/dist/commonjs/operationsInterfaces/networkPacketBrokers.js +0 -15
  1522. package/dist/commonjs/operationsInterfaces/networkPacketBrokers.js.map +0 -7
  1523. package/dist/commonjs/operationsInterfaces/networkRacks.d.ts +0 -71
  1524. package/dist/commonjs/operationsInterfaces/networkRacks.d.ts.map +0 -1
  1525. package/dist/commonjs/operationsInterfaces/networkRacks.js +0 -15
  1526. package/dist/commonjs/operationsInterfaces/networkRacks.js.map +0 -7
  1527. package/dist/commonjs/operationsInterfaces/networkTapRules.d.ts +0 -115
  1528. package/dist/commonjs/operationsInterfaces/networkTapRules.d.ts.map +0 -1
  1529. package/dist/commonjs/operationsInterfaces/networkTapRules.js +0 -15
  1530. package/dist/commonjs/operationsInterfaces/networkTapRules.js.map +0 -7
  1531. package/dist/commonjs/operationsInterfaces/networkTaps.d.ts +0 -101
  1532. package/dist/commonjs/operationsInterfaces/networkTaps.d.ts.map +0 -1
  1533. package/dist/commonjs/operationsInterfaces/networkTaps.js +0 -15
  1534. package/dist/commonjs/operationsInterfaces/networkTaps.js.map +0 -7
  1535. package/dist/commonjs/operationsInterfaces/networkToNetworkInterconnects.d.ts +0 -110
  1536. package/dist/commonjs/operationsInterfaces/networkToNetworkInterconnects.d.ts.map +0 -1
  1537. package/dist/commonjs/operationsInterfaces/networkToNetworkInterconnects.js +0 -15
  1538. package/dist/commonjs/operationsInterfaces/networkToNetworkInterconnects.js.map +0 -7
  1539. package/dist/commonjs/operationsInterfaces/operations.d.ts +0 -11
  1540. package/dist/commonjs/operationsInterfaces/operations.d.ts.map +0 -1
  1541. package/dist/commonjs/operationsInterfaces/operations.js +0 -15
  1542. package/dist/commonjs/operationsInterfaces/operations.js.map +0 -7
  1543. package/dist/commonjs/operationsInterfaces/routePolicies.d.ts +0 -115
  1544. package/dist/commonjs/operationsInterfaces/routePolicies.d.ts.map +0 -1
  1545. package/dist/commonjs/operationsInterfaces/routePolicies.js +0 -15
  1546. package/dist/commonjs/operationsInterfaces/routePolicies.js.map +0 -7
  1547. package/dist/commonjs/pagingHelper.d.ts +0 -13
  1548. package/dist/commonjs/pagingHelper.d.ts.map +0 -1
  1549. package/dist/commonjs/pagingHelper.js +0 -43
  1550. package/dist/commonjs/pagingHelper.js.map +0 -7
  1551. package/dist/esm/azureNetworkFabricManagementServiceAPI.d.ts.map +0 -1
  1552. package/dist/esm/index.d.ts.map +0 -1
  1553. package/dist/esm/lroImpl.d.ts +0 -11
  1554. package/dist/esm/lroImpl.d.ts.map +0 -1
  1555. package/dist/esm/lroImpl.js +0 -20
  1556. package/dist/esm/lroImpl.js.map +0 -7
  1557. package/dist/esm/models/index.d.ts.map +0 -1
  1558. package/dist/esm/models/mappers.d.ts +0 -292
  1559. package/dist/esm/models/mappers.d.ts.map +0 -1
  1560. package/dist/esm/models/mappers.js +0 -9335
  1561. package/dist/esm/models/mappers.js.map +0 -7
  1562. package/dist/esm/models/parameters.d.ts +0 -79
  1563. package/dist/esm/models/parameters.d.ts.map +0 -1
  1564. package/dist/esm/models/parameters.js +0 -625
  1565. package/dist/esm/models/parameters.js.map +0 -7
  1566. package/dist/esm/operations/accessControlLists.d.ts +0 -151
  1567. package/dist/esm/operations/accessControlLists.d.ts.map +0 -1
  1568. package/dist/esm/operations/accessControlLists.js +0 -839
  1569. package/dist/esm/operations/accessControlLists.js.map +0 -7
  1570. package/dist/esm/operations/externalNetworks.d.ts +0 -136
  1571. package/dist/esm/operations/externalNetworks.d.ts.map +0 -1
  1572. package/dist/esm/operations/externalNetworks.js +0 -718
  1573. package/dist/esm/operations/externalNetworks.js.map +0 -7
  1574. package/dist/esm/operations/index.d.ts +0 -25
  1575. package/dist/esm/operations/index.d.ts.map +0 -1
  1576. package/dist/esm/operations/index.js +0 -24
  1577. package/dist/esm/operations/index.js.map +0 -7
  1578. package/dist/esm/operations/internalNetworks.d.ts +0 -154
  1579. package/dist/esm/operations/internalNetworks.d.ts.map +0 -1
  1580. package/dist/esm/operations/internalNetworks.js +0 -824
  1581. package/dist/esm/operations/internalNetworks.js.map +0 -7
  1582. package/dist/esm/operations/internetGatewayRules.d.ts +0 -107
  1583. package/dist/esm/operations/internetGatewayRules.d.ts.map +0 -1
  1584. package/dist/esm/operations/internetGatewayRules.js +0 -561
  1585. package/dist/esm/operations/internetGatewayRules.js.map +0 -7
  1586. package/dist/esm/operations/internetGateways.d.ts +0 -107
  1587. package/dist/esm/operations/internetGateways.d.ts.map +0 -1
  1588. package/dist/esm/operations/internetGateways.js +0 -553
  1589. package/dist/esm/operations/internetGateways.js.map +0 -7
  1590. package/dist/esm/operations/ipCommunities.d.ts +0 -107
  1591. package/dist/esm/operations/ipCommunities.d.ts.map +0 -1
  1592. package/dist/esm/operations/ipCommunities.js +0 -561
  1593. package/dist/esm/operations/ipCommunities.js.map +0 -7
  1594. package/dist/esm/operations/ipExtendedCommunities.d.ts +0 -107
  1595. package/dist/esm/operations/ipExtendedCommunities.d.ts.map +0 -1
  1596. package/dist/esm/operations/ipExtendedCommunities.js +0 -561
  1597. package/dist/esm/operations/ipExtendedCommunities.js.map +0 -7
  1598. package/dist/esm/operations/ipPrefixes.d.ts +0 -107
  1599. package/dist/esm/operations/ipPrefixes.d.ts.map +0 -1
  1600. package/dist/esm/operations/ipPrefixes.js +0 -561
  1601. package/dist/esm/operations/ipPrefixes.js.map +0 -7
  1602. package/dist/esm/operations/l2IsolationDomains.d.ts +0 -153
  1603. package/dist/esm/operations/l2IsolationDomains.d.ts.map +0 -1
  1604. package/dist/esm/operations/l2IsolationDomains.js +0 -833
  1605. package/dist/esm/operations/l2IsolationDomains.js.map +0 -7
  1606. package/dist/esm/operations/l3IsolationDomains.d.ts +0 -155
  1607. package/dist/esm/operations/l3IsolationDomains.d.ts.map +0 -1
  1608. package/dist/esm/operations/l3IsolationDomains.js +0 -835
  1609. package/dist/esm/operations/l3IsolationDomains.js.map +0 -7
  1610. package/dist/esm/operations/neighborGroups.d.ts +0 -107
  1611. package/dist/esm/operations/neighborGroups.d.ts.map +0 -1
  1612. package/dist/esm/operations/neighborGroups.js +0 -553
  1613. package/dist/esm/operations/neighborGroups.js.map +0 -7
  1614. package/dist/esm/operations/networkDeviceSkus.d.ts +0 -38
  1615. package/dist/esm/operations/networkDeviceSkus.d.ts.map +0 -1
  1616. package/dist/esm/operations/networkDeviceSkus.js +0 -153
  1617. package/dist/esm/operations/networkDeviceSkus.js.map +0 -7
  1618. package/dist/esm/operations/networkDevices.d.ts +0 -169
  1619. package/dist/esm/operations/networkDevices.d.ts.map +0 -1
  1620. package/dist/esm/operations/networkDevices.js +0 -932
  1621. package/dist/esm/operations/networkDevices.js.map +0 -7
  1622. package/dist/esm/operations/networkFabricControllers.d.ts +0 -107
  1623. package/dist/esm/operations/networkFabricControllers.d.ts.map +0 -1
  1624. package/dist/esm/operations/networkFabricControllers.js +0 -561
  1625. package/dist/esm/operations/networkFabricControllers.js.map +0 -7
  1626. package/dist/esm/operations/networkFabricSkus.d.ts +0 -38
  1627. package/dist/esm/operations/networkFabricSkus.d.ts.map +0 -1
  1628. package/dist/esm/operations/networkFabricSkus.js +0 -153
  1629. package/dist/esm/operations/networkFabricSkus.js.map +0 -7
  1630. package/dist/esm/operations/networkFabrics.d.ts +0 -245
  1631. package/dist/esm/operations/networkFabrics.d.ts.map +0 -1
  1632. package/dist/esm/operations/networkFabrics.js +0 -1404
  1633. package/dist/esm/operations/networkFabrics.js.map +0 -7
  1634. package/dist/esm/operations/networkInterfaces.d.ts +0 -117
  1635. package/dist/esm/operations/networkInterfaces.d.ts.map +0 -1
  1636. package/dist/esm/operations/networkInterfaces.js +0 -606
  1637. package/dist/esm/operations/networkInterfaces.js.map +0 -7
  1638. package/dist/esm/operations/networkPacketBrokers.d.ts +0 -107
  1639. package/dist/esm/operations/networkPacketBrokers.d.ts.map +0 -1
  1640. package/dist/esm/operations/networkPacketBrokers.js +0 -553
  1641. package/dist/esm/operations/networkPacketBrokers.js.map +0 -7
  1642. package/dist/esm/operations/networkRacks.d.ts +0 -107
  1643. package/dist/esm/operations/networkRacks.d.ts.map +0 -1
  1644. package/dist/esm/operations/networkRacks.js +0 -553
  1645. package/dist/esm/operations/networkRacks.js.map +0 -7
  1646. package/dist/esm/operations/networkTapRules.d.ts +0 -151
  1647. package/dist/esm/operations/networkTapRules.d.ts.map +0 -1
  1648. package/dist/esm/operations/networkTapRules.js +0 -839
  1649. package/dist/esm/operations/networkTapRules.js.map +0 -7
  1650. package/dist/esm/operations/networkTaps.d.ts +0 -137
  1651. package/dist/esm/operations/networkTaps.d.ts.map +0 -1
  1652. package/dist/esm/operations/networkTaps.js +0 -740
  1653. package/dist/esm/operations/networkTaps.js.map +0 -7
  1654. package/dist/esm/operations/networkToNetworkInterconnects.d.ts +0 -135
  1655. package/dist/esm/operations/networkToNetworkInterconnects.d.ts.map +0 -1
  1656. package/dist/esm/operations/networkToNetworkInterconnects.js +0 -717
  1657. package/dist/esm/operations/networkToNetworkInterconnects.js.map +0 -7
  1658. package/dist/esm/operations/operations.d.ts +0 -32
  1659. package/dist/esm/operations/operations.d.ts.map +0 -1
  1660. package/dist/esm/operations/operations.js +0 -115
  1661. package/dist/esm/operations/operations.js.map +0 -7
  1662. package/dist/esm/operations/routePolicies.d.ts +0 -151
  1663. package/dist/esm/operations/routePolicies.d.ts.map +0 -1
  1664. package/dist/esm/operations/routePolicies.js +0 -831
  1665. package/dist/esm/operations/routePolicies.js.map +0 -7
  1666. package/dist/esm/operationsInterfaces/accessControlLists.d.ts +0 -115
  1667. package/dist/esm/operationsInterfaces/accessControlLists.d.ts.map +0 -1
  1668. package/dist/esm/operationsInterfaces/accessControlLists.js +0 -0
  1669. package/dist/esm/operationsInterfaces/accessControlLists.js.map +0 -7
  1670. package/dist/esm/operationsInterfaces/externalNetworks.d.ts +0 -110
  1671. package/dist/esm/operationsInterfaces/externalNetworks.d.ts.map +0 -1
  1672. package/dist/esm/operationsInterfaces/externalNetworks.js +0 -0
  1673. package/dist/esm/operationsInterfaces/externalNetworks.js.map +0 -7
  1674. package/dist/esm/operationsInterfaces/index.d.ts +0 -25
  1675. package/dist/esm/operationsInterfaces/index.d.ts.map +0 -1
  1676. package/dist/esm/operationsInterfaces/index.js +0 -24
  1677. package/dist/esm/operationsInterfaces/index.js.map +0 -7
  1678. package/dist/esm/operationsInterfaces/internalNetworks.d.ts +0 -128
  1679. package/dist/esm/operationsInterfaces/internalNetworks.d.ts.map +0 -1
  1680. package/dist/esm/operationsInterfaces/internalNetworks.js +0 -0
  1681. package/dist/esm/operationsInterfaces/internalNetworks.js.map +0 -7
  1682. package/dist/esm/operationsInterfaces/internetGatewayRules.d.ts +0 -71
  1683. package/dist/esm/operationsInterfaces/internetGatewayRules.d.ts.map +0 -1
  1684. package/dist/esm/operationsInterfaces/internetGatewayRules.js +0 -0
  1685. package/dist/esm/operationsInterfaces/internetGatewayRules.js.map +0 -7
  1686. package/dist/esm/operationsInterfaces/internetGateways.d.ts +0 -71
  1687. package/dist/esm/operationsInterfaces/internetGateways.d.ts.map +0 -1
  1688. package/dist/esm/operationsInterfaces/internetGateways.js +0 -0
  1689. package/dist/esm/operationsInterfaces/internetGateways.js.map +0 -7
  1690. package/dist/esm/operationsInterfaces/ipCommunities.d.ts +0 -71
  1691. package/dist/esm/operationsInterfaces/ipCommunities.d.ts.map +0 -1
  1692. package/dist/esm/operationsInterfaces/ipCommunities.js +0 -0
  1693. package/dist/esm/operationsInterfaces/ipCommunities.js.map +0 -7
  1694. package/dist/esm/operationsInterfaces/ipExtendedCommunities.d.ts +0 -71
  1695. package/dist/esm/operationsInterfaces/ipExtendedCommunities.d.ts.map +0 -1
  1696. package/dist/esm/operationsInterfaces/ipExtendedCommunities.js +0 -0
  1697. package/dist/esm/operationsInterfaces/ipExtendedCommunities.js.map +0 -7
  1698. package/dist/esm/operationsInterfaces/ipPrefixes.d.ts +0 -71
  1699. package/dist/esm/operationsInterfaces/ipPrefixes.d.ts.map +0 -1
  1700. package/dist/esm/operationsInterfaces/ipPrefixes.js +0 -0
  1701. package/dist/esm/operationsInterfaces/ipPrefixes.js.map +0 -7
  1702. package/dist/esm/operationsInterfaces/l2IsolationDomains.d.ts +0 -117
  1703. package/dist/esm/operationsInterfaces/l2IsolationDomains.d.ts.map +0 -1
  1704. package/dist/esm/operationsInterfaces/l2IsolationDomains.js +0 -0
  1705. package/dist/esm/operationsInterfaces/l2IsolationDomains.js.map +0 -7
  1706. package/dist/esm/operationsInterfaces/l3IsolationDomains.d.ts +0 -119
  1707. package/dist/esm/operationsInterfaces/l3IsolationDomains.d.ts.map +0 -1
  1708. package/dist/esm/operationsInterfaces/l3IsolationDomains.js +0 -0
  1709. package/dist/esm/operationsInterfaces/l3IsolationDomains.js.map +0 -7
  1710. package/dist/esm/operationsInterfaces/neighborGroups.d.ts +0 -71
  1711. package/dist/esm/operationsInterfaces/neighborGroups.d.ts.map +0 -1
  1712. package/dist/esm/operationsInterfaces/neighborGroups.js +0 -0
  1713. package/dist/esm/operationsInterfaces/neighborGroups.js.map +0 -7
  1714. package/dist/esm/operationsInterfaces/networkDeviceSkus.d.ts +0 -17
  1715. package/dist/esm/operationsInterfaces/networkDeviceSkus.d.ts.map +0 -1
  1716. package/dist/esm/operationsInterfaces/networkDeviceSkus.js +0 -0
  1717. package/dist/esm/operationsInterfaces/networkDeviceSkus.js.map +0 -7
  1718. package/dist/esm/operationsInterfaces/networkDevices.d.ts +0 -133
  1719. package/dist/esm/operationsInterfaces/networkDevices.d.ts.map +0 -1
  1720. package/dist/esm/operationsInterfaces/networkDevices.js +0 -0
  1721. package/dist/esm/operationsInterfaces/networkDevices.js.map +0 -7
  1722. package/dist/esm/operationsInterfaces/networkFabricControllers.d.ts +0 -71
  1723. package/dist/esm/operationsInterfaces/networkFabricControllers.d.ts.map +0 -1
  1724. package/dist/esm/operationsInterfaces/networkFabricControllers.js +0 -0
  1725. package/dist/esm/operationsInterfaces/networkFabricControllers.js.map +0 -7
  1726. package/dist/esm/operationsInterfaces/networkFabricSkus.d.ts +0 -17
  1727. package/dist/esm/operationsInterfaces/networkFabricSkus.d.ts.map +0 -1
  1728. package/dist/esm/operationsInterfaces/networkFabricSkus.js +0 -0
  1729. package/dist/esm/operationsInterfaces/networkFabricSkus.js.map +0 -7
  1730. package/dist/esm/operationsInterfaces/networkFabrics.d.ts +0 -209
  1731. package/dist/esm/operationsInterfaces/networkFabrics.d.ts.map +0 -1
  1732. package/dist/esm/operationsInterfaces/networkFabrics.js +0 -0
  1733. package/dist/esm/operationsInterfaces/networkFabrics.js.map +0 -7
  1734. package/dist/esm/operationsInterfaces/networkInterfaces.d.ts +0 -92
  1735. package/dist/esm/operationsInterfaces/networkInterfaces.d.ts.map +0 -1
  1736. package/dist/esm/operationsInterfaces/networkInterfaces.js +0 -0
  1737. package/dist/esm/operationsInterfaces/networkInterfaces.js.map +0 -7
  1738. package/dist/esm/operationsInterfaces/networkPacketBrokers.d.ts +0 -71
  1739. package/dist/esm/operationsInterfaces/networkPacketBrokers.d.ts.map +0 -1
  1740. package/dist/esm/operationsInterfaces/networkPacketBrokers.js +0 -0
  1741. package/dist/esm/operationsInterfaces/networkPacketBrokers.js.map +0 -7
  1742. package/dist/esm/operationsInterfaces/networkRacks.d.ts +0 -71
  1743. package/dist/esm/operationsInterfaces/networkRacks.d.ts.map +0 -1
  1744. package/dist/esm/operationsInterfaces/networkRacks.js +0 -0
  1745. package/dist/esm/operationsInterfaces/networkRacks.js.map +0 -7
  1746. package/dist/esm/operationsInterfaces/networkTapRules.d.ts +0 -115
  1747. package/dist/esm/operationsInterfaces/networkTapRules.d.ts.map +0 -1
  1748. package/dist/esm/operationsInterfaces/networkTapRules.js +0 -0
  1749. package/dist/esm/operationsInterfaces/networkTapRules.js.map +0 -7
  1750. package/dist/esm/operationsInterfaces/networkTaps.d.ts +0 -101
  1751. package/dist/esm/operationsInterfaces/networkTaps.d.ts.map +0 -1
  1752. package/dist/esm/operationsInterfaces/networkTaps.js +0 -0
  1753. package/dist/esm/operationsInterfaces/networkTaps.js.map +0 -7
  1754. package/dist/esm/operationsInterfaces/networkToNetworkInterconnects.d.ts +0 -110
  1755. package/dist/esm/operationsInterfaces/networkToNetworkInterconnects.d.ts.map +0 -1
  1756. package/dist/esm/operationsInterfaces/networkToNetworkInterconnects.js +0 -0
  1757. package/dist/esm/operationsInterfaces/networkToNetworkInterconnects.js.map +0 -7
  1758. package/dist/esm/operationsInterfaces/operations.d.ts +0 -11
  1759. package/dist/esm/operationsInterfaces/operations.d.ts.map +0 -1
  1760. package/dist/esm/operationsInterfaces/operations.js +0 -0
  1761. package/dist/esm/operationsInterfaces/operations.js.map +0 -7
  1762. package/dist/esm/operationsInterfaces/routePolicies.d.ts +0 -115
  1763. package/dist/esm/operationsInterfaces/routePolicies.d.ts.map +0 -1
  1764. package/dist/esm/operationsInterfaces/routePolicies.js +0 -0
  1765. package/dist/esm/operationsInterfaces/routePolicies.js.map +0 -7
  1766. package/dist/esm/pagingHelper.d.ts +0 -13
  1767. package/dist/esm/pagingHelper.d.ts.map +0 -1
  1768. package/dist/esm/pagingHelper.js +0 -19
  1769. package/dist/esm/pagingHelper.js.map +0 -7
  1770. package/dist/react-native/azureNetworkFabricManagementServiceAPI.d.ts +0 -43
  1771. package/dist/react-native/azureNetworkFabricManagementServiceAPI.d.ts.map +0 -1
  1772. package/dist/react-native/azureNetworkFabricManagementServiceAPI.js +0 -152
  1773. package/dist/react-native/azureNetworkFabricManagementServiceAPI.js.map +0 -1
  1774. package/dist/react-native/index.d.ts +0 -5
  1775. package/dist/react-native/index.d.ts.map +0 -1
  1776. package/dist/react-native/index.js +0 -13
  1777. package/dist/react-native/index.js.map +0 -1
  1778. package/dist/react-native/lroImpl.d.ts +0 -11
  1779. package/dist/react-native/lroImpl.d.ts.map +0 -1
  1780. package/dist/react-native/lroImpl.js +0 -18
  1781. package/dist/react-native/lroImpl.js.map +0 -1
  1782. package/dist/react-native/models/index.d.ts +0 -5380
  1783. package/dist/react-native/models/index.d.ts.map +0 -1
  1784. package/dist/react-native/models/index.js +0 -482
  1785. package/dist/react-native/models/index.js.map +0 -1
  1786. package/dist/react-native/models/mappers.d.ts +0 -292
  1787. package/dist/react-native/models/mappers.d.ts.map +0 -1
  1788. package/dist/react-native/models/mappers.js +0 -9051
  1789. package/dist/react-native/models/mappers.js.map +0 -1
  1790. package/dist/react-native/models/parameters.d.ts +0 -79
  1791. package/dist/react-native/models/parameters.d.ts.map +0 -1
  1792. package/dist/react-native/models/parameters.js +0 -506
  1793. package/dist/react-native/models/parameters.js.map +0 -1
  1794. package/dist/react-native/operations/accessControlLists.d.ts +0 -151
  1795. package/dist/react-native/operations/accessControlLists.d.ts.map +0 -1
  1796. package/dist/react-native/operations/accessControlLists.js +0 -788
  1797. package/dist/react-native/operations/accessControlLists.js.map +0 -1
  1798. package/dist/react-native/operations/externalNetworks.d.ts +0 -136
  1799. package/dist/react-native/operations/externalNetworks.d.ts.map +0 -1
  1800. package/dist/react-native/operations/externalNetworks.js +0 -660
  1801. package/dist/react-native/operations/externalNetworks.js.map +0 -1
  1802. package/dist/react-native/operations/index.d.ts +0 -25
  1803. package/dist/react-native/operations/index.d.ts.map +0 -1
  1804. package/dist/react-native/operations/index.js +0 -32
  1805. package/dist/react-native/operations/index.js.map +0 -1
  1806. package/dist/react-native/operations/internalNetworks.d.ts +0 -154
  1807. package/dist/react-native/operations/internalNetworks.d.ts.map +0 -1
  1808. package/dist/react-native/operations/internalNetworks.js +0 -760
  1809. package/dist/react-native/operations/internalNetworks.js.map +0 -1
  1810. package/dist/react-native/operations/internetGatewayRules.d.ts +0 -107
  1811. package/dist/react-native/operations/internetGatewayRules.d.ts.map +0 -1
  1812. package/dist/react-native/operations/internetGatewayRules.js +0 -523
  1813. package/dist/react-native/operations/internetGatewayRules.js.map +0 -1
  1814. package/dist/react-native/operations/internetGateways.d.ts +0 -107
  1815. package/dist/react-native/operations/internetGateways.d.ts.map +0 -1
  1816. package/dist/react-native/operations/internetGateways.js +0 -515
  1817. package/dist/react-native/operations/internetGateways.js.map +0 -1
  1818. package/dist/react-native/operations/ipCommunities.d.ts +0 -107
  1819. package/dist/react-native/operations/ipCommunities.d.ts.map +0 -1
  1820. package/dist/react-native/operations/ipCommunities.js +0 -523
  1821. package/dist/react-native/operations/ipCommunities.js.map +0 -1
  1822. package/dist/react-native/operations/ipExtendedCommunities.d.ts +0 -107
  1823. package/dist/react-native/operations/ipExtendedCommunities.d.ts.map +0 -1
  1824. package/dist/react-native/operations/ipExtendedCommunities.js +0 -523
  1825. package/dist/react-native/operations/ipExtendedCommunities.js.map +0 -1
  1826. package/dist/react-native/operations/ipPrefixes.d.ts +0 -107
  1827. package/dist/react-native/operations/ipPrefixes.d.ts.map +0 -1
  1828. package/dist/react-native/operations/ipPrefixes.js +0 -523
  1829. package/dist/react-native/operations/ipPrefixes.js.map +0 -1
  1830. package/dist/react-native/operations/l2IsolationDomains.d.ts +0 -153
  1831. package/dist/react-native/operations/l2IsolationDomains.d.ts.map +0 -1
  1832. package/dist/react-native/operations/l2IsolationDomains.js +0 -782
  1833. package/dist/react-native/operations/l2IsolationDomains.js.map +0 -1
  1834. package/dist/react-native/operations/l3IsolationDomains.d.ts +0 -155
  1835. package/dist/react-native/operations/l3IsolationDomains.d.ts.map +0 -1
  1836. package/dist/react-native/operations/l3IsolationDomains.js +0 -784
  1837. package/dist/react-native/operations/l3IsolationDomains.js.map +0 -1
  1838. package/dist/react-native/operations/neighborGroups.d.ts +0 -107
  1839. package/dist/react-native/operations/neighborGroups.d.ts.map +0 -1
  1840. package/dist/react-native/operations/neighborGroups.js +0 -515
  1841. package/dist/react-native/operations/neighborGroups.js.map +0 -1
  1842. package/dist/react-native/operations/networkDeviceSkus.d.ts +0 -38
  1843. package/dist/react-native/operations/networkDeviceSkus.d.ts.map +0 -1
  1844. package/dist/react-native/operations/networkDeviceSkus.js +0 -148
  1845. package/dist/react-native/operations/networkDeviceSkus.js.map +0 -1
  1846. package/dist/react-native/operations/networkDevices.d.ts +0 -169
  1847. package/dist/react-native/operations/networkDevices.d.ts.map +0 -1
  1848. package/dist/react-native/operations/networkDevices.js +0 -875
  1849. package/dist/react-native/operations/networkDevices.js.map +0 -1
  1850. package/dist/react-native/operations/networkFabricControllers.d.ts +0 -107
  1851. package/dist/react-native/operations/networkFabricControllers.d.ts.map +0 -1
  1852. package/dist/react-native/operations/networkFabricControllers.js +0 -523
  1853. package/dist/react-native/operations/networkFabricControllers.js.map +0 -1
  1854. package/dist/react-native/operations/networkFabricSkus.d.ts +0 -38
  1855. package/dist/react-native/operations/networkFabricSkus.d.ts.map +0 -1
  1856. package/dist/react-native/operations/networkFabricSkus.js +0 -148
  1857. package/dist/react-native/operations/networkFabricSkus.js.map +0 -1
  1858. package/dist/react-native/operations/networkFabrics.d.ts +0 -245
  1859. package/dist/react-native/operations/networkFabrics.d.ts.map +0 -1
  1860. package/dist/react-native/operations/networkFabrics.js +0 -1326
  1861. package/dist/react-native/operations/networkFabrics.js.map +0 -1
  1862. package/dist/react-native/operations/networkInterfaces.d.ts +0 -117
  1863. package/dist/react-native/operations/networkInterfaces.d.ts.map +0 -1
  1864. package/dist/react-native/operations/networkInterfaces.js +0 -554
  1865. package/dist/react-native/operations/networkInterfaces.js.map +0 -1
  1866. package/dist/react-native/operations/networkPacketBrokers.d.ts +0 -107
  1867. package/dist/react-native/operations/networkPacketBrokers.d.ts.map +0 -1
  1868. package/dist/react-native/operations/networkPacketBrokers.js +0 -515
  1869. package/dist/react-native/operations/networkPacketBrokers.js.map +0 -1
  1870. package/dist/react-native/operations/networkRacks.d.ts +0 -107
  1871. package/dist/react-native/operations/networkRacks.d.ts.map +0 -1
  1872. package/dist/react-native/operations/networkRacks.js +0 -515
  1873. package/dist/react-native/operations/networkRacks.js.map +0 -1
  1874. package/dist/react-native/operations/networkTapRules.d.ts +0 -151
  1875. package/dist/react-native/operations/networkTapRules.d.ts.map +0 -1
  1876. package/dist/react-native/operations/networkTapRules.js +0 -788
  1877. package/dist/react-native/operations/networkTapRules.js.map +0 -1
  1878. package/dist/react-native/operations/networkTaps.d.ts +0 -137
  1879. package/dist/react-native/operations/networkTaps.d.ts.map +0 -1
  1880. package/dist/react-native/operations/networkTaps.js +0 -693
  1881. package/dist/react-native/operations/networkTaps.js.map +0 -1
  1882. package/dist/react-native/operations/networkToNetworkInterconnects.d.ts +0 -135
  1883. package/dist/react-native/operations/networkToNetworkInterconnects.d.ts.map +0 -1
  1884. package/dist/react-native/operations/networkToNetworkInterconnects.js +0 -659
  1885. package/dist/react-native/operations/networkToNetworkInterconnects.js.map +0 -1
  1886. package/dist/react-native/operations/operations.d.ts +0 -32
  1887. package/dist/react-native/operations/operations.d.ts.map +0 -1
  1888. package/dist/react-native/operations/operations.js +0 -116
  1889. package/dist/react-native/operations/operations.js.map +0 -1
  1890. package/dist/react-native/operations/routePolicies.d.ts +0 -151
  1891. package/dist/react-native/operations/routePolicies.d.ts.map +0 -1
  1892. package/dist/react-native/operations/routePolicies.js +0 -780
  1893. package/dist/react-native/operations/routePolicies.js.map +0 -1
  1894. package/dist/react-native/operationsInterfaces/accessControlLists.d.ts +0 -115
  1895. package/dist/react-native/operationsInterfaces/accessControlLists.d.ts.map +0 -1
  1896. package/dist/react-native/operationsInterfaces/accessControlLists.js +0 -9
  1897. package/dist/react-native/operationsInterfaces/accessControlLists.js.map +0 -1
  1898. package/dist/react-native/operationsInterfaces/externalNetworks.d.ts +0 -110
  1899. package/dist/react-native/operationsInterfaces/externalNetworks.d.ts.map +0 -1
  1900. package/dist/react-native/operationsInterfaces/externalNetworks.js +0 -9
  1901. package/dist/react-native/operationsInterfaces/externalNetworks.js.map +0 -1
  1902. package/dist/react-native/operationsInterfaces/index.d.ts +0 -25
  1903. package/dist/react-native/operationsInterfaces/index.d.ts.map +0 -1
  1904. package/dist/react-native/operationsInterfaces/index.js +0 -32
  1905. package/dist/react-native/operationsInterfaces/index.js.map +0 -1
  1906. package/dist/react-native/operationsInterfaces/internalNetworks.d.ts +0 -128
  1907. package/dist/react-native/operationsInterfaces/internalNetworks.d.ts.map +0 -1
  1908. package/dist/react-native/operationsInterfaces/internalNetworks.js +0 -9
  1909. package/dist/react-native/operationsInterfaces/internalNetworks.js.map +0 -1
  1910. package/dist/react-native/operationsInterfaces/internetGatewayRules.d.ts +0 -71
  1911. package/dist/react-native/operationsInterfaces/internetGatewayRules.d.ts.map +0 -1
  1912. package/dist/react-native/operationsInterfaces/internetGatewayRules.js +0 -9
  1913. package/dist/react-native/operationsInterfaces/internetGatewayRules.js.map +0 -1
  1914. package/dist/react-native/operationsInterfaces/internetGateways.d.ts +0 -71
  1915. package/dist/react-native/operationsInterfaces/internetGateways.d.ts.map +0 -1
  1916. package/dist/react-native/operationsInterfaces/internetGateways.js +0 -9
  1917. package/dist/react-native/operationsInterfaces/internetGateways.js.map +0 -1
  1918. package/dist/react-native/operationsInterfaces/ipCommunities.d.ts +0 -71
  1919. package/dist/react-native/operationsInterfaces/ipCommunities.d.ts.map +0 -1
  1920. package/dist/react-native/operationsInterfaces/ipCommunities.js +0 -9
  1921. package/dist/react-native/operationsInterfaces/ipCommunities.js.map +0 -1
  1922. package/dist/react-native/operationsInterfaces/ipExtendedCommunities.d.ts +0 -71
  1923. package/dist/react-native/operationsInterfaces/ipExtendedCommunities.d.ts.map +0 -1
  1924. package/dist/react-native/operationsInterfaces/ipExtendedCommunities.js +0 -9
  1925. package/dist/react-native/operationsInterfaces/ipExtendedCommunities.js.map +0 -1
  1926. package/dist/react-native/operationsInterfaces/ipPrefixes.d.ts +0 -71
  1927. package/dist/react-native/operationsInterfaces/ipPrefixes.d.ts.map +0 -1
  1928. package/dist/react-native/operationsInterfaces/ipPrefixes.js +0 -9
  1929. package/dist/react-native/operationsInterfaces/ipPrefixes.js.map +0 -1
  1930. package/dist/react-native/operationsInterfaces/l2IsolationDomains.d.ts +0 -117
  1931. package/dist/react-native/operationsInterfaces/l2IsolationDomains.d.ts.map +0 -1
  1932. package/dist/react-native/operationsInterfaces/l2IsolationDomains.js +0 -9
  1933. package/dist/react-native/operationsInterfaces/l2IsolationDomains.js.map +0 -1
  1934. package/dist/react-native/operationsInterfaces/l3IsolationDomains.d.ts +0 -119
  1935. package/dist/react-native/operationsInterfaces/l3IsolationDomains.d.ts.map +0 -1
  1936. package/dist/react-native/operationsInterfaces/l3IsolationDomains.js +0 -9
  1937. package/dist/react-native/operationsInterfaces/l3IsolationDomains.js.map +0 -1
  1938. package/dist/react-native/operationsInterfaces/neighborGroups.d.ts +0 -71
  1939. package/dist/react-native/operationsInterfaces/neighborGroups.d.ts.map +0 -1
  1940. package/dist/react-native/operationsInterfaces/neighborGroups.js +0 -9
  1941. package/dist/react-native/operationsInterfaces/neighborGroups.js.map +0 -1
  1942. package/dist/react-native/operationsInterfaces/networkDeviceSkus.d.ts +0 -17
  1943. package/dist/react-native/operationsInterfaces/networkDeviceSkus.d.ts.map +0 -1
  1944. package/dist/react-native/operationsInterfaces/networkDeviceSkus.js +0 -9
  1945. package/dist/react-native/operationsInterfaces/networkDeviceSkus.js.map +0 -1
  1946. package/dist/react-native/operationsInterfaces/networkDevices.d.ts +0 -133
  1947. package/dist/react-native/operationsInterfaces/networkDevices.d.ts.map +0 -1
  1948. package/dist/react-native/operationsInterfaces/networkDevices.js +0 -9
  1949. package/dist/react-native/operationsInterfaces/networkDevices.js.map +0 -1
  1950. package/dist/react-native/operationsInterfaces/networkFabricControllers.d.ts +0 -71
  1951. package/dist/react-native/operationsInterfaces/networkFabricControllers.d.ts.map +0 -1
  1952. package/dist/react-native/operationsInterfaces/networkFabricControllers.js +0 -9
  1953. package/dist/react-native/operationsInterfaces/networkFabricControllers.js.map +0 -1
  1954. package/dist/react-native/operationsInterfaces/networkFabricSkus.d.ts +0 -17
  1955. package/dist/react-native/operationsInterfaces/networkFabricSkus.d.ts.map +0 -1
  1956. package/dist/react-native/operationsInterfaces/networkFabricSkus.js +0 -9
  1957. package/dist/react-native/operationsInterfaces/networkFabricSkus.js.map +0 -1
  1958. package/dist/react-native/operationsInterfaces/networkFabrics.d.ts +0 -209
  1959. package/dist/react-native/operationsInterfaces/networkFabrics.d.ts.map +0 -1
  1960. package/dist/react-native/operationsInterfaces/networkFabrics.js +0 -9
  1961. package/dist/react-native/operationsInterfaces/networkFabrics.js.map +0 -1
  1962. package/dist/react-native/operationsInterfaces/networkInterfaces.d.ts +0 -92
  1963. package/dist/react-native/operationsInterfaces/networkInterfaces.d.ts.map +0 -1
  1964. package/dist/react-native/operationsInterfaces/networkInterfaces.js +0 -9
  1965. package/dist/react-native/operationsInterfaces/networkInterfaces.js.map +0 -1
  1966. package/dist/react-native/operationsInterfaces/networkPacketBrokers.d.ts +0 -71
  1967. package/dist/react-native/operationsInterfaces/networkPacketBrokers.d.ts.map +0 -1
  1968. package/dist/react-native/operationsInterfaces/networkPacketBrokers.js +0 -9
  1969. package/dist/react-native/operationsInterfaces/networkPacketBrokers.js.map +0 -1
  1970. package/dist/react-native/operationsInterfaces/networkRacks.d.ts +0 -71
  1971. package/dist/react-native/operationsInterfaces/networkRacks.d.ts.map +0 -1
  1972. package/dist/react-native/operationsInterfaces/networkRacks.js +0 -9
  1973. package/dist/react-native/operationsInterfaces/networkRacks.js.map +0 -1
  1974. package/dist/react-native/operationsInterfaces/networkTapRules.d.ts +0 -115
  1975. package/dist/react-native/operationsInterfaces/networkTapRules.d.ts.map +0 -1
  1976. package/dist/react-native/operationsInterfaces/networkTapRules.js +0 -9
  1977. package/dist/react-native/operationsInterfaces/networkTapRules.js.map +0 -1
  1978. package/dist/react-native/operationsInterfaces/networkTaps.d.ts +0 -101
  1979. package/dist/react-native/operationsInterfaces/networkTaps.d.ts.map +0 -1
  1980. package/dist/react-native/operationsInterfaces/networkTaps.js +0 -9
  1981. package/dist/react-native/operationsInterfaces/networkTaps.js.map +0 -1
  1982. package/dist/react-native/operationsInterfaces/networkToNetworkInterconnects.d.ts +0 -110
  1983. package/dist/react-native/operationsInterfaces/networkToNetworkInterconnects.d.ts.map +0 -1
  1984. package/dist/react-native/operationsInterfaces/networkToNetworkInterconnects.js +0 -9
  1985. package/dist/react-native/operationsInterfaces/networkToNetworkInterconnects.js.map +0 -1
  1986. package/dist/react-native/operationsInterfaces/operations.d.ts +0 -11
  1987. package/dist/react-native/operationsInterfaces/operations.d.ts.map +0 -1
  1988. package/dist/react-native/operationsInterfaces/operations.js +0 -9
  1989. package/dist/react-native/operationsInterfaces/operations.js.map +0 -1
  1990. package/dist/react-native/operationsInterfaces/routePolicies.d.ts +0 -115
  1991. package/dist/react-native/operationsInterfaces/routePolicies.d.ts.map +0 -1
  1992. package/dist/react-native/operationsInterfaces/routePolicies.js +0 -9
  1993. package/dist/react-native/operationsInterfaces/routePolicies.js.map +0 -1
  1994. package/dist/react-native/package.json +0 -3
  1995. package/dist/react-native/pagingHelper.d.ts +0 -13
  1996. package/dist/react-native/pagingHelper.d.ts.map +0 -1
  1997. package/dist/react-native/pagingHelper.js +0 -30
  1998. package/dist/react-native/pagingHelper.js.map +0 -1
  1999. package/review/arm-managednetworkfabric-node.api.md +0 -4487
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/models/models.ts"],
4
+ "sourcesContent": ["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { areAllPropsUndefined } from \"../static-helpers/serialization/check-prop-undefined.js\";\n\n/**\n * This file contains only generated model types and their (de)serializers.\n * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input.\n */\n/* eslint-disable @typescript-eslint/naming-convention */\n/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n/** A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results. */\nexport interface _OperationListResult {\n /** The Operation items on this page */\n value: Operation[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _operationListResultDeserializer(item: any): _OperationListResult {\n return {\n value: operationArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function operationArrayDeserializer(result: Array<Operation>): any[] {\n return result.map((item) => {\n return operationDeserializer(item);\n });\n}\n\n/** Details of a REST API operation, returned from the Resource Provider Operations API */\nexport interface Operation {\n /** The name of the operation, as per Resource-Based Access Control (RBAC). Examples: \"Microsoft.Compute/virtualMachines/write\", \"Microsoft.Compute/virtualMachines/capture/action\" */\n readonly name?: string;\n /** Whether the operation applies to data-plane. This is \"true\" for data-plane operations and \"false\" for Azure Resource Manager/control-plane operations. */\n readonly isDataAction?: boolean;\n /** Localized display information for this particular operation. */\n display?: OperationDisplay;\n /** The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is \"user,system\" */\n readonly origin?: Origin;\n /** Extensible enum. Indicates the action type. \"Internal\" refers to actions that are for internal only APIs. */\n readonly actionType?: ActionType;\n}\n\nexport function operationDeserializer(item: any): Operation {\n return {\n name: item[\"name\"],\n isDataAction: item[\"isDataAction\"],\n display: !item[\"display\"] ? item[\"display\"] : operationDisplayDeserializer(item[\"display\"]),\n origin: item[\"origin\"],\n actionType: item[\"actionType\"],\n };\n}\n\n/** Localized display information for an operation. */\nexport interface OperationDisplay {\n /** The localized friendly form of the resource provider name, e.g. \"Microsoft Monitoring Insights\" or \"Microsoft Compute\". */\n readonly provider?: string;\n /** The localized friendly name of the resource type related to this operation. E.g. \"Virtual Machines\" or \"Job Schedule Collections\". */\n readonly resource?: string;\n /** The concise, localized friendly name for the operation; suitable for dropdowns. E.g. \"Create or Update Virtual Machine\", \"Restart Virtual Machine\". */\n readonly operation?: string;\n /** The short, localized friendly description of the operation; suitable for tool tips and detailed views. */\n readonly description?: string;\n}\n\nexport function operationDisplayDeserializer(item: any): OperationDisplay {\n return {\n provider: item[\"provider\"],\n resource: item[\"resource\"],\n operation: item[\"operation\"],\n description: item[\"description\"],\n };\n}\n\n/** The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is \"user,system\" */\nexport enum KnownOrigin {\n /** Indicates the operation is initiated by a user. */\n User = \"user\",\n /** Indicates the operation is initiated by a system. */\n System = \"system\",\n /** Indicates the operation is initiated by a user or system. */\n UserSystem = \"user,system\",\n}\n\n/**\n * The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is \"user,system\" \\\n * {@link KnownOrigin} can be used interchangeably with Origin,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **user**: Indicates the operation is initiated by a user. \\\n * **system**: Indicates the operation is initiated by a system. \\\n * **user,system**: Indicates the operation is initiated by a user or system.\n */\nexport type Origin = string;\n\n/** Extensible enum. Indicates the action type. \"Internal\" refers to actions that are for internal only APIs. */\nexport enum KnownActionType {\n /** Actions are for internal-only APIs. */\n Internal = \"Internal\",\n}\n\n/**\n * Extensible enum. Indicates the action type. \"Internal\" refers to actions that are for internal only APIs. \\\n * {@link KnownActionType} can be used interchangeably with ActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Internal**: Actions are for internal-only APIs.\n */\nexport type ActionType = string;\n\n/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. */\nexport interface ErrorResponse {\n /** The error object. */\n error?: ErrorDetail;\n}\n\nexport function errorResponseDeserializer(item: any): ErrorResponse {\n return {\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n };\n}\n\n/** The error detail. */\nexport interface ErrorDetail {\n /** The error code. */\n readonly code?: string;\n /** The error message. */\n readonly message?: string;\n /** The error target. */\n readonly target?: string;\n /** The error details. */\n readonly details?: ErrorDetail[];\n /** The error additional info. */\n readonly additionalInfo?: ErrorAdditionalInfo[];\n}\n\nexport function errorDetailDeserializer(item: any): ErrorDetail {\n return {\n code: item[\"code\"],\n message: item[\"message\"],\n target: item[\"target\"],\n details: !item[\"details\"] ? item[\"details\"] : errorDetailArrayDeserializer(item[\"details\"]),\n additionalInfo: !item[\"additionalInfo\"]\n ? item[\"additionalInfo\"]\n : errorAdditionalInfoArrayDeserializer(item[\"additionalInfo\"]),\n };\n}\n\nexport function errorDetailArrayDeserializer(result: Array<ErrorDetail>): any[] {\n return result.map((item) => {\n return errorDetailDeserializer(item);\n });\n}\n\nexport function errorAdditionalInfoArrayDeserializer(result: Array<ErrorAdditionalInfo>): any[] {\n return result.map((item) => {\n return errorAdditionalInfoDeserializer(item);\n });\n}\n\n/** The resource management error additional info. */\nexport interface ErrorAdditionalInfo {\n /** The additional info type. */\n readonly type?: string;\n /** The additional info. */\n readonly info?: any;\n}\n\nexport function errorAdditionalInfoDeserializer(item: any): ErrorAdditionalInfo {\n return {\n type: item[\"type\"],\n info: item[\"info\"],\n };\n}\n\n/** The Access Control List resource definition. */\nexport interface AccessControlList extends TrackedResource {\n /** Switch configuration description. */\n annotation?: string;\n /** Input method to configure Access Control List. */\n configurationType: ConfigurationType;\n /** Access Control List file URL. */\n aclsUrl?: string;\n /** Default action that needs to be applied when no condition is matched. Example: Permit | Deny. */\n defaultAction?: CommunityActionTypes;\n /** List of match configurations. */\n matchConfigurations?: AccessControlListMatchConfiguration[];\n /** List of dynamic match configurations. */\n dynamicMatchConfigurations?: CommonDynamicMatchConfiguration[];\n /** The last synced timestamp. */\n readonly lastSyncedTime?: Date;\n /** Access Control List (ACL) Type */\n aclType?: AclType;\n /** Device Role */\n deviceRole?: DeviceRole;\n /** Global Access Control List (ACL) actions */\n globalAccessControlListActions?: GlobalAccessControlListActionProperties;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Associated Network Fabric Resource IDs */\n readonly networkFabricIds?: string[];\n /** Access Control List (ACL) configurations. */\n controlPlaneAclConfiguration?: ControlPlaneAclProperties[];\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function accessControlListSerializer(item: AccessControlList): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: _accessControlListPropertiesSerializer(item),\n };\n}\n\nexport function accessControlListDeserializer(item: any): AccessControlList {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._accessControlListPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Access Control List Properties defines the resource properties. */\nexport interface AccessControlListProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** Input method to configure Access Control List. */\n configurationType: ConfigurationType;\n /** Access Control List file URL. */\n aclsUrl?: string;\n /** Default action that needs to be applied when no condition is matched. Example: Permit | Deny. */\n defaultAction?: CommunityActionTypes;\n /** List of match configurations. */\n matchConfigurations?: AccessControlListMatchConfiguration[];\n /** List of dynamic match configurations. */\n dynamicMatchConfigurations?: CommonDynamicMatchConfiguration[];\n /** The last synced timestamp. */\n readonly lastSyncedTime?: Date;\n /** Access Control List (ACL) Type */\n aclType?: AclType;\n /** Device Role */\n deviceRole?: DeviceRole;\n /** Global Access Control List (ACL) actions */\n globalAccessControlListActions?: GlobalAccessControlListActionProperties;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Associated Network Fabric Resource IDs */\n readonly networkFabricIds?: string[];\n /** Access Control List (ACL) configurations. */\n controlPlaneAclConfiguration?: ControlPlaneAclProperties[];\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function accessControlListPropertiesSerializer(item: AccessControlListProperties): any {\n return {\n annotation: item[\"annotation\"],\n configurationType: item[\"configurationType\"],\n aclsUrl: item[\"aclsUrl\"],\n defaultAction: item[\"defaultAction\"],\n matchConfigurations: !item[\"matchConfigurations\"]\n ? item[\"matchConfigurations\"]\n : accessControlListMatchConfigurationArraySerializer(item[\"matchConfigurations\"]),\n dynamicMatchConfigurations: !item[\"dynamicMatchConfigurations\"]\n ? item[\"dynamicMatchConfigurations\"]\n : commonDynamicMatchConfigurationArraySerializer(item[\"dynamicMatchConfigurations\"]),\n aclType: item[\"aclType\"],\n deviceRole: item[\"deviceRole\"],\n globalAccessControlListActions: !item[\"globalAccessControlListActions\"]\n ? item[\"globalAccessControlListActions\"]\n : globalAccessControlListActionPropertiesSerializer(item[\"globalAccessControlListActions\"]),\n controlPlaneAclConfiguration: !item[\"controlPlaneAclConfiguration\"]\n ? item[\"controlPlaneAclConfiguration\"]\n : controlPlaneAclPropertiesArraySerializer(item[\"controlPlaneAclConfiguration\"]),\n };\n}\n\nexport function accessControlListPropertiesDeserializer(item: any): AccessControlListProperties {\n return {\n annotation: item[\"annotation\"],\n configurationType: item[\"configurationType\"],\n aclsUrl: item[\"aclsUrl\"],\n defaultAction: item[\"defaultAction\"],\n matchConfigurations: !item[\"matchConfigurations\"]\n ? item[\"matchConfigurations\"]\n : accessControlListMatchConfigurationArrayDeserializer(item[\"matchConfigurations\"]),\n dynamicMatchConfigurations: !item[\"dynamicMatchConfigurations\"]\n ? item[\"dynamicMatchConfigurations\"]\n : commonDynamicMatchConfigurationArrayDeserializer(item[\"dynamicMatchConfigurations\"]),\n lastSyncedTime: !item[\"lastSyncedTime\"]\n ? item[\"lastSyncedTime\"]\n : new Date(item[\"lastSyncedTime\"]),\n aclType: item[\"aclType\"],\n deviceRole: item[\"deviceRole\"],\n globalAccessControlListActions: !item[\"globalAccessControlListActions\"]\n ? item[\"globalAccessControlListActions\"]\n : globalAccessControlListActionPropertiesDeserializer(item[\"globalAccessControlListActions\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n networkFabricIds: !item[\"networkFabricIds\"]\n ? item[\"networkFabricIds\"]\n : item[\"networkFabricIds\"].map((p: any) => {\n return p;\n }),\n controlPlaneAclConfiguration: !item[\"controlPlaneAclConfiguration\"]\n ? item[\"controlPlaneAclConfiguration\"]\n : controlPlaneAclPropertiesArrayDeserializer(item[\"controlPlaneAclConfiguration\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\n/** Input method to configure Access Control List. */\nexport enum KnownConfigurationType {\n /** File Configuration Type */\n File = \"File\",\n /** Inline Configuration Type */\n Inline = \"Inline\",\n}\n\n/**\n * Input method to configure Access Control List. \\\n * {@link KnownConfigurationType} can be used interchangeably with ConfigurationType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **File**: File Configuration Type \\\n * **Inline**: Inline Configuration Type\n */\nexport type ConfigurationType = string;\n\n/** Community action types. Example: Permit | Deny. */\nexport enum KnownCommunityActionTypes {\n /** Permit Community Action Types */\n Permit = \"Permit\",\n /** Deny Community Action Types */\n Deny = \"Deny\",\n}\n\n/**\n * Community action types. Example: Permit | Deny. \\\n * {@link KnownCommunityActionTypes} can be used interchangeably with CommunityActionTypes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Permit**: Permit Community Action Types \\\n * **Deny**: Deny Community Action Types\n */\nexport type CommunityActionTypes = string;\n\nexport function accessControlListMatchConfigurationArraySerializer(\n result: Array<AccessControlListMatchConfiguration>,\n): any[] {\n return result.map((item) => {\n return accessControlListMatchConfigurationSerializer(item);\n });\n}\n\nexport function accessControlListMatchConfigurationArrayDeserializer(\n result: Array<AccessControlListMatchConfiguration>,\n): any[] {\n return result.map((item) => {\n return accessControlListMatchConfigurationDeserializer(item);\n });\n}\n\n/** Defines the match configuration that are supported to filter the traffic. */\nexport interface AccessControlListMatchConfiguration {\n /** The name of the match configuration. */\n matchConfigurationName?: string;\n /** Sequence Number of the match configuration. */\n sequenceNumber?: number;\n /** Type of IP Address. IPv4 or IPv6 */\n ipAddressType?: IPAddressType;\n /** List of the match conditions. */\n matchConditions?: AccessControlListMatchCondition[];\n /** List of actions that need to be performed for the matched conditions. */\n actions?: AccessControlListAction[];\n}\n\nexport function accessControlListMatchConfigurationSerializer(\n item: AccessControlListMatchConfiguration,\n): any {\n return {\n matchConfigurationName: item[\"matchConfigurationName\"],\n sequenceNumber: item[\"sequenceNumber\"],\n ipAddressType: item[\"ipAddressType\"],\n matchConditions: !item[\"matchConditions\"]\n ? item[\"matchConditions\"]\n : accessControlListMatchConditionArraySerializer(item[\"matchConditions\"]),\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : accessControlListActionArraySerializer(item[\"actions\"]),\n };\n}\n\nexport function accessControlListMatchConfigurationDeserializer(\n item: any,\n): AccessControlListMatchConfiguration {\n return {\n matchConfigurationName: item[\"matchConfigurationName\"],\n sequenceNumber: item[\"sequenceNumber\"],\n ipAddressType: item[\"ipAddressType\"],\n matchConditions: !item[\"matchConditions\"]\n ? item[\"matchConditions\"]\n : accessControlListMatchConditionArrayDeserializer(item[\"matchConditions\"]),\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : accessControlListActionArrayDeserializer(item[\"actions\"]),\n };\n}\n\n/** IP Address type. */\nexport enum KnownIPAddressType {\n /** IPv4 IP address */\n IPv4 = \"IPv4\",\n /** IPv6 IP address */\n IPv6 = \"IPv6\",\n}\n\n/**\n * IP Address type. \\\n * {@link KnownIPAddressType} can be used interchangeably with IPAddressType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **IPv4**: IPv4 IP address \\\n * **IPv6**: IPv6 IP address\n */\nexport type IPAddressType = string;\n\nexport function accessControlListMatchConditionArraySerializer(\n result: Array<AccessControlListMatchCondition>,\n): any[] {\n return result.map((item) => {\n return accessControlListMatchConditionSerializer(item);\n });\n}\n\nexport function accessControlListMatchConditionArrayDeserializer(\n result: Array<AccessControlListMatchCondition>,\n): any[] {\n return result.map((item) => {\n return accessControlListMatchConditionDeserializer(item);\n });\n}\n\n/** Defines the match condition that is supported to filter the traffic. */\nexport interface AccessControlListMatchCondition extends CommonMatchConditions {\n /** List of ether type values that need to be matched. */\n etherTypes?: string[];\n /** List of IP fragment packets that need to be matched. */\n fragments?: string[];\n /** List of IP Lengths that need to be matched. */\n ipLengths?: string[];\n /** List of TTL [Time To Live] values that need to be matched. */\n ttlValues?: string[];\n /** List of DSCP Markings that need to be matched. */\n dscpMarkings?: string[];\n /** Protocol neighbors that need to be matched. */\n protocolNeighbors?: string[];\n /** Defines the port condition that needs to be matched. */\n portCondition?: AccessControlListPortCondition;\n /** Internet Control Message Protocol (ICMP) configuration */\n icmpConfiguration?: IcmpConfigurationProperties;\n}\n\nexport function accessControlListMatchConditionSerializer(\n item: AccessControlListMatchCondition,\n): any {\n return {\n protocolTypes: !item[\"protocolTypes\"]\n ? item[\"protocolTypes\"]\n : item[\"protocolTypes\"].map((p: any) => {\n return p;\n }),\n vlanMatchCondition: !item[\"vlanMatchCondition\"]\n ? item[\"vlanMatchCondition\"]\n : vlanMatchConditionSerializer(item[\"vlanMatchCondition\"]),\n ipCondition: !item[\"ipCondition\"]\n ? item[\"ipCondition\"]\n : ipMatchConditionSerializer(item[\"ipCondition\"]),\n etherTypes: !item[\"etherTypes\"]\n ? item[\"etherTypes\"]\n : item[\"etherTypes\"].map((p: any) => {\n return p;\n }),\n fragments: !item[\"fragments\"]\n ? item[\"fragments\"]\n : item[\"fragments\"].map((p: any) => {\n return p;\n }),\n ipLengths: !item[\"ipLengths\"]\n ? item[\"ipLengths\"]\n : item[\"ipLengths\"].map((p: any) => {\n return p;\n }),\n ttlValues: !item[\"ttlValues\"]\n ? item[\"ttlValues\"]\n : item[\"ttlValues\"].map((p: any) => {\n return p;\n }),\n dscpMarkings: !item[\"dscpMarkings\"]\n ? item[\"dscpMarkings\"]\n : item[\"dscpMarkings\"].map((p: any) => {\n return p;\n }),\n protocolNeighbors: !item[\"protocolNeighbors\"]\n ? item[\"protocolNeighbors\"]\n : item[\"protocolNeighbors\"].map((p: any) => {\n return p;\n }),\n portCondition: !item[\"portCondition\"]\n ? item[\"portCondition\"]\n : accessControlListPortConditionSerializer(item[\"portCondition\"]),\n icmpConfiguration: !item[\"icmpConfiguration\"]\n ? item[\"icmpConfiguration\"]\n : icmpConfigurationPropertiesSerializer(item[\"icmpConfiguration\"]),\n };\n}\n\nexport function accessControlListMatchConditionDeserializer(\n item: any,\n): AccessControlListMatchCondition {\n return {\n protocolTypes: !item[\"protocolTypes\"]\n ? item[\"protocolTypes\"]\n : item[\"protocolTypes\"].map((p: any) => {\n return p;\n }),\n vlanMatchCondition: !item[\"vlanMatchCondition\"]\n ? item[\"vlanMatchCondition\"]\n : vlanMatchConditionDeserializer(item[\"vlanMatchCondition\"]),\n ipCondition: !item[\"ipCondition\"]\n ? item[\"ipCondition\"]\n : ipMatchConditionDeserializer(item[\"ipCondition\"]),\n etherTypes: !item[\"etherTypes\"]\n ? item[\"etherTypes\"]\n : item[\"etherTypes\"].map((p: any) => {\n return p;\n }),\n fragments: !item[\"fragments\"]\n ? item[\"fragments\"]\n : item[\"fragments\"].map((p: any) => {\n return p;\n }),\n ipLengths: !item[\"ipLengths\"]\n ? item[\"ipLengths\"]\n : item[\"ipLengths\"].map((p: any) => {\n return p;\n }),\n ttlValues: !item[\"ttlValues\"]\n ? item[\"ttlValues\"]\n : item[\"ttlValues\"].map((p: any) => {\n return p;\n }),\n dscpMarkings: !item[\"dscpMarkings\"]\n ? item[\"dscpMarkings\"]\n : item[\"dscpMarkings\"].map((p: any) => {\n return p;\n }),\n protocolNeighbors: !item[\"protocolNeighbors\"]\n ? item[\"protocolNeighbors\"]\n : item[\"protocolNeighbors\"].map((p: any) => {\n return p;\n }),\n portCondition: !item[\"portCondition\"]\n ? item[\"portCondition\"]\n : accessControlListPortConditionDeserializer(item[\"portCondition\"]),\n icmpConfiguration: !item[\"icmpConfiguration\"]\n ? item[\"icmpConfiguration\"]\n : icmpConfigurationPropertiesDeserializer(item[\"icmpConfiguration\"]),\n };\n}\n\n/** Defines the port condition that needs to be matched. */\nexport interface AccessControlListPortCondition extends PortCondition {\n /** List of protocol flags that need to be matched. Example: established | initial | <List-of-TCP-flags>. List of eligible TCP Flags are ack, fin, not-ack, not-fin, not-psh, not-rst, not-syn, not-urg, psh, rst, syn, urg */\n flags?: string[];\n}\n\nexport function accessControlListPortConditionSerializer(\n item: AccessControlListPortCondition,\n): any {\n return {\n portType: item[\"portType\"],\n layer4Protocol: item[\"layer4Protocol\"],\n ports: !item[\"ports\"]\n ? item[\"ports\"]\n : item[\"ports\"].map((p: any) => {\n return p;\n }),\n portGroupNames: !item[\"portGroupNames\"]\n ? item[\"portGroupNames\"]\n : item[\"portGroupNames\"].map((p: any) => {\n return p;\n }),\n flags: !item[\"flags\"]\n ? item[\"flags\"]\n : item[\"flags\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function accessControlListPortConditionDeserializer(\n item: any,\n): AccessControlListPortCondition {\n return {\n portType: item[\"portType\"],\n layer4Protocol: item[\"layer4Protocol\"],\n ports: !item[\"ports\"]\n ? item[\"ports\"]\n : item[\"ports\"].map((p: any) => {\n return p;\n }),\n portGroupNames: !item[\"portGroupNames\"]\n ? item[\"portGroupNames\"]\n : item[\"portGroupNames\"].map((p: any) => {\n return p;\n }),\n flags: !item[\"flags\"]\n ? item[\"flags\"]\n : item[\"flags\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Internet Control Message Protocol (ICMP) configuration */\nexport interface IcmpConfigurationProperties {\n /** Internet Control Message Protocol (ICMP) types */\n icmpTypes?: string[];\n}\n\nexport function icmpConfigurationPropertiesSerializer(item: IcmpConfigurationProperties): any {\n return {\n icmpTypes: !item[\"icmpTypes\"]\n ? item[\"icmpTypes\"]\n : item[\"icmpTypes\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function icmpConfigurationPropertiesDeserializer(item: any): IcmpConfigurationProperties {\n return {\n icmpTypes: !item[\"icmpTypes\"]\n ? item[\"icmpTypes\"]\n : item[\"icmpTypes\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function accessControlListActionArraySerializer(\n result: Array<AccessControlListAction>,\n): any[] {\n return result.map((item) => {\n return accessControlListActionSerializer(item);\n });\n}\n\nexport function accessControlListActionArrayDeserializer(\n result: Array<AccessControlListAction>,\n): any[] {\n return result.map((item) => {\n return accessControlListActionDeserializer(item);\n });\n}\n\n/** Action that need to performed. */\nexport interface AccessControlListAction {\n /** Type of actions that can be performed. */\n type?: AclActionType;\n /** Name of the counter block to get match count information. */\n counterName?: string;\n /** Remark comment */\n remarkComment?: string;\n /** Police rate configuration */\n policeRateConfiguration?: PoliceRateConfigurationProperties;\n}\n\nexport function accessControlListActionSerializer(item: AccessControlListAction): any {\n return {\n type: item[\"type\"],\n counterName: item[\"counterName\"],\n remarkComment: item[\"remarkComment\"],\n policeRateConfiguration: !item[\"policeRateConfiguration\"]\n ? item[\"policeRateConfiguration\"]\n : policeRateConfigurationPropertiesSerializer(item[\"policeRateConfiguration\"]),\n };\n}\n\nexport function accessControlListActionDeserializer(item: any): AccessControlListAction {\n return {\n type: item[\"type\"],\n counterName: item[\"counterName\"],\n remarkComment: item[\"remarkComment\"],\n policeRateConfiguration: !item[\"policeRateConfiguration\"]\n ? item[\"policeRateConfiguration\"]\n : policeRateConfigurationPropertiesDeserializer(item[\"policeRateConfiguration\"]),\n };\n}\n\n/** Type of actions that can be performed. */\nexport enum KnownAclActionType {\n /** AclActionType Drop */\n Drop = \"Drop\",\n /** AclActionType Count */\n Count = \"Count\",\n /** AclActionType Log */\n Log = \"Log\",\n /** AclActionType Remark */\n Remark = \"Remark\",\n /** AclActionType PoliceRate */\n PoliceRate = \"PoliceRate\",\n}\n\n/**\n * Type of actions that can be performed. \\\n * {@link KnownAclActionType} can be used interchangeably with AclActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Drop**: AclActionType Drop \\\n * **Count**: AclActionType Count \\\n * **Log**: AclActionType Log \\\n * **Remark**: AclActionType Remark \\\n * **PoliceRate**: AclActionType PoliceRate\n */\nexport type AclActionType = string;\n\n/** Police rate configuration properties */\nexport interface PoliceRateConfigurationProperties {\n /** Rate limit in bits per second. */\n bitRate?: BitRate;\n /** Burst size in packets. */\n burstSize?: BurstSize;\n}\n\nexport function policeRateConfigurationPropertiesSerializer(\n item: PoliceRateConfigurationProperties,\n): any {\n return {\n bitRate: !item[\"bitRate\"] ? item[\"bitRate\"] : bitRateSerializer(item[\"bitRate\"]),\n burstSize: !item[\"burstSize\"] ? item[\"burstSize\"] : burstSizeSerializer(item[\"burstSize\"]),\n };\n}\n\nexport function policeRateConfigurationPropertiesDeserializer(\n item: any,\n): PoliceRateConfigurationProperties {\n return {\n bitRate: !item[\"bitRate\"] ? item[\"bitRate\"] : bitRateDeserializer(item[\"bitRate\"]),\n burstSize: !item[\"burstSize\"] ? item[\"burstSize\"] : burstSizeDeserializer(item[\"burstSize\"]),\n };\n}\n\n/** Bit rate in bits per second. */\nexport interface BitRate {\n /** Bitrate. */\n rate?: number;\n /** Bitrate unit. */\n unit?: BitRateUnit;\n}\n\nexport function bitRateSerializer(item: BitRate): any {\n return { rate: item[\"rate\"], unit: item[\"unit\"] };\n}\n\nexport function bitRateDeserializer(item: any): BitRate {\n return {\n rate: item[\"rate\"],\n unit: item[\"unit\"],\n };\n}\n\n/** Bit rate unit. */\nexport enum KnownBitRateUnit {\n /** Bit rate unit in bits per second. */\n Bps = \"bps\",\n /** Bit rate unit in kilobits per second. */\n Kbps = \"Kbps\",\n /** Bit rate unit in megabits per second. */\n Mbps = \"Mbps\",\n /** Bit rate unit in gigabits per second. */\n Gbps = \"Gbps\",\n /** Bit rate unit in packets per second. */\n Pps = \"Pps\",\n}\n\n/**\n * Bit rate unit. \\\n * {@link KnownBitRateUnit} can be used interchangeably with BitRateUnit,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **bps**: Bit rate unit in bits per second. \\\n * **Kbps**: Bit rate unit in kilobits per second. \\\n * **Mbps**: Bit rate unit in megabits per second. \\\n * **Gbps**: Bit rate unit in gigabits per second. \\\n * **Pps**: Bit rate unit in packets per second.\n */\nexport type BitRateUnit = string;\n\n/** Burst size in packets. */\nexport interface BurstSize {\n /** Burst size. */\n size?: number;\n /** Burst size unit. */\n unit?: BurstSizeUnit;\n}\n\nexport function burstSizeSerializer(item: BurstSize): any {\n return { size: item[\"size\"], unit: item[\"unit\"] };\n}\n\nexport function burstSizeDeserializer(item: any): BurstSize {\n return {\n size: item[\"size\"],\n unit: item[\"unit\"],\n };\n}\n\n/** Burst size unit in packets. */\nexport enum KnownBurstSizeUnit {\n /** Burst size unit in bytes. */\n Bytes = \"Bytes\",\n /** Burst size unit in kilobytes. */\n KBytes = \"KBytes\",\n /** Burst size unit in megabytes. */\n MBytes = \"MBytes\",\n /** Burst size unit in gigabytes. */\n GBytes = \"GBytes\",\n /** Burst size unit in packets. */\n Packets = \"Packets\",\n}\n\n/**\n * Burst size unit in packets. \\\n * {@link KnownBurstSizeUnit} can be used interchangeably with BurstSizeUnit,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Bytes**: Burst size unit in bytes. \\\n * **KBytes**: Burst size unit in kilobytes. \\\n * **MBytes**: Burst size unit in megabytes. \\\n * **GBytes**: Burst size unit in gigabytes. \\\n * **Packets**: Burst size unit in packets.\n */\nexport type BurstSizeUnit = string;\n\nexport function commonDynamicMatchConfigurationArraySerializer(\n result: Array<CommonDynamicMatchConfiguration>,\n): any[] {\n return result.map((item) => {\n return commonDynamicMatchConfigurationSerializer(item);\n });\n}\n\nexport function commonDynamicMatchConfigurationArrayDeserializer(\n result: Array<CommonDynamicMatchConfiguration>,\n): any[] {\n return result.map((item) => {\n return commonDynamicMatchConfigurationDeserializer(item);\n });\n}\n\n/** Dynamic match configuration object. */\nexport interface CommonDynamicMatchConfiguration {\n /** List of IP Groups. */\n ipGroups?: IpGroupProperties[];\n /** List of vlan groups. */\n vlanGroups?: VlanGroupProperties[];\n /** List of the port groups. */\n portGroups?: PortGroupProperties[];\n}\n\nexport function commonDynamicMatchConfigurationSerializer(\n item: CommonDynamicMatchConfiguration,\n): any {\n return {\n ipGroups: !item[\"ipGroups\"]\n ? item[\"ipGroups\"]\n : ipGroupPropertiesArraySerializer(item[\"ipGroups\"]),\n vlanGroups: !item[\"vlanGroups\"]\n ? item[\"vlanGroups\"]\n : vlanGroupPropertiesArraySerializer(item[\"vlanGroups\"]),\n portGroups: !item[\"portGroups\"]\n ? item[\"portGroups\"]\n : portGroupPropertiesArraySerializer(item[\"portGroups\"]),\n };\n}\n\nexport function commonDynamicMatchConfigurationDeserializer(\n item: any,\n): CommonDynamicMatchConfiguration {\n return {\n ipGroups: !item[\"ipGroups\"]\n ? item[\"ipGroups\"]\n : ipGroupPropertiesArrayDeserializer(item[\"ipGroups\"]),\n vlanGroups: !item[\"vlanGroups\"]\n ? item[\"vlanGroups\"]\n : vlanGroupPropertiesArrayDeserializer(item[\"vlanGroups\"]),\n portGroups: !item[\"portGroups\"]\n ? item[\"portGroups\"]\n : portGroupPropertiesArrayDeserializer(item[\"portGroups\"]),\n };\n}\n\nexport function ipGroupPropertiesArraySerializer(result: Array<IpGroupProperties>): any[] {\n return result.map((item) => {\n return ipGroupPropertiesSerializer(item);\n });\n}\n\nexport function ipGroupPropertiesArrayDeserializer(result: Array<IpGroupProperties>): any[] {\n return result.map((item) => {\n return ipGroupPropertiesDeserializer(item);\n });\n}\n\n/** IP Group properties. */\nexport interface IpGroupProperties {\n /** IP Group name. */\n name?: string;\n /** IP Address type. */\n ipAddressType?: IPAddressType;\n /** List of IP Prefixes. */\n ipPrefixes?: string[];\n}\n\nexport function ipGroupPropertiesSerializer(item: IpGroupProperties): any {\n return {\n name: item[\"name\"],\n ipAddressType: item[\"ipAddressType\"],\n ipPrefixes: !item[\"ipPrefixes\"]\n ? item[\"ipPrefixes\"]\n : item[\"ipPrefixes\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function ipGroupPropertiesDeserializer(item: any): IpGroupProperties {\n return {\n name: item[\"name\"],\n ipAddressType: item[\"ipAddressType\"],\n ipPrefixes: !item[\"ipPrefixes\"]\n ? item[\"ipPrefixes\"]\n : item[\"ipPrefixes\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function vlanGroupPropertiesArraySerializer(result: Array<VlanGroupProperties>): any[] {\n return result.map((item) => {\n return vlanGroupPropertiesSerializer(item);\n });\n}\n\nexport function vlanGroupPropertiesArrayDeserializer(result: Array<VlanGroupProperties>): any[] {\n return result.map((item) => {\n return vlanGroupPropertiesDeserializer(item);\n });\n}\n\n/** Vlan group properties. */\nexport interface VlanGroupProperties {\n /** Vlan group name. */\n name?: string;\n /** List of vlans. */\n vlans?: string[];\n}\n\nexport function vlanGroupPropertiesSerializer(item: VlanGroupProperties): any {\n return {\n name: item[\"name\"],\n vlans: !item[\"vlans\"]\n ? item[\"vlans\"]\n : item[\"vlans\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function vlanGroupPropertiesDeserializer(item: any): VlanGroupProperties {\n return {\n name: item[\"name\"],\n vlans: !item[\"vlans\"]\n ? item[\"vlans\"]\n : item[\"vlans\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function portGroupPropertiesArraySerializer(result: Array<PortGroupProperties>): any[] {\n return result.map((item) => {\n return portGroupPropertiesSerializer(item);\n });\n}\n\nexport function portGroupPropertiesArrayDeserializer(result: Array<PortGroupProperties>): any[] {\n return result.map((item) => {\n return portGroupPropertiesDeserializer(item);\n });\n}\n\n/** Port Group properties. */\nexport interface PortGroupProperties {\n /** The name of the port group. */\n name?: string;\n /** List of the ports that need to be matched. */\n ports?: string[];\n}\n\nexport function portGroupPropertiesSerializer(item: PortGroupProperties): any {\n return {\n name: item[\"name\"],\n ports: !item[\"ports\"]\n ? item[\"ports\"]\n : item[\"ports\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function portGroupPropertiesDeserializer(item: any): PortGroupProperties {\n return {\n name: item[\"name\"],\n ports: !item[\"ports\"]\n ? item[\"ports\"]\n : item[\"ports\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Access Control List (ACL) Type */\nexport enum KnownAclType {\n /** AclType Control Plane Traffic Policy */\n Cp = \"ControlPlaneTrafficPolicy\",\n /** AclType Tenant */\n Tenant = \"Tenant\",\n /** AclType Management */\n Management = \"Management\",\n /** Control Plane Access Control List (ACL) */\n ControlPlaneAcl = \"ControlPlaneAcl\",\n}\n\n/**\n * Access Control List (ACL) Type \\\n * {@link KnownAclType} can be used interchangeably with AclType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ControlPlaneTrafficPolicy**: AclType Control Plane Traffic Policy \\\n * **Tenant**: AclType Tenant \\\n * **Management**: AclType Management \\\n * **ControlPlaneAcl**: Control Plane Access Control List (ACL)\n */\nexport type AclType = string;\n\n/** Device Role */\nexport enum KnownDeviceRole {\n /** DeviceRole - Customer Edge (CE) */\n CE = \"CE\",\n /** DeviceRole - Top of Rack (ToR) */\n ToR = \"ToR\",\n /** DeviceRole - Network Packet Broker (NPB) */\n NPB = \"NPB\",\n /** Device Role Management Switch */\n ManagementSwitch = \"ManagementSwitch\",\n}\n\n/**\n * Device Role \\\n * {@link KnownDeviceRole} can be used interchangeably with DeviceRole,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **CE**: DeviceRole - Customer Edge (CE) \\\n * **ToR**: DeviceRole - Top of Rack (ToR) \\\n * **NPB**: DeviceRole - Network Packet Broker (NPB) \\\n * **ManagementSwitch**: Device Role Management Switch\n */\nexport type DeviceRole = string;\n\n/** Global Access Control List actions properties */\nexport interface GlobalAccessControlListActionProperties {\n /** Configuration to enable or disable ACL action count. */\n enableCount?: BooleanEnumProperty;\n}\n\nexport function globalAccessControlListActionPropertiesSerializer(\n item: GlobalAccessControlListActionProperties,\n): any {\n return { enableCount: item[\"enableCount\"] };\n}\n\nexport function globalAccessControlListActionPropertiesDeserializer(\n item: any,\n): GlobalAccessControlListActionProperties {\n return {\n enableCount: item[\"enableCount\"],\n };\n}\n\n/** Boolean union. Example- True/False */\nexport enum KnownBooleanEnumProperty {\n /** EnumProperty-True */\n True = \"True\",\n /** EnumProperty-False */\n False = \"False\",\n}\n\n/**\n * Boolean union. Example- True/False \\\n * {@link KnownBooleanEnumProperty} can be used interchangeably with BooleanEnumProperty,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **True**: EnumProperty-True \\\n * **False**: EnumProperty-False\n */\nexport type BooleanEnumProperty = string;\n\n/** Details of the last operations performed on the resource */\nexport interface LastOperationProperties {\n /** Details status of the last operation performed on the resource. */\n readonly details?: string;\n}\n\nexport function lastOperationPropertiesDeserializer(item: any): LastOperationProperties {\n return {\n details: item[\"details\"],\n };\n}\n\nexport function controlPlaneAclPropertiesArraySerializer(\n result: Array<ControlPlaneAclProperties>,\n): any[] {\n return result.map((item) => {\n return controlPlaneAclPropertiesSerializer(item);\n });\n}\n\nexport function controlPlaneAclPropertiesArrayDeserializer(\n result: Array<ControlPlaneAclProperties>,\n): any[] {\n return result.map((item) => {\n return controlPlaneAclPropertiesDeserializer(item);\n });\n}\n\n/** Access Control List (ACL) configurations properties */\nexport interface ControlPlaneAclProperties {\n /** IP Address Type. IPv4 or IPv6 */\n ipAddressType?: IPAddressType;\n /** Access Control List (ACL) match configurations. */\n matchConfigurations?: ControlPlaneAclMatchConfigurationProperties[];\n}\n\nexport function controlPlaneAclPropertiesSerializer(item: ControlPlaneAclProperties): any {\n return {\n ipAddressType: item[\"ipAddressType\"],\n matchConfigurations: !item[\"matchConfigurations\"]\n ? item[\"matchConfigurations\"]\n : controlPlaneAclMatchConfigurationPropertiesArraySerializer(item[\"matchConfigurations\"]),\n };\n}\n\nexport function controlPlaneAclPropertiesDeserializer(item: any): ControlPlaneAclProperties {\n return {\n ipAddressType: item[\"ipAddressType\"],\n matchConfigurations: !item[\"matchConfigurations\"]\n ? item[\"matchConfigurations\"]\n : controlPlaneAclMatchConfigurationPropertiesArrayDeserializer(item[\"matchConfigurations\"]),\n };\n}\n\nexport function controlPlaneAclMatchConfigurationPropertiesArraySerializer(\n result: Array<ControlPlaneAclMatchConfigurationProperties>,\n): any[] {\n return result.map((item) => {\n return controlPlaneAclMatchConfigurationPropertiesSerializer(item);\n });\n}\n\nexport function controlPlaneAclMatchConfigurationPropertiesArrayDeserializer(\n result: Array<ControlPlaneAclMatchConfigurationProperties>,\n): any[] {\n return result.map((item) => {\n return controlPlaneAclMatchConfigurationPropertiesDeserializer(item);\n });\n}\n\n/** Control Plane Access Control List (ACL) match configurations properties */\nexport interface ControlPlaneAclMatchConfigurationProperties {\n /** The name of the match configuration. */\n matchConfigurationName?: string;\n /** Sequence Number of the match configuration. */\n sequenceNumber?: number;\n /** Match conditions */\n matchCondition?: ControlPlaneAclMatchCondition;\n /** Action that need to be performed for the matched conditions. */\n action?: ControlPlaneAclAction;\n}\n\nexport function controlPlaneAclMatchConfigurationPropertiesSerializer(\n item: ControlPlaneAclMatchConfigurationProperties,\n): any {\n return {\n matchConfigurationName: item[\"matchConfigurationName\"],\n sequenceNumber: item[\"sequenceNumber\"],\n matchCondition: !item[\"matchCondition\"]\n ? item[\"matchCondition\"]\n : controlPlaneAclMatchConditionSerializer(item[\"matchCondition\"]),\n action: !item[\"action\"] ? item[\"action\"] : controlPlaneAclActionSerializer(item[\"action\"]),\n };\n}\n\nexport function controlPlaneAclMatchConfigurationPropertiesDeserializer(\n item: any,\n): ControlPlaneAclMatchConfigurationProperties {\n return {\n matchConfigurationName: item[\"matchConfigurationName\"],\n sequenceNumber: item[\"sequenceNumber\"],\n matchCondition: !item[\"matchCondition\"]\n ? item[\"matchCondition\"]\n : controlPlaneAclMatchConditionDeserializer(item[\"matchCondition\"]),\n action: !item[\"action\"] ? item[\"action\"] : controlPlaneAclActionDeserializer(item[\"action\"]),\n };\n}\n\n/** Control Plane Access Control List (ACL) match conditions properties */\nexport interface ControlPlaneAclMatchCondition {\n /** Protocols that need to be matched. */\n protocolTypes?: string;\n /** IP condition that needs to be matched. */\n ipCondition?: ControlPlanAclIpMatchCondition;\n /** TTL [Time To Live] values that need to be matched. */\n ttlMatchCondition?: ControlPlaneAclTtlMatchCondition;\n /** Port condition that needs to be matched. */\n portCondition?: ControlPlaneAclPortMatchCondition;\n /** Flags that need to be matched. Example: established | initial | <List-of-TCP-flags>. List of eligible TCP Flags are ack, cwr, ece, fin, psh, rst, syn, urg, established */\n flags?: string[];\n /** Internet Control Message Protocol (ICMP) configuration */\n icmpConfiguration?: IcmpConfigurationProperties;\n}\n\nexport function controlPlaneAclMatchConditionSerializer(item: ControlPlaneAclMatchCondition): any {\n return {\n protocolTypes: item[\"protocolTypes\"],\n ipCondition: !item[\"ipCondition\"]\n ? item[\"ipCondition\"]\n : controlPlanAclIpMatchConditionSerializer(item[\"ipCondition\"]),\n ttlMatchCondition: !item[\"ttlMatchCondition\"]\n ? item[\"ttlMatchCondition\"]\n : controlPlaneAclTtlMatchConditionSerializer(item[\"ttlMatchCondition\"]),\n portCondition: !item[\"portCondition\"]\n ? item[\"portCondition\"]\n : controlPlaneAclPortMatchConditionSerializer(item[\"portCondition\"]),\n flags: !item[\"flags\"]\n ? item[\"flags\"]\n : item[\"flags\"].map((p: any) => {\n return p;\n }),\n icmpConfiguration: !item[\"icmpConfiguration\"]\n ? item[\"icmpConfiguration\"]\n : icmpConfigurationPropertiesSerializer(item[\"icmpConfiguration\"]),\n };\n}\n\nexport function controlPlaneAclMatchConditionDeserializer(\n item: any,\n): ControlPlaneAclMatchCondition {\n return {\n protocolTypes: item[\"protocolTypes\"],\n ipCondition: !item[\"ipCondition\"]\n ? item[\"ipCondition\"]\n : controlPlanAclIpMatchConditionDeserializer(item[\"ipCondition\"]),\n ttlMatchCondition: !item[\"ttlMatchCondition\"]\n ? item[\"ttlMatchCondition\"]\n : controlPlaneAclTtlMatchConditionDeserializer(item[\"ttlMatchCondition\"]),\n portCondition: !item[\"portCondition\"]\n ? item[\"portCondition\"]\n : controlPlaneAclPortMatchConditionDeserializer(item[\"portCondition\"]),\n flags: !item[\"flags\"]\n ? item[\"flags\"]\n : item[\"flags\"].map((p: any) => {\n return p;\n }),\n icmpConfiguration: !item[\"icmpConfiguration\"]\n ? item[\"icmpConfiguration\"]\n : icmpConfigurationPropertiesDeserializer(item[\"icmpConfiguration\"]),\n };\n}\n\n/** Control Plane Access Control List (ACL) IP condition properties */\nexport interface ControlPlanAclIpMatchCondition {\n /** List of the source IP addresses that need to be matched. */\n sourceIpPrefix?: string;\n /** List of the destination IP addresses that need to be matched. */\n destinationIpPrefix?: string;\n}\n\nexport function controlPlanAclIpMatchConditionSerializer(\n item: ControlPlanAclIpMatchCondition,\n): any {\n return {\n sourceIpPrefix: item[\"sourceIpPrefix\"],\n destinationIpPrefix: item[\"destinationIpPrefix\"],\n };\n}\n\nexport function controlPlanAclIpMatchConditionDeserializer(\n item: any,\n): ControlPlanAclIpMatchCondition {\n return {\n sourceIpPrefix: item[\"sourceIpPrefix\"],\n destinationIpPrefix: item[\"destinationIpPrefix\"],\n };\n}\n\n/** TTL [Time To Live] match conditions properties */\nexport interface ControlPlaneAclTtlMatchCondition {\n /** TTL [Time To Live] values that need to be matched. */\n ttlValue?: string;\n /** TTL [Time To Live] match type. Example: eq | neq | gt | lt | range */\n ttlMatchType?: ControlPlaneAclTtlMatchType;\n}\n\nexport function controlPlaneAclTtlMatchConditionSerializer(\n item: ControlPlaneAclTtlMatchCondition,\n): any {\n return { ttlValue: item[\"ttlValue\"], ttlMatchType: item[\"ttlMatchType\"] };\n}\n\nexport function controlPlaneAclTtlMatchConditionDeserializer(\n item: any,\n): ControlPlaneAclTtlMatchCondition {\n return {\n ttlValue: item[\"ttlValue\"],\n ttlMatchType: item[\"ttlMatchType\"],\n };\n}\n\n/** Control Plane Access Control List (ACL) Time To Live (TTL) match conditions properties */\nexport enum KnownControlPlaneAclTtlMatchType {\n /** TTL-eq */\n Equals = \"eq\",\n /** TTL-neq */\n NotEquals = \"neq\",\n /** TTL-gt */\n GreaterThan = \"gt\",\n /** TTL-lt */\n LesserThan = \"lt\",\n}\n\n/**\n * Control Plane Access Control List (ACL) Time To Live (TTL) match conditions properties \\\n * {@link KnownControlPlaneAclTtlMatchType} can be used interchangeably with ControlPlaneAclTtlMatchType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **eq**: TTL-eq \\\n * **neq**: TTL-neq \\\n * **gt**: TTL-gt \\\n * **lt**: TTL-lt\n */\nexport type ControlPlaneAclTtlMatchType = string;\n\n/** Control Plane Access Control List (ACL) Port Match conditions properties */\nexport interface ControlPlaneAclPortMatchCondition {\n /** List of the ports that need to be matched. */\n sourcePorts?: ControlPlaneAclPortCondition;\n /** List of the destination ports that need to be matched. */\n destinationPorts?: ControlPlaneAclPortCondition;\n}\n\nexport function controlPlaneAclPortMatchConditionSerializer(\n item: ControlPlaneAclPortMatchCondition,\n): any {\n return {\n sourcePorts: !item[\"sourcePorts\"]\n ? item[\"sourcePorts\"]\n : controlPlaneAclPortConditionSerializer(item[\"sourcePorts\"]),\n destinationPorts: !item[\"destinationPorts\"]\n ? item[\"destinationPorts\"]\n : controlPlaneAclPortConditionSerializer(item[\"destinationPorts\"]),\n };\n}\n\nexport function controlPlaneAclPortMatchConditionDeserializer(\n item: any,\n): ControlPlaneAclPortMatchCondition {\n return {\n sourcePorts: !item[\"sourcePorts\"]\n ? item[\"sourcePorts\"]\n : controlPlaneAclPortConditionDeserializer(item[\"sourcePorts\"]),\n destinationPorts: !item[\"destinationPorts\"]\n ? item[\"destinationPorts\"]\n : controlPlaneAclPortConditionDeserializer(item[\"destinationPorts\"]),\n };\n}\n\n/** Control Plane Access Control List (ACL) Port Match conditions properties */\nexport interface ControlPlaneAclPortCondition {\n /** List of the ports that need to be matched. Possible values: 1234, 1234-1235, 1234,1235,1236 */\n ports?: string[];\n /** Port match type. Example: eq | neq | gt | lt | range */\n portMatchType?: ControlPlaneAclPortMatchType;\n}\n\nexport function controlPlaneAclPortConditionSerializer(item: ControlPlaneAclPortCondition): any {\n return {\n ports: !item[\"ports\"]\n ? item[\"ports\"]\n : item[\"ports\"].map((p: any) => {\n return p;\n }),\n portMatchType: item[\"portMatchType\"],\n };\n}\n\nexport function controlPlaneAclPortConditionDeserializer(item: any): ControlPlaneAclPortCondition {\n return {\n ports: !item[\"ports\"]\n ? item[\"ports\"]\n : item[\"ports\"].map((p: any) => {\n return p;\n }),\n portMatchType: item[\"portMatchType\"],\n };\n}\n\n/** Control Plane Access Control List (ACL) port match types */\nexport enum KnownControlPlaneAclPortMatchType {\n /** Port-eq */\n Equals = \"eq\",\n /** Port-neq */\n NotEquals = \"neq\",\n /** Port-gt */\n GreaterThan = \"gt\",\n /** Port-lt */\n LesserThan = \"lt\",\n /** Port-gt-eq */\n Range = \"range\",\n}\n\n/**\n * Control Plane Access Control List (ACL) port match types \\\n * {@link KnownControlPlaneAclPortMatchType} can be used interchangeably with ControlPlaneAclPortMatchType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **eq**: Port-eq \\\n * **neq**: Port-neq \\\n * **gt**: Port-gt \\\n * **lt**: Port-lt \\\n * **range**: Port-gt-eq\n */\nexport type ControlPlaneAclPortMatchType = string;\n\n/** Control Plane Access Control List (ACL) Actions */\nexport interface ControlPlaneAclAction {\n /** Type of actions that can be performed. */\n type?: ControlPlaneAclActionType;\n /** Remark comment */\n remarkComment?: string;\n}\n\nexport function controlPlaneAclActionSerializer(item: ControlPlaneAclAction): any {\n return { type: item[\"type\"], remarkComment: item[\"remarkComment\"] };\n}\n\nexport function controlPlaneAclActionDeserializer(item: any): ControlPlaneAclAction {\n return {\n type: item[\"type\"],\n remarkComment: item[\"remarkComment\"],\n };\n}\n\n/** Control Plane Access Control List (ACL) Action Types */\nexport enum KnownControlPlaneAclActionType {\n /** AclActionType Permit */\n Permit = \"Permit\",\n /** AclActionType Deny */\n Deny = \"Deny\",\n /** AclActionType Remark */\n Remark = \"Remark\",\n}\n\n/**\n * Control Plane Access Control List (ACL) Action Types \\\n * {@link KnownControlPlaneAclActionType} can be used interchangeably with ControlPlaneAclActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Permit**: AclActionType Permit \\\n * **Deny**: AclActionType Deny \\\n * **Remark**: AclActionType Remark\n */\nexport type ControlPlaneAclActionType = string;\n\n/** Configuration state for the resource. */\nexport enum KnownConfigurationState {\n /** Success Configuration State */\n Succeeded = \"Succeeded\",\n /** Failed Configuration State */\n Failed = \"Failed\",\n /** Rejected Configuration State */\n Rejected = \"Rejected\",\n /** Accepted Configuration State */\n Accepted = \"Accepted\",\n /** Provisioned Configuration State */\n Provisioned = \"Provisioned\",\n /** ErrorProvisioning Configuration State */\n ErrorProvisioning = \"ErrorProvisioning\",\n /** Deprovisioning Configuration State */\n Deprovisioning = \"Deprovisioning\",\n /** Deprovisioned Configuration State */\n Deprovisioned = \"Deprovisioned\",\n /** ErrorDeprovisioning Configuration State */\n ErrorDeprovisioning = \"ErrorDeprovisioning\",\n /** DeferredControl Configuration State */\n DeferredControl = \"DeferredControl\",\n /** Provisioning Configuration State */\n Provisioning = \"Provisioning\",\n /** PendingCommit Configuration State */\n PendingCommit = \"PendingCommit\",\n /** PendingAdministrativeUpdate State */\n PendingAdministrativeUpdate = \"PendingAdministrativeUpdate\",\n}\n\n/**\n * Configuration state for the resource. \\\n * {@link KnownConfigurationState} can be used interchangeably with ConfigurationState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Succeeded**: Success Configuration State \\\n * **Failed**: Failed Configuration State \\\n * **Rejected**: Rejected Configuration State \\\n * **Accepted**: Accepted Configuration State \\\n * **Provisioned**: Provisioned Configuration State \\\n * **ErrorProvisioning**: ErrorProvisioning Configuration State \\\n * **Deprovisioning**: Deprovisioning Configuration State \\\n * **Deprovisioned**: Deprovisioned Configuration State \\\n * **ErrorDeprovisioning**: ErrorDeprovisioning Configuration State \\\n * **DeferredControl**: DeferredControl Configuration State \\\n * **Provisioning**: Provisioning Configuration State \\\n * **PendingCommit**: PendingCommit Configuration State \\\n * **PendingAdministrativeUpdate**: PendingAdministrativeUpdate State\n */\nexport type ConfigurationState = string;\n\n/** The current provisioning state. */\nexport enum KnownProvisioningState {\n /** Accepted Provisioning State */\n Accepted = \"Accepted\",\n /** Succeeded Provisioning State */\n Succeeded = \"Succeeded\",\n /** Updating Provisioning State */\n Updating = \"Updating\",\n /** Deleting Provisioning State */\n Deleting = \"Deleting\",\n /** Failed Provisioning State */\n Failed = \"Failed\",\n /** Canceled Provisioning State */\n Canceled = \"Canceled\",\n}\n\n/**\n * The current provisioning state. \\\n * {@link KnownProvisioningState} can be used interchangeably with ProvisioningState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Accepted**: Accepted Provisioning State \\\n * **Succeeded**: Succeeded Provisioning State \\\n * **Updating**: Updating Provisioning State \\\n * **Deleting**: Deleting Provisioning State \\\n * **Failed**: Failed Provisioning State \\\n * **Canceled**: Canceled Provisioning State\n */\nexport type ProvisioningState = string;\n\n/** State defined to represent administrative actions or post actions on a particular resource. */\nexport enum KnownAdministrativeState {\n /** Enabled Administrative State */\n Enabled = \"Enabled\",\n /** Disabled Administrative State */\n Disabled = \"Disabled\",\n /** MAT(Manual Action Taken) Administrative State */\n MAT = \"MAT\",\n /** RMA(Return Material Authorization) Administrative State */\n RMA = \"RMA\",\n /** UnderMaintenance Administrative State */\n UnderMaintenance = \"UnderMaintenance\",\n /** EnabledDegraded Administrative State. */\n EnabledDegraded = \"EnabledDegraded\",\n}\n\n/**\n * State defined to represent administrative actions or post actions on a particular resource. \\\n * {@link KnownAdministrativeState} can be used interchangeably with AdministrativeState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: Enabled Administrative State \\\n * **Disabled**: Disabled Administrative State \\\n * **MAT**: MAT(Manual Action Taken) Administrative State \\\n * **RMA**: RMA(Return Material Authorization) Administrative State \\\n * **UnderMaintenance**: UnderMaintenance Administrative State \\\n * **EnabledDegraded**: EnabledDegraded Administrative State.\n */\nexport type AdministrativeState = string;\n\n/** Port condition that needs to be matched. */\nexport interface PortCondition {\n /** Port type that needs to be matched. */\n portType?: PortType;\n /** Layer4 protocol type that needs to be matched. */\n layer4Protocol: Layer4Protocol;\n /** List of the Ports that need to be matched. */\n ports?: string[];\n /** List of the port Group Names that need to be matched. */\n portGroupNames?: string[];\n}\n\nexport function portConditionSerializer(item: PortCondition): any {\n return {\n portType: item[\"portType\"],\n layer4Protocol: item[\"layer4Protocol\"],\n ports: !item[\"ports\"]\n ? item[\"ports\"]\n : item[\"ports\"].map((p: any) => {\n return p;\n }),\n portGroupNames: !item[\"portGroupNames\"]\n ? item[\"portGroupNames\"]\n : item[\"portGroupNames\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function portConditionDeserializer(item: any): PortCondition {\n return {\n portType: item[\"portType\"],\n layer4Protocol: item[\"layer4Protocol\"],\n ports: !item[\"ports\"]\n ? item[\"ports\"]\n : item[\"ports\"].map((p: any) => {\n return p;\n }),\n portGroupNames: !item[\"portGroupNames\"]\n ? item[\"portGroupNames\"]\n : item[\"portGroupNames\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Port type that needs to be matched. */\nexport enum KnownPortType {\n /** PortType SourcePort */\n SourcePort = \"SourcePort\",\n /** PortType DestinationPort */\n DestinationPort = \"DestinationPort\",\n /** PortType Bidirectional */\n Bidirectional = \"Bidirectional\",\n}\n\n/**\n * Port type that needs to be matched. \\\n * {@link KnownPortType} can be used interchangeably with PortType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **SourcePort**: PortType SourcePort \\\n * **DestinationPort**: PortType DestinationPort \\\n * **Bidirectional**: PortType Bidirectional\n */\nexport type PortType = string;\n\n/** Layer4 protocol type that needs to be matched. */\nexport enum KnownLayer4Protocol {\n /** TCP(Transmission Control Protocol) Protocol */\n TCP = \"TCP\",\n /** UDP(User Datagram Protocol) Protocol */\n UDP = \"UDP\",\n /** SCTP(Streaming Control Transmission Protocol) Protocol */\n Sctp = \"SCTP\",\n}\n\n/**\n * Layer4 protocol type that needs to be matched. \\\n * {@link KnownLayer4Protocol} can be used interchangeably with Layer4Protocol,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **TCP**: TCP(Transmission Control Protocol) Protocol \\\n * **UDP**: UDP(User Datagram Protocol) Protocol \\\n * **SCTP**: SCTP(Streaming Control Transmission Protocol) Protocol\n */\nexport type Layer4Protocol = string;\n\n/** Defines the common match conditions of the ACL and Network Tap Rule. */\nexport interface CommonMatchConditions {\n /** List of the protocols that need to be matched. */\n protocolTypes?: string[];\n /** Vlan match condition that needs to be matched. */\n vlanMatchCondition?: VlanMatchCondition;\n /** IP condition that needs to be matched. */\n ipCondition?: IpMatchCondition;\n}\n\nexport function commonMatchConditionsSerializer(item: CommonMatchConditions): any {\n return {\n protocolTypes: !item[\"protocolTypes\"]\n ? item[\"protocolTypes\"]\n : item[\"protocolTypes\"].map((p: any) => {\n return p;\n }),\n vlanMatchCondition: !item[\"vlanMatchCondition\"]\n ? item[\"vlanMatchCondition\"]\n : vlanMatchConditionSerializer(item[\"vlanMatchCondition\"]),\n ipCondition: !item[\"ipCondition\"]\n ? item[\"ipCondition\"]\n : ipMatchConditionSerializer(item[\"ipCondition\"]),\n };\n}\n\nexport function commonMatchConditionsDeserializer(item: any): CommonMatchConditions {\n return {\n protocolTypes: !item[\"protocolTypes\"]\n ? item[\"protocolTypes\"]\n : item[\"protocolTypes\"].map((p: any) => {\n return p;\n }),\n vlanMatchCondition: !item[\"vlanMatchCondition\"]\n ? item[\"vlanMatchCondition\"]\n : vlanMatchConditionDeserializer(item[\"vlanMatchCondition\"]),\n ipCondition: !item[\"ipCondition\"]\n ? item[\"ipCondition\"]\n : ipMatchConditionDeserializer(item[\"ipCondition\"]),\n };\n}\n\n/** The vlan match conditions that need to be matched. */\nexport interface VlanMatchCondition {\n /** List of vlans that need to be matched. Inputs can be single vlan or the range of vlans. */\n vlans?: string[];\n /** List of inner vlans that need to be matched.Inputs can be single vlan or the range of vlans. */\n innerVlans?: string[];\n /** List of vlan group names that need to be matched. */\n vlanGroupNames?: string[];\n}\n\nexport function vlanMatchConditionSerializer(item: VlanMatchCondition): any {\n return {\n vlans: !item[\"vlans\"]\n ? item[\"vlans\"]\n : item[\"vlans\"].map((p: any) => {\n return p;\n }),\n innerVlans: !item[\"innerVlans\"]\n ? item[\"innerVlans\"]\n : item[\"innerVlans\"].map((p: any) => {\n return p;\n }),\n vlanGroupNames: !item[\"vlanGroupNames\"]\n ? item[\"vlanGroupNames\"]\n : item[\"vlanGroupNames\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function vlanMatchConditionDeserializer(item: any): VlanMatchCondition {\n return {\n vlans: !item[\"vlans\"]\n ? item[\"vlans\"]\n : item[\"vlans\"].map((p: any) => {\n return p;\n }),\n innerVlans: !item[\"innerVlans\"]\n ? item[\"innerVlans\"]\n : item[\"innerVlans\"].map((p: any) => {\n return p;\n }),\n vlanGroupNames: !item[\"vlanGroupNames\"]\n ? item[\"vlanGroupNames\"]\n : item[\"vlanGroupNames\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Defines the condition that can be filtered using the selected IPs. */\nexport interface IpMatchCondition {\n /** IP Address type that needs to be matched. */\n type?: SourceDestinationType;\n /** IP Prefix Type that needs to be matched. */\n prefixType?: PrefixType;\n /** The list of IP Prefixes that need to be matched. */\n ipPrefixValues?: string[];\n /** The List of IP Group Names that need to be matched. */\n ipGroupNames?: string[];\n}\n\nexport function ipMatchConditionSerializer(item: IpMatchCondition): any {\n return {\n type: item[\"type\"],\n prefixType: item[\"prefixType\"],\n ipPrefixValues: !item[\"ipPrefixValues\"]\n ? item[\"ipPrefixValues\"]\n : item[\"ipPrefixValues\"].map((p: any) => {\n return p;\n }),\n ipGroupNames: !item[\"ipGroupNames\"]\n ? item[\"ipGroupNames\"]\n : item[\"ipGroupNames\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function ipMatchConditionDeserializer(item: any): IpMatchCondition {\n return {\n type: item[\"type\"],\n prefixType: item[\"prefixType\"],\n ipPrefixValues: !item[\"ipPrefixValues\"]\n ? item[\"ipPrefixValues\"]\n : item[\"ipPrefixValues\"].map((p: any) => {\n return p;\n }),\n ipGroupNames: !item[\"ipGroupNames\"]\n ? item[\"ipGroupNames\"]\n : item[\"ipGroupNames\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** IP Address type that needs to be matched. */\nexport enum KnownSourceDestinationType {\n /** SourceDestinationType SourceIP */\n SourceIP = \"SourceIP\",\n /** SourceDestinationType DestinationIP */\n DestinationIP = \"DestinationIP\",\n /** SourceDestinationType Bidirectional */\n Bidirectional = \"Bidirectional\",\n}\n\n/**\n * IP Address type that needs to be matched. \\\n * {@link KnownSourceDestinationType} can be used interchangeably with SourceDestinationType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **SourceIP**: SourceDestinationType SourceIP \\\n * **DestinationIP**: SourceDestinationType DestinationIP \\\n * **Bidirectional**: SourceDestinationType Bidirectional\n */\nexport type SourceDestinationType = string;\n\n/** IP Prefix Type that needs to be matched. */\nexport enum KnownPrefixType {\n /** PrefixType Prefix */\n Prefix = \"Prefix\",\n /** PrefixType LongestPrefix */\n LongestPrefix = \"LongestPrefix\",\n}\n\n/**\n * IP Prefix Type that needs to be matched. \\\n * {@link KnownPrefixType} can be used interchangeably with PrefixType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Prefix**: PrefixType Prefix \\\n * **LongestPrefix**: PrefixType LongestPrefix\n */\nexport type PrefixType = string;\n\n/** The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location' */\nexport interface TrackedResource extends Resource {\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The geo-location where the resource lives */\n location: string;\n}\n\nexport function trackedResourceSerializer(item: TrackedResource): any {\n return { tags: item[\"tags\"], location: item[\"location\"] };\n}\n\nexport function trackedResourceDeserializer(item: any): TrackedResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n };\n}\n\n/** Common fields that are returned in the response for all Azure Resource Manager resources */\nexport interface Resource {\n /** Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} */\n readonly id?: string;\n /** The name of the resource */\n readonly name?: string;\n /** The type of the resource. E.g. \"Microsoft.Compute/virtualMachines\" or \"Microsoft.Storage/storageAccounts\" */\n readonly type?: string;\n /** Azure Resource Manager metadata containing createdBy and modifiedBy information. */\n readonly systemData?: SystemData;\n}\n\nexport function resourceSerializer(_item: Resource): any {\n return {};\n}\n\nexport function resourceDeserializer(item: any): Resource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n };\n}\n\n/** Metadata pertaining to creation and last modification of the resource. */\nexport interface SystemData {\n /** The identity that created the resource. */\n createdBy?: string;\n /** The type of identity that created the resource. */\n createdByType?: CreatedByType;\n /** The timestamp of resource creation (UTC). */\n createdAt?: Date;\n /** The identity that last modified the resource. */\n lastModifiedBy?: string;\n /** The type of identity that last modified the resource. */\n lastModifiedByType?: CreatedByType;\n /** The timestamp of resource last modification (UTC) */\n lastModifiedAt?: Date;\n}\n\nexport function systemDataDeserializer(item: any): SystemData {\n return {\n createdBy: item[\"createdBy\"],\n createdByType: item[\"createdByType\"],\n createdAt: !item[\"createdAt\"] ? item[\"createdAt\"] : new Date(item[\"createdAt\"]),\n lastModifiedBy: item[\"lastModifiedBy\"],\n lastModifiedByType: item[\"lastModifiedByType\"],\n lastModifiedAt: !item[\"lastModifiedAt\"]\n ? item[\"lastModifiedAt\"]\n : new Date(item[\"lastModifiedAt\"]),\n };\n}\n\n/** The kind of entity that created the resource. */\nexport enum KnownCreatedByType {\n /** The entity was created by a user. */\n User = \"User\",\n /** The entity was created by an application. */\n Application = \"Application\",\n /** The entity was created by a managed identity. */\n ManagedIdentity = \"ManagedIdentity\",\n /** The entity was created by a key. */\n Key = \"Key\",\n}\n\n/**\n * The kind of entity that created the resource. \\\n * {@link KnownCreatedByType} can be used interchangeably with CreatedByType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **User**: The entity was created by a user. \\\n * **Application**: The entity was created by an application. \\\n * **ManagedIdentity**: The entity was created by a managed identity. \\\n * **Key**: The entity was created by a key.\n */\nexport type CreatedByType = string;\n\n/** The Access Control Lists patch resource definition. */\nexport interface AccessControlListPatch extends TagsUpdate {\n /** Input method to configure Access Control List. */\n configurationType?: ConfigurationType;\n /** Access Control List file URL. */\n aclsUrl?: string;\n /** Default action that needs to be applied when no condition is matched. Example: Permit | Deny. */\n defaultAction?: CommunityActionTypes;\n /** List of match configurations. */\n matchConfigurations?: AccessControlListMatchConfigurationPatch[];\n /** List of dynamic match configurations. */\n dynamicMatchConfigurations?: CommonDynamicMatchConfigurationPatch[];\n /** Access Control List (ACL) configurations. */\n controlPlaneAclConfiguration?: ControlPlaneAclPatchProperties[];\n /** Access Control List (ACL) Type */\n aclType?: AclType;\n /** Device Role */\n deviceRole?: DeviceRole;\n /** Global Access Control List (ACL) actions */\n globalAccessControlListActions?: GlobalAccessControlListActionPatchProperties;\n /** Switch configuration description. */\n annotation?: string;\n}\n\nexport function accessControlListPatchSerializer(item: AccessControlListPatch): any {\n return {\n tags: item[\"tags\"],\n properties: areAllPropsUndefined(item, [\n \"configurationType\",\n \"aclsUrl\",\n \"defaultAction\",\n \"matchConfigurations\",\n \"dynamicMatchConfigurations\",\n \"controlPlaneAclConfiguration\",\n \"aclType\",\n \"deviceRole\",\n \"globalAccessControlListActions\",\n \"annotation\",\n ])\n ? undefined\n : _accessControlListPatchPropertiesSerializer(item),\n };\n}\n\n/** Access Control Lists patch properties. */\nexport interface AccessControlListPatchProperties {\n /** Input method to configure Access Control List. */\n configurationType?: ConfigurationType;\n /** Access Control List file URL. */\n aclsUrl?: string;\n /** Default action that needs to be applied when no condition is matched. Example: Permit | Deny. */\n defaultAction?: CommunityActionTypes;\n /** List of match configurations. */\n matchConfigurations?: AccessControlListMatchConfigurationPatch[];\n /** List of dynamic match configurations. */\n dynamicMatchConfigurations?: CommonDynamicMatchConfigurationPatch[];\n /** Access Control List (ACL) configurations. */\n controlPlaneAclConfiguration?: ControlPlaneAclPatchProperties[];\n /** Access Control List (ACL) Type */\n aclType?: AclType;\n /** Device Role */\n deviceRole?: DeviceRole;\n /** Global Access Control List (ACL) actions */\n globalAccessControlListActions?: GlobalAccessControlListActionPatchProperties;\n /** Switch configuration description. */\n annotation?: string;\n}\n\nexport function accessControlListPatchPropertiesSerializer(\n item: AccessControlListPatchProperties,\n): any {\n return {\n configurationType: item[\"configurationType\"],\n aclsUrl: item[\"aclsUrl\"],\n defaultAction: item[\"defaultAction\"],\n matchConfigurations: !item[\"matchConfigurations\"]\n ? item[\"matchConfigurations\"]\n : accessControlListMatchConfigurationPatchArraySerializer(item[\"matchConfigurations\"]),\n dynamicMatchConfigurations: !item[\"dynamicMatchConfigurations\"]\n ? item[\"dynamicMatchConfigurations\"]\n : commonDynamicMatchConfigurationPatchArraySerializer(item[\"dynamicMatchConfigurations\"]),\n controlPlaneAclConfiguration: !item[\"controlPlaneAclConfiguration\"]\n ? item[\"controlPlaneAclConfiguration\"]\n : controlPlaneAclPatchPropertiesArraySerializer(item[\"controlPlaneAclConfiguration\"]),\n aclType: item[\"aclType\"],\n deviceRole: item[\"deviceRole\"],\n globalAccessControlListActions: !item[\"globalAccessControlListActions\"]\n ? item[\"globalAccessControlListActions\"]\n : globalAccessControlListActionPatchPropertiesSerializer(\n item[\"globalAccessControlListActions\"],\n ),\n annotation: item[\"annotation\"],\n };\n}\n\nexport function accessControlListMatchConfigurationPatchArraySerializer(\n result: Array<AccessControlListMatchConfigurationPatch>,\n): any[] {\n return result.map((item) => {\n return accessControlListMatchConfigurationPatchSerializer(item);\n });\n}\n\n/** Defines the match configuration that are supported to filter the traffic. */\nexport interface AccessControlListMatchConfigurationPatch {\n /** The name of the match configuration. */\n matchConfigurationName?: string;\n /** Sequence Number of the match configuration. */\n sequenceNumber?: number;\n /** Type of IP Address. IPv4 or IPv6 */\n ipAddressType?: IPAddressType;\n /** List of the match conditions. */\n matchConditions?: AccessControlListMatchConditionPatch[];\n /** List of actions that need to be performed for the matched conditions. */\n actions?: AccessControlListActionPatch[];\n}\n\nexport function accessControlListMatchConfigurationPatchSerializer(\n item: AccessControlListMatchConfigurationPatch,\n): any {\n return {\n matchConfigurationName: item[\"matchConfigurationName\"],\n sequenceNumber: item[\"sequenceNumber\"],\n ipAddressType: item[\"ipAddressType\"],\n matchConditions: !item[\"matchConditions\"]\n ? item[\"matchConditions\"]\n : accessControlListMatchConditionPatchArraySerializer(item[\"matchConditions\"]),\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : accessControlListActionPatchArraySerializer(item[\"actions\"]),\n };\n}\n\nexport function accessControlListMatchConditionPatchArraySerializer(\n result: Array<AccessControlListMatchConditionPatch>,\n): any[] {\n return result.map((item) => {\n return accessControlListMatchConditionPatchSerializer(item);\n });\n}\n\n/** Defines the match condition that is supported to filter the traffic. */\nexport interface AccessControlListMatchConditionPatch extends CommonMatchConditionsPatch {\n /** List of ether type values that need to be matched. */\n etherTypes?: string[];\n /** List of IP fragment packets that need to be matched. */\n fragments?: string[];\n /** List of IP Lengths that need to be matched. */\n ipLengths?: string[];\n /** List of TTL [Time To Live] values that need to be matched. */\n ttlValues?: string[];\n /** List of DSCP Markings that need to be matched. */\n dscpMarkings?: string[];\n /** Defines the port condition that needs to be matched. */\n portCondition?: AccessControlListPortConditionPatch;\n /** Protocol neighbors that need to be matched. */\n protocolNeighbors?: string[];\n /** Internet Control Message Protocol (ICMP) configuration */\n icmpConfiguration?: IcmpConfigurationPatchProperties;\n}\n\nexport function accessControlListMatchConditionPatchSerializer(\n item: AccessControlListMatchConditionPatch,\n): any {\n return {\n protocolTypes: !item[\"protocolTypes\"]\n ? item[\"protocolTypes\"]\n : item[\"protocolTypes\"].map((p: any) => {\n return p;\n }),\n vlanMatchCondition: !item[\"vlanMatchCondition\"]\n ? item[\"vlanMatchCondition\"]\n : vlanMatchConditionPatchSerializer(item[\"vlanMatchCondition\"]),\n ipCondition: !item[\"ipCondition\"]\n ? item[\"ipCondition\"]\n : ipMatchConditionPatchSerializer(item[\"ipCondition\"]),\n etherTypes: !item[\"etherTypes\"]\n ? item[\"etherTypes\"]\n : item[\"etherTypes\"].map((p: any) => {\n return p;\n }),\n fragments: !item[\"fragments\"]\n ? item[\"fragments\"]\n : item[\"fragments\"].map((p: any) => {\n return p;\n }),\n ipLengths: !item[\"ipLengths\"]\n ? item[\"ipLengths\"]\n : item[\"ipLengths\"].map((p: any) => {\n return p;\n }),\n ttlValues: !item[\"ttlValues\"]\n ? item[\"ttlValues\"]\n : item[\"ttlValues\"].map((p: any) => {\n return p;\n }),\n dscpMarkings: !item[\"dscpMarkings\"]\n ? item[\"dscpMarkings\"]\n : item[\"dscpMarkings\"].map((p: any) => {\n return p;\n }),\n portCondition: !item[\"portCondition\"]\n ? item[\"portCondition\"]\n : accessControlListPortConditionPatchSerializer(item[\"portCondition\"]),\n protocolNeighbors: !item[\"protocolNeighbors\"]\n ? item[\"protocolNeighbors\"]\n : item[\"protocolNeighbors\"].map((p: any) => {\n return p;\n }),\n icmpConfiguration: !item[\"icmpConfiguration\"]\n ? item[\"icmpConfiguration\"]\n : icmpConfigurationPatchPropertiesSerializer(item[\"icmpConfiguration\"]),\n };\n}\n\n/** Defines the port condition that needs to be matched. */\nexport interface AccessControlListPortConditionPatch extends PortConditionPatch {\n /** List of protocol flags that need to be matched. Example: established | initial | <List-of-TCP-flags>. List of eligible TCP Flags are ack, fin, not-ack, not-fin, not-psh, not-rst, not-syn, not-urg, psh, rst, syn, urg */\n flags?: string[];\n}\n\nexport function accessControlListPortConditionPatchSerializer(\n item: AccessControlListPortConditionPatch,\n): any {\n return {\n portType: item[\"portType\"],\n layer4Protocol: item[\"layer4Protocol\"],\n ports: !item[\"ports\"]\n ? item[\"ports\"]\n : item[\"ports\"].map((p: any) => {\n return p;\n }),\n portGroupNames: !item[\"portGroupNames\"]\n ? item[\"portGroupNames\"]\n : item[\"portGroupNames\"].map((p: any) => {\n return p;\n }),\n flags: !item[\"flags\"]\n ? item[\"flags\"]\n : item[\"flags\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Internet Control Message Protocol (ICMP) configuration patch properties */\nexport interface IcmpConfigurationPatchProperties {\n /** Internet Control Message Protocol (ICMP) types */\n icmpTypes?: string[];\n}\n\nexport function icmpConfigurationPatchPropertiesSerializer(\n item: IcmpConfigurationPatchProperties,\n): any {\n return {\n icmpTypes: !item[\"icmpTypes\"]\n ? item[\"icmpTypes\"]\n : item[\"icmpTypes\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function accessControlListActionPatchArraySerializer(\n result: Array<AccessControlListActionPatch>,\n): any[] {\n return result.map((item) => {\n return accessControlListActionPatchSerializer(item);\n });\n}\n\n/** Action that need to be performed */\nexport interface AccessControlListActionPatch {\n /** Type of actions that can be performed. */\n type?: AclActionType;\n /** Name of the counter block to get match count information. */\n counterName?: string;\n /** Remark comment */\n remarkComment?: string;\n /** Police rate configuration */\n policeRateConfiguration?: PoliceRateConfigurationProperties;\n}\n\nexport function accessControlListActionPatchSerializer(item: AccessControlListActionPatch): any {\n return {\n type: item[\"type\"],\n counterName: item[\"counterName\"],\n remarkComment: item[\"remarkComment\"],\n policeRateConfiguration: !item[\"policeRateConfiguration\"]\n ? item[\"policeRateConfiguration\"]\n : policeRateConfigurationPropertiesSerializer(item[\"policeRateConfiguration\"]),\n };\n}\n\nexport function commonDynamicMatchConfigurationPatchArraySerializer(\n result: Array<CommonDynamicMatchConfigurationPatch>,\n): any[] {\n return result.map((item) => {\n return commonDynamicMatchConfigurationPatchSerializer(item);\n });\n}\n\n/** Dynamic match configuration object. */\nexport interface CommonDynamicMatchConfigurationPatch {\n /** List of IP Groups. */\n ipGroups?: IpGroupPatchProperties[];\n /** List of vlan groups. */\n vlanGroups?: VlanGroupPatchProperties[];\n /** List of the port groups. */\n portGroups?: PortGroupPatchProperties[];\n}\n\nexport function commonDynamicMatchConfigurationPatchSerializer(\n item: CommonDynamicMatchConfigurationPatch,\n): any {\n return {\n ipGroups: !item[\"ipGroups\"]\n ? item[\"ipGroups\"]\n : ipGroupPatchPropertiesArraySerializer(item[\"ipGroups\"]),\n vlanGroups: !item[\"vlanGroups\"]\n ? item[\"vlanGroups\"]\n : vlanGroupPatchPropertiesArraySerializer(item[\"vlanGroups\"]),\n portGroups: !item[\"portGroups\"]\n ? item[\"portGroups\"]\n : portGroupPatchPropertiesArraySerializer(item[\"portGroups\"]),\n };\n}\n\nexport function ipGroupPatchPropertiesArraySerializer(\n result: Array<IpGroupPatchProperties>,\n): any[] {\n return result.map((item) => {\n return ipGroupPatchPropertiesSerializer(item);\n });\n}\n\n/** IP Group properties. */\nexport interface IpGroupPatchProperties {\n /** IP Group name. */\n name?: string;\n /** IP Address type. */\n ipAddressType?: IPAddressType;\n /** List of IP Prefixes. */\n ipPrefixes?: string[];\n}\n\nexport function ipGroupPatchPropertiesSerializer(item: IpGroupPatchProperties): any {\n return {\n name: item[\"name\"],\n ipAddressType: item[\"ipAddressType\"],\n ipPrefixes: !item[\"ipPrefixes\"]\n ? item[\"ipPrefixes\"]\n : item[\"ipPrefixes\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function vlanGroupPatchPropertiesArraySerializer(\n result: Array<VlanGroupPatchProperties>,\n): any[] {\n return result.map((item) => {\n return vlanGroupPatchPropertiesSerializer(item);\n });\n}\n\n/** Vlan group properties. */\nexport interface VlanGroupPatchProperties {\n /** Vlan group name. */\n name?: string;\n /** List of vlans. */\n vlans?: string[];\n}\n\nexport function vlanGroupPatchPropertiesSerializer(item: VlanGroupPatchProperties): any {\n return {\n name: item[\"name\"],\n vlans: !item[\"vlans\"]\n ? item[\"vlans\"]\n : item[\"vlans\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function portGroupPatchPropertiesArraySerializer(\n result: Array<PortGroupPatchProperties>,\n): any[] {\n return result.map((item) => {\n return portGroupPatchPropertiesSerializer(item);\n });\n}\n\n/** Port Group Properties */\nexport interface PortGroupPatchProperties {\n /** The name of the port group. */\n name?: string;\n /** List of the ports that need to be matched. */\n ports?: string[];\n}\n\nexport function portGroupPatchPropertiesSerializer(item: PortGroupPatchProperties): any {\n return {\n name: item[\"name\"],\n ports: !item[\"ports\"]\n ? item[\"ports\"]\n : item[\"ports\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function controlPlaneAclPatchPropertiesArraySerializer(\n result: Array<ControlPlaneAclPatchProperties>,\n): any[] {\n return result.map((item) => {\n return controlPlaneAclPatchPropertiesSerializer(item);\n });\n}\n\n/** Access Control List (ACL) configurations patch properties */\nexport interface ControlPlaneAclPatchProperties {\n /** IP Address Type. IPv4 or IPv6 */\n ipAddressType?: IPAddressType;\n /** Access Control List (ACL) match configurations. */\n matchConfigurations?: ControlPlaneAclMatchConfigurationPatchProperties[];\n}\n\nexport function controlPlaneAclPatchPropertiesSerializer(\n item: ControlPlaneAclPatchProperties,\n): any {\n return {\n ipAddressType: item[\"ipAddressType\"],\n matchConfigurations: !item[\"matchConfigurations\"]\n ? item[\"matchConfigurations\"]\n : controlPlaneAclMatchConfigurationPatchPropertiesArraySerializer(\n item[\"matchConfigurations\"],\n ),\n };\n}\n\nexport function controlPlaneAclMatchConfigurationPatchPropertiesArraySerializer(\n result: Array<ControlPlaneAclMatchConfigurationPatchProperties>,\n): any[] {\n return result.map((item) => {\n return controlPlaneAclMatchConfigurationPatchPropertiesSerializer(item);\n });\n}\n\n/** Control Plane Access Control List (ACL) match configurations properties */\nexport interface ControlPlaneAclMatchConfigurationPatchProperties {\n /** The name of the match configuration. */\n matchConfigurationName?: string;\n /** Sequence Number of the match configuration. */\n sequenceNumber?: number;\n /** Match conditions */\n matchCondition?: ControlPlaneAclMatchConditionPatch;\n /** Action that need to be performed for the matched conditions. */\n action?: ControlPlaneAclActionPatch;\n}\n\nexport function controlPlaneAclMatchConfigurationPatchPropertiesSerializer(\n item: ControlPlaneAclMatchConfigurationPatchProperties,\n): any {\n return {\n matchConfigurationName: item[\"matchConfigurationName\"],\n sequenceNumber: item[\"sequenceNumber\"],\n matchCondition: !item[\"matchCondition\"]\n ? item[\"matchCondition\"]\n : controlPlaneAclMatchConditionPatchSerializer(item[\"matchCondition\"]),\n action: !item[\"action\"] ? item[\"action\"] : controlPlaneAclActionPatchSerializer(item[\"action\"]),\n };\n}\n\n/** Control Plane Access Control List (ACL) match conditions properties */\nexport interface ControlPlaneAclMatchConditionPatch {\n /** Protocols that need to be matched. */\n protocolTypes?: string;\n /** IP condition that needs to be matched. */\n ipCondition?: ControlPlaneAclIpMatchConditionPatch;\n /** TTL [Time To Live] values that need to be matched. */\n ttlMatchCondition?: ControlPlaneAclTtlMatchConditionPatch;\n /** Port condition that needs to be matched. */\n portCondition?: ControlPlaneAclPortMatchConditionPatch;\n /** Flags that need to be matched. Example: established | initial | <List-of-TCP-flags>. List of eligible TCP Flags are ack, cwr, ece, fin, psh, rst, syn, urg, established */\n flags?: string[];\n /** Internet Control Message Protocol (ICMP) configuration */\n icmpConfiguration?: IcmpConfigurationPatchProperties;\n}\n\nexport function controlPlaneAclMatchConditionPatchSerializer(\n item: ControlPlaneAclMatchConditionPatch,\n): any {\n return {\n protocolTypes: item[\"protocolTypes\"],\n ipCondition: !item[\"ipCondition\"]\n ? item[\"ipCondition\"]\n : controlPlaneAclIpMatchConditionPatchSerializer(item[\"ipCondition\"]),\n ttlMatchCondition: !item[\"ttlMatchCondition\"]\n ? item[\"ttlMatchCondition\"]\n : controlPlaneAclTtlMatchConditionPatchSerializer(item[\"ttlMatchCondition\"]),\n portCondition: !item[\"portCondition\"]\n ? item[\"portCondition\"]\n : controlPlaneAclPortMatchConditionPatchSerializer(item[\"portCondition\"]),\n flags: !item[\"flags\"]\n ? item[\"flags\"]\n : item[\"flags\"].map((p: any) => {\n return p;\n }),\n icmpConfiguration: !item[\"icmpConfiguration\"]\n ? item[\"icmpConfiguration\"]\n : icmpConfigurationPatchPropertiesSerializer(item[\"icmpConfiguration\"]),\n };\n}\n\n/** Control Plane Access Control List (ACL) IP condition patch properties */\nexport interface ControlPlaneAclIpMatchConditionPatch {\n /** List of the source IP addresses that need to be matched. */\n sourceIpPrefix?: string;\n /** List of the destination IP addresses that need to be matched. */\n destinationIpPrefix?: string;\n}\n\nexport function controlPlaneAclIpMatchConditionPatchSerializer(\n item: ControlPlaneAclIpMatchConditionPatch,\n): any {\n return {\n sourceIpPrefix: item[\"sourceIpPrefix\"],\n destinationIpPrefix: item[\"destinationIpPrefix\"],\n };\n}\n\n/** TTL [Time To Live] match conditions patch properties */\nexport interface ControlPlaneAclTtlMatchConditionPatch {\n /** TTL [Time To Live] values that need to be matched. */\n ttlValue?: string;\n /** TTL [Time To Live] match type. Example: eq | neq | gt | lt | range */\n ttlMatchType?: ControlPlaneAclTtlMatchType;\n}\n\nexport function controlPlaneAclTtlMatchConditionPatchSerializer(\n item: ControlPlaneAclTtlMatchConditionPatch,\n): any {\n return { ttlValue: item[\"ttlValue\"], ttlMatchType: item[\"ttlMatchType\"] };\n}\n\n/** Control Plane Access Control List (ACL) Port Match conditions properties */\nexport interface ControlPlaneAclPortMatchConditionPatch {\n /** List of the ports that need to be matched. */\n sourcePorts?: ControlPlaneAclPortCondition;\n /** List of the destination ports that need to be matched. */\n destinationPorts?: ControlPlaneAclPortCondition;\n}\n\nexport function controlPlaneAclPortMatchConditionPatchSerializer(\n item: ControlPlaneAclPortMatchConditionPatch,\n): any {\n return {\n sourcePorts: !item[\"sourcePorts\"]\n ? item[\"sourcePorts\"]\n : controlPlaneAclPortConditionSerializer(item[\"sourcePorts\"]),\n destinationPorts: !item[\"destinationPorts\"]\n ? item[\"destinationPorts\"]\n : controlPlaneAclPortConditionSerializer(item[\"destinationPorts\"]),\n };\n}\n\n/** Control Plane Access Control List (ACL) Actions */\nexport interface ControlPlaneAclActionPatch {\n /** Type of actions that can be performed. */\n type?: ControlPlaneAclActionType;\n /** Remark comment */\n remarkComment?: string;\n}\n\nexport function controlPlaneAclActionPatchSerializer(item: ControlPlaneAclActionPatch): any {\n return { type: item[\"type\"], remarkComment: item[\"remarkComment\"] };\n}\n\n/** Global Access Control List actions patch properties */\nexport interface GlobalAccessControlListActionPatchProperties {\n /** Configuration to enable or disable ACL action count. */\n enableCount?: BooleanEnumProperty;\n}\n\nexport function globalAccessControlListActionPatchPropertiesSerializer(\n item: GlobalAccessControlListActionPatchProperties,\n): any {\n return { enableCount: item[\"enableCount\"] };\n}\n\n/** Port condition that needs to be matched. */\nexport interface PortConditionPatch {\n /** Port type that needs to be matched. */\n portType?: PortType;\n /** Layer4 protocol type that needs to be matched. */\n layer4Protocol?: Layer4Protocol;\n /** List of the Ports that need to be matched. */\n ports?: string[];\n /** List of the port Group Names that need to be matched. */\n portGroupNames?: string[];\n}\n\nexport function portConditionPatchSerializer(item: PortConditionPatch): any {\n return {\n portType: item[\"portType\"],\n layer4Protocol: item[\"layer4Protocol\"],\n ports: !item[\"ports\"]\n ? item[\"ports\"]\n : item[\"ports\"].map((p: any) => {\n return p;\n }),\n portGroupNames: !item[\"portGroupNames\"]\n ? item[\"portGroupNames\"]\n : item[\"portGroupNames\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Defines the common match conditions of the ACL and Network Tap Rule. */\nexport interface CommonMatchConditionsPatch {\n /** List of the protocols that need to be matched. */\n protocolTypes?: string[];\n /** Vlan match condition that needs to be matched. */\n vlanMatchCondition?: VlanMatchConditionPatch;\n /** IP condition that needs to be matched. */\n ipCondition?: IpMatchConditionPatch;\n}\n\nexport function commonMatchConditionsPatchSerializer(item: CommonMatchConditionsPatch): any {\n return {\n protocolTypes: !item[\"protocolTypes\"]\n ? item[\"protocolTypes\"]\n : item[\"protocolTypes\"].map((p: any) => {\n return p;\n }),\n vlanMatchCondition: !item[\"vlanMatchCondition\"]\n ? item[\"vlanMatchCondition\"]\n : vlanMatchConditionPatchSerializer(item[\"vlanMatchCondition\"]),\n ipCondition: !item[\"ipCondition\"]\n ? item[\"ipCondition\"]\n : ipMatchConditionPatchSerializer(item[\"ipCondition\"]),\n };\n}\n\n/** The vlan match conditions that need to be matched. */\nexport interface VlanMatchConditionPatch {\n /** List of vlans that need to be matched. Inputs can be single vlan or the range of vlans. */\n vlans?: string[];\n /** List of inner vlans that need to be matched.Inputs can be single vlan or the range of vlans. */\n innerVlans?: string[];\n /** List of vlan group names that need to be matched. */\n vlanGroupNames?: string[];\n}\n\nexport function vlanMatchConditionPatchSerializer(item: VlanMatchConditionPatch): any {\n return {\n vlans: !item[\"vlans\"]\n ? item[\"vlans\"]\n : item[\"vlans\"].map((p: any) => {\n return p;\n }),\n innerVlans: !item[\"innerVlans\"]\n ? item[\"innerVlans\"]\n : item[\"innerVlans\"].map((p: any) => {\n return p;\n }),\n vlanGroupNames: !item[\"vlanGroupNames\"]\n ? item[\"vlanGroupNames\"]\n : item[\"vlanGroupNames\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Defines the condition that can be filtered using the selected IPs. */\nexport interface IpMatchConditionPatch {\n /** IP Address type that needs to be matched. */\n type?: SourceDestinationType;\n /** IP Prefix Type that needs to be matched. */\n prefixType?: PrefixType;\n /** The list of IP Prefixes that need to be matched. */\n ipPrefixValues?: string[];\n /** The List of IP Group Names that need to be matched. */\n ipGroupNames?: string[];\n}\n\nexport function ipMatchConditionPatchSerializer(item: IpMatchConditionPatch): any {\n return {\n type: item[\"type\"],\n prefixType: item[\"prefixType\"],\n ipPrefixValues: !item[\"ipPrefixValues\"]\n ? item[\"ipPrefixValues\"]\n : item[\"ipPrefixValues\"].map((p: any) => {\n return p;\n }),\n ipGroupNames: !item[\"ipGroupNames\"]\n ? item[\"ipGroupNames\"]\n : item[\"ipGroupNames\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Base tracked resource type for PATCH updates. */\nexport interface TagsUpdate {\n /** Resource tags. */\n tags?: Record<string, string>;\n}\n\nexport function tagsUpdateSerializer(item: TagsUpdate): any {\n return { tags: item[\"tags\"] };\n}\n\n/** Paged collection of AccessControlList items */\nexport interface _AccessControlListsListResult {\n /** The AccessControlList items on this page */\n value: AccessControlList[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _accessControlListsListResultDeserializer(\n item: any,\n): _AccessControlListsListResult {\n return {\n value: accessControlListArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function accessControlListArraySerializer(result: Array<AccessControlList>): any[] {\n return result.map((item) => {\n return accessControlListSerializer(item);\n });\n}\n\nexport function accessControlListArrayDeserializer(result: Array<AccessControlList>): any[] {\n return result.map((item) => {\n return accessControlListDeserializer(item);\n });\n}\n\n/** Update administrative state on list of resources. */\nexport interface UpdateAdministrativeState extends EnableDisableOnResources {\n /** Administrative state. */\n state?: EnableDisableState;\n}\n\nexport function updateAdministrativeStateSerializer(item: UpdateAdministrativeState): any {\n return {\n resourceIds: !item[\"resourceIds\"]\n ? item[\"resourceIds\"]\n : item[\"resourceIds\"].map((p: any) => {\n return p;\n }),\n state: item[\"state\"],\n };\n}\n\n/** Administrative state. */\nexport enum KnownEnableDisableState {\n /** AdministrativeState Enable */\n Enable = \"Enable\",\n /** AdministrativeState Disable */\n Disable = \"Disable\",\n /** AdministrativeState UnderMaintenance */\n UnderMaintenance = \"UnderMaintenance\",\n}\n\n/**\n * Administrative state. \\\n * {@link KnownEnableDisableState} can be used interchangeably with EnableDisableState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enable**: AdministrativeState Enable \\\n * **Disable**: AdministrativeState Disable \\\n * **UnderMaintenance**: AdministrativeState UnderMaintenance\n */\nexport type EnableDisableState = string;\n\n/** Update administrative state on list of resources. */\nexport interface EnableDisableOnResources {\n /** Network Fabrics or Network Rack resource Id. */\n resourceIds?: string[];\n}\n\nexport function enableDisableOnResourcesSerializer(item: EnableDisableOnResources): any {\n return {\n resourceIds: !item[\"resourceIds\"]\n ? item[\"resourceIds\"]\n : item[\"resourceIds\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Update Administrative State Response. */\nexport interface UpdateAdministrativeStateResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n /** Response properties in case of successful administrative state update. */\n properties?: UpdateAdministrativeStateResponseProperties;\n}\n\nexport function updateAdministrativeStateResponseDeserializer(\n item: any,\n): UpdateAdministrativeStateResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : updateAdministrativeStateResponsePropertiesDeserializer(item[\"properties\"]),\n };\n}\n\nexport function operationStatusResultArrayDeserializer(\n result: Array<OperationStatusResult>,\n): any[] {\n return result.map((item) => {\n return operationStatusResultDeserializer(item);\n });\n}\n\n/** The current status of an async operation. */\nexport interface OperationStatusResult {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n}\n\nexport function operationStatusResultDeserializer(item: any): OperationStatusResult {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** Update Administrative State Response Properties. */\nexport interface UpdateAdministrativeStateResponseProperties {\n /** List of ARM Resource IDs for which the given action applied successfully. */\n successfulResources?: string[];\n /** List of ARM Resource IDs for which the given action failed to apply. */\n failedResources?: string[];\n}\n\nexport function updateAdministrativeStateResponsePropertiesDeserializer(\n item: any,\n): UpdateAdministrativeStateResponseProperties {\n return {\n successfulResources: !item[\"successfulResources\"]\n ? item[\"successfulResources\"]\n : item[\"successfulResources\"].map((p: any) => {\n return p;\n }),\n failedResources: !item[\"failedResources\"]\n ? item[\"failedResources\"]\n : item[\"failedResources\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Common response for the state updates. */\nexport interface CommonPostActionResponseForStateUpdate extends CommonErrorResponse {\n /** Gets the configuration state. */\n readonly configurationState?: ConfigurationState;\n}\n\nexport function commonPostActionResponseForStateUpdateDeserializer(\n item: any,\n): CommonPostActionResponseForStateUpdate {\n return {\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n configurationState: item[\"configurationState\"],\n };\n}\n\n/** The error message. */\nexport interface CommonErrorResponse {\n /** The error object. */\n error?: ErrorDetail;\n}\n\nexport function commonErrorResponseDeserializer(item: any): CommonErrorResponse {\n return {\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n };\n}\n\n/** The response of the action validate configuration. */\nexport interface ValidateConfigurationResponse extends CommonErrorResponse {\n /** Gets the configuration state. */\n readonly configurationState?: ConfigurationState;\n /** URL for the details of the response. */\n url?: string;\n}\n\nexport function validateConfigurationResponseDeserializer(\n item: any,\n): ValidateConfigurationResponse {\n return {\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n configurationState: item[\"configurationState\"],\n url: item[\"url\"],\n };\n}\n\n/** The Internet Gateway Rule resource definition. */\nexport interface InternetGatewayRule extends TrackedResource {\n /** Switch configuration description. */\n annotation?: string;\n /** Rules for the InternetGateways */\n ruleProperties: RuleProperties;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** List of Internet Gateway resource Id. */\n readonly internetGatewayIds?: string[];\n}\n\nexport function internetGatewayRuleSerializer(item: InternetGatewayRule): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: _internetGatewayRulePropertiesSerializer(item),\n };\n}\n\nexport function internetGatewayRuleDeserializer(item: any): InternetGatewayRule {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._internetGatewayRulePropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Internet Gateway Rule Properties defines the resource properties. */\nexport interface InternetGatewayRuleProperties extends AnnotationResource {\n /** Rules for the InternetGateways */\n ruleProperties: RuleProperties;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** List of Internet Gateway resource Id. */\n readonly internetGatewayIds?: string[];\n}\n\nexport function internetGatewayRulePropertiesSerializer(item: InternetGatewayRuleProperties): any {\n return {\n annotation: item[\"annotation\"],\n ruleProperties: rulePropertiesSerializer(item[\"ruleProperties\"]),\n };\n}\n\nexport function internetGatewayRulePropertiesDeserializer(\n item: any,\n): InternetGatewayRuleProperties {\n return {\n annotation: item[\"annotation\"],\n ruleProperties: rulePropertiesDeserializer(item[\"ruleProperties\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n provisioningState: item[\"provisioningState\"],\n internetGatewayIds: !item[\"internetGatewayIds\"]\n ? item[\"internetGatewayIds\"]\n : item[\"internetGatewayIds\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Rules for the InternetGateways */\nexport interface RuleProperties {\n /** Specify action. */\n action: Action;\n /** List of Addresses to be allowed or denied. */\n addressList?: string[];\n /** Specify rule condition. */\n condition?: RuleCondition;\n /** List of Addresses to be allowed or denied. */\n destinationAddressList?: string[];\n /** List of source IPv4 and IPv6 address to be allowed or denied. */\n sourceAddressList?: string[];\n /** List of header Name and source addresses associated with the header. */\n headerAddressList?: HeaderAddressProperties[];\n}\n\nexport function rulePropertiesSerializer(item: RuleProperties): any {\n return {\n action: item[\"action\"],\n addressList: !item[\"addressList\"]\n ? item[\"addressList\"]\n : item[\"addressList\"].map((p: any) => {\n return p;\n }),\n condition: item[\"condition\"],\n destinationAddressList: !item[\"destinationAddressList\"]\n ? item[\"destinationAddressList\"]\n : item[\"destinationAddressList\"].map((p: any) => {\n return p;\n }),\n sourceAddressList: !item[\"sourceAddressList\"]\n ? item[\"sourceAddressList\"]\n : item[\"sourceAddressList\"].map((p: any) => {\n return p;\n }),\n headerAddressList: !item[\"headerAddressList\"]\n ? item[\"headerAddressList\"]\n : headerAddressPropertiesArraySerializer(item[\"headerAddressList\"]),\n };\n}\n\nexport function rulePropertiesDeserializer(item: any): RuleProperties {\n return {\n action: item[\"action\"],\n addressList: !item[\"addressList\"]\n ? item[\"addressList\"]\n : item[\"addressList\"].map((p: any) => {\n return p;\n }),\n condition: item[\"condition\"],\n destinationAddressList: !item[\"destinationAddressList\"]\n ? item[\"destinationAddressList\"]\n : item[\"destinationAddressList\"].map((p: any) => {\n return p;\n }),\n sourceAddressList: !item[\"sourceAddressList\"]\n ? item[\"sourceAddressList\"]\n : item[\"sourceAddressList\"].map((p: any) => {\n return p;\n }),\n headerAddressList: !item[\"headerAddressList\"]\n ? item[\"headerAddressList\"]\n : headerAddressPropertiesArrayDeserializer(item[\"headerAddressList\"]),\n };\n}\n\n/** Specify action. */\nexport enum KnownAction {\n /** Action Allow */\n Allow = \"Allow\",\n /** Action Deny */\n Deny = \"Deny\",\n}\n\n/**\n * Specify action. \\\n * {@link KnownAction} can be used interchangeably with Action,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Allow**: Action Allow \\\n * **Deny**: Action Deny\n */\nexport type Action = string;\n\n/** Specify Rule condition. */\nexport enum KnownRuleCondition {\n /** And Rule-Condition. */\n And = \"And\",\n /** Or Rule-Condition. */\n Or = \"Or\",\n}\n\n/**\n * Specify Rule condition. \\\n * {@link KnownRuleCondition} can be used interchangeably with RuleCondition,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **And**: And Rule-Condition. \\\n * **Or**: Or Rule-Condition.\n */\nexport type RuleCondition = string;\n\nexport function headerAddressPropertiesArraySerializer(\n result: Array<HeaderAddressProperties>,\n): any[] {\n return result.map((item) => {\n return headerAddressPropertiesSerializer(item);\n });\n}\n\nexport function headerAddressPropertiesArrayDeserializer(\n result: Array<HeaderAddressProperties>,\n): any[] {\n return result.map((item) => {\n return headerAddressPropertiesDeserializer(item);\n });\n}\n\n/** Header name and source addresses associated with the header. */\nexport interface HeaderAddressProperties {\n /** Name of the header. */\n headerName?: string;\n /** List of source remote IP to be allowed or denied. */\n addressList?: string[];\n}\n\nexport function headerAddressPropertiesSerializer(item: HeaderAddressProperties): any {\n return {\n headerName: item[\"headerName\"],\n addressList: !item[\"addressList\"]\n ? item[\"addressList\"]\n : item[\"addressList\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function headerAddressPropertiesDeserializer(item: any): HeaderAddressProperties {\n return {\n headerName: item[\"headerName\"],\n addressList: !item[\"addressList\"]\n ? item[\"addressList\"]\n : item[\"addressList\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Switch configuration entries require a description to discern between configuration group */\nexport interface AnnotationResource {\n /** Switch configuration description. */\n annotation?: string;\n}\n\nexport function annotationResourceSerializer(item: AnnotationResource): any {\n return { annotation: item[\"annotation\"] };\n}\n\nexport function annotationResourceDeserializer(item: any): AnnotationResource {\n return {\n annotation: item[\"annotation\"],\n };\n}\n\n/** The Internet Gateway Rules patch resource definition. */\nexport interface InternetGatewayRulePatch {\n /** Resource tags. */\n tags?: Record<string, string>;\n}\n\nexport function internetGatewayRulePatchSerializer(item: InternetGatewayRulePatch): any {\n return { tags: item[\"tags\"] };\n}\n\n/** Paged collection of InternetGatewayRule items */\nexport interface _InternetGatewayRulesListResult {\n /** The InternetGatewayRule items on this page */\n value: InternetGatewayRule[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _internetGatewayRulesListResultDeserializer(\n item: any,\n): _InternetGatewayRulesListResult {\n return {\n value: internetGatewayRuleArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function internetGatewayRuleArraySerializer(result: Array<InternetGatewayRule>): any[] {\n return result.map((item) => {\n return internetGatewayRuleSerializer(item);\n });\n}\n\nexport function internetGatewayRuleArrayDeserializer(result: Array<InternetGatewayRule>): any[] {\n return result.map((item) => {\n return internetGatewayRuleDeserializer(item);\n });\n}\n\n/** The Internet Gateway resource definition. */\nexport interface InternetGateway extends TrackedResource {\n /** Switch configuration description. */\n annotation?: string;\n /** ARM Resource ID of the Internet Gateway Rule. */\n internetGatewayRuleId?: string;\n /** IPv4 Address of Internet Gateway. */\n readonly ipv4Address?: string;\n /** Port number of Internet Gateway. */\n readonly port?: number;\n /** Gateway Type of the resource. */\n typePropertiesType?: GatewayType;\n /** Gateway Type of the resource. */\n internetGatewayType?: GatewayType;\n /** ARM Resource ID of the Network Fabric Controller. */\n networkFabricControllerId: string;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Provisioning state of resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function internetGatewaySerializer(item: InternetGateway): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: _internetGatewayPropertiesSerializer(item),\n };\n}\n\nexport function internetGatewayDeserializer(item: any): InternetGateway {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._internetGatewayPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Internet Gateway Properties defines the properties of the resource. */\nexport interface InternetGatewayProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** ARM Resource ID of the Internet Gateway Rule. */\n internetGatewayRuleId?: string;\n /** IPv4 Address of Internet Gateway. */\n readonly ipv4Address?: string;\n /** Port number of Internet Gateway. */\n readonly port?: number;\n /** Gateway Type of the resource. */\n type?: GatewayType;\n /** Gateway Type of the resource. */\n internetGatewayType?: GatewayType;\n /** ARM Resource ID of the Network Fabric Controller. */\n networkFabricControllerId: string;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Provisioning state of resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function internetGatewayPropertiesSerializer(item: InternetGatewayProperties): any {\n return {\n annotation: item[\"annotation\"],\n internetGatewayRuleId: item[\"internetGatewayRuleId\"],\n type: item[\"type\"],\n internetGatewayType: item[\"internetGatewayType\"],\n networkFabricControllerId: item[\"networkFabricControllerId\"],\n };\n}\n\nexport function internetGatewayPropertiesDeserializer(item: any): InternetGatewayProperties {\n return {\n annotation: item[\"annotation\"],\n internetGatewayRuleId: item[\"internetGatewayRuleId\"],\n ipv4Address: item[\"ipv4Address\"],\n port: item[\"port\"],\n type: item[\"type\"],\n internetGatewayType: item[\"internetGatewayType\"],\n networkFabricControllerId: item[\"networkFabricControllerId\"],\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** Gateway Type of the resource. */\nexport enum KnownGatewayType {\n /** GatewayType Infrastructure */\n Infrastructure = \"Infrastructure\",\n /** GatewayType Workload */\n Workload = \"Workload\",\n}\n\n/**\n * Gateway Type of the resource. \\\n * {@link KnownGatewayType} can be used interchangeably with GatewayType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Infrastructure**: GatewayType Infrastructure \\\n * **Workload**: GatewayType Workload\n */\nexport type GatewayType = string;\n\n/** The Internet Gateway patch resource definition. */\nexport interface InternetGatewayPatch extends TagsUpdate {\n /** ARM Resource ID of the Internet Gateway Rule. */\n internetGatewayRuleId?: string;\n}\n\nexport function internetGatewayPatchSerializer(item: InternetGatewayPatch): any {\n return {\n tags: item[\"tags\"],\n properties: areAllPropsUndefined(item, [\"internetGatewayRuleId\"])\n ? undefined\n : _internetGatewayPatchPropertiesSerializer(item),\n };\n}\n\n/** PatchProperties for InternetGateway */\nexport interface InternetGatewayPatchProperties {\n /** ARM Resource ID of the Internet Gateway Rule. */\n internetGatewayRuleId?: string;\n}\n\nexport function internetGatewayPatchPropertiesSerializer(\n item: InternetGatewayPatchProperties,\n): any {\n return { internetGatewayRuleId: item[\"internetGatewayRuleId\"] };\n}\n\n/** Paged collection of InternetGateway items */\nexport interface _InternetGatewaysListResult {\n /** The InternetGateway items on this page */\n value: InternetGateway[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _internetGatewaysListResultDeserializer(item: any): _InternetGatewaysListResult {\n return {\n value: internetGatewayArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function internetGatewayArraySerializer(result: Array<InternetGateway>): any[] {\n return result.map((item) => {\n return internetGatewaySerializer(item);\n });\n}\n\nexport function internetGatewayArrayDeserializer(result: Array<InternetGateway>): any[] {\n return result.map((item) => {\n return internetGatewayDeserializer(item);\n });\n}\n\n/** The IP Community resource definition. */\nexport interface IpCommunity extends TrackedResource {\n /** Switch configuration description. */\n annotation?: string;\n /** ARM Resource ID of the Network Fabric. */\n readonly networkFabricId?: string;\n /** List of IP Community Rules. */\n ipCommunityRules: IpCommunityRule[];\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function ipCommunitySerializer(item: IpCommunity): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: _ipCommunityPropertiesSerializer(item),\n };\n}\n\nexport function ipCommunityDeserializer(item: any): IpCommunity {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._ipCommunityPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** IP Community Properties defines the resource properties. */\nexport interface IpCommunityProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** ARM Resource ID of the Network Fabric. */\n readonly networkFabricId?: string;\n /** List of IP Community Rules. */\n ipCommunityRules: IpCommunityRule[];\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function ipCommunityPropertiesSerializer(item: IpCommunityProperties): any {\n return {\n annotation: item[\"annotation\"],\n ipCommunityRules: ipCommunityRuleArraySerializer(item[\"ipCommunityRules\"]),\n };\n}\n\nexport function ipCommunityPropertiesDeserializer(item: any): IpCommunityProperties {\n return {\n annotation: item[\"annotation\"],\n networkFabricId: item[\"networkFabricId\"],\n ipCommunityRules: ipCommunityRuleArrayDeserializer(item[\"ipCommunityRules\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\nexport function ipCommunityRuleArraySerializer(result: Array<IpCommunityRule>): any[] {\n return result.map((item) => {\n return ipCommunityRuleSerializer(item);\n });\n}\n\nexport function ipCommunityRuleArrayDeserializer(result: Array<IpCommunityRule>): any[] {\n return result.map((item) => {\n return ipCommunityRuleDeserializer(item);\n });\n}\n\n/** IP Community patchable properties. */\nexport interface IpCommunityRule {\n /** Action to be taken on the configuration. Example: Permit | Deny. */\n action: CommunityActionTypes;\n /** Sequence to insert to/delete from existing route. Prefix lists are evaluated starting with the lowest sequence number and continue down the list until a match is made. Once a match is made, the permit or deny statement is applied to that network and the rest of the list is ignored. */\n sequenceNumber: number;\n /** Supported well known Community List. */\n wellKnownCommunities?: WellKnownCommunities[];\n /** List the community members of IP Community. */\n communityMembers: string[];\n}\n\nexport function ipCommunityRuleSerializer(item: IpCommunityRule): any {\n return {\n action: item[\"action\"],\n sequenceNumber: item[\"sequenceNumber\"],\n wellKnownCommunities: !item[\"wellKnownCommunities\"]\n ? item[\"wellKnownCommunities\"]\n : item[\"wellKnownCommunities\"].map((p: any) => {\n return p;\n }),\n communityMembers: item[\"communityMembers\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function ipCommunityRuleDeserializer(item: any): IpCommunityRule {\n return {\n action: item[\"action\"],\n sequenceNumber: item[\"sequenceNumber\"],\n wellKnownCommunities: !item[\"wellKnownCommunities\"]\n ? item[\"wellKnownCommunities\"]\n : item[\"wellKnownCommunities\"].map((p: any) => {\n return p;\n }),\n communityMembers: item[\"communityMembers\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/**\n * `Internet` - Advertise routes to internet community.\n * `LocalAS` - Advertise routes to only localAS peers.\n * `NoAdvertise` - Don't advertise routes to any peer.\n * `NoExport` - Don't export to next AS.\n * `GShut` - Graceful Shutdown (GSHUT) withdraw routes before terminating BGP connection.\n */\nexport enum KnownWellKnownCommunities {\n /** WellKnownCommunities-Internet */\n Internet = \"Internet\",\n /** WellKnownCommunities-LocalAS */\n LocalAS = \"LocalAS\",\n /** WellKnownCommunities-NoAdvertise */\n NoAdvertise = \"NoAdvertise\",\n /** WellKnownCommunities-NoExport */\n NoExport = \"NoExport\",\n /** WellKnownCommunities-GShut */\n GShut = \"GShut\",\n}\n\n/**\n * `Internet` - Advertise routes to internet community.\n * `LocalAS` - Advertise routes to only localAS peers.\n * `NoAdvertise` - Don't advertise routes to any peer.\n * `NoExport` - Don't export to next AS.\n * `GShut` - Graceful Shutdown (GSHUT) withdraw routes before terminating BGP connection. \\\n * {@link KnownWellKnownCommunities} can be used interchangeably with WellKnownCommunities,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Internet**: WellKnownCommunities-Internet \\\n * **LocalAS**: WellKnownCommunities-LocalAS \\\n * **NoAdvertise**: WellKnownCommunities-NoAdvertise \\\n * **NoExport**: WellKnownCommunities-NoExport \\\n * **GShut**: WellKnownCommunities-GShut\n */\nexport type WellKnownCommunities = string;\n\n/** The IP Community patch resource definition. */\nexport interface IpCommunityPatch extends TagsUpdate {\n /** List of IP Community Rules. */\n ipCommunityRules?: IpCommunityRule[];\n}\n\nexport function ipCommunityPatchSerializer(item: IpCommunityPatch): any {\n return {\n tags: item[\"tags\"],\n properties: areAllPropsUndefined(item, [\"ipCommunityRules\"])\n ? undefined\n : _ipCommunityPatchPropertiesSerializer(item),\n };\n}\n\n/** IP Community patchable properties. */\nexport interface IpCommunityPatchableProperties {\n /** List of IP Community Rules. */\n ipCommunityRules?: IpCommunityRule[];\n}\n\nexport function ipCommunityPatchablePropertiesSerializer(\n item: IpCommunityPatchableProperties,\n): any {\n return {\n ipCommunityRules: !item[\"ipCommunityRules\"]\n ? item[\"ipCommunityRules\"]\n : ipCommunityRuleArraySerializer(item[\"ipCommunityRules\"]),\n };\n}\n\n/** Paged collection of IpCommunity items */\nexport interface _IpCommunitiesListResult {\n /** The IpCommunity items on this page */\n value: IpCommunity[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _ipCommunitiesListResultDeserializer(item: any): _IpCommunitiesListResult {\n return {\n value: ipCommunityArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function ipCommunityArraySerializer(result: Array<IpCommunity>): any[] {\n return result.map((item) => {\n return ipCommunitySerializer(item);\n });\n}\n\nexport function ipCommunityArrayDeserializer(result: Array<IpCommunity>): any[] {\n return result.map((item) => {\n return ipCommunityDeserializer(item);\n });\n}\n\n/** The IP Extended Community resource definition. */\nexport interface IpExtendedCommunity extends TrackedResource {\n /** Switch configuration description. */\n annotation?: string;\n /** List of IP Extended Community Rules. */\n ipExtendedCommunityRules: IpExtendedCommunityRule[];\n /** ARM Resource ID of the Network Fabric. */\n readonly networkFabricId?: string;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function ipExtendedCommunitySerializer(item: IpExtendedCommunity): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: _ipExtendedCommunityPropertiesSerializer(item),\n };\n}\n\nexport function ipExtendedCommunityDeserializer(item: any): IpExtendedCommunity {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._ipExtendedCommunityPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** IP Extended Community Properties defines the resource properties. */\nexport interface IpExtendedCommunityProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** List of IP Extended Community Rules. */\n ipExtendedCommunityRules: IpExtendedCommunityRule[];\n /** ARM Resource ID of the Network Fabric. */\n readonly networkFabricId?: string;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function ipExtendedCommunityPropertiesSerializer(item: IpExtendedCommunityProperties): any {\n return {\n annotation: item[\"annotation\"],\n ipExtendedCommunityRules: ipExtendedCommunityRuleArraySerializer(\n item[\"ipExtendedCommunityRules\"],\n ),\n };\n}\n\nexport function ipExtendedCommunityPropertiesDeserializer(\n item: any,\n): IpExtendedCommunityProperties {\n return {\n annotation: item[\"annotation\"],\n ipExtendedCommunityRules: ipExtendedCommunityRuleArrayDeserializer(\n item[\"ipExtendedCommunityRules\"],\n ),\n networkFabricId: item[\"networkFabricId\"],\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\nexport function ipExtendedCommunityRuleArraySerializer(\n result: Array<IpExtendedCommunityRule>,\n): any[] {\n return result.map((item) => {\n return ipExtendedCommunityRuleSerializer(item);\n });\n}\n\nexport function ipExtendedCommunityRuleArrayDeserializer(\n result: Array<IpExtendedCommunityRule>,\n): any[] {\n return result.map((item) => {\n return ipExtendedCommunityRuleDeserializer(item);\n });\n}\n\n/** List of IP Extended Community Rules. */\nexport interface IpExtendedCommunityRule {\n /** Action to be taken on the configuration. Example: Permit | Deny. */\n action: CommunityActionTypes;\n /** Sequence to insert to/delete from existing route. Prefix lists are evaluated starting with the lowest sequence number and continue down the list until a match is made. Once a match is made, the permit or deny statement is applied to that network and the rest of the list is ignored. */\n sequenceNumber: number;\n /** Route Target List.The expected formats are ASN(plain):NN >> example 4294967294:50, ASN.ASN:NN >> example 65533.65333:40, IP-address:NN >> example 10.10.10.10:65535. The possible values of ASN,NN are in range of 0-65535, ASN(plain) is in range of 0-4294967295. */\n routeTargets: string[];\n}\n\nexport function ipExtendedCommunityRuleSerializer(item: IpExtendedCommunityRule): any {\n return {\n action: item[\"action\"],\n sequenceNumber: item[\"sequenceNumber\"],\n routeTargets: item[\"routeTargets\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function ipExtendedCommunityRuleDeserializer(item: any): IpExtendedCommunityRule {\n return {\n action: item[\"action\"],\n sequenceNumber: item[\"sequenceNumber\"],\n routeTargets: item[\"routeTargets\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** The IP Extended Communities patch resource definition. */\nexport interface IpExtendedCommunityPatch extends TagsUpdate {\n /** Switch configuration description. */\n annotation?: string;\n /** List of IP Extended Community Rules. */\n ipExtendedCommunityRules?: IpExtendedCommunityRule[];\n}\n\nexport function ipExtendedCommunityPatchSerializer(item: IpExtendedCommunityPatch): any {\n return {\n tags: item[\"tags\"],\n properties: areAllPropsUndefined(item, [\"annotation\", \"ipExtendedCommunityRules\"])\n ? undefined\n : _ipExtendedCommunityPatchPropertiesSerializer(item),\n };\n}\n\n/** IP Extended Community patchable properties. */\nexport interface IpExtendedCommunityPatchProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** List of IP Extended Community Rules. */\n ipExtendedCommunityRules?: IpExtendedCommunityRule[];\n}\n\nexport function ipExtendedCommunityPatchPropertiesSerializer(\n item: IpExtendedCommunityPatchProperties,\n): any {\n return {\n annotation: item[\"annotation\"],\n ipExtendedCommunityRules: !item[\"ipExtendedCommunityRules\"]\n ? item[\"ipExtendedCommunityRules\"]\n : ipExtendedCommunityRuleArraySerializer(item[\"ipExtendedCommunityRules\"]),\n };\n}\n\n/** The response of a IpExtendedCommunity list operation. */\nexport interface _IpExtendedCommunityListResult {\n /** The IpExtendedCommunity items on this page */\n value: IpExtendedCommunity[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _ipExtendedCommunityListResultDeserializer(\n item: any,\n): _IpExtendedCommunityListResult {\n return {\n value: ipExtendedCommunityArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function ipExtendedCommunityArraySerializer(result: Array<IpExtendedCommunity>): any[] {\n return result.map((item) => {\n return ipExtendedCommunitySerializer(item);\n });\n}\n\nexport function ipExtendedCommunityArrayDeserializer(result: Array<IpExtendedCommunity>): any[] {\n return result.map((item) => {\n return ipExtendedCommunityDeserializer(item);\n });\n}\n\n/** The IP Prefix resource definition. */\nexport interface IpPrefix extends TrackedResource {\n /** Switch configuration description. */\n annotation?: string;\n /** ARM Resource ID of the Network Fabric. */\n readonly networkFabricId?: string;\n /** The list of IP Prefix Rules. */\n ipPrefixRules: IpPrefixRule[];\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function ipPrefixSerializer(item: IpPrefix): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: _ipPrefixPropertiesSerializer(item),\n };\n}\n\nexport function ipPrefixDeserializer(item: any): IpPrefix {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._ipPrefixPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** IP Prefix Properties defines the properties of the resource. */\nexport interface IpPrefixProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** ARM Resource ID of the Network Fabric. */\n readonly networkFabricId?: string;\n /** The list of IP Prefix Rules. */\n ipPrefixRules: IpPrefixRule[];\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function ipPrefixPropertiesSerializer(item: IpPrefixProperties): any {\n return {\n annotation: item[\"annotation\"],\n ipPrefixRules: ipPrefixRuleArraySerializer(item[\"ipPrefixRules\"]),\n };\n}\n\nexport function ipPrefixPropertiesDeserializer(item: any): IpPrefixProperties {\n return {\n annotation: item[\"annotation\"],\n networkFabricId: item[\"networkFabricId\"],\n ipPrefixRules: ipPrefixRuleArrayDeserializer(item[\"ipPrefixRules\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\nexport function ipPrefixRuleArraySerializer(result: Array<IpPrefixRule>): any[] {\n return result.map((item) => {\n return ipPrefixRuleSerializer(item);\n });\n}\n\nexport function ipPrefixRuleArrayDeserializer(result: Array<IpPrefixRule>): any[] {\n return result.map((item) => {\n return ipPrefixRuleDeserializer(item);\n });\n}\n\n/** IP Prefix Rule properties. */\nexport interface IpPrefixRule {\n /** Action to be taken on the configuration. Example: Permit | Deny. */\n action: CommunityActionTypes;\n /** Sequence to insert to/delete from existing route. Prefix lists are evaluated starting with the lowest sequence number and continue down the list until a match is made. Once a match is made, the permit or deny statement is applied to that network and the rest of the list is ignored. */\n sequenceNumber: number;\n /** Network Prefix specifying IPv4/IPv6 packets to be permitted or denied. Example: 1.1.1.0/24 | 3FFE:FFFF:0:CD30::/126 */\n networkPrefix: string;\n /** Specify prefix-list bounds. */\n condition?: Condition;\n /** SubnetMaskLength gives the minimum NetworkPrefix length to be matched. Possible values for IPv4 are 1 - 32 . Possible values of IPv6 are 1 - 128. */\n subnetMaskLength?: string;\n}\n\nexport function ipPrefixRuleSerializer(item: IpPrefixRule): any {\n return {\n action: item[\"action\"],\n sequenceNumber: item[\"sequenceNumber\"],\n networkPrefix: item[\"networkPrefix\"],\n condition: item[\"condition\"],\n subnetMaskLength: item[\"subnetMaskLength\"],\n };\n}\n\nexport function ipPrefixRuleDeserializer(item: any): IpPrefixRule {\n return {\n action: item[\"action\"],\n sequenceNumber: item[\"sequenceNumber\"],\n networkPrefix: item[\"networkPrefix\"],\n condition: item[\"condition\"],\n subnetMaskLength: item[\"subnetMaskLength\"],\n };\n}\n\n/** Specify prefix-list bounds. */\nexport enum KnownCondition {\n /** Condition-EqualTo */\n EqualTo = \"EqualTo\",\n /** Condition-GreaterThanOrEqualTo */\n GreaterThanOrEqualTo = \"GreaterThanOrEqualTo\",\n /** Condition-LesserThanOrEqualTo */\n LesserThanOrEqualTo = \"LesserThanOrEqualTo\",\n /** Condition-Range */\n Range = \"Range\",\n}\n\n/**\n * Specify prefix-list bounds. \\\n * {@link KnownCondition} can be used interchangeably with Condition,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **EqualTo**: Condition-EqualTo \\\n * **GreaterThanOrEqualTo**: Condition-GreaterThanOrEqualTo \\\n * **LesserThanOrEqualTo**: Condition-LesserThanOrEqualTo \\\n * **Range**: Condition-Range\n */\nexport type Condition = string;\n\n/** The IP Prefix patch resource definition. */\nexport interface IpPrefixPatch extends TagsUpdate {\n /** Switch configuration description. */\n annotation?: string;\n /** The list of IP Prefix Rules. */\n ipPrefixRules?: IpPrefixRule[];\n}\n\nexport function ipPrefixPatchSerializer(item: IpPrefixPatch): any {\n return {\n tags: item[\"tags\"],\n properties: areAllPropsUndefined(item, [\"annotation\", \"ipPrefixRules\"])\n ? undefined\n : _ipPrefixPatchPropertiesSerializer(item),\n };\n}\n\n/** IP Prefix patchable properties. */\nexport interface IpPrefixPatchProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** The list of IP Prefix Rules. */\n ipPrefixRules?: IpPrefixRule[];\n}\n\nexport function ipPrefixPatchPropertiesSerializer(item: IpPrefixPatchProperties): any {\n return {\n annotation: item[\"annotation\"],\n ipPrefixRules: !item[\"ipPrefixRules\"]\n ? item[\"ipPrefixRules\"]\n : ipPrefixRuleArraySerializer(item[\"ipPrefixRules\"]),\n };\n}\n\n/** Paged collection of IpPrefix items */\nexport interface _IpPrefixesListResult {\n /** The IpPrefix items on this page */\n value: IpPrefix[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _ipPrefixesListResultDeserializer(item: any): _IpPrefixesListResult {\n return {\n value: ipPrefixArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function ipPrefixArraySerializer(result: Array<IpPrefix>): any[] {\n return result.map((item) => {\n return ipPrefixSerializer(item);\n });\n}\n\nexport function ipPrefixArrayDeserializer(result: Array<IpPrefix>): any[] {\n return result.map((item) => {\n return ipPrefixDeserializer(item);\n });\n}\n\n/** The L2 Isolation Domain resource definition. */\nexport interface L2IsolationDomain extends TrackedResource {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentity;\n /** Switch configuration description. */\n annotation?: string;\n /** ARM Resource ID of the Network Fabric. */\n networkFabricId: string;\n /** Vlan Identifier of the Network Fabric. Example: 501. */\n vlanId: number;\n /** Maximum transmission unit. Default value is 1500. */\n mtu?: number;\n /** Extended VLAN status, default value is Disabled. */\n extendedVlan?: ExtendedVlan;\n /** ARM Resource ID of the networkToNetworkInterconnectId of the L2 ISD resource. */\n networkToNetworkInterconnectId?: string;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function l2IsolationDomainSerializer(item: L2IsolationDomain): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: _l2IsolationDomainPropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentitySerializer(item[\"identity\"]),\n };\n}\n\nexport function l2IsolationDomainDeserializer(item: any): L2IsolationDomain {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._l2IsolationDomainPropertiesDeserializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityDeserializer(item[\"identity\"]),\n };\n}\n\n/** L2Isolation Domain Properties defines the properties of the resource. */\nexport interface L2IsolationDomainProperties extends AnnotationResource {\n /** ARM Resource ID of the Network Fabric. */\n networkFabricId: string;\n /** Vlan Identifier of the Network Fabric. Example: 501. */\n vlanId: number;\n /** Maximum transmission unit. Default value is 1500. */\n mtu?: number;\n /** Extended VLAN status, default value is Disabled. */\n extendedVlan?: ExtendedVlan;\n /** ARM Resource ID of the networkToNetworkInterconnectId of the L2 ISD resource. */\n networkToNetworkInterconnectId?: string;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function l2IsolationDomainPropertiesSerializer(item: L2IsolationDomainProperties): any {\n return {\n annotation: item[\"annotation\"],\n networkFabricId: item[\"networkFabricId\"],\n vlanId: item[\"vlanId\"],\n mtu: item[\"mtu\"],\n extendedVlan: item[\"extendedVlan\"],\n networkToNetworkInterconnectId: item[\"networkToNetworkInterconnectId\"],\n };\n}\n\nexport function l2IsolationDomainPropertiesDeserializer(item: any): L2IsolationDomainProperties {\n return {\n annotation: item[\"annotation\"],\n networkFabricId: item[\"networkFabricId\"],\n vlanId: item[\"vlanId\"],\n mtu: item[\"mtu\"],\n extendedVlan: item[\"extendedVlan\"],\n networkToNetworkInterconnectId: item[\"networkToNetworkInterconnectId\"],\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\n/** Extended VLAN status. */\nexport enum KnownExtendedVlan {\n /** Extended VLAN is enabled. */\n Enabled = \"Enabled\",\n /** Extended VLAN is disabled. */\n Disabled = \"Disabled\",\n}\n\n/**\n * Extended VLAN status. \\\n * {@link KnownExtendedVlan} can be used interchangeably with ExtendedVlan,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: Extended VLAN is enabled. \\\n * **Disabled**: Extended VLAN is disabled.\n */\nexport type ExtendedVlan = string;\n\n/** Managed service identity (system assigned and/or user assigned identities) */\nexport interface ManagedServiceIdentity {\n /** The service principal ID of the system assigned identity. This property will only be provided for a system assigned identity. */\n readonly principalId?: string;\n /** The tenant ID of the system assigned identity. This property will only be provided for a system assigned identity. */\n readonly tenantId?: string;\n /** The type of managed identity assigned to this resource. */\n type: ManagedServiceIdentityType;\n /** The identities assigned to this resource by the user. */\n userAssignedIdentities?: Record<string, UserAssignedIdentity>;\n}\n\nexport function managedServiceIdentitySerializer(item: ManagedServiceIdentity): any {\n return { type: item[\"type\"], userAssignedIdentities: item[\"userAssignedIdentities\"] };\n}\n\nexport function managedServiceIdentityDeserializer(item: any): ManagedServiceIdentity {\n return {\n principalId: item[\"principalId\"],\n tenantId: item[\"tenantId\"],\n type: item[\"type\"],\n userAssignedIdentities: !item[\"userAssignedIdentities\"]\n ? item[\"userAssignedIdentities\"]\n : Object.fromEntries(\n Object.entries(item[\"userAssignedIdentities\"]).map(([k, p]: [string, any]) => [\n k,\n !p ? p : userAssignedIdentityDeserializer(p),\n ]),\n ),\n };\n}\n\n/** Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed). */\nexport enum KnownManagedServiceIdentityType {\n /** No managed identity. */\n None = \"None\",\n /** System assigned managed identity. */\n SystemAssigned = \"SystemAssigned\",\n /** User assigned managed identity. */\n UserAssigned = \"UserAssigned\",\n /** System and user assigned managed identity. */\n SystemAssignedUserAssigned = \"SystemAssigned,UserAssigned\",\n}\n\n/**\n * Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed). \\\n * {@link KnownManagedServiceIdentityType} can be used interchangeably with ManagedServiceIdentityType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **None**: No managed identity. \\\n * **SystemAssigned**: System assigned managed identity. \\\n * **UserAssigned**: User assigned managed identity. \\\n * **SystemAssigned,UserAssigned**: System and user assigned managed identity.\n */\nexport type ManagedServiceIdentityType = string;\n\n/** User assigned identity properties */\nexport interface UserAssignedIdentity {\n /** The principal ID of the assigned identity. */\n readonly principalId?: string;\n /** The client ID of the assigned identity. */\n readonly clientId?: string;\n}\n\nexport function userAssignedIdentitySerializer(_item: UserAssignedIdentity): any {\n return {};\n}\n\nexport function userAssignedIdentityDeserializer(item: any): UserAssignedIdentity {\n return {\n principalId: item[\"principalId\"],\n clientId: item[\"clientId\"],\n };\n}\n\n/** The L2 Isolation Domain patch resource definition. */\nexport interface L2IsolationDomainPatch extends TagsUpdate {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentityPatch;\n /** Switch configuration description. */\n annotation?: string;\n /** Maximum transmission unit. Default value is 1500. */\n mtu?: number;\n /** Extended VLAN status. */\n extendedVlan?: ExtendedVlan;\n /** ARM Resource ID of the networkToNetworkInterconnectId of the L2 ISD resource. */\n networkToNetworkInterconnectId?: string;\n}\n\nexport function l2IsolationDomainPatchSerializer(item: L2IsolationDomainPatch): any {\n return {\n tags: item[\"tags\"],\n properties: areAllPropsUndefined(item, [\n \"annotation\",\n \"mtu\",\n \"extendedVlan\",\n \"networkToNetworkInterconnectId\",\n ])\n ? undefined\n : _l2IsolationDomainPatchPropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityPatchSerializer(item[\"identity\"]),\n };\n}\n\n/** L2 Isolation Domain Patch Properties defines the patchable properties of the resource. */\nexport interface L2IsolationDomainPatchProperties extends AnnotationResource {\n /** Maximum transmission unit. Default value is 1500. */\n mtu?: number;\n /** Extended VLAN status. */\n extendedVlan?: ExtendedVlan;\n /** ARM Resource ID of the networkToNetworkInterconnectId of the L2 ISD resource. */\n networkToNetworkInterconnectId?: string;\n}\n\nexport function l2IsolationDomainPatchPropertiesSerializer(\n item: L2IsolationDomainPatchProperties,\n): any {\n return {\n annotation: item[\"annotation\"],\n mtu: item[\"mtu\"],\n extendedVlan: item[\"extendedVlan\"],\n networkToNetworkInterconnectId: item[\"networkToNetworkInterconnectId\"],\n };\n}\n\n/** The managed service identities assigned to this resource. */\nexport interface ManagedServiceIdentityPatch {\n /** The type of managed identity assigned to this resource. */\n type?: ManagedServiceIdentityType;\n /** The identities assigned to this resource by the user. */\n userAssignedIdentities?: Record<string, UserAssignedIdentity>;\n}\n\nexport function managedServiceIdentityPatchSerializer(item: ManagedServiceIdentityPatch): any {\n return { type: item[\"type\"], userAssignedIdentities: item[\"userAssignedIdentities\"] };\n}\n\n/** Paged collection of L2IsolationDomain items */\nexport interface _L2IsolationDomainsListResult {\n /** The L2IsolationDomain items on this page */\n value: L2IsolationDomain[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _l2IsolationDomainsListResultDeserializer(\n item: any,\n): _L2IsolationDomainsListResult {\n return {\n value: l2IsolationDomainArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function l2IsolationDomainArraySerializer(result: Array<L2IsolationDomain>): any[] {\n return result.map((item) => {\n return l2IsolationDomainSerializer(item);\n });\n}\n\nexport function l2IsolationDomainArrayDeserializer(result: Array<L2IsolationDomain>): any[] {\n return result.map((item) => {\n return l2IsolationDomainDeserializer(item);\n });\n}\n\n/** The L3 Isolation Domain resource definition. */\nexport interface L3IsolationDomain extends TrackedResource {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentity;\n /** Switch configuration description. */\n annotation?: string;\n /** Advertise Connected Subnets. Ex: \"True\" | \"False\". */\n redistributeConnectedSubnets?: RedistributeConnectedSubnets;\n /** Advertise Static Routes. Ex: \"True\" | \"False\". */\n redistributeStaticRoutes?: RedistributeStaticRoutes;\n /** Aggregate route configurations. */\n aggregateRouteConfiguration?: AggregateRouteConfiguration;\n /** Connected Subnet RoutePolicy */\n connectedSubnetRoutePolicy?: ConnectedSubnetRoutePolicy;\n /** ARM Resource ID of the Network Fabric. */\n networkFabricId: string;\n /** Static Route - route policy. */\n staticRouteRoutePolicy?: StaticRouteRoutePolicy;\n /** Unique Route Distinguisher configuration */\n uniqueRdConfiguration?: L3UniqueRouteDistinguisherProperties;\n /** IPv4 VRF Limit configuration. */\n v4RoutePrefixLimit?: RoutePrefixLimitProperties;\n /** IPv6 VRF Limit configuration. */\n v6RoutePrefixLimit?: RoutePrefixLimitProperties;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** BMP Export Policy configuration. */\n exportPolicyConfiguration?: BmpExportPolicyProperties;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function l3IsolationDomainSerializer(item: L3IsolationDomain): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: _l3IsolationDomainPropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentitySerializer(item[\"identity\"]),\n };\n}\n\nexport function l3IsolationDomainDeserializer(item: any): L3IsolationDomain {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._l3IsolationDomainPropertiesDeserializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityDeserializer(item[\"identity\"]),\n };\n}\n\n/** L3 Isolation Domain Properties defines the properties of the resource. */\nexport interface L3IsolationDomainProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** Advertise Connected Subnets. Ex: \"True\" | \"False\". */\n redistributeConnectedSubnets?: RedistributeConnectedSubnets;\n /** Advertise Static Routes. Ex: \"True\" | \"False\". */\n redistributeStaticRoutes?: RedistributeStaticRoutes;\n /** Aggregate route configurations. */\n aggregateRouteConfiguration?: AggregateRouteConfiguration;\n /** Connected Subnet RoutePolicy */\n connectedSubnetRoutePolicy?: ConnectedSubnetRoutePolicy;\n /** ARM Resource ID of the Network Fabric. */\n networkFabricId: string;\n /** Static Route - route policy. */\n staticRouteRoutePolicy?: StaticRouteRoutePolicy;\n /** Unique Route Distinguisher configuration */\n uniqueRdConfiguration?: L3UniqueRouteDistinguisherProperties;\n /** IPv4 VRF Limit configuration. */\n v4RoutePrefixLimit?: RoutePrefixLimitProperties;\n /** IPv6 VRF Limit configuration. */\n v6RoutePrefixLimit?: RoutePrefixLimitProperties;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** BMP Export Policy configuration. */\n exportPolicyConfiguration?: BmpExportPolicyProperties;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function l3IsolationDomainPropertiesSerializer(item: L3IsolationDomainProperties): any {\n return {\n annotation: item[\"annotation\"],\n redistributeConnectedSubnets: item[\"redistributeConnectedSubnets\"],\n redistributeStaticRoutes: item[\"redistributeStaticRoutes\"],\n aggregateRouteConfiguration: !item[\"aggregateRouteConfiguration\"]\n ? item[\"aggregateRouteConfiguration\"]\n : aggregateRouteConfigurationSerializer(item[\"aggregateRouteConfiguration\"]),\n connectedSubnetRoutePolicy: !item[\"connectedSubnetRoutePolicy\"]\n ? item[\"connectedSubnetRoutePolicy\"]\n : connectedSubnetRoutePolicySerializer(item[\"connectedSubnetRoutePolicy\"]),\n networkFabricId: item[\"networkFabricId\"],\n staticRouteRoutePolicy: !item[\"staticRouteRoutePolicy\"]\n ? item[\"staticRouteRoutePolicy\"]\n : staticRouteRoutePolicySerializer(item[\"staticRouteRoutePolicy\"]),\n uniqueRdConfiguration: !item[\"uniqueRdConfiguration\"]\n ? item[\"uniqueRdConfiguration\"]\n : l3UniqueRouteDistinguisherPropertiesSerializer(item[\"uniqueRdConfiguration\"]),\n v4routePrefixLimit: !item[\"v4RoutePrefixLimit\"]\n ? item[\"v4RoutePrefixLimit\"]\n : routePrefixLimitPropertiesSerializer(item[\"v4RoutePrefixLimit\"]),\n v6routePrefixLimit: !item[\"v6RoutePrefixLimit\"]\n ? item[\"v6RoutePrefixLimit\"]\n : routePrefixLimitPropertiesSerializer(item[\"v6RoutePrefixLimit\"]),\n exportPolicyConfiguration: !item[\"exportPolicyConfiguration\"]\n ? item[\"exportPolicyConfiguration\"]\n : bmpExportPolicyPropertiesSerializer(item[\"exportPolicyConfiguration\"]),\n };\n}\n\nexport function l3IsolationDomainPropertiesDeserializer(item: any): L3IsolationDomainProperties {\n return {\n annotation: item[\"annotation\"],\n redistributeConnectedSubnets: item[\"redistributeConnectedSubnets\"],\n redistributeStaticRoutes: item[\"redistributeStaticRoutes\"],\n aggregateRouteConfiguration: !item[\"aggregateRouteConfiguration\"]\n ? item[\"aggregateRouteConfiguration\"]\n : aggregateRouteConfigurationDeserializer(item[\"aggregateRouteConfiguration\"]),\n connectedSubnetRoutePolicy: !item[\"connectedSubnetRoutePolicy\"]\n ? item[\"connectedSubnetRoutePolicy\"]\n : connectedSubnetRoutePolicyDeserializer(item[\"connectedSubnetRoutePolicy\"]),\n networkFabricId: item[\"networkFabricId\"],\n staticRouteRoutePolicy: !item[\"staticRouteRoutePolicy\"]\n ? item[\"staticRouteRoutePolicy\"]\n : staticRouteRoutePolicyDeserializer(item[\"staticRouteRoutePolicy\"]),\n uniqueRdConfiguration: !item[\"uniqueRdConfiguration\"]\n ? item[\"uniqueRdConfiguration\"]\n : l3UniqueRouteDistinguisherPropertiesDeserializer(item[\"uniqueRdConfiguration\"]),\n v4RoutePrefixLimit: !item[\"v4routePrefixLimit\"]\n ? item[\"v4routePrefixLimit\"]\n : routePrefixLimitPropertiesDeserializer(item[\"v4routePrefixLimit\"]),\n v6RoutePrefixLimit: !item[\"v6routePrefixLimit\"]\n ? item[\"v6routePrefixLimit\"]\n : routePrefixLimitPropertiesDeserializer(item[\"v6routePrefixLimit\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n exportPolicyConfiguration: !item[\"exportPolicyConfiguration\"]\n ? item[\"exportPolicyConfiguration\"]\n : bmpExportPolicyPropertiesDeserializer(item[\"exportPolicyConfiguration\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\n/** Advertise Connected Subnets. Ex: \"True\" | \"False\". */\nexport enum KnownRedistributeConnectedSubnets {\n /** RedistributeConnectedSubnets-True */\n True = \"True\",\n /** RedistributeConnectedSubnets-False */\n False = \"False\",\n}\n\n/**\n * Advertise Connected Subnets. Ex: \"True\" | \"False\". \\\n * {@link KnownRedistributeConnectedSubnets} can be used interchangeably with RedistributeConnectedSubnets,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **True**: RedistributeConnectedSubnets-True \\\n * **False**: RedistributeConnectedSubnets-False\n */\nexport type RedistributeConnectedSubnets = string;\n\n/** Advertise Static Routes. Ex: \"True\" | \"False\". */\nexport enum KnownRedistributeStaticRoutes {\n /** RedistributeStaticRoutes-True */\n True = \"True\",\n /** RedistributeStaticRoutes-False */\n False = \"False\",\n}\n\n/**\n * Advertise Static Routes. Ex: \"True\" | \"False\". \\\n * {@link KnownRedistributeStaticRoutes} can be used interchangeably with RedistributeStaticRoutes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **True**: RedistributeStaticRoutes-True \\\n * **False**: RedistributeStaticRoutes-False\n */\nexport type RedistributeStaticRoutes = string;\n\n/** List of IPv4 and IPv6 aggregate routes. */\nexport interface AggregateRouteConfiguration {\n /** List of IPv4 Route prefixes. */\n ipv4Routes?: AggregateRoute[];\n /** List of Ipv6Routes prefixes. */\n ipv6Routes?: AggregateRoute[];\n}\n\nexport function aggregateRouteConfigurationSerializer(item: AggregateRouteConfiguration): any {\n return {\n ipv4Routes: !item[\"ipv4Routes\"]\n ? item[\"ipv4Routes\"]\n : aggregateRouteArraySerializer(item[\"ipv4Routes\"]),\n ipv6Routes: !item[\"ipv6Routes\"]\n ? item[\"ipv6Routes\"]\n : aggregateRouteArraySerializer(item[\"ipv6Routes\"]),\n };\n}\n\nexport function aggregateRouteConfigurationDeserializer(item: any): AggregateRouteConfiguration {\n return {\n ipv4Routes: !item[\"ipv4Routes\"]\n ? item[\"ipv4Routes\"]\n : aggregateRouteArrayDeserializer(item[\"ipv4Routes\"]),\n ipv6Routes: !item[\"ipv6Routes\"]\n ? item[\"ipv6Routes\"]\n : aggregateRouteArrayDeserializer(item[\"ipv6Routes\"]),\n };\n}\n\nexport function aggregateRouteArraySerializer(result: Array<AggregateRoute>): any[] {\n return result.map((item) => {\n return aggregateRouteSerializer(item);\n });\n}\n\nexport function aggregateRouteArrayDeserializer(result: Array<AggregateRoute>): any[] {\n return result.map((item) => {\n return aggregateRouteDeserializer(item);\n });\n}\n\n/** aggregateIpv4Route model. */\nexport interface AggregateRoute {\n /** IPv4 Prefix of the aggregate Ipv4Route. */\n prefix: string;\n}\n\nexport function aggregateRouteSerializer(item: AggregateRoute): any {\n return { prefix: item[\"prefix\"] };\n}\n\nexport function aggregateRouteDeserializer(item: any): AggregateRoute {\n return {\n prefix: item[\"prefix\"],\n };\n}\n\n/** Connected Subnet Route Policy properties. */\nexport interface ConnectedSubnetRoutePolicy {\n /** Array of ARM Resource ID of the RoutePolicies. */\n exportRoutePolicy?: L3ExportRoutePolicy;\n}\n\nexport function connectedSubnetRoutePolicySerializer(item: ConnectedSubnetRoutePolicy): any {\n return {\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : l3ExportRoutePolicySerializer(item[\"exportRoutePolicy\"]),\n };\n}\n\nexport function connectedSubnetRoutePolicyDeserializer(item: any): ConnectedSubnetRoutePolicy {\n return {\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : l3ExportRoutePolicyDeserializer(item[\"exportRoutePolicy\"]),\n };\n}\n\n/** Array of ARM Resource ID of the RoutePolicies. */\nexport interface L3ExportRoutePolicy {\n /** ARM Resource ID of the RoutePolicy. */\n exportIpv4RoutePolicyId?: string;\n /** ARM Resource ID of the RoutePolicy. */\n exportIpv6RoutePolicyId?: string;\n}\n\nexport function l3ExportRoutePolicySerializer(item: L3ExportRoutePolicy): any {\n return {\n exportIpv4RoutePolicyId: item[\"exportIpv4RoutePolicyId\"],\n exportIpv6RoutePolicyId: item[\"exportIpv6RoutePolicyId\"],\n };\n}\n\nexport function l3ExportRoutePolicyDeserializer(item: any): L3ExportRoutePolicy {\n return {\n exportIpv4RoutePolicyId: item[\"exportIpv4RoutePolicyId\"],\n exportIpv6RoutePolicyId: item[\"exportIpv6RoutePolicyId\"],\n };\n}\n\n/** Static Route - route policy properties. */\nexport interface StaticRouteRoutePolicy {\n /** Array of ARM Resource ID of the RoutePolicies. */\n exportRoutePolicy?: L3ExportRoutePolicy;\n}\n\nexport function staticRouteRoutePolicySerializer(item: StaticRouteRoutePolicy): any {\n return {\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : l3ExportRoutePolicySerializer(item[\"exportRoutePolicy\"]),\n };\n}\n\nexport function staticRouteRoutePolicyDeserializer(item: any): StaticRouteRoutePolicy {\n return {\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : l3ExportRoutePolicyDeserializer(item[\"exportRoutePolicy\"]),\n };\n}\n\n/** Unique Route Distinguisher properties. */\nexport interface L3UniqueRouteDistinguisherProperties {\n /** List of Unique Route Distinguisher addresses. */\n readonly uniqueRds?: string[];\n}\n\nexport function l3UniqueRouteDistinguisherPropertiesSerializer(\n _item: L3UniqueRouteDistinguisherProperties,\n): any {\n return {};\n}\n\nexport function l3UniqueRouteDistinguisherPropertiesDeserializer(\n item: any,\n): L3UniqueRouteDistinguisherProperties {\n return {\n uniqueRds: !item[\"uniqueRds\"]\n ? item[\"uniqueRds\"]\n : item[\"uniqueRds\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Layer3 Route prefix limit configuration. */\nexport interface RoutePrefixLimitProperties {\n /** Hard limit for the routes. */\n hardLimit?: number;\n /** Threshold for the routes. */\n threshold?: number;\n}\n\nexport function routePrefixLimitPropertiesSerializer(item: RoutePrefixLimitProperties): any {\n return { hardLimit: item[\"hardLimit\"], threshold: item[\"threshold\"] };\n}\n\nexport function routePrefixLimitPropertiesDeserializer(item: any): RoutePrefixLimitProperties {\n return {\n hardLimit: item[\"hardLimit\"],\n threshold: item[\"threshold\"],\n };\n}\n\n/** BMP Export Policy Configuration properties. */\nexport interface BmpExportPolicyProperties {\n /** Export Policy for the BGP Monitoring Protocol (BMP) Configuration. */\n exportPolicies?: BmpExportPolicy[];\n}\n\nexport function bmpExportPolicyPropertiesSerializer(item: BmpExportPolicyProperties): any {\n return {\n exportPolicies: !item[\"exportPolicies\"]\n ? item[\"exportPolicies\"]\n : item[\"exportPolicies\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function bmpExportPolicyPropertiesDeserializer(item: any): BmpExportPolicyProperties {\n return {\n exportPolicies: !item[\"exportPolicies\"]\n ? item[\"exportPolicies\"]\n : item[\"exportPolicies\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Export Policy for the BGP Monitoring Protocol (BMP) Configuration. */\nexport enum KnownBmpExportPolicy {\n /** BMP ExportPolicy Pre-Policy */\n PrePolicy = \"Pre-Policy\",\n /** BMP ExportPolicy Post-Policy */\n PostPolicy = \"Post-Policy\",\n /** BMP ExportPolicy All */\n All = \"All\",\n /** BMP ExportPolicy LocalRib */\n LocalRib = \"LocalRib\",\n}\n\n/**\n * Export Policy for the BGP Monitoring Protocol (BMP) Configuration. \\\n * {@link KnownBmpExportPolicy} can be used interchangeably with BmpExportPolicy,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Pre-Policy**: BMP ExportPolicy Pre-Policy \\\n * **Post-Policy**: BMP ExportPolicy Post-Policy \\\n * **All**: BMP ExportPolicy All \\\n * **LocalRib**: BMP ExportPolicy LocalRib\n */\nexport type BmpExportPolicy = string;\n\n/** The L3 Isolation Domain patch resource definition. */\nexport interface L3IsolationDomainPatch extends TagsUpdate {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentityPatch;\n /** Switch configuration description. */\n annotation?: string;\n /** Advertise Connected Subnets. Ex: \"True\" | \"False\". */\n redistributeConnectedSubnets?: RedistributeConnectedSubnets;\n /** Advertise Static Routes. Ex: \"True\" | \"False\". */\n redistributeStaticRoutes?: RedistributeStaticRoutes;\n /** Aggregate route configurations. */\n aggregateRouteConfiguration?: AggregateRoutePatchConfiguration;\n /** Connected Subnet RoutePolicy */\n connectedSubnetRoutePolicy?: ConnectedSubnetRoutePolicyPatch;\n /** Static Route - route policy. */\n staticRouteRoutePolicy?: StaticRouteRoutePolicyPatch;\n /** IPv4 VRF Limit configuration. */\n v4RoutePrefixLimit?: RoutePrefixLimitPatchProperties;\n /** IPv6 VRF Limit configuration. */\n v6RoutePrefixLimit?: RoutePrefixLimitPatchProperties;\n /** BMP Export Policy configuration. */\n exportPolicyConfiguration?: BmpExportPolicyPatchProperties;\n}\n\nexport function l3IsolationDomainPatchSerializer(item: L3IsolationDomainPatch): any {\n return {\n tags: item[\"tags\"],\n properties: areAllPropsUndefined(item, [\n \"annotation\",\n \"redistributeConnectedSubnets\",\n \"redistributeStaticRoutes\",\n \"aggregateRouteConfiguration\",\n \"connectedSubnetRoutePolicy\",\n \"staticRouteRoutePolicy\",\n \"v4routePrefixLimit\",\n \"v6routePrefixLimit\",\n \"exportPolicyConfiguration\",\n ])\n ? undefined\n : _l3IsolationDomainPatchPropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityPatchSerializer(item[\"identity\"]),\n };\n}\n\n/** Resource properties. */\nexport interface L3IsolationDomainPatchProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** Advertise Connected Subnets. Ex: \"True\" | \"False\". */\n redistributeConnectedSubnets?: RedistributeConnectedSubnets;\n /** Advertise Static Routes. Ex: \"True\" | \"False\". */\n redistributeStaticRoutes?: RedistributeStaticRoutes;\n /** Aggregate route configurations. */\n aggregateRouteConfiguration?: AggregateRoutePatchConfiguration;\n /** Connected Subnet RoutePolicy */\n connectedSubnetRoutePolicy?: ConnectedSubnetRoutePolicyPatch;\n /** Static Route - route policy. */\n staticRouteRoutePolicy?: StaticRouteRoutePolicyPatch;\n /** IPv4 VRF Limit configuration. */\n v4RoutePrefixLimit?: RoutePrefixLimitPatchProperties;\n /** IPv6 VRF Limit configuration. */\n v6RoutePrefixLimit?: RoutePrefixLimitPatchProperties;\n /** BMP Export Policy configuration. */\n exportPolicyConfiguration?: BmpExportPolicyPatchProperties;\n}\n\nexport function l3IsolationDomainPatchPropertiesSerializer(\n item: L3IsolationDomainPatchProperties,\n): any {\n return {\n annotation: item[\"annotation\"],\n redistributeConnectedSubnets: item[\"redistributeConnectedSubnets\"],\n redistributeStaticRoutes: item[\"redistributeStaticRoutes\"],\n aggregateRouteConfiguration: !item[\"aggregateRouteConfiguration\"]\n ? item[\"aggregateRouteConfiguration\"]\n : aggregateRoutePatchConfigurationSerializer(item[\"aggregateRouteConfiguration\"]),\n connectedSubnetRoutePolicy: !item[\"connectedSubnetRoutePolicy\"]\n ? item[\"connectedSubnetRoutePolicy\"]\n : connectedSubnetRoutePolicyPatchSerializer(item[\"connectedSubnetRoutePolicy\"]),\n staticRouteRoutePolicy: !item[\"staticRouteRoutePolicy\"]\n ? item[\"staticRouteRoutePolicy\"]\n : staticRouteRoutePolicyPatchSerializer(item[\"staticRouteRoutePolicy\"]),\n v4routePrefixLimit: !item[\"v4RoutePrefixLimit\"]\n ? item[\"v4RoutePrefixLimit\"]\n : routePrefixLimitPatchPropertiesSerializer(item[\"v4RoutePrefixLimit\"]),\n v6routePrefixLimit: !item[\"v6RoutePrefixLimit\"]\n ? item[\"v6RoutePrefixLimit\"]\n : routePrefixLimitPatchPropertiesSerializer(item[\"v6RoutePrefixLimit\"]),\n exportPolicyConfiguration: !item[\"exportPolicyConfiguration\"]\n ? item[\"exportPolicyConfiguration\"]\n : bmpExportPolicyPatchPropertiesSerializer(item[\"exportPolicyConfiguration\"]),\n };\n}\n\n/** List of IPv4 and IPv6 aggregate routes. */\nexport interface AggregateRoutePatchConfiguration {\n /** List of IPv4 Route prefixes. */\n ipv4Routes?: AggregateRoute[];\n /** List of Ipv6Routes prefixes. */\n ipv6Routes?: AggregateRoute[];\n}\n\nexport function aggregateRoutePatchConfigurationSerializer(\n item: AggregateRoutePatchConfiguration,\n): any {\n return {\n ipv4Routes: !item[\"ipv4Routes\"]\n ? item[\"ipv4Routes\"]\n : aggregateRouteArraySerializer(item[\"ipv4Routes\"]),\n ipv6Routes: !item[\"ipv6Routes\"]\n ? item[\"ipv6Routes\"]\n : aggregateRouteArraySerializer(item[\"ipv6Routes\"]),\n };\n}\n\n/** Connected Subnet Route Policy properties. */\nexport interface ConnectedSubnetRoutePolicyPatch {\n /** Array of ARM Resource ID of the RoutePolicies. */\n exportRoutePolicy?: L3ExportRoutePolicyPatch;\n}\n\nexport function connectedSubnetRoutePolicyPatchSerializer(\n item: ConnectedSubnetRoutePolicyPatch,\n): any {\n return {\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : l3ExportRoutePolicyPatchSerializer(item[\"exportRoutePolicy\"]),\n };\n}\n\n/** Array of ARM Resource ID of the RoutePolicies. */\nexport interface L3ExportRoutePolicyPatch {\n /** ARM Resource ID of the RoutePolicy. */\n exportIpv4RoutePolicyId?: string;\n /** ARM Resource ID of the RoutePolicy. */\n exportIpv6RoutePolicyId?: string;\n}\n\nexport function l3ExportRoutePolicyPatchSerializer(item: L3ExportRoutePolicyPatch): any {\n return {\n exportIpv4RoutePolicyId: item[\"exportIpv4RoutePolicyId\"],\n exportIpv6RoutePolicyId: item[\"exportIpv6RoutePolicyId\"],\n };\n}\n\n/** Static Route - route policy properties. */\nexport interface StaticRouteRoutePolicyPatch {\n /** Array of ARM Resource ID of the RoutePolicies. */\n exportRoutePolicy?: L3ExportRoutePolicyPatch;\n}\n\nexport function staticRouteRoutePolicyPatchSerializer(item: StaticRouteRoutePolicyPatch): any {\n return {\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : l3ExportRoutePolicyPatchSerializer(item[\"exportRoutePolicy\"]),\n };\n}\n\n/** VRP Limit patch configuration. */\nexport interface RoutePrefixLimitPatchProperties {\n /** Hard limit for the routes. */\n hardLimit?: number;\n /** Threshold for the routes. */\n threshold?: number;\n}\n\nexport function routePrefixLimitPatchPropertiesSerializer(\n item: RoutePrefixLimitPatchProperties,\n): any {\n return { hardLimit: item[\"hardLimit\"], threshold: item[\"threshold\"] };\n}\n\n/** BMP Export Policy Configuration properties. */\nexport interface BmpExportPolicyPatchProperties {\n /** Export Policy for the BGP Monitoring Protocol (BMP) Configuration. */\n exportPolicies?: BmpExportPolicy[];\n}\n\nexport function bmpExportPolicyPatchPropertiesSerializer(\n item: BmpExportPolicyPatchProperties,\n): any {\n return {\n exportPolicies: !item[\"exportPolicies\"]\n ? item[\"exportPolicies\"]\n : item[\"exportPolicies\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Paged collection of L3IsolationDomain items */\nexport interface _L3IsolationDomainsListResult {\n /** The L3IsolationDomain items on this page */\n value: L3IsolationDomain[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _l3IsolationDomainsListResultDeserializer(\n item: any,\n): _L3IsolationDomainsListResult {\n return {\n value: l3IsolationDomainArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function l3IsolationDomainArraySerializer(result: Array<L3IsolationDomain>): any[] {\n return result.map((item) => {\n return l3IsolationDomainSerializer(item);\n });\n}\n\nexport function l3IsolationDomainArrayDeserializer(result: Array<L3IsolationDomain>): any[] {\n return result.map((item) => {\n return l3IsolationDomainDeserializer(item);\n });\n}\n\n/** Defines the Internal Network resource. */\nexport interface InternalNetwork extends ProxyResource {\n /** Switch configuration description. */\n annotation?: string;\n /** Extension. Example: NoExtension | NPB. */\n extension?: Extension;\n /** Maximum transmission unit. Default value is 1500. */\n mtu?: number;\n /** List of Connected IPv4 Subnets. */\n connectedIPv4Subnets?: ConnectedSubnet[];\n /** List of connected IPv6 Subnets. */\n connectedIPv6Subnets?: ConnectedSubnet[];\n /** Import Route Policy either IPv4 or IPv6. */\n importRoutePolicy?: ImportRoutePolicy;\n /** Export Route Policy either IPv4 or IPv6. */\n exportRoutePolicy?: ExportRoutePolicy;\n /** Ingress Acl. ARM resource ID of Access Control Lists. */\n ingressAclId?: string;\n /** Egress Acl. ARM resource ID of Access Control Lists. */\n egressAclId?: string;\n /** To check whether monitoring of internal network is enabled or not. */\n isMonitoringEnabled?: IsMonitoringEnabled;\n /** Vlan identifier. Example: 1001. */\n vlanId: number;\n /** BGP configuration properties. */\n bgpConfiguration?: BgpConfiguration;\n /** Static Route Configuration properties. */\n staticRouteConfiguration?: StaticRouteConfiguration;\n /** Native IPv4 Prefix Limit Configuration properties. */\n nativeIpv4PrefixLimit?: NativeIpv4PrefixLimitProperties;\n /** Native IPv6 Prefix Limit Configuration properties. */\n nativeIpv6PrefixLimit?: NativeIpv6PrefixLimitProperties;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Associated Network Fabric Resource ID */\n readonly networkFabricId?: string;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function internalNetworkSerializer(item: InternalNetwork): any {\n return { properties: _internalNetworkPropertiesSerializer(item) };\n}\n\nexport function internalNetworkDeserializer(item: any): InternalNetwork {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._internalNetworkPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Internal Network Properties defines the properties of the resource. */\nexport interface InternalNetworkProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** Extension. Example: NoExtension | NPB. */\n extension?: Extension;\n /** Maximum transmission unit. Default value is 1500. */\n mtu?: number;\n /** List of Connected IPv4 Subnets. */\n connectedIPv4Subnets?: ConnectedSubnet[];\n /** List of connected IPv6 Subnets. */\n connectedIPv6Subnets?: ConnectedSubnet[];\n /** Import Route Policy either IPv4 or IPv6. */\n importRoutePolicy?: ImportRoutePolicy;\n /** Export Route Policy either IPv4 or IPv6. */\n exportRoutePolicy?: ExportRoutePolicy;\n /** Ingress Acl. ARM resource ID of Access Control Lists. */\n ingressAclId?: string;\n /** Egress Acl. ARM resource ID of Access Control Lists. */\n egressAclId?: string;\n /** To check whether monitoring of internal network is enabled or not. */\n isMonitoringEnabled?: IsMonitoringEnabled;\n /** Vlan identifier. Example: 1001. */\n vlanId: number;\n /** BGP configuration properties. */\n bgpConfiguration?: BgpConfiguration;\n /** Static Route Configuration properties. */\n staticRouteConfiguration?: StaticRouteConfiguration;\n /** Native IPv4 Prefix Limit Configuration properties. */\n nativeIpv4PrefixLimit?: NativeIpv4PrefixLimitProperties;\n /** Native IPv6 Prefix Limit Configuration properties. */\n nativeIpv6PrefixLimit?: NativeIpv6PrefixLimitProperties;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Associated Network Fabric Resource ID */\n readonly networkFabricId?: string;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function internalNetworkPropertiesSerializer(item: InternalNetworkProperties): any {\n return {\n annotation: item[\"annotation\"],\n extension: item[\"extension\"],\n mtu: item[\"mtu\"],\n connectedIPv4Subnets: !item[\"connectedIPv4Subnets\"]\n ? item[\"connectedIPv4Subnets\"]\n : connectedSubnetArraySerializer(item[\"connectedIPv4Subnets\"]),\n connectedIPv6Subnets: !item[\"connectedIPv6Subnets\"]\n ? item[\"connectedIPv6Subnets\"]\n : connectedSubnetArraySerializer(item[\"connectedIPv6Subnets\"]),\n importRoutePolicy: !item[\"importRoutePolicy\"]\n ? item[\"importRoutePolicy\"]\n : importRoutePolicySerializer(item[\"importRoutePolicy\"]),\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : exportRoutePolicySerializer(item[\"exportRoutePolicy\"]),\n ingressAclId: item[\"ingressAclId\"],\n egressAclId: item[\"egressAclId\"],\n isMonitoringEnabled: item[\"isMonitoringEnabled\"],\n vlanId: item[\"vlanId\"],\n bgpConfiguration: !item[\"bgpConfiguration\"]\n ? item[\"bgpConfiguration\"]\n : bgpConfigurationSerializer(item[\"bgpConfiguration\"]),\n staticRouteConfiguration: !item[\"staticRouteConfiguration\"]\n ? item[\"staticRouteConfiguration\"]\n : staticRouteConfigurationSerializer(item[\"staticRouteConfiguration\"]),\n nativeIpv4PrefixLimit: !item[\"nativeIpv4PrefixLimit\"]\n ? item[\"nativeIpv4PrefixLimit\"]\n : nativeIpv4PrefixLimitPropertiesSerializer(item[\"nativeIpv4PrefixLimit\"]),\n nativeIpv6PrefixLimit: !item[\"nativeIpv6PrefixLimit\"]\n ? item[\"nativeIpv6PrefixLimit\"]\n : nativeIpv6PrefixLimitPropertiesSerializer(item[\"nativeIpv6PrefixLimit\"]),\n };\n}\n\nexport function internalNetworkPropertiesDeserializer(item: any): InternalNetworkProperties {\n return {\n annotation: item[\"annotation\"],\n extension: item[\"extension\"],\n mtu: item[\"mtu\"],\n connectedIPv4Subnets: !item[\"connectedIPv4Subnets\"]\n ? item[\"connectedIPv4Subnets\"]\n : connectedSubnetArrayDeserializer(item[\"connectedIPv4Subnets\"]),\n connectedIPv6Subnets: !item[\"connectedIPv6Subnets\"]\n ? item[\"connectedIPv6Subnets\"]\n : connectedSubnetArrayDeserializer(item[\"connectedIPv6Subnets\"]),\n importRoutePolicy: !item[\"importRoutePolicy\"]\n ? item[\"importRoutePolicy\"]\n : importRoutePolicyDeserializer(item[\"importRoutePolicy\"]),\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : exportRoutePolicyDeserializer(item[\"exportRoutePolicy\"]),\n ingressAclId: item[\"ingressAclId\"],\n egressAclId: item[\"egressAclId\"],\n isMonitoringEnabled: item[\"isMonitoringEnabled\"],\n vlanId: item[\"vlanId\"],\n bgpConfiguration: !item[\"bgpConfiguration\"]\n ? item[\"bgpConfiguration\"]\n : bgpConfigurationDeserializer(item[\"bgpConfiguration\"]),\n staticRouteConfiguration: !item[\"staticRouteConfiguration\"]\n ? item[\"staticRouteConfiguration\"]\n : staticRouteConfigurationDeserializer(item[\"staticRouteConfiguration\"]),\n nativeIpv4PrefixLimit: !item[\"nativeIpv4PrefixLimit\"]\n ? item[\"nativeIpv4PrefixLimit\"]\n : nativeIpv4PrefixLimitPropertiesDeserializer(item[\"nativeIpv4PrefixLimit\"]),\n nativeIpv6PrefixLimit: !item[\"nativeIpv6PrefixLimit\"]\n ? item[\"nativeIpv6PrefixLimit\"]\n : nativeIpv6PrefixLimitPropertiesDeserializer(item[\"nativeIpv6PrefixLimit\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n networkFabricId: item[\"networkFabricId\"],\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\n/** Extension. Example: NoExtension | NPB. */\nexport enum KnownExtension {\n /** Extension-NoExtension */\n NoExtension = \"NoExtension\",\n /** Extension-NPB */\n NPB = \"NPB\",\n}\n\n/**\n * Extension. Example: NoExtension | NPB. \\\n * {@link KnownExtension} can be used interchangeably with Extension,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **NoExtension**: Extension-NoExtension \\\n * **NPB**: Extension-NPB\n */\nexport type Extension = string;\n\nexport function connectedSubnetArraySerializer(result: Array<ConnectedSubnet>): any[] {\n return result.map((item) => {\n return connectedSubnetSerializer(item);\n });\n}\n\nexport function connectedSubnetArrayDeserializer(result: Array<ConnectedSubnet>): any[] {\n return result.map((item) => {\n return connectedSubnetDeserializer(item);\n });\n}\n\n/** Connected Subnet properties. */\nexport interface ConnectedSubnet extends AnnotationResource {\n /** Prefix of the Connected Subnet. */\n prefix: string;\n}\n\nexport function connectedSubnetSerializer(item: ConnectedSubnet): any {\n return { annotation: item[\"annotation\"], prefix: item[\"prefix\"] };\n}\n\nexport function connectedSubnetDeserializer(item: any): ConnectedSubnet {\n return {\n annotation: item[\"annotation\"],\n prefix: item[\"prefix\"],\n };\n}\n\n/** Import Route Policy either IPv4 or IPv6. */\nexport interface ImportRoutePolicy {\n /** ARM resource ID of RoutePolicy. */\n importIpv4RoutePolicyId?: string;\n /** ARM resource ID of RoutePolicy. */\n importIpv6RoutePolicyId?: string;\n}\n\nexport function importRoutePolicySerializer(item: ImportRoutePolicy): any {\n return {\n importIpv4RoutePolicyId: item[\"importIpv4RoutePolicyId\"],\n importIpv6RoutePolicyId: item[\"importIpv6RoutePolicyId\"],\n };\n}\n\nexport function importRoutePolicyDeserializer(item: any): ImportRoutePolicy {\n return {\n importIpv4RoutePolicyId: item[\"importIpv4RoutePolicyId\"],\n importIpv6RoutePolicyId: item[\"importIpv6RoutePolicyId\"],\n };\n}\n\n/** Export Route Policy either IPv4 or IPv6. */\nexport interface ExportRoutePolicy {\n /** ARM resource ID of RoutePolicy. */\n exportIpv4RoutePolicyId?: string;\n /** ARM resource ID of RoutePolicy. */\n exportIpv6RoutePolicyId?: string;\n}\n\nexport function exportRoutePolicySerializer(item: ExportRoutePolicy): any {\n return {\n exportIpv4RoutePolicyId: item[\"exportIpv4RoutePolicyId\"],\n exportIpv6RoutePolicyId: item[\"exportIpv6RoutePolicyId\"],\n };\n}\n\nexport function exportRoutePolicyDeserializer(item: any): ExportRoutePolicy {\n return {\n exportIpv4RoutePolicyId: item[\"exportIpv4RoutePolicyId\"],\n exportIpv6RoutePolicyId: item[\"exportIpv6RoutePolicyId\"],\n };\n}\n\n/** To check whether monitoring of internal network is enabled or not. */\nexport enum KnownIsMonitoringEnabled {\n /** IsMonitoringEnabled-True */\n True = \"True\",\n /** IsMonitoringEnabled-False */\n False = \"False\",\n}\n\n/**\n * To check whether monitoring of internal network is enabled or not. \\\n * {@link KnownIsMonitoringEnabled} can be used interchangeably with IsMonitoringEnabled,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **True**: IsMonitoringEnabled-True \\\n * **False**: IsMonitoringEnabled-False\n */\nexport type IsMonitoringEnabled = string;\n\n/** BGP configuration properties */\nexport interface BgpConfiguration extends AnnotationResource {\n /** BFD configuration properties */\n bfdConfiguration?: BfdConfiguration;\n /** Originate a defaultRoute. Ex: \"True\" | \"False\". */\n defaultRouteOriginate?: BooleanEnumProperty;\n /** Allows for routes to be received and processed even if the router detects its own ASN in the AS-Path. 0 is disable, Possible values are 1-10, default is 2. */\n allowAS?: number;\n /** Enable Or Disable state. */\n allowASOverride?: AllowASOverride;\n /** ASN of Network Fabric. Example: 65048. */\n readonly fabricASN?: number;\n /** Peer ASN. Example: 65047. */\n peerASN: number;\n /** List of BGP IPv4 Listen Range prefixes. */\n ipv4ListenRangePrefixes?: string[];\n /** List of BGP IPv6 Listen Ranges prefixes. */\n ipv6ListenRangePrefixes?: string[];\n /** List with stringified IPv4 Neighbor Addresses. */\n ipv4NeighborAddress?: NeighborAddress[];\n /** List with stringified IPv6 Neighbor Address. */\n ipv6NeighborAddress?: NeighborAddress[];\n /** InternalNetwork BMP Configuration */\n bmpConfiguration?: InternalNetworkBmpProperties;\n /** V4 over V6 bgp session. */\n v4OverV6BgpSession?: V4OverV6BgpSessionState;\n /** v6 over v4 bgp session. */\n v6OverV4BgpSession?: V6OverV4BgpSessionState;\n}\n\nexport function bgpConfigurationSerializer(item: BgpConfiguration): any {\n return {\n annotation: item[\"annotation\"],\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdConfigurationSerializer(item[\"bfdConfiguration\"]),\n defaultRouteOriginate: item[\"defaultRouteOriginate\"],\n allowAS: item[\"allowAS\"],\n allowASOverride: item[\"allowASOverride\"],\n peerASN: item[\"peerASN\"],\n ipv4ListenRangePrefixes: !item[\"ipv4ListenRangePrefixes\"]\n ? item[\"ipv4ListenRangePrefixes\"]\n : item[\"ipv4ListenRangePrefixes\"].map((p: any) => {\n return p;\n }),\n ipv6ListenRangePrefixes: !item[\"ipv6ListenRangePrefixes\"]\n ? item[\"ipv6ListenRangePrefixes\"]\n : item[\"ipv6ListenRangePrefixes\"].map((p: any) => {\n return p;\n }),\n ipv4NeighborAddress: !item[\"ipv4NeighborAddress\"]\n ? item[\"ipv4NeighborAddress\"]\n : neighborAddressArraySerializer(item[\"ipv4NeighborAddress\"]),\n ipv6NeighborAddress: !item[\"ipv6NeighborAddress\"]\n ? item[\"ipv6NeighborAddress\"]\n : neighborAddressArraySerializer(item[\"ipv6NeighborAddress\"]),\n bmpConfiguration: !item[\"bmpConfiguration\"]\n ? item[\"bmpConfiguration\"]\n : internalNetworkBmpPropertiesSerializer(item[\"bmpConfiguration\"]),\n v4OverV6BgpSession: item[\"v4OverV6BgpSession\"],\n v6OverV4BgpSession: item[\"v6OverV4BgpSession\"],\n };\n}\n\nexport function bgpConfigurationDeserializer(item: any): BgpConfiguration {\n return {\n annotation: item[\"annotation\"],\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdConfigurationDeserializer(item[\"bfdConfiguration\"]),\n defaultRouteOriginate: item[\"defaultRouteOriginate\"],\n allowAS: item[\"allowAS\"],\n allowASOverride: item[\"allowASOverride\"],\n fabricASN: item[\"fabricASN\"],\n peerASN: item[\"peerASN\"],\n ipv4ListenRangePrefixes: !item[\"ipv4ListenRangePrefixes\"]\n ? item[\"ipv4ListenRangePrefixes\"]\n : item[\"ipv4ListenRangePrefixes\"].map((p: any) => {\n return p;\n }),\n ipv6ListenRangePrefixes: !item[\"ipv6ListenRangePrefixes\"]\n ? item[\"ipv6ListenRangePrefixes\"]\n : item[\"ipv6ListenRangePrefixes\"].map((p: any) => {\n return p;\n }),\n ipv4NeighborAddress: !item[\"ipv4NeighborAddress\"]\n ? item[\"ipv4NeighborAddress\"]\n : neighborAddressArrayDeserializer(item[\"ipv4NeighborAddress\"]),\n ipv6NeighborAddress: !item[\"ipv6NeighborAddress\"]\n ? item[\"ipv6NeighborAddress\"]\n : neighborAddressArrayDeserializer(item[\"ipv6NeighborAddress\"]),\n bmpConfiguration: !item[\"bmpConfiguration\"]\n ? item[\"bmpConfiguration\"]\n : internalNetworkBmpPropertiesDeserializer(item[\"bmpConfiguration\"]),\n v4OverV6BgpSession: item[\"v4OverV6BgpSession\"],\n v6OverV4BgpSession: item[\"v6OverV4BgpSession\"],\n };\n}\n\n/** BFD configuration properties */\nexport interface BfdConfiguration {\n /** Administrative state of the BfdConfiguration. Example: Enabled | Disabled. */\n readonly administrativeState?: BfdAdministrativeState;\n /** Interval in milliseconds. Example: 300. */\n intervalInMilliSeconds?: number;\n /** Multiplier for the Bfd Configuration. Example: 5. */\n multiplier?: number;\n}\n\nexport function bfdConfigurationSerializer(item: BfdConfiguration): any {\n return { intervalInMilliSeconds: item[\"intervalInMilliSeconds\"], multiplier: item[\"multiplier\"] };\n}\n\nexport function bfdConfigurationDeserializer(item: any): BfdConfiguration {\n return {\n administrativeState: item[\"administrativeState\"],\n intervalInMilliSeconds: item[\"intervalInMilliSeconds\"],\n multiplier: item[\"multiplier\"],\n };\n}\n\n/** Administrative state of the BfdConfiguration. Example: Enabled | Disabled. */\nexport enum KnownBfdAdministrativeState {\n /** Represents the enabled state of BFD administrative state. */\n Enabled = \"Enabled\",\n /** Represents the disabled state of BFD administrative state. */\n Disabled = \"Disabled\",\n /** Represents the MAT(Manual Action Taken) state of BFD administrative state. */\n MAT = \"MAT\",\n /** Represents the RMA(Return Material Authorization) state of BFD administrative state. */\n RMA = \"RMA\",\n}\n\n/**\n * Administrative state of the BfdConfiguration. Example: Enabled | Disabled. \\\n * {@link KnownBfdAdministrativeState} can be used interchangeably with BfdAdministrativeState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: Represents the enabled state of BFD administrative state. \\\n * **Disabled**: Represents the disabled state of BFD administrative state. \\\n * **MAT**: Represents the MAT(Manual Action Taken) state of BFD administrative state. \\\n * **RMA**: Represents the RMA(Return Material Authorization) state of BFD administrative state.\n */\nexport type BfdAdministrativeState = string;\n\n/** Enable Or Disable state. */\nexport enum KnownAllowASOverride {\n /** AllowASOverride-Enable */\n Enable = \"Enable\",\n /** AllowASOverride-Disable */\n Disable = \"Disable\",\n}\n\n/**\n * Enable Or Disable state. \\\n * {@link KnownAllowASOverride} can be used interchangeably with AllowASOverride,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enable**: AllowASOverride-Enable \\\n * **Disable**: AllowASOverride-Disable\n */\nexport type AllowASOverride = string;\n\nexport function neighborAddressArraySerializer(result: Array<NeighborAddress>): any[] {\n return result.map((item) => {\n return neighborAddressSerializer(item);\n });\n}\n\nexport function neighborAddressArrayDeserializer(result: Array<NeighborAddress>): any[] {\n return result.map((item) => {\n return neighborAddressDeserializer(item);\n });\n}\n\n/** Neighbor Address properties. */\nexport interface NeighborAddress {\n /** IP Address. */\n address?: string;\n /** BFD Administrative State for each Neighbor Address. Example: Enabled | Disabled. */\n readonly bfdAdministrativeState?: BfdAdministrativeState;\n /** BGP Administrative State for each Neighbor Address. Example: Enabled | Disabled. */\n readonly bgpAdministrativeState?: BgpAdministrativeState;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n}\n\nexport function neighborAddressSerializer(item: NeighborAddress): any {\n return { address: item[\"address\"] };\n}\n\nexport function neighborAddressDeserializer(item: any): NeighborAddress {\n return {\n address: item[\"address\"],\n bfdAdministrativeState: item[\"bfdAdministrativeState\"],\n bgpAdministrativeState: item[\"bgpAdministrativeState\"],\n configurationState: item[\"configurationState\"],\n };\n}\n\n/** Border Gateway Protocol (BGP) Administrative State values */\nexport enum KnownBgpAdministrativeState {\n /** BgpAdministrativeState-Enabled */\n Enabled = \"Enabled\",\n /** BgpAdministrativeState-Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * Border Gateway Protocol (BGP) Administrative State values \\\n * {@link KnownBgpAdministrativeState} can be used interchangeably with BgpAdministrativeState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: BgpAdministrativeState-Enabled \\\n * **Disabled**: BgpAdministrativeState-Disabled\n */\nexport type BgpAdministrativeState = string;\n\n/** Internal Network BMP Configuration */\nexport interface InternalNetworkBmpProperties {\n /** BMP Collector Address. */\n neighborIpExclusions?: string[];\n /** BMP Monitoring configuration state. */\n bmpConfigurationState?: BmpConfigurationState;\n /** BMP Export Policy configuration. */\n exportPolicyConfiguration?: BmpExportPolicyProperties;\n}\n\nexport function internalNetworkBmpPropertiesSerializer(item: InternalNetworkBmpProperties): any {\n return {\n neighborIpExclusions: !item[\"neighborIpExclusions\"]\n ? item[\"neighborIpExclusions\"]\n : item[\"neighborIpExclusions\"].map((p: any) => {\n return p;\n }),\n bmpConfigurationState: item[\"bmpConfigurationState\"],\n exportPolicyConfiguration: !item[\"exportPolicyConfiguration\"]\n ? item[\"exportPolicyConfiguration\"]\n : bmpExportPolicyPropertiesSerializer(item[\"exportPolicyConfiguration\"]),\n };\n}\n\nexport function internalNetworkBmpPropertiesDeserializer(item: any): InternalNetworkBmpProperties {\n return {\n neighborIpExclusions: !item[\"neighborIpExclusions\"]\n ? item[\"neighborIpExclusions\"]\n : item[\"neighborIpExclusions\"].map((p: any) => {\n return p;\n }),\n bmpConfigurationState: item[\"bmpConfigurationState\"],\n exportPolicyConfiguration: !item[\"exportPolicyConfiguration\"]\n ? item[\"exportPolicyConfiguration\"]\n : bmpExportPolicyPropertiesDeserializer(item[\"exportPolicyConfiguration\"]),\n };\n}\n\n/** BGP Monitoring Protocol (BMP) configuration state. */\nexport enum KnownBmpConfigurationState {\n /** BGP Monitoring Protocol (BMP) ConfigurationState - Enabled */\n Enabled = \"Enabled\",\n /** BGP Monitoring Protocol (BMP) ConfigurationState - Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * BGP Monitoring Protocol (BMP) configuration state. \\\n * {@link KnownBmpConfigurationState} can be used interchangeably with BmpConfigurationState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: BGP Monitoring Protocol (BMP) ConfigurationState - Enabled \\\n * **Disabled**: BGP Monitoring Protocol (BMP) ConfigurationState - Disabled\n */\nexport type BmpConfigurationState = string;\n\n/** V4 over V6 BGP session state */\nexport enum KnownV4OverV6BgpSessionState {\n /** V4OverV6BgpSessionState-Enabled */\n Enabled = \"Enabled\",\n /** V4OverV6BgpSessionState-Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * V4 over V6 BGP session state \\\n * {@link KnownV4OverV6BgpSessionState} can be used interchangeably with V4OverV6BgpSessionState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: V4OverV6BgpSessionState-Enabled \\\n * **Disabled**: V4OverV6BgpSessionState-Disabled\n */\nexport type V4OverV6BgpSessionState = string;\n\n/** V6 over V4 BGP session state */\nexport enum KnownV6OverV4BgpSessionState {\n /** V6OverV4BgpSessionState-Enabled */\n Enabled = \"Enabled\",\n /** V6OverV4BgpSessionState-Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * V6 over V4 BGP session state \\\n * {@link KnownV6OverV4BgpSessionState} can be used interchangeably with V6OverV4BgpSessionState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: V6OverV4BgpSessionState-Enabled \\\n * **Disabled**: V6OverV4BgpSessionState-Disabled\n */\nexport type V6OverV4BgpSessionState = string;\n\n/** Static Route Configuration properties. */\nexport interface StaticRouteConfiguration {\n /** BFD configuration properties */\n bfdConfiguration?: BfdConfiguration;\n /** List of IPv4 Routes. */\n ipv4Routes?: StaticRouteProperties[];\n /** List of IPv6 Routes. */\n ipv6Routes?: StaticRouteProperties[];\n /** Extension. Example: NoExtension | NPB. */\n extension?: Extension;\n}\n\nexport function staticRouteConfigurationSerializer(item: StaticRouteConfiguration): any {\n return {\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdConfigurationSerializer(item[\"bfdConfiguration\"]),\n ipv4Routes: !item[\"ipv4Routes\"]\n ? item[\"ipv4Routes\"]\n : staticRoutePropertiesArraySerializer(item[\"ipv4Routes\"]),\n ipv6Routes: !item[\"ipv6Routes\"]\n ? item[\"ipv6Routes\"]\n : staticRoutePropertiesArraySerializer(item[\"ipv6Routes\"]),\n extension: item[\"extension\"],\n };\n}\n\nexport function staticRouteConfigurationDeserializer(item: any): StaticRouteConfiguration {\n return {\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdConfigurationDeserializer(item[\"bfdConfiguration\"]),\n ipv4Routes: !item[\"ipv4Routes\"]\n ? item[\"ipv4Routes\"]\n : staticRoutePropertiesArrayDeserializer(item[\"ipv4Routes\"]),\n ipv6Routes: !item[\"ipv6Routes\"]\n ? item[\"ipv6Routes\"]\n : staticRoutePropertiesArrayDeserializer(item[\"ipv6Routes\"]),\n extension: item[\"extension\"],\n };\n}\n\nexport function staticRoutePropertiesArraySerializer(result: Array<StaticRouteProperties>): any[] {\n return result.map((item) => {\n return staticRoutePropertiesSerializer(item);\n });\n}\n\nexport function staticRoutePropertiesArrayDeserializer(\n result: Array<StaticRouteProperties>,\n): any[] {\n return result.map((item) => {\n return staticRoutePropertiesDeserializer(item);\n });\n}\n\n/** Route Properties. */\nexport interface StaticRouteProperties {\n /** Prefix of the route. */\n prefix: string;\n /** List of next hop addresses. */\n nextHop: string[];\n}\n\nexport function staticRoutePropertiesSerializer(item: StaticRouteProperties): any {\n return {\n prefix: item[\"prefix\"],\n nextHop: item[\"nextHop\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function staticRoutePropertiesDeserializer(item: any): StaticRouteProperties {\n return {\n prefix: item[\"prefix\"],\n nextHop: item[\"nextHop\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** External Network native IPv4 prefix limit properties */\nexport interface NativeIpv4PrefixLimitProperties {\n /** Prefix limits */\n prefixLimits?: PrefixLimitProperties[];\n}\n\nexport function nativeIpv4PrefixLimitPropertiesSerializer(\n item: NativeIpv4PrefixLimitProperties,\n): any {\n return {\n prefixLimits: !item[\"prefixLimits\"]\n ? item[\"prefixLimits\"]\n : prefixLimitPropertiesArraySerializer(item[\"prefixLimits\"]),\n };\n}\n\nexport function nativeIpv4PrefixLimitPropertiesDeserializer(\n item: any,\n): NativeIpv4PrefixLimitProperties {\n return {\n prefixLimits: !item[\"prefixLimits\"]\n ? item[\"prefixLimits\"]\n : prefixLimitPropertiesArrayDeserializer(item[\"prefixLimits\"]),\n };\n}\n\nexport function prefixLimitPropertiesArraySerializer(result: Array<PrefixLimitProperties>): any[] {\n return result.map((item) => {\n return prefixLimitPropertiesSerializer(item);\n });\n}\n\nexport function prefixLimitPropertiesArrayDeserializer(\n result: Array<PrefixLimitProperties>,\n): any[] {\n return result.map((item) => {\n return prefixLimitPropertiesDeserializer(item);\n });\n}\n\n/** Prefix Limit properties. */\nexport interface PrefixLimitProperties {\n /** Maximum routes allowed. */\n maximumRoutes?: number;\n /** Limit at which route prefixes a warning is generate. */\n threshold?: number;\n /** Idle Time Expiry in seconds, default is 60. */\n idleTimeExpiry?: number;\n}\n\nexport function prefixLimitPropertiesSerializer(item: PrefixLimitProperties): any {\n return {\n maximumRoutes: item[\"maximumRoutes\"],\n threshold: item[\"threshold\"],\n idleTimeExpiry: item[\"idleTimeExpiry\"],\n };\n}\n\nexport function prefixLimitPropertiesDeserializer(item: any): PrefixLimitProperties {\n return {\n maximumRoutes: item[\"maximumRoutes\"],\n threshold: item[\"threshold\"],\n idleTimeExpiry: item[\"idleTimeExpiry\"],\n };\n}\n\n/** External Network native IPv6 prefix limit properties */\nexport interface NativeIpv6PrefixLimitProperties {\n /** Prefix limits */\n prefixLimits?: PrefixLimitProperties[];\n}\n\nexport function nativeIpv6PrefixLimitPropertiesSerializer(\n item: NativeIpv6PrefixLimitProperties,\n): any {\n return {\n prefixLimits: !item[\"prefixLimits\"]\n ? item[\"prefixLimits\"]\n : prefixLimitPropertiesArraySerializer(item[\"prefixLimits\"]),\n };\n}\n\nexport function nativeIpv6PrefixLimitPropertiesDeserializer(\n item: any,\n): NativeIpv6PrefixLimitProperties {\n return {\n prefixLimits: !item[\"prefixLimits\"]\n ? item[\"prefixLimits\"]\n : prefixLimitPropertiesArrayDeserializer(item[\"prefixLimits\"]),\n };\n}\n\n/** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */\nexport interface ProxyResource extends Resource {}\n\nexport function proxyResourceSerializer(_item: ProxyResource): any {\n return {};\n}\n\nexport function proxyResourceDeserializer(item: any): ProxyResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n };\n}\n\n/** The InternalNetwork patch resource definition. */\nexport interface InternalNetworkPatch {\n /** Switch configuration description. */\n annotation?: string;\n /** Maximum transmission unit. Default value is 1500. */\n mtu?: number;\n /** List of Connected IPv4 Subnets. */\n connectedIPv4Subnets?: ConnectedSubnetPatch[];\n /** List of connected IPv6 Subnets. */\n connectedIPv6Subnets?: ConnectedSubnetPatch[];\n /** Import Route Policy either IPv4 or IPv6. */\n importRoutePolicy?: ImportRoutePolicy;\n /** Export Route Policy either IPv4 or IPv6. */\n exportRoutePolicy?: ExportRoutePolicy;\n /** Ingress Acl. ARM resource ID of Access Control Lists. */\n ingressAclId?: string;\n /** Egress Acl. ARM resource ID of Access Control Lists. */\n egressAclId?: string;\n /** To check whether monitoring of internal network is enabled or not. */\n isMonitoringEnabled?: IsMonitoringEnabled;\n /** BGP configuration properties. */\n bgpConfiguration?: BgpPatchConfiguration;\n /** Static Route Configuration properties. */\n staticRouteConfiguration?: StaticRoutePatchConfiguration;\n /** Native IPv4 Prefix Limit Configuration properties. */\n nativeIpv4PrefixLimit?: NativeIpv4PrefixLimitPatchProperties;\n /** Native IPv6 Prefix Limit Configuration properties. */\n nativeIpv6PrefixLimit?: NativeIpv6PrefixLimitPatchProperties;\n}\n\nexport function internalNetworkPatchSerializer(item: InternalNetworkPatch): any {\n return {\n properties: areAllPropsUndefined(item, [\n \"annotation\",\n \"mtu\",\n \"connectedIPv4Subnets\",\n \"connectedIPv6Subnets\",\n \"importRoutePolicy\",\n \"exportRoutePolicy\",\n \"ingressAclId\",\n \"egressAclId\",\n \"isMonitoringEnabled\",\n \"bgpConfiguration\",\n \"staticRouteConfiguration\",\n \"nativeIpv4PrefixLimit\",\n \"nativeIpv6PrefixLimit\",\n ])\n ? undefined\n : _internalNetworkPatchPropertiesSerializer(item),\n };\n}\n\n/** InternalNetwork Patch properties. */\nexport interface InternalNetworkPatchProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** Maximum transmission unit. Default value is 1500. */\n mtu?: number;\n /** List of Connected IPv4 Subnets. */\n connectedIPv4Subnets?: ConnectedSubnetPatch[];\n /** List of connected IPv6 Subnets. */\n connectedIPv6Subnets?: ConnectedSubnetPatch[];\n /** Import Route Policy either IPv4 or IPv6. */\n importRoutePolicy?: ImportRoutePolicy;\n /** Export Route Policy either IPv4 or IPv6. */\n exportRoutePolicy?: ExportRoutePolicy;\n /** Ingress Acl. ARM resource ID of Access Control Lists. */\n ingressAclId?: string;\n /** Egress Acl. ARM resource ID of Access Control Lists. */\n egressAclId?: string;\n /** To check whether monitoring of internal network is enabled or not. */\n isMonitoringEnabled?: IsMonitoringEnabled;\n /** BGP configuration properties. */\n bgpConfiguration?: BgpPatchConfiguration;\n /** Static Route Configuration properties. */\n staticRouteConfiguration?: StaticRoutePatchConfiguration;\n /** Native IPv4 Prefix Limit Configuration properties. */\n nativeIpv4PrefixLimit?: NativeIpv4PrefixLimitPatchProperties;\n /** Native IPv6 Prefix Limit Configuration properties. */\n nativeIpv6PrefixLimit?: NativeIpv6PrefixLimitPatchProperties;\n}\n\nexport function internalNetworkPatchPropertiesSerializer(\n item: InternalNetworkPatchProperties,\n): any {\n return {\n annotation: item[\"annotation\"],\n mtu: item[\"mtu\"],\n connectedIPv4Subnets: !item[\"connectedIPv4Subnets\"]\n ? item[\"connectedIPv4Subnets\"]\n : connectedSubnetPatchArraySerializer(item[\"connectedIPv4Subnets\"]),\n connectedIPv6Subnets: !item[\"connectedIPv6Subnets\"]\n ? item[\"connectedIPv6Subnets\"]\n : connectedSubnetPatchArraySerializer(item[\"connectedIPv6Subnets\"]),\n importRoutePolicy: !item[\"importRoutePolicy\"]\n ? item[\"importRoutePolicy\"]\n : importRoutePolicySerializer(item[\"importRoutePolicy\"]),\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : exportRoutePolicySerializer(item[\"exportRoutePolicy\"]),\n ingressAclId: item[\"ingressAclId\"],\n egressAclId: item[\"egressAclId\"],\n isMonitoringEnabled: item[\"isMonitoringEnabled\"],\n bgpConfiguration: !item[\"bgpConfiguration\"]\n ? item[\"bgpConfiguration\"]\n : bgpPatchConfigurationSerializer(item[\"bgpConfiguration\"]),\n staticRouteConfiguration: !item[\"staticRouteConfiguration\"]\n ? item[\"staticRouteConfiguration\"]\n : staticRoutePatchConfigurationSerializer(item[\"staticRouteConfiguration\"]),\n nativeIpv4PrefixLimit: !item[\"nativeIpv4PrefixLimit\"]\n ? item[\"nativeIpv4PrefixLimit\"]\n : nativeIpv4PrefixLimitPatchPropertiesSerializer(item[\"nativeIpv4PrefixLimit\"]),\n nativeIpv6PrefixLimit: !item[\"nativeIpv6PrefixLimit\"]\n ? item[\"nativeIpv6PrefixLimit\"]\n : nativeIpv6PrefixLimitPatchPropertiesSerializer(item[\"nativeIpv6PrefixLimit\"]),\n };\n}\n\nexport function connectedSubnetPatchArraySerializer(result: Array<ConnectedSubnetPatch>): any[] {\n return result.map((item) => {\n return connectedSubnetPatchSerializer(item);\n });\n}\n\n/** Connected Subnet properties. */\nexport interface ConnectedSubnetPatch extends AnnotationResource {\n /** Prefix of the Connected Subnet. */\n prefix: string;\n}\n\nexport function connectedSubnetPatchSerializer(item: ConnectedSubnetPatch): any {\n return { annotation: item[\"annotation\"], prefix: item[\"prefix\"] };\n}\n\n/** BGP configuration properties. */\nexport interface BgpPatchConfiguration extends AnnotationResource {\n /** BFD configuration properties */\n bfdConfiguration?: BfdPatchConfiguration;\n /** Originate a defaultRoute. Ex: \"True\" | \"False\". */\n defaultRouteOriginate?: BooleanEnumProperty;\n /** Allows for routes to be received and processed even if the router detects its own ASN in the AS-Path. 0 is disable, Possible values are 1-10, default is 2. */\n allowAS?: number;\n /** Enable Or Disable state. */\n allowASOverride?: AllowASOverride;\n /** ASN of Network Fabric. Example: 65048. */\n readonly fabricASN?: number;\n /** Peer ASN. Example: 65047. */\n peerASN?: number;\n /** List of BGP IPv4 Listen Range prefixes. */\n ipv4ListenRangePrefixes?: string[];\n /** List of BGP IPv6 Listen Ranges prefixes. */\n ipv6ListenRangePrefixes?: string[];\n /** List with stringified IPv4 Neighbor Addresses. */\n ipv4NeighborAddress?: NeighborAddressPatch[];\n /** List with stringified IPv6 Neighbor Address. */\n ipv6NeighborAddress?: NeighborAddressPatch[];\n /** InternalNetwork BMP Configuration */\n bmpConfiguration?: InternalNetworkBmpPatchProperties;\n /** V4 over V6 bgp session. */\n v4OverV6BgpSession?: V4OverV6BgpSessionState;\n /** v6 over v4 bgp session. */\n v6OverV4BgpSession?: V6OverV4BgpSessionState;\n}\n\nexport function bgpPatchConfigurationSerializer(item: BgpPatchConfiguration): any {\n return {\n annotation: item[\"annotation\"],\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdPatchConfigurationSerializer(item[\"bfdConfiguration\"]),\n defaultRouteOriginate: item[\"defaultRouteOriginate\"],\n allowAS: item[\"allowAS\"],\n allowASOverride: item[\"allowASOverride\"],\n peerASN: item[\"peerASN\"],\n ipv4ListenRangePrefixes: !item[\"ipv4ListenRangePrefixes\"]\n ? item[\"ipv4ListenRangePrefixes\"]\n : item[\"ipv4ListenRangePrefixes\"].map((p: any) => {\n return p;\n }),\n ipv6ListenRangePrefixes: !item[\"ipv6ListenRangePrefixes\"]\n ? item[\"ipv6ListenRangePrefixes\"]\n : item[\"ipv6ListenRangePrefixes\"].map((p: any) => {\n return p;\n }),\n ipv4NeighborAddress: !item[\"ipv4NeighborAddress\"]\n ? item[\"ipv4NeighborAddress\"]\n : neighborAddressPatchArraySerializer(item[\"ipv4NeighborAddress\"]),\n ipv6NeighborAddress: !item[\"ipv6NeighborAddress\"]\n ? item[\"ipv6NeighborAddress\"]\n : neighborAddressPatchArraySerializer(item[\"ipv6NeighborAddress\"]),\n bmpConfiguration: !item[\"bmpConfiguration\"]\n ? item[\"bmpConfiguration\"]\n : internalNetworkBmpPatchPropertiesSerializer(item[\"bmpConfiguration\"]),\n v4OverV6BgpSession: item[\"v4OverV6BgpSession\"],\n v6OverV4BgpSession: item[\"v6OverV4BgpSession\"],\n };\n}\n\n/** BFD configuration properties */\nexport interface BfdPatchConfiguration {\n /** Administrative state of the BfdConfiguration. Example: Enabled | Disabled. */\n readonly administrativeState?: BfdAdministrativeState;\n /** Interval in milliseconds. Example: 300. */\n intervalInMilliSeconds?: number;\n /** Multiplier for the Bfd Configuration. Example: 5. */\n multiplier?: number;\n}\n\nexport function bfdPatchConfigurationSerializer(item: BfdPatchConfiguration): any {\n return { intervalInMilliSeconds: item[\"intervalInMilliSeconds\"], multiplier: item[\"multiplier\"] };\n}\n\nexport function neighborAddressPatchArraySerializer(result: Array<NeighborAddressPatch>): any[] {\n return result.map((item) => {\n return neighborAddressPatchSerializer(item);\n });\n}\n\n/** Neighbor Address properties. */\nexport interface NeighborAddressPatch {\n /** IP Address. */\n address?: string;\n /** BFD Administrative State for each Neighbor Address. Example: Enabled | Disabled. */\n readonly bfdAdministrativeState?: BfdAdministrativeState;\n /** BGP Administrative State for each Neighbor Address. Example: Enabled | Disabled. */\n readonly bgpAdministrativeState?: BgpAdministrativeState;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n}\n\nexport function neighborAddressPatchSerializer(item: NeighborAddressPatch): any {\n return { address: item[\"address\"] };\n}\n\n/** Internal Network BMP Configuration */\nexport interface InternalNetworkBmpPatchProperties {\n /** Neighbor IP Address exclusions for BMP. */\n neighborIpExclusions?: string[];\n /** BMP Monitoring configuration state. */\n bmpConfigurationState?: BmpConfigurationState;\n}\n\nexport function internalNetworkBmpPatchPropertiesSerializer(\n item: InternalNetworkBmpPatchProperties,\n): any {\n return {\n neighborIpExclusions: !item[\"neighborIpExclusions\"]\n ? item[\"neighborIpExclusions\"]\n : item[\"neighborIpExclusions\"].map((p: any) => {\n return p;\n }),\n bmpConfigurationState: item[\"bmpConfigurationState\"],\n };\n}\n\n/** Static Route Configuration properties. */\nexport interface StaticRoutePatchConfiguration {\n /** BFD configuration properties */\n bfdConfiguration?: BfdPatchConfiguration;\n /** List of IPv4 Routes. */\n ipv4Routes?: StaticRoutePatchProperties[];\n /** List of IPv6 Routes. */\n ipv6Routes?: StaticRoutePatchProperties[];\n}\n\nexport function staticRoutePatchConfigurationSerializer(item: StaticRoutePatchConfiguration): any {\n return {\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdPatchConfigurationSerializer(item[\"bfdConfiguration\"]),\n ipv4Routes: !item[\"ipv4Routes\"]\n ? item[\"ipv4Routes\"]\n : staticRoutePatchPropertiesArraySerializer(item[\"ipv4Routes\"]),\n ipv6Routes: !item[\"ipv6Routes\"]\n ? item[\"ipv6Routes\"]\n : staticRoutePatchPropertiesArraySerializer(item[\"ipv6Routes\"]),\n };\n}\n\nexport function staticRoutePatchPropertiesArraySerializer(\n result: Array<StaticRoutePatchProperties>,\n): any[] {\n return result.map((item) => {\n return staticRoutePatchPropertiesSerializer(item);\n });\n}\n\n/** Route Properties. */\nexport interface StaticRoutePatchProperties {\n /** Prefix of the route. */\n prefix: string;\n /** List of next hop addresses. */\n nextHop: string[];\n}\n\nexport function staticRoutePatchPropertiesSerializer(item: StaticRoutePatchProperties): any {\n return {\n prefix: item[\"prefix\"],\n nextHop: item[\"nextHop\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** External Network native IPv4 prefix limits patch properties */\nexport interface NativeIpv4PrefixLimitPatchProperties {\n /** Prefix limits */\n prefixLimits?: PrefixLimitPatchProperties[];\n}\n\nexport function nativeIpv4PrefixLimitPatchPropertiesSerializer(\n item: NativeIpv4PrefixLimitPatchProperties,\n): any {\n return {\n prefixLimits: !item[\"prefixLimits\"]\n ? item[\"prefixLimits\"]\n : prefixLimitPatchPropertiesArraySerializer(item[\"prefixLimits\"]),\n };\n}\n\nexport function prefixLimitPatchPropertiesArraySerializer(\n result: Array<PrefixLimitPatchProperties>,\n): any[] {\n return result.map((item) => {\n return prefixLimitPatchPropertiesSerializer(item);\n });\n}\n\n/** Prefix Limit Patch properties. */\nexport interface PrefixLimitPatchProperties {\n /** Maximum routes allowed. */\n maximumRoutes?: number;\n /** Limit at which route prefixes a warning is generate. */\n threshold?: number;\n /** Idle time expiry in seconds. */\n idleTimeExpiry?: number;\n}\n\nexport function prefixLimitPatchPropertiesSerializer(item: PrefixLimitPatchProperties): any {\n return {\n maximumRoutes: item[\"maximumRoutes\"],\n threshold: item[\"threshold\"],\n idleTimeExpiry: item[\"idleTimeExpiry\"],\n };\n}\n\n/** External Network native IPv6 prefix limits patch properties */\nexport interface NativeIpv6PrefixLimitPatchProperties {\n /** Prefix limits */\n prefixLimits?: PrefixLimitPatchProperties[];\n}\n\nexport function nativeIpv6PrefixLimitPatchPropertiesSerializer(\n item: NativeIpv6PrefixLimitPatchProperties,\n): any {\n return {\n prefixLimits: !item[\"prefixLimits\"]\n ? item[\"prefixLimits\"]\n : prefixLimitPatchPropertiesArraySerializer(item[\"prefixLimits\"]),\n };\n}\n\n/** Paged collection of InternalNetwork items */\nexport interface _InternalNetworksList {\n /** The InternalNetwork items on this page */\n value: InternalNetwork[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _internalNetworksListDeserializer(item: any): _InternalNetworksList {\n return {\n value: internalNetworkArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function internalNetworkArraySerializer(result: Array<InternalNetwork>): any[] {\n return result.map((item) => {\n return internalNetworkSerializer(item);\n });\n}\n\nexport function internalNetworkArrayDeserializer(result: Array<InternalNetwork>): any[] {\n return result.map((item) => {\n return internalNetworkDeserializer(item);\n });\n}\n\n/** Internal Network Administrative State Request */\nexport interface InternalNetworkUpdateBgpAdministrativeStateRequest {\n /** NeighborAddress - Input should be either All or Specific Ipv4 Address or Specific Ipv6 Address. */\n neighborAddress?: string;\n /** BGP Administrative state. */\n administrativeState?: BgpAdministrativeState;\n}\n\nexport function internalNetworkUpdateBgpAdministrativeStateRequestSerializer(\n item: InternalNetworkUpdateBgpAdministrativeStateRequest,\n): any {\n return {\n neighborAddress: item[\"neighborAddress\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\n/** Internal Network Administrative State Response */\nexport interface InternalNetworkUpdateBgpAdministrativeStateResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n /** Internal Network BGP Administrative State response properties */\n properties?: InternalNetworkUpdateBgpAdministrativeStateResponseProperties;\n}\n\nexport function internalNetworkUpdateBgpAdministrativeStateResponseDeserializer(\n item: any,\n): InternalNetworkUpdateBgpAdministrativeStateResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : internalNetworkUpdateBgpAdministrativeStateResponsePropertiesDeserializer(\n item[\"properties\"],\n ),\n };\n}\n\n/** Internal Network BGP Administrative State response properties */\nexport interface InternalNetworkUpdateBgpAdministrativeStateResponseProperties {\n /** NeighborAddress administrative status */\n neighborAddressAdministrativeStatus?: NeighborAddressBgpAdministrativeStatus[];\n}\n\nexport function internalNetworkUpdateBgpAdministrativeStateResponsePropertiesDeserializer(\n item: any,\n): InternalNetworkUpdateBgpAdministrativeStateResponseProperties {\n return {\n neighborAddressAdministrativeStatus: !item[\"neighborAddressAdministrativeStatus\"]\n ? item[\"neighborAddressAdministrativeStatus\"]\n : neighborAddressBgpAdministrativeStatusArrayDeserializer(\n item[\"neighborAddressAdministrativeStatus\"],\n ),\n };\n}\n\nexport function neighborAddressBgpAdministrativeStatusArrayDeserializer(\n result: Array<NeighborAddressBgpAdministrativeStatus>,\n): any[] {\n return result.map((item) => {\n return neighborAddressBgpAdministrativeStatusDeserializer(item);\n });\n}\n\n/** Neighbor Address BGP Administrative Status */\nexport interface NeighborAddressBgpAdministrativeStatus {\n /** NeighborAddress - Input should be either All or Specific Ipv4 Address or Specific Ipv6 Address. */\n neighborAddress?: string;\n /** BGP Administrative state. */\n administrativeState?: BgpAdministrativeState;\n /** Error message. */\n error?: string;\n}\n\nexport function neighborAddressBgpAdministrativeStatusDeserializer(\n item: any,\n): NeighborAddressBgpAdministrativeStatus {\n return {\n neighborAddress: item[\"neighborAddress\"],\n administrativeState: item[\"administrativeState\"],\n error: item[\"error\"],\n };\n}\n\n/** Internal Network BFD Administrative State request */\nexport interface InternalNetworkUpdateBfdAdministrativeStateRequest {\n /** Route Type that helps to know which bfd we are updating. */\n routeType?: InternalNetworkRouteType;\n /** NeighborAddress - Input should be either All or Specific Ipv4 Address or Specific Ipv6 Address. */\n neighborAddress?: string;\n /** BFD Administrative state. */\n administrativeState?: BfdAdministrativeState;\n}\n\nexport function internalNetworkUpdateBfdAdministrativeStateRequestSerializer(\n item: InternalNetworkUpdateBfdAdministrativeStateRequest,\n): any {\n return {\n routeType: item[\"routeType\"],\n neighborAddress: item[\"neighborAddress\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\n/** Internal Network RouteType. */\nexport enum KnownInternalNetworkRouteType {\n /** InternalNetwork Static. */\n Static = \"Static\",\n /** InternalNetwork Bgp. */\n Bgp = \"Bgp\",\n}\n\n/**\n * Internal Network RouteType. \\\n * {@link KnownInternalNetworkRouteType} can be used interchangeably with InternalNetworkRouteType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Static**: InternalNetwork Static. \\\n * **Bgp**: InternalNetwork Bgp.\n */\nexport type InternalNetworkRouteType = string;\n\n/** Internal Network BFD Administrative State response */\nexport interface InternalNetworkUpdateBfdAdministrativeStateResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n /** Internal Network BFD Administrative State response properties */\n properties?: InternalNetworkUpdateBfdAdministrativeStateResponseProperties;\n}\n\nexport function internalNetworkUpdateBfdAdministrativeStateResponseDeserializer(\n item: any,\n): InternalNetworkUpdateBfdAdministrativeStateResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : internalNetworkUpdateBfdAdministrativeStateResponsePropertiesDeserializer(\n item[\"properties\"],\n ),\n };\n}\n\n/** Internal Network BFD Administrative State response properties */\nexport interface InternalNetworkUpdateBfdAdministrativeStateResponseProperties {\n /** NeighborAddress administrative status */\n neighborAddressAdministrativeStatus?: NeighborAddressBfdAdministrativeStatus[];\n}\n\nexport function internalNetworkUpdateBfdAdministrativeStateResponsePropertiesDeserializer(\n item: any,\n): InternalNetworkUpdateBfdAdministrativeStateResponseProperties {\n return {\n neighborAddressAdministrativeStatus: !item[\"neighborAddressAdministrativeStatus\"]\n ? item[\"neighborAddressAdministrativeStatus\"]\n : neighborAddressBfdAdministrativeStatusArrayDeserializer(\n item[\"neighborAddressAdministrativeStatus\"],\n ),\n };\n}\n\nexport function neighborAddressBfdAdministrativeStatusArrayDeserializer(\n result: Array<NeighborAddressBfdAdministrativeStatus>,\n): any[] {\n return result.map((item) => {\n return neighborAddressBfdAdministrativeStatusDeserializer(item);\n });\n}\n\n/** Neighbor Address Bidirectional Forwarding Detection (BFD) Administrative Status */\nexport interface NeighborAddressBfdAdministrativeStatus {\n /** NeighborAddress - Input should be either All or Specific Ipv4 Address or Specific Ipv6 Address. */\n neighborAddress?: string;\n /** BFD Administrative state. */\n administrativeState?: BfdAdministrativeState;\n /** Error message. */\n error?: string;\n}\n\nexport function neighborAddressBfdAdministrativeStatusDeserializer(\n item: any,\n): NeighborAddressBfdAdministrativeStatus {\n return {\n neighborAddress: item[\"neighborAddress\"],\n administrativeState: item[\"administrativeState\"],\n error: item[\"error\"],\n };\n}\n\n/** Defines the External Network resource. */\nexport interface ExternalNetwork extends ProxyResource {\n /** Switch configuration description. */\n annotation?: string;\n /** ARM Resource ID of the networkToNetworkInterconnectId of the ExternalNetwork resource. */\n networkToNetworkInterconnectId?: string;\n /** Import Route Policy either IPv4 or IPv6. */\n importRoutePolicy?: ImportRoutePolicy;\n /** Export Route Policy either IPv4 or IPv6. */\n exportRoutePolicy?: ExportRoutePolicy;\n /** Peering option list. */\n peeringOption: PeeringOption;\n /** option B properties object */\n optionBProperties?: L3OptionBProperties;\n /** option A properties object */\n optionAProperties?: ExternalNetworkPropertiesOptionAProperties;\n /** Static Route Configuration. */\n staticRouteConfiguration?: ExternalNetworkStaticRouteConfiguration;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Associated Network Fabric Resource ID */\n readonly networkFabricId?: string;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function externalNetworkSerializer(item: ExternalNetwork): any {\n return { properties: _externalNetworkPropertiesSerializer(item) };\n}\n\nexport function externalNetworkDeserializer(item: any): ExternalNetwork {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._externalNetworkPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** External Network Properties. */\nexport interface ExternalNetworkProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** ARM Resource ID of the networkToNetworkInterconnectId of the ExternalNetwork resource. */\n networkToNetworkInterconnectId?: string;\n /** Import Route Policy either IPv4 or IPv6. */\n importRoutePolicy?: ImportRoutePolicy;\n /** Export Route Policy either IPv4 or IPv6. */\n exportRoutePolicy?: ExportRoutePolicy;\n /** Peering option list. */\n peeringOption: PeeringOption;\n /** option B properties object */\n optionBProperties?: L3OptionBProperties;\n /** option A properties object */\n optionAProperties?: ExternalNetworkPropertiesOptionAProperties;\n /** Static Route Configuration. */\n staticRouteConfiguration?: ExternalNetworkStaticRouteConfiguration;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Associated Network Fabric Resource ID */\n readonly networkFabricId?: string;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function externalNetworkPropertiesSerializer(item: ExternalNetworkProperties): any {\n return {\n annotation: item[\"annotation\"],\n networkToNetworkInterconnectId: item[\"networkToNetworkInterconnectId\"],\n importRoutePolicy: !item[\"importRoutePolicy\"]\n ? item[\"importRoutePolicy\"]\n : importRoutePolicySerializer(item[\"importRoutePolicy\"]),\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : exportRoutePolicySerializer(item[\"exportRoutePolicy\"]),\n peeringOption: item[\"peeringOption\"],\n optionBProperties: !item[\"optionBProperties\"]\n ? item[\"optionBProperties\"]\n : l3OptionBPropertiesSerializer(item[\"optionBProperties\"]),\n optionAProperties: !item[\"optionAProperties\"]\n ? item[\"optionAProperties\"]\n : externalNetworkPropertiesOptionAPropertiesSerializer(item[\"optionAProperties\"]),\n staticRouteConfiguration: !item[\"staticRouteConfiguration\"]\n ? item[\"staticRouteConfiguration\"]\n : externalNetworkStaticRouteConfigurationSerializer(item[\"staticRouteConfiguration\"]),\n };\n}\n\nexport function externalNetworkPropertiesDeserializer(item: any): ExternalNetworkProperties {\n return {\n annotation: item[\"annotation\"],\n networkToNetworkInterconnectId: item[\"networkToNetworkInterconnectId\"],\n importRoutePolicy: !item[\"importRoutePolicy\"]\n ? item[\"importRoutePolicy\"]\n : importRoutePolicyDeserializer(item[\"importRoutePolicy\"]),\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : exportRoutePolicyDeserializer(item[\"exportRoutePolicy\"]),\n peeringOption: item[\"peeringOption\"],\n optionBProperties: !item[\"optionBProperties\"]\n ? item[\"optionBProperties\"]\n : l3OptionBPropertiesDeserializer(item[\"optionBProperties\"]),\n optionAProperties: !item[\"optionAProperties\"]\n ? item[\"optionAProperties\"]\n : externalNetworkPropertiesOptionAPropertiesDeserializer(item[\"optionAProperties\"]),\n staticRouteConfiguration: !item[\"staticRouteConfiguration\"]\n ? item[\"staticRouteConfiguration\"]\n : externalNetworkStaticRouteConfigurationDeserializer(item[\"staticRouteConfiguration\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n networkFabricId: item[\"networkFabricId\"],\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\n/** Peering option list. */\nexport enum KnownPeeringOption {\n /** PeeringOption-OptionA */\n OptionA = \"OptionA\",\n /** PeeringOption-OptionB */\n OptionB = \"OptionB\",\n}\n\n/**\n * Peering option list. \\\n * {@link KnownPeeringOption} can be used interchangeably with PeeringOption,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **OptionA**: PeeringOption-OptionA \\\n * **OptionB**: PeeringOption-OptionB\n */\nexport type PeeringOption = string;\n\n/** Option B configuration. */\nexport interface L3OptionBProperties {\n /** RouteTargets to be applied. This is used for the backward compatibility. */\n importRouteTargets?: string[];\n /** RouteTargets to be applied. This is used for the backward compatibility. */\n exportRouteTargets?: string[];\n /** RouteTargets to be applied. */\n routeTargets?: RouteTargetInformation;\n}\n\nexport function l3OptionBPropertiesSerializer(item: L3OptionBProperties): any {\n return {\n importRouteTargets: !item[\"importRouteTargets\"]\n ? item[\"importRouteTargets\"]\n : item[\"importRouteTargets\"].map((p: any) => {\n return p;\n }),\n exportRouteTargets: !item[\"exportRouteTargets\"]\n ? item[\"exportRouteTargets\"]\n : item[\"exportRouteTargets\"].map((p: any) => {\n return p;\n }),\n routeTargets: !item[\"routeTargets\"]\n ? item[\"routeTargets\"]\n : routeTargetInformationSerializer(item[\"routeTargets\"]),\n };\n}\n\nexport function l3OptionBPropertiesDeserializer(item: any): L3OptionBProperties {\n return {\n importRouteTargets: !item[\"importRouteTargets\"]\n ? item[\"importRouteTargets\"]\n : item[\"importRouteTargets\"].map((p: any) => {\n return p;\n }),\n exportRouteTargets: !item[\"exportRouteTargets\"]\n ? item[\"exportRouteTargets\"]\n : item[\"exportRouteTargets\"].map((p: any) => {\n return p;\n }),\n routeTargets: !item[\"routeTargets\"]\n ? item[\"routeTargets\"]\n : routeTargetInformationDeserializer(item[\"routeTargets\"]),\n };\n}\n\n/** Route Target Configuration. */\nexport interface RouteTargetInformation {\n /** Route Targets to be applied for incoming routes into CE. */\n importIpv4RouteTargets?: string[];\n /** Route Targets to be applied for incoming routes from CE. */\n importIpv6RouteTargets?: string[];\n /** Route Targets to be applied for outgoing routes into CE. */\n exportIpv4RouteTargets?: string[];\n /** Route Targets to be applied for outgoing routes from CE. */\n exportIpv6RouteTargets?: string[];\n}\n\nexport function routeTargetInformationSerializer(item: RouteTargetInformation): any {\n return {\n importIpv4RouteTargets: !item[\"importIpv4RouteTargets\"]\n ? item[\"importIpv4RouteTargets\"]\n : item[\"importIpv4RouteTargets\"].map((p: any) => {\n return p;\n }),\n importIpv6RouteTargets: !item[\"importIpv6RouteTargets\"]\n ? item[\"importIpv6RouteTargets\"]\n : item[\"importIpv6RouteTargets\"].map((p: any) => {\n return p;\n }),\n exportIpv4RouteTargets: !item[\"exportIpv4RouteTargets\"]\n ? item[\"exportIpv4RouteTargets\"]\n : item[\"exportIpv4RouteTargets\"].map((p: any) => {\n return p;\n }),\n exportIpv6RouteTargets: !item[\"exportIpv6RouteTargets\"]\n ? item[\"exportIpv6RouteTargets\"]\n : item[\"exportIpv6RouteTargets\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function routeTargetInformationDeserializer(item: any): RouteTargetInformation {\n return {\n importIpv4RouteTargets: !item[\"importIpv4RouteTargets\"]\n ? item[\"importIpv4RouteTargets\"]\n : item[\"importIpv4RouteTargets\"].map((p: any) => {\n return p;\n }),\n importIpv6RouteTargets: !item[\"importIpv6RouteTargets\"]\n ? item[\"importIpv6RouteTargets\"]\n : item[\"importIpv6RouteTargets\"].map((p: any) => {\n return p;\n }),\n exportIpv4RouteTargets: !item[\"exportIpv4RouteTargets\"]\n ? item[\"exportIpv4RouteTargets\"]\n : item[\"exportIpv4RouteTargets\"].map((p: any) => {\n return p;\n }),\n exportIpv6RouteTargets: !item[\"exportIpv6RouteTargets\"]\n ? item[\"exportIpv6RouteTargets\"]\n : item[\"exportIpv6RouteTargets\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** option A properties object */\nexport interface ExternalNetworkPropertiesOptionAProperties {\n /** IPv4 Address Prefix. */\n primaryIpv4Prefix?: string;\n /** IPv6 Address Prefix. */\n primaryIpv6Prefix?: string;\n /** Secondary IPv4 Address Prefix. */\n secondaryIpv4Prefix?: string;\n /** Secondary IPv6 Address Prefix. */\n secondaryIpv6Prefix?: string;\n /** MTU to use for option A peering. */\n mtu?: number;\n /** Vlan identifier. Example : 501 */\n vlanId: number;\n /** Fabric ASN number. Example 65001 */\n readonly fabricASN?: number;\n /** Peer ASN number.Example : 28 */\n peerASN: number;\n /** BFD configuration properties */\n bfdConfiguration?: BfdConfiguration;\n /** Ingress Acl. ARM resource ID of Access Control Lists. */\n ingressAclId?: string;\n /** BMP Monitor Configuration. */\n bmpConfiguration?: ExternalNetworkBmpProperties;\n /** Egress Acl. ARM resource ID of Access Control Lists. */\n egressAclId?: string;\n /** V4OverV6 BGP Session state */\n v4OverV6BgpSession?: V4OverV6BgpSessionState;\n /** V6OverV4 BGP Session state */\n v6OverV4BgpSession?: V6OverV4BgpSessionState;\n /** Native IPv4 prefix limits configuration */\n nativeIpv4PrefixLimit?: NativeIpv4PrefixLimitProperties;\n /** Native IPv6 prefix limits configuration */\n nativeIpv6PrefixLimit?: NativeIpv6PrefixLimitProperties;\n}\n\nexport function externalNetworkPropertiesOptionAPropertiesSerializer(\n item: ExternalNetworkPropertiesOptionAProperties,\n): any {\n return {\n primaryIpv4Prefix: item[\"primaryIpv4Prefix\"],\n primaryIpv6Prefix: item[\"primaryIpv6Prefix\"],\n secondaryIpv4Prefix: item[\"secondaryIpv4Prefix\"],\n secondaryIpv6Prefix: item[\"secondaryIpv6Prefix\"],\n mtu: item[\"mtu\"],\n vlanId: item[\"vlanId\"],\n peerASN: item[\"peerASN\"],\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdConfigurationSerializer(item[\"bfdConfiguration\"]),\n ingressAclId: item[\"ingressAclId\"],\n bmpConfiguration: !item[\"bmpConfiguration\"]\n ? item[\"bmpConfiguration\"]\n : externalNetworkBmpPropertiesSerializer(item[\"bmpConfiguration\"]),\n egressAclId: item[\"egressAclId\"],\n v4OverV6BgpSession: item[\"v4OverV6BgpSession\"],\n v6OverV4BgpSession: item[\"v6OverV4BgpSession\"],\n nativeIpv4PrefixLimit: !item[\"nativeIpv4PrefixLimit\"]\n ? item[\"nativeIpv4PrefixLimit\"]\n : nativeIpv4PrefixLimitPropertiesSerializer(item[\"nativeIpv4PrefixLimit\"]),\n nativeIpv6PrefixLimit: !item[\"nativeIpv6PrefixLimit\"]\n ? item[\"nativeIpv6PrefixLimit\"]\n : nativeIpv6PrefixLimitPropertiesSerializer(item[\"nativeIpv6PrefixLimit\"]),\n };\n}\n\nexport function externalNetworkPropertiesOptionAPropertiesDeserializer(\n item: any,\n): ExternalNetworkPropertiesOptionAProperties {\n return {\n primaryIpv4Prefix: item[\"primaryIpv4Prefix\"],\n primaryIpv6Prefix: item[\"primaryIpv6Prefix\"],\n secondaryIpv4Prefix: item[\"secondaryIpv4Prefix\"],\n secondaryIpv6Prefix: item[\"secondaryIpv6Prefix\"],\n mtu: item[\"mtu\"],\n vlanId: item[\"vlanId\"],\n fabricASN: item[\"fabricASN\"],\n peerASN: item[\"peerASN\"],\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdConfigurationDeserializer(item[\"bfdConfiguration\"]),\n ingressAclId: item[\"ingressAclId\"],\n bmpConfiguration: !item[\"bmpConfiguration\"]\n ? item[\"bmpConfiguration\"]\n : externalNetworkBmpPropertiesDeserializer(item[\"bmpConfiguration\"]),\n egressAclId: item[\"egressAclId\"],\n v4OverV6BgpSession: item[\"v4OverV6BgpSession\"],\n v6OverV4BgpSession: item[\"v6OverV4BgpSession\"],\n nativeIpv4PrefixLimit: !item[\"nativeIpv4PrefixLimit\"]\n ? item[\"nativeIpv4PrefixLimit\"]\n : nativeIpv4PrefixLimitPropertiesDeserializer(item[\"nativeIpv4PrefixLimit\"]),\n nativeIpv6PrefixLimit: !item[\"nativeIpv6PrefixLimit\"]\n ? item[\"nativeIpv6PrefixLimit\"]\n : nativeIpv6PrefixLimitPropertiesDeserializer(item[\"nativeIpv6PrefixLimit\"]),\n };\n}\n\n/** BGP Monitoring Protocol (BMP) Configuration properties. */\nexport interface ExternalNetworkBmpProperties {\n /** BMP Configuration State. */\n configurationState?: BmpConfigurationState;\n}\n\nexport function externalNetworkBmpPropertiesSerializer(item: ExternalNetworkBmpProperties): any {\n return { configurationState: item[\"configurationState\"] };\n}\n\nexport function externalNetworkBmpPropertiesDeserializer(item: any): ExternalNetworkBmpProperties {\n return {\n configurationState: item[\"configurationState\"],\n };\n}\n\n/** Static Route Configuration properties for ExternalNetwork. */\nexport interface ExternalNetworkStaticRouteConfiguration {\n /** BFD configuration properties */\n bfdConfiguration?: BfdConfiguration;\n /** List of IPv4 Routes. */\n ipv4Routes?: StaticRouteProperties[];\n /** List of IPv6 Routes. */\n ipv6Routes?: StaticRouteProperties[];\n}\n\nexport function externalNetworkStaticRouteConfigurationSerializer(\n item: ExternalNetworkStaticRouteConfiguration,\n): any {\n return {\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdConfigurationSerializer(item[\"bfdConfiguration\"]),\n ipv4Routes: !item[\"ipv4Routes\"]\n ? item[\"ipv4Routes\"]\n : staticRoutePropertiesArraySerializer(item[\"ipv4Routes\"]),\n ipv6Routes: !item[\"ipv6Routes\"]\n ? item[\"ipv6Routes\"]\n : staticRoutePropertiesArraySerializer(item[\"ipv6Routes\"]),\n };\n}\n\nexport function externalNetworkStaticRouteConfigurationDeserializer(\n item: any,\n): ExternalNetworkStaticRouteConfiguration {\n return {\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdConfigurationDeserializer(item[\"bfdConfiguration\"]),\n ipv4Routes: !item[\"ipv4Routes\"]\n ? item[\"ipv4Routes\"]\n : staticRoutePropertiesArrayDeserializer(item[\"ipv4Routes\"]),\n ipv6Routes: !item[\"ipv6Routes\"]\n ? item[\"ipv6Routes\"]\n : staticRoutePropertiesArrayDeserializer(item[\"ipv6Routes\"]),\n };\n}\n\n/** The ExternalNetwork patch resource definition. */\nexport interface ExternalNetworkPatch {\n /** Switch configuration description. */\n annotation?: string;\n /** ARM Resource ID of the networkToNetworkInterconnectId of the ExternalNetwork resource. */\n networkToNetworkInterconnectId?: string;\n /** Import Route Policy either IPv4 or IPv6. */\n importRoutePolicy?: ImportRoutePolicyPatch;\n /** Export Route Policy either IPv4 or IPv6. */\n exportRoutePolicy?: ExportRoutePolicyPatch;\n /** Peering option list. */\n peeringOption?: PeeringOption;\n /** option B properties object */\n optionBProperties?: L3OptionBPatchProperties;\n /** option A properties object */\n optionAProperties?: ExternalNetworkPatchPropertiesOptionAProperties;\n /** Static Route Configuration. */\n staticRouteConfiguration?: ExternalNetworkStaticRoutePatchConfiguration;\n}\n\nexport function externalNetworkPatchSerializer(item: ExternalNetworkPatch): any {\n return {\n properties: areAllPropsUndefined(item, [\n \"annotation\",\n \"networkToNetworkInterconnectId\",\n \"importRoutePolicy\",\n \"exportRoutePolicy\",\n \"peeringOption\",\n \"optionBProperties\",\n \"optionAProperties\",\n \"staticRouteConfiguration\",\n ])\n ? undefined\n : _externalNetworkPatchPropertiesSerializer(item),\n };\n}\n\n/** External Network Patch properties. */\nexport interface ExternalNetworkPatchProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** ARM Resource ID of the networkToNetworkInterconnectId of the ExternalNetwork resource. */\n networkToNetworkInterconnectId?: string;\n /** Import Route Policy either IPv4 or IPv6. */\n importRoutePolicy?: ImportRoutePolicyPatch;\n /** Export Route Policy either IPv4 or IPv6. */\n exportRoutePolicy?: ExportRoutePolicyPatch;\n /** Peering option list. */\n peeringOption?: PeeringOption;\n /** option B properties object */\n optionBProperties?: L3OptionBPatchProperties;\n /** option A properties object */\n optionAProperties?: ExternalNetworkPatchPropertiesOptionAProperties;\n /** Static Route Configuration. */\n staticRouteConfiguration?: ExternalNetworkStaticRoutePatchConfiguration;\n}\n\nexport function externalNetworkPatchPropertiesSerializer(\n item: ExternalNetworkPatchProperties,\n): any {\n return {\n annotation: item[\"annotation\"],\n networkToNetworkInterconnectId: item[\"networkToNetworkInterconnectId\"],\n importRoutePolicy: !item[\"importRoutePolicy\"]\n ? item[\"importRoutePolicy\"]\n : importRoutePolicyPatchSerializer(item[\"importRoutePolicy\"]),\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : exportRoutePolicyPatchSerializer(item[\"exportRoutePolicy\"]),\n peeringOption: item[\"peeringOption\"],\n optionBProperties: !item[\"optionBProperties\"]\n ? item[\"optionBProperties\"]\n : l3OptionBPatchPropertiesSerializer(item[\"optionBProperties\"]),\n optionAProperties: !item[\"optionAProperties\"]\n ? item[\"optionAProperties\"]\n : externalNetworkPatchPropertiesOptionAPropertiesSerializer(item[\"optionAProperties\"]),\n staticRouteConfiguration: !item[\"staticRouteConfiguration\"]\n ? item[\"staticRouteConfiguration\"]\n : externalNetworkStaticRoutePatchConfigurationSerializer(item[\"staticRouteConfiguration\"]),\n };\n}\n\n/** Import Route Policy either IPv4 or IPv6. */\nexport interface ImportRoutePolicyPatch {\n /** ARM resource ID of RoutePolicy. */\n importIpv4RoutePolicyId?: string;\n /** ARM resource ID of RoutePolicy. */\n importIpv6RoutePolicyId?: string;\n}\n\nexport function importRoutePolicyPatchSerializer(item: ImportRoutePolicyPatch): any {\n return {\n importIpv4RoutePolicyId: item[\"importIpv4RoutePolicyId\"],\n importIpv6RoutePolicyId: item[\"importIpv6RoutePolicyId\"],\n };\n}\n\n/** Export Route Policy either IPv4 or IPv6. */\nexport interface ExportRoutePolicyPatch {\n /** ARM resource ID of RoutePolicy. */\n exportIpv4RoutePolicyId?: string;\n /** ARM resource ID of RoutePolicy. */\n exportIpv6RoutePolicyId?: string;\n}\n\nexport function exportRoutePolicyPatchSerializer(item: ExportRoutePolicyPatch): any {\n return {\n exportIpv4RoutePolicyId: item[\"exportIpv4RoutePolicyId\"],\n exportIpv6RoutePolicyId: item[\"exportIpv6RoutePolicyId\"],\n };\n}\n\n/** Option B configuration. */\nexport interface L3OptionBPatchProperties {\n /** RouteTargets to be applied. This is used for the backward compatibility. */\n importRouteTargets?: string[];\n /** RouteTargets to be applied. This is used for the backward compatibility. */\n exportRouteTargets?: string[];\n /** RouteTargets to be applied. */\n routeTargets?: RouteTargetPatchInformation;\n}\n\nexport function l3OptionBPatchPropertiesSerializer(item: L3OptionBPatchProperties): any {\n return {\n importRouteTargets: !item[\"importRouteTargets\"]\n ? item[\"importRouteTargets\"]\n : item[\"importRouteTargets\"].map((p: any) => {\n return p;\n }),\n exportRouteTargets: !item[\"exportRouteTargets\"]\n ? item[\"exportRouteTargets\"]\n : item[\"exportRouteTargets\"].map((p: any) => {\n return p;\n }),\n routeTargets: !item[\"routeTargets\"]\n ? item[\"routeTargets\"]\n : routeTargetPatchInformationSerializer(item[\"routeTargets\"]),\n };\n}\n\n/** Route Target Configuration. */\nexport interface RouteTargetPatchInformation {\n /** Route Targets to be applied for incoming routes into CE. */\n importIpv4RouteTargets?: string[];\n /** Route Targets to be applied for incoming routes from CE. */\n importIpv6RouteTargets?: string[];\n /** Route Targets to be applied for outgoing routes into CE. */\n exportIpv4RouteTargets?: string[];\n /** Route Targets to be applied for outgoing routes from CE. */\n exportIpv6RouteTargets?: string[];\n}\n\nexport function routeTargetPatchInformationSerializer(item: RouteTargetPatchInformation): any {\n return {\n importIpv4RouteTargets: !item[\"importIpv4RouteTargets\"]\n ? item[\"importIpv4RouteTargets\"]\n : item[\"importIpv4RouteTargets\"].map((p: any) => {\n return p;\n }),\n importIpv6RouteTargets: !item[\"importIpv6RouteTargets\"]\n ? item[\"importIpv6RouteTargets\"]\n : item[\"importIpv6RouteTargets\"].map((p: any) => {\n return p;\n }),\n exportIpv4RouteTargets: !item[\"exportIpv4RouteTargets\"]\n ? item[\"exportIpv4RouteTargets\"]\n : item[\"exportIpv4RouteTargets\"].map((p: any) => {\n return p;\n }),\n exportIpv6RouteTargets: !item[\"exportIpv6RouteTargets\"]\n ? item[\"exportIpv6RouteTargets\"]\n : item[\"exportIpv6RouteTargets\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** option A properties object */\nexport interface ExternalNetworkPatchPropertiesOptionAProperties {\n /** IPv4 Address Prefix. */\n primaryIpv4Prefix?: string;\n /** IPv6 Address Prefix. */\n primaryIpv6Prefix?: string;\n /** Secondary IPv4 Address Prefix. */\n secondaryIpv4Prefix?: string;\n /** Secondary IPv6 Address Prefix. */\n secondaryIpv6Prefix?: string;\n /** MTU to use for option A peering. */\n mtu?: number;\n /** Vlan identifier. Example : 501 */\n vlanId?: number;\n /** Fabric ASN number. Example 65001 */\n readonly fabricASN?: number;\n /** Peer ASN number.Example : 28 */\n peerASN?: number;\n /** BFD configuration properties */\n bfdConfiguration?: BfdPatchConfiguration;\n /** Ingress Acl. ARM resource ID of Access Control Lists. */\n ingressAclId?: string;\n /** Egress Acl. ARM resource ID of Access Control Lists. */\n egressAclId?: string;\n /** BMP Monitor Configuration. */\n bmpConfiguration?: ExternalNetworkBmpPatchProperties;\n /** V4OverV6 BGP Session state */\n v4OverV6BgpSession?: V4OverV6BgpSessionState;\n /** V6OverV4 BGP Session state */\n v6OverV4BgpSession?: V6OverV4BgpSessionState;\n /** Native IPv4 prefix limit configuration */\n nativeIpv4PrefixLimit?: NativeIpv4PrefixLimitPatchProperties;\n /** Native IPv6 prefix limit configuration */\n nativeIpv6PrefixLimit?: NativeIpv6PrefixLimitPatchProperties;\n}\n\nexport function externalNetworkPatchPropertiesOptionAPropertiesSerializer(\n item: ExternalNetworkPatchPropertiesOptionAProperties,\n): any {\n return {\n primaryIpv4Prefix: item[\"primaryIpv4Prefix\"],\n primaryIpv6Prefix: item[\"primaryIpv6Prefix\"],\n secondaryIpv4Prefix: item[\"secondaryIpv4Prefix\"],\n secondaryIpv6Prefix: item[\"secondaryIpv6Prefix\"],\n mtu: item[\"mtu\"],\n vlanId: item[\"vlanId\"],\n peerASN: item[\"peerASN\"],\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdPatchConfigurationSerializer(item[\"bfdConfiguration\"]),\n ingressAclId: item[\"ingressAclId\"],\n egressAclId: item[\"egressAclId\"],\n bmpConfiguration: !item[\"bmpConfiguration\"]\n ? item[\"bmpConfiguration\"]\n : externalNetworkBmpPatchPropertiesSerializer(item[\"bmpConfiguration\"]),\n v4OverV6BgpSession: item[\"v4OverV6BgpSession\"],\n v6OverV4BgpSession: item[\"v6OverV4BgpSession\"],\n nativeIpv4PrefixLimit: !item[\"nativeIpv4PrefixLimit\"]\n ? item[\"nativeIpv4PrefixLimit\"]\n : nativeIpv4PrefixLimitPatchPropertiesSerializer(item[\"nativeIpv4PrefixLimit\"]),\n nativeIpv6PrefixLimit: !item[\"nativeIpv6PrefixLimit\"]\n ? item[\"nativeIpv6PrefixLimit\"]\n : nativeIpv6PrefixLimitPatchPropertiesSerializer(item[\"nativeIpv6PrefixLimit\"]),\n };\n}\n\n/** BMP Monitoring Configuration patch properties. */\nexport interface ExternalNetworkBmpPatchProperties {\n /** BMP Configuration State. */\n configurationState?: BmpConfigurationState;\n}\n\nexport function externalNetworkBmpPatchPropertiesSerializer(\n item: ExternalNetworkBmpPatchProperties,\n): any {\n return { configurationState: item[\"configurationState\"] };\n}\n\n/** Static Route Configuration properties for External Network. */\nexport interface ExternalNetworkStaticRoutePatchConfiguration {\n /** BFD configuration properties */\n bfdConfiguration?: BfdPatchConfiguration;\n /** List of IPv4 Routes. */\n ipv4Routes?: StaticRoutePatchProperties[];\n /** List of IPv6 Routes. */\n ipv6Routes?: StaticRoutePatchProperties[];\n}\n\nexport function externalNetworkStaticRoutePatchConfigurationSerializer(\n item: ExternalNetworkStaticRoutePatchConfiguration,\n): any {\n return {\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdPatchConfigurationSerializer(item[\"bfdConfiguration\"]),\n ipv4Routes: !item[\"ipv4Routes\"]\n ? item[\"ipv4Routes\"]\n : staticRoutePatchPropertiesArraySerializer(item[\"ipv4Routes\"]),\n ipv6Routes: !item[\"ipv6Routes\"]\n ? item[\"ipv6Routes\"]\n : staticRoutePatchPropertiesArraySerializer(item[\"ipv6Routes\"]),\n };\n}\n\n/** Paged collection of ExternalNetwork items */\nexport interface _ExternalNetworksList {\n /** The ExternalNetwork items on this page */\n value: ExternalNetwork[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _externalNetworksListDeserializer(item: any): _ExternalNetworksList {\n return {\n value: externalNetworkArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function externalNetworkArraySerializer(result: Array<ExternalNetwork>): any[] {\n return result.map((item) => {\n return externalNetworkSerializer(item);\n });\n}\n\nexport function externalNetworkArrayDeserializer(result: Array<ExternalNetwork>): any[] {\n return result.map((item) => {\n return externalNetworkDeserializer(item);\n });\n}\n\n/** External Network Update Administrative State request */\nexport interface ExternalNetworkUpdateBfdAdministrativeStateRequest {\n /** Route Type that helps to know which bfd we are updating. */\n routeType?: ExternalNetworkRouteType;\n /** Administrative state. */\n administrativeState?: BfdAdministrativeState;\n}\n\nexport function externalNetworkUpdateBfdAdministrativeStateRequestSerializer(\n item: ExternalNetworkUpdateBfdAdministrativeStateRequest,\n): any {\n return { routeType: item[\"routeType\"], administrativeState: item[\"administrativeState\"] };\n}\n\n/** External Network RouteType. */\nexport enum KnownExternalNetworkRouteType {\n /** ExternalNetwork Static. */\n Static = \"Static\",\n /** ExternalNetwork OptionA. */\n OptionA = \"OptionA\",\n}\n\n/**\n * External Network RouteType. \\\n * {@link KnownExternalNetworkRouteType} can be used interchangeably with ExternalNetworkRouteType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Static**: ExternalNetwork Static. \\\n * **OptionA**: ExternalNetwork OptionA.\n */\nexport type ExternalNetworkRouteType = string;\n\n/** External Network Update Administrative State response */\nexport interface ExternalNetworkUpdateBfdAdministrativeStateResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n /** Response properties. */\n properties?: ExternalNetworkUpdateBfdAdministrativeStateResponseProperties;\n}\n\nexport function externalNetworkUpdateBfdAdministrativeStateResponseDeserializer(\n item: any,\n): ExternalNetworkUpdateBfdAdministrativeStateResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : externalNetworkUpdateBfdAdministrativeStateResponsePropertiesDeserializer(\n item[\"properties\"],\n ),\n };\n}\n\n/** Response properties for External Network BFD Administrative State. */\nexport interface ExternalNetworkUpdateBfdAdministrativeStateResponseProperties {\n /** Route Type that helps to know which bfd we are updating. */\n routeType?: ExternalNetworkRouteType;\n /** Administrative state. */\n administrativeState?: BfdAdministrativeState;\n}\n\nexport function externalNetworkUpdateBfdAdministrativeStateResponsePropertiesDeserializer(\n item: any,\n): ExternalNetworkUpdateBfdAdministrativeStateResponseProperties {\n return {\n routeType: item[\"routeType\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\n/** Defines the Neighbor Group. */\nexport interface NeighborGroup extends TrackedResource {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentity;\n /** Switch configuration description. */\n annotation?: string;\n /** An array of destination IPv4 Addresses or IPv6 Addresses. */\n destination: NeighborGroupDestination;\n /** List of NetworkTap IDs where neighbor group is associated. */\n readonly networkTapIds?: string[];\n /** List of Network Tap Rule IDs where neighbor group is associated. */\n readonly networkTapRuleIds?: string[];\n /** Associated Network Fabric Resource IDs */\n readonly networkFabricIds?: string[];\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** The provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n}\n\nexport function neighborGroupSerializer(item: NeighborGroup): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: _neighborGroupPropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentitySerializer(item[\"identity\"]),\n };\n}\n\nexport function neighborGroupDeserializer(item: any): NeighborGroup {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._neighborGroupPropertiesDeserializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityDeserializer(item[\"identity\"]),\n };\n}\n\n/** Neighbor Group Properties defines the properties of the resource. */\nexport interface NeighborGroupProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** An array of destination IPv4 Addresses or IPv6 Addresses. */\n destination: NeighborGroupDestination;\n /** List of NetworkTap IDs where neighbor group is associated. */\n readonly networkTapIds?: string[];\n /** List of Network Tap Rule IDs where neighbor group is associated. */\n readonly networkTapRuleIds?: string[];\n /** Associated Network Fabric Resource IDs */\n readonly networkFabricIds?: string[];\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** The provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n}\n\nexport function neighborGroupPropertiesSerializer(item: NeighborGroupProperties): any {\n return {\n annotation: item[\"annotation\"],\n destination: neighborGroupDestinationSerializer(item[\"destination\"]),\n };\n}\n\nexport function neighborGroupPropertiesDeserializer(item: any): NeighborGroupProperties {\n return {\n annotation: item[\"annotation\"],\n destination: neighborGroupDestinationDeserializer(item[\"destination\"]),\n networkTapIds: !item[\"networkTapIds\"]\n ? item[\"networkTapIds\"]\n : item[\"networkTapIds\"].map((p: any) => {\n return p;\n }),\n networkTapRuleIds: !item[\"networkTapRuleIds\"]\n ? item[\"networkTapRuleIds\"]\n : item[\"networkTapRuleIds\"].map((p: any) => {\n return p;\n }),\n networkFabricIds: !item[\"networkFabricIds\"]\n ? item[\"networkFabricIds\"]\n : item[\"networkFabricIds\"].map((p: any) => {\n return p;\n }),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n provisioningState: item[\"provisioningState\"],\n configurationState: item[\"configurationState\"],\n };\n}\n\n/** An array of destination IPv4 Addresses or IPv6 Addresses. */\nexport interface NeighborGroupDestination {\n /** Array of IPv4 Addresses. */\n ipv4Addresses?: string[];\n /** Array of IPv6 Addresses. */\n ipv6Addresses?: string[];\n}\n\nexport function neighborGroupDestinationSerializer(item: NeighborGroupDestination): any {\n return {\n ipv4Addresses: !item[\"ipv4Addresses\"]\n ? item[\"ipv4Addresses\"]\n : item[\"ipv4Addresses\"].map((p: any) => {\n return p;\n }),\n ipv6Addresses: !item[\"ipv6Addresses\"]\n ? item[\"ipv6Addresses\"]\n : item[\"ipv6Addresses\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function neighborGroupDestinationDeserializer(item: any): NeighborGroupDestination {\n return {\n ipv4Addresses: !item[\"ipv4Addresses\"]\n ? item[\"ipv4Addresses\"]\n : item[\"ipv4Addresses\"].map((p: any) => {\n return p;\n }),\n ipv6Addresses: !item[\"ipv6Addresses\"]\n ? item[\"ipv6Addresses\"]\n : item[\"ipv6Addresses\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** The Neighbor Group Patch definition. */\nexport interface NeighborGroupPatch extends TagsUpdate {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentityPatch;\n /** Switch configuration description. */\n annotation?: string;\n /** An array of destination IPv4 Addresses or IPv6 Addresses. */\n destination?: NeighborGroupDestinationPatch;\n}\n\nexport function neighborGroupPatchSerializer(item: NeighborGroupPatch): any {\n return {\n tags: item[\"tags\"],\n properties: areAllPropsUndefined(item, [\"annotation\", \"destination\"])\n ? undefined\n : _neighborGroupPatchPropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityPatchSerializer(item[\"identity\"]),\n };\n}\n\n/** Neighbor Group Patch properties. */\nexport interface NeighborGroupPatchProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** An array of destination IPv4 Addresses or IPv6 Addresses. */\n destination?: NeighborGroupDestinationPatch;\n}\n\nexport function neighborGroupPatchPropertiesSerializer(item: NeighborGroupPatchProperties): any {\n return {\n annotation: item[\"annotation\"],\n destination: !item[\"destination\"]\n ? item[\"destination\"]\n : neighborGroupDestinationPatchSerializer(item[\"destination\"]),\n };\n}\n\n/** An array of destination IPv4 Addresses or IPv6 Addresses. */\nexport interface NeighborGroupDestinationPatch {\n /** Array of IPv4 Addresses. */\n ipv4Addresses?: string[];\n /** Array of IPv6 Addresses. */\n ipv6Addresses?: string[];\n}\n\nexport function neighborGroupDestinationPatchSerializer(item: NeighborGroupDestinationPatch): any {\n return {\n ipv4Addresses: !item[\"ipv4Addresses\"]\n ? item[\"ipv4Addresses\"]\n : item[\"ipv4Addresses\"].map((p: any) => {\n return p;\n }),\n ipv6Addresses: !item[\"ipv6Addresses\"]\n ? item[\"ipv6Addresses\"]\n : item[\"ipv6Addresses\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Paged collection of NeighborGroup items */\nexport interface _NeighborGroupsListResult {\n /** The NeighborGroup items on this page */\n value: NeighborGroup[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _neighborGroupsListResultDeserializer(item: any): _NeighborGroupsListResult {\n return {\n value: neighborGroupArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function neighborGroupArraySerializer(result: Array<NeighborGroup>): any[] {\n return result.map((item) => {\n return neighborGroupSerializer(item);\n });\n}\n\nexport function neighborGroupArrayDeserializer(result: Array<NeighborGroup>): any[] {\n return result.map((item) => {\n return neighborGroupDeserializer(item);\n });\n}\n\n/** Response for Neighbor Group Resync operation. */\nexport interface NeighborGroupResyncResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n}\n\nexport function neighborGroupResyncResponseDeserializer(item: any): NeighborGroupResyncResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** The NetworkDeviceSku resource definition. */\nexport interface NetworkDeviceSku extends ProxyResource {\n /** Model of the network device. */\n model: string;\n /** Manufacturer of the network device. */\n manufacturer?: string;\n /** List of supported version details of network device. */\n supportedVersions?: SupportedVersionProperties[];\n /** Available roles for the network device. */\n supportedRoleTypes?: NetworkDeviceRoleName[];\n /** List of network device interfaces. */\n interfaces?: DeviceInterfaceProperties[];\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function networkDeviceSkuDeserializer(item: any): NetworkDeviceSku {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._networkDeviceSkuPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Network Device SKU Properties defines the properties of the resource. */\nexport interface NetworkDeviceSkuProperties {\n /** Model of the network device. */\n model: string;\n /** Manufacturer of the network device. */\n manufacturer?: string;\n /** List of supported version details of network device. */\n supportedVersions?: SupportedVersionProperties[];\n /** Available roles for the network device. */\n supportedRoleTypes?: NetworkDeviceRoleName[];\n /** List of network device interfaces. */\n interfaces?: DeviceInterfaceProperties[];\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function networkDeviceSkuPropertiesDeserializer(item: any): NetworkDeviceSkuProperties {\n return {\n model: item[\"model\"],\n manufacturer: item[\"manufacturer\"],\n supportedVersions: !item[\"supportedVersions\"]\n ? item[\"supportedVersions\"]\n : supportedVersionPropertiesArrayDeserializer(item[\"supportedVersions\"]),\n supportedRoleTypes: !item[\"supportedRoleTypes\"]\n ? item[\"supportedRoleTypes\"]\n : item[\"supportedRoleTypes\"].map((p: any) => {\n return p;\n }),\n interfaces: !item[\"interfaces\"]\n ? item[\"interfaces\"]\n : deviceInterfacePropertiesArrayDeserializer(item[\"interfaces\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\nexport function supportedVersionPropertiesArrayDeserializer(\n result: Array<SupportedVersionProperties>,\n): any[] {\n return result.map((item) => {\n return supportedVersionPropertiesDeserializer(item);\n });\n}\n\n/** Supported version details of the network device. */\nexport interface SupportedVersionProperties {\n /** Operating system and firmware combined versions. */\n version?: string;\n /** Operating system version. */\n vendorOsVersion?: string;\n /** Firmware version. */\n vendorFirmwareVersion?: string;\n /** If true newly provisioned Fabric will use this device version by default to bootstrap the network devices for the first time. */\n isDefault?: BooleanEnumProperty;\n}\n\nexport function supportedVersionPropertiesDeserializer(item: any): SupportedVersionProperties {\n return {\n version: item[\"version\"],\n vendorOsVersion: item[\"vendorOsVersion\"],\n vendorFirmwareVersion: item[\"vendorFirmwareVersion\"],\n isDefault: item[\"isDefault\"],\n };\n}\n\n/** Available roles for the network device. */\nexport enum KnownNetworkDeviceRoleName {\n /** NetworkDeviceRoleName-CE(Customer Edge) */\n CE = \"CE\",\n /** NetworkDeviceRoleName-ToR(top of rack) */\n ToR = \"ToR\",\n /** NetworkDeviceRoleName-NPB(Network Packet Broker) */\n NPB = \"NPB\",\n /** NetworkDeviceRoleName-TS(Terminal Server) */\n TS = \"TS\",\n /** NetworkDeviceRoleName-Management */\n Management = \"Management\",\n}\n\n/**\n * Available roles for the network device. \\\n * {@link KnownNetworkDeviceRoleName} can be used interchangeably with NetworkDeviceRoleName,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **CE**: NetworkDeviceRoleName-CE(Customer Edge) \\\n * **ToR**: NetworkDeviceRoleName-ToR(top of rack) \\\n * **NPB**: NetworkDeviceRoleName-NPB(Network Packet Broker) \\\n * **TS**: NetworkDeviceRoleName-TS(Terminal Server) \\\n * **Management**: NetworkDeviceRoleName-Management\n */\nexport type NetworkDeviceRoleName = string;\n\nexport function deviceInterfacePropertiesArrayDeserializer(\n result: Array<DeviceInterfaceProperties>,\n): any[] {\n return result.map((item) => {\n return deviceInterfacePropertiesDeserializer(item);\n });\n}\n\n/** Network device interface properties. */\nexport interface DeviceInterfaceProperties {\n /** Interface identifier. Example: HundredGigE0/0. */\n identifier?: string;\n /** Interface type. */\n interfaceType?: string;\n /** List of supported connector types. */\n supportedConnectorTypes?: SupportedConnectorProperties[];\n}\n\nexport function deviceInterfacePropertiesDeserializer(item: any): DeviceInterfaceProperties {\n return {\n identifier: item[\"identifier\"],\n interfaceType: item[\"interfaceType\"],\n supportedConnectorTypes: !item[\"supportedConnectorTypes\"]\n ? item[\"supportedConnectorTypes\"]\n : supportedConnectorPropertiesArrayDeserializer(item[\"supportedConnectorTypes\"]),\n };\n}\n\nexport function supportedConnectorPropertiesArrayDeserializer(\n result: Array<SupportedConnectorProperties>,\n): any[] {\n return result.map((item) => {\n return supportedConnectorPropertiesDeserializer(item);\n });\n}\n\n/** Supported connector properties. */\nexport interface SupportedConnectorProperties {\n /** Type of connector used. Example: Optical. */\n connectorType?: string;\n /** Maximum speed of the connector in Mbps. */\n maxSpeedInMbps?: number;\n}\n\nexport function supportedConnectorPropertiesDeserializer(item: any): SupportedConnectorProperties {\n return {\n connectorType: item[\"connectorType\"],\n maxSpeedInMbps: item[\"maxSpeedInMbps\"],\n };\n}\n\n/** Paged collection of NetworkDeviceSku items */\nexport interface _NetworkDeviceSkusListResult {\n /** The NetworkDeviceSku items on this page */\n value: NetworkDeviceSku[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _networkDeviceSkusListResultDeserializer(item: any): _NetworkDeviceSkusListResult {\n return {\n value: networkDeviceSkuArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function networkDeviceSkuArrayDeserializer(result: Array<NetworkDeviceSku>): any[] {\n return result.map((item) => {\n return networkDeviceSkuDeserializer(item);\n });\n}\n\n/** The Network Device resource definition. */\nexport interface NetworkDevice extends TrackedResource {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentity;\n /** Switch configuration description. */\n annotation?: string;\n /** The host name of the device. */\n hostName?: string;\n /** Serial number of the device. Format of serial Number - Make;Model;HardwareRevisionId;SerialNumber. */\n serialNumber: string;\n /** The selection of the managed identity to use with this storage account. The identity type must be either system assigned or user assigned. */\n identitySelector?: IdentitySelector;\n /** Current version of the device as defined in SKU. */\n readonly version?: string;\n /** Network Device SKU name. */\n networkDeviceSku?: string;\n /** NetworkDeviceRole is the device role: Example: CE | ToR. */\n readonly networkDeviceRole?: NetworkDeviceRole;\n /** Reference to network rack resource id. */\n readonly networkRackId?: string;\n /** Management IPv4 Address. */\n readonly managementIpv4Address?: string;\n /** Management IPv6 Address. */\n readonly managementIpv6Address?: string;\n /** User configured read-write configuration applied on the network devices. */\n readonly rwDeviceConfig?: string;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n /** Secret rotation status for the device's secrets. */\n readonly secretRotationStatus?: SecretRotationStatus[];\n /** Certificate rotation status for the device's certificates. */\n readonly certificateRotationStatus?: CertificateRotationStatus[];\n /** Associated Network Fabric Resource ID */\n readonly networkFabricId?: string;\n}\n\nexport function networkDeviceSerializer(item: NetworkDevice): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: _networkDevicePropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentitySerializer(item[\"identity\"]),\n };\n}\n\nexport function networkDeviceDeserializer(item: any): NetworkDevice {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._networkDevicePropertiesDeserializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityDeserializer(item[\"identity\"]),\n };\n}\n\n/** Network Device Properties defines the properties of the resource. */\nexport interface NetworkDeviceProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** The host name of the device. */\n hostName?: string;\n /** Serial number of the device. Format of serial Number - Make;Model;HardwareRevisionId;SerialNumber. */\n serialNumber: string;\n /** The selection of the managed identity to use with this storage account. The identity type must be either system assigned or user assigned. */\n identitySelector?: IdentitySelector;\n /** Current version of the device as defined in SKU. */\n readonly version?: string;\n /** Network Device SKU name. */\n networkDeviceSku?: string;\n /** NetworkDeviceRole is the device role: Example: CE | ToR. */\n readonly networkDeviceRole?: NetworkDeviceRole;\n /** Reference to network rack resource id. */\n readonly networkRackId?: string;\n /** Management IPv4 Address. */\n readonly managementIpv4Address?: string;\n /** Management IPv6 Address. */\n readonly managementIpv6Address?: string;\n /** User configured read-write configuration applied on the network devices. */\n readonly rwDeviceConfig?: string;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n /** Secret rotation status for the device's secrets. */\n readonly secretRotationStatus?: SecretRotationStatus[];\n /** Certificate rotation status for the device's certificates. */\n readonly certificateRotationStatus?: CertificateRotationStatus[];\n /** Associated Network Fabric Resource ID */\n readonly networkFabricId?: string;\n}\n\nexport function networkDevicePropertiesSerializer(item: NetworkDeviceProperties): any {\n return {\n annotation: item[\"annotation\"],\n hostName: item[\"hostName\"],\n serialNumber: item[\"serialNumber\"],\n identitySelector: !item[\"identitySelector\"]\n ? item[\"identitySelector\"]\n : identitySelectorSerializer(item[\"identitySelector\"]),\n networkDeviceSku: item[\"networkDeviceSku\"],\n };\n}\n\nexport function networkDevicePropertiesDeserializer(item: any): NetworkDeviceProperties {\n return {\n annotation: item[\"annotation\"],\n hostName: item[\"hostName\"],\n serialNumber: item[\"serialNumber\"],\n identitySelector: !item[\"identitySelector\"]\n ? item[\"identitySelector\"]\n : identitySelectorDeserializer(item[\"identitySelector\"]),\n version: item[\"version\"],\n networkDeviceSku: item[\"networkDeviceSku\"],\n networkDeviceRole: item[\"networkDeviceRole\"],\n networkRackId: item[\"networkRackId\"],\n managementIpv4Address: item[\"managementIpv4Address\"],\n managementIpv6Address: item[\"managementIpv6Address\"],\n rwDeviceConfig: item[\"rwDeviceConfig\"],\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n secretRotationStatus: !item[\"secretRotationStatus\"]\n ? item[\"secretRotationStatus\"]\n : secretRotationStatusArrayDeserializer(item[\"secretRotationStatus\"]),\n certificateRotationStatus: !item[\"certificateRotationStatus\"]\n ? item[\"certificateRotationStatus\"]\n : certificateRotationStatusArrayDeserializer(item[\"certificateRotationStatus\"]),\n networkFabricId: item[\"networkFabricId\"],\n };\n}\n\n/** IdentitySelector represents the selection of a managed identity for use. */\nexport interface IdentitySelector {\n /** The type of managed identity that is being selected. */\n identityType: ManagedServiceIdentitySelectorType;\n /** The user assigned managed identity resource ID to use. Mutually exclusive with a system assigned identity type. */\n userAssignedIdentityResourceId?: string;\n}\n\nexport function identitySelectorSerializer(item: IdentitySelector): any {\n return {\n identityType: item[\"identityType\"],\n userAssignedIdentityResourceId: item[\"userAssignedIdentityResourceId\"],\n };\n}\n\nexport function identitySelectorDeserializer(item: any): IdentitySelector {\n return {\n identityType: item[\"identityType\"],\n userAssignedIdentityResourceId: item[\"userAssignedIdentityResourceId\"],\n };\n}\n\n/** The type of managed identity. */\nexport enum KnownManagedServiceIdentitySelectorType {\n /** System Assigned Identity. */\n SystemAssignedIdentity = \"SystemAssignedIdentity\",\n /** User Assigned Identity. */\n UserAssignedIdentity = \"UserAssignedIdentity\",\n}\n\n/**\n * The type of managed identity. \\\n * {@link KnownManagedServiceIdentitySelectorType} can be used interchangeably with ManagedServiceIdentitySelectorType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **SystemAssignedIdentity**: System Assigned Identity. \\\n * **UserAssignedIdentity**: User Assigned Identity.\n */\nexport type ManagedServiceIdentitySelectorType = string;\n\n/** NetworkDeviceRole is the device role: Example: CE | ToR. */\nexport enum KnownNetworkDeviceRole {\n /** NetworkDeviceRole-CE(Customer Edge) */\n CE = \"CE\",\n /** NetworkDeviceRole-ToR(top of rack) */\n ToR = \"ToR\",\n /** NetworkDeviceRole-NPB(Network Packet Broker) */\n NPB = \"NPB\",\n /** NetworkDeviceRole-TS(Terminal Server) */\n TS = \"TS\",\n /** NetworkDeviceRole-Management */\n Management = \"Management\",\n}\n\n/**\n * NetworkDeviceRole is the device role: Example: CE | ToR. \\\n * {@link KnownNetworkDeviceRole} can be used interchangeably with NetworkDeviceRole,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **CE**: NetworkDeviceRole-CE(Customer Edge) \\\n * **ToR**: NetworkDeviceRole-ToR(top of rack) \\\n * **NPB**: NetworkDeviceRole-NPB(Network Packet Broker) \\\n * **TS**: NetworkDeviceRole-TS(Terminal Server) \\\n * **Management**: NetworkDeviceRole-Management\n */\nexport type NetworkDeviceRole = string;\n\nexport function secretRotationStatusArrayDeserializer(result: Array<SecretRotationStatus>): any[] {\n return result.map((item) => {\n return secretRotationStatusDeserializer(item);\n });\n}\n\n/** Status of a secret rotation for a device (Network Device or Terminal Server). */\nexport interface SecretRotationStatus {\n /** The date and time when the secret was last changed. */\n readonly lastRotationTime?: Date;\n /** Whether the device has been configured with the latest version of the secret. */\n readonly synchronizationStatus?: SynchronizationStatus;\n /** Reference to the currently configured version of the secret in a key vault. */\n readonly secretArchiveReference?: SecretArchiveReference;\n /** Identifies the secret according to its purpose. */\n readonly secretType?: string;\n}\n\nexport function secretRotationStatusDeserializer(item: any): SecretRotationStatus {\n return {\n lastRotationTime: !item[\"lastRotationTime\"]\n ? item[\"lastRotationTime\"]\n : new Date(item[\"lastRotationTime\"]),\n synchronizationStatus: item[\"synchronizationStatus\"],\n secretArchiveReference: !item[\"secretArchiveReference\"]\n ? item[\"secretArchiveReference\"]\n : secretArchiveReferenceDeserializer(item[\"secretArchiveReference\"]),\n secretType: item[\"secretType\"],\n };\n}\n\n/** Synchronization status of a secret or certificate for a device (Network Device or Terminal Server). Whether the device has been configured with the latest version of the secret or certificate. */\nexport enum KnownSynchronizationStatus {\n /** The device has been configured with the latest version of the secret. */\n InSync = \"InSync\",\n /**\n * The device is being reconfigured with the latest version of the secret.\n *\n * While in this state, the secret archive reference may not match the secret configured on the device.\n */\n Synchronizing = \"Synchronizing\",\n /** The device has not been configured with the latest version of the secret. */\n OutOfSync = \"OutOfSync\",\n}\n\n/**\n * Synchronization status of a secret or certificate for a device (Network Device or Terminal Server). Whether the device has been configured with the latest version of the secret or certificate. \\\n * {@link KnownSynchronizationStatus} can be used interchangeably with SynchronizationStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **InSync**: The device has been configured with the latest version of the secret. \\\n * **Synchronizing**: The device is being reconfigured with the latest version of the secret.\n *\n * While in this state, the secret archive reference may not match the secret configured on the device. \\\n * **OutOfSync**: The device has not been configured with the latest version of the secret.\n */\nexport type SynchronizationStatus = string;\n\n/** A reference to a version of a secret in a key vault. */\nexport interface SecretArchiveReference {\n /** A Uniform Resource Identifier (URI) for the secret in the key vault. */\n readonly keyVaultUri?: string;\n /** The resource ID of the key vault containing the secret. */\n readonly keyVaultId?: string;\n /** The name of the secret in the key vault. */\n readonly secretName?: string;\n /** The version of the secret in the key vault. */\n readonly secretVersion?: string;\n}\n\nexport function secretArchiveReferenceDeserializer(item: any): SecretArchiveReference {\n return {\n keyVaultUri: item[\"keyVaultUri\"],\n keyVaultId: item[\"keyVaultId\"],\n secretName: item[\"secretName\"],\n secretVersion: item[\"secretVersion\"],\n };\n}\n\nexport function certificateRotationStatusArrayDeserializer(\n result: Array<CertificateRotationStatus>,\n): any[] {\n return result.map((item) => {\n return certificateRotationStatusDeserializer(item);\n });\n}\n\n/** Status of a certificate rotation for a device (Network Device or Terminal Server). */\nexport interface CertificateRotationStatus {\n /** Time at which the certificate will expire, for certificates with a limited validity period. */\n readonly expireTime?: Date;\n /** The date and time when the certificate was last changed. */\n readonly lastRotationTime?: Date;\n /** Whether the device has been configured with the latest version of the certificate. */\n readonly synchronizationStatus?: SynchronizationStatus;\n /** Reference to the currently configured version of the certificate in a key vault. */\n readonly certificateArchiveReference?: CertificateArchiveReference;\n /** Identifies the certificate according to its purpose. */\n readonly certificateType?: string;\n}\n\nexport function certificateRotationStatusDeserializer(item: any): CertificateRotationStatus {\n return {\n expireTime: !item[\"expireTime\"] ? item[\"expireTime\"] : new Date(item[\"expireTime\"]),\n lastRotationTime: !item[\"lastRotationTime\"]\n ? item[\"lastRotationTime\"]\n : new Date(item[\"lastRotationTime\"]),\n synchronizationStatus: item[\"synchronizationStatus\"],\n certificateArchiveReference: !item[\"certificateArchiveReference\"]\n ? item[\"certificateArchiveReference\"]\n : certificateArchiveReferenceDeserializer(item[\"certificateArchiveReference\"]),\n certificateType: item[\"certificateType\"],\n };\n}\n\n/** A reference to a version of a certificate in a key vault. */\nexport interface CertificateArchiveReference {\n /** A Uniform Resource Identifier (URI) for the certificate in the key vault. */\n readonly keyVaultUri?: string;\n /** The resource ID of the key vault containing the certificate. */\n readonly keyVaultId?: string;\n /** The name of the certificate in the key vault. */\n readonly certificateName?: string;\n /** The version of the certificate in the key vault. */\n readonly certificateVersion?: string;\n}\n\nexport function certificateArchiveReferenceDeserializer(item: any): CertificateArchiveReference {\n return {\n keyVaultUri: item[\"keyVaultUri\"],\n keyVaultId: item[\"keyVaultId\"],\n certificateName: item[\"certificateName\"],\n certificateVersion: item[\"certificateVersion\"],\n };\n}\n\n/** The Network Device Patch Parameters defines the patch parameters of the resource. */\nexport interface NetworkDevicePatchParameters extends TagsUpdate {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentityPatch;\n /** Switch configuration description. */\n annotation?: string;\n /** The host name of the device. */\n hostName?: string;\n /** Serial number of the device. Format of serial Number - Make;Model;HardwareRevisionId;SerialNumber. */\n serialNumber?: string;\n /** The selection of the managed identity to use with this storage account. The identity type must be either system assigned or user assigned. */\n identitySelector?: IdentitySelectorPatch;\n}\n\nexport function networkDevicePatchParametersSerializer(item: NetworkDevicePatchParameters): any {\n return {\n tags: item[\"tags\"],\n properties: areAllPropsUndefined(item, [\n \"annotation\",\n \"hostName\",\n \"serialNumber\",\n \"identitySelector\",\n ])\n ? undefined\n : _networkDevicePatchParametersPropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityPatchSerializer(item[\"identity\"]),\n };\n}\n\n/** Network Device Patch properties. */\nexport interface NetworkDevicePatchParametersProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** The host name of the device. */\n hostName?: string;\n /** Serial number of the device. Format of serial Number - Make;Model;HardwareRevisionId;SerialNumber. */\n serialNumber?: string;\n /** The selection of the managed identity to use with this storage account. The identity type must be either system assigned or user assigned. */\n identitySelector?: IdentitySelectorPatch;\n}\n\nexport function networkDevicePatchParametersPropertiesSerializer(\n item: NetworkDevicePatchParametersProperties,\n): any {\n return {\n annotation: item[\"annotation\"],\n hostName: item[\"hostName\"],\n serialNumber: item[\"serialNumber\"],\n identitySelector: !item[\"identitySelector\"]\n ? item[\"identitySelector\"]\n : identitySelectorPatchSerializer(item[\"identitySelector\"]),\n };\n}\n\n/** IdentitySelector represents the selection of a managed identity for use. */\nexport interface IdentitySelectorPatch {\n /** The type of managed identity that is being selected. */\n identityType?: ManagedServiceIdentitySelectorType;\n /** The user assigned managed identity resource ID to use. Mutually exclusive with a system assigned identity type. */\n userAssignedIdentityResourceId?: string;\n}\n\nexport function identitySelectorPatchSerializer(item: IdentitySelectorPatch): any {\n return {\n identityType: item[\"identityType\"],\n userAssignedIdentityResourceId: item[\"userAssignedIdentityResourceId\"],\n };\n}\n\n/** Paged collection of NetworkDevice items */\nexport interface _NetworkDevicesListResult {\n /** The NetworkDevice items on this page */\n value: NetworkDevice[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _networkDevicesListResultDeserializer(item: any): _NetworkDevicesListResult {\n return {\n value: networkDeviceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function networkDeviceArraySerializer(result: Array<NetworkDevice>): any[] {\n return result.map((item) => {\n return networkDeviceSerializer(item);\n });\n}\n\nexport function networkDeviceArrayDeserializer(result: Array<NetworkDevice>): any[] {\n return result.map((item) => {\n return networkDeviceDeserializer(item);\n });\n}\n\n/** Reboot properties. */\nexport interface RebootProperties {\n /** Type of reboot to be performed. Example: GracefulRebootWithZTP */\n rebootType?: RebootType;\n}\n\nexport function rebootPropertiesSerializer(item: RebootProperties): any {\n return { rebootType: item[\"rebootType\"] };\n}\n\n/** Type of reboot to be performed. Example: GracefulRebootWithZTP */\nexport enum KnownRebootType {\n /** RebootType GracefulRebootWithZTP */\n GracefulRebootWithZTP = \"GracefulRebootWithZTP\",\n /** RebootType GracefulRebootWithoutZTP */\n GracefulRebootWithoutZTP = \"GracefulRebootWithoutZTP\",\n /** RebootType UngracefulRebootWithZTP */\n UngracefulRebootWithZTP = \"UngracefulRebootWithZTP\",\n /** RebootType UngracefulRebootWithoutZTP */\n UngracefulRebootWithoutZTP = \"UngracefulRebootWithoutZTP\",\n}\n\n/**\n * Type of reboot to be performed. Example: GracefulRebootWithZTP \\\n * {@link KnownRebootType} can be used interchangeably with RebootType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **GracefulRebootWithZTP**: RebootType GracefulRebootWithZTP \\\n * **GracefulRebootWithoutZTP**: RebootType GracefulRebootWithoutZTP \\\n * **UngracefulRebootWithZTP**: RebootType UngracefulRebootWithZTP \\\n * **UngracefulRebootWithoutZTP**: RebootType UngracefulRebootWithoutZTP\n */\nexport type RebootType = string;\n\n/** The current status of an refresh configuration async operation. */\nexport interface NetworkDeviceRefreshConfigurationResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n}\n\nexport function networkDeviceRefreshConfigurationResponseDeserializer(\n item: any,\n): NetworkDeviceRefreshConfigurationResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** Update the administrative state on list of resources. */\nexport interface UpdateDeviceAdministrativeState extends EnableDisableOnResources {\n /** Administrative state. */\n state?: DeviceAdministrativeState;\n}\n\nexport function updateDeviceAdministrativeStateSerializer(\n item: UpdateDeviceAdministrativeState,\n): any {\n return {\n resourceIds: !item[\"resourceIds\"]\n ? item[\"resourceIds\"]\n : item[\"resourceIds\"].map((p: any) => {\n return p;\n }),\n state: item[\"state\"],\n };\n}\n\n/** Administrative state. */\nexport enum KnownDeviceAdministrativeState {\n /** Device AdministrativeState-RMA */\n RMA = \"RMA\",\n /** Device AdministrativeState-RMA(Return Material Authorization) Ungraceful */\n UngracefulRMA = \"UngracefulRMA\",\n /** Device AdministrativeState-Resync */\n Resync = \"Resync\",\n /** Device AdministrativeState-GracefulQuarantine */\n GracefulQuarantine = \"GracefulQuarantine\",\n /** Device AdministrativeState-UngracefulQuarantine */\n UngracefulQuarantine = \"UngracefulQuarantine\",\n /** Device AdministrativeState-Quarantine */\n Quarantine = \"Quarantine\",\n /** Device AdministrativeState-UnderMaintenance */\n UnderMaintenance = \"UnderMaintenance\",\n /** Device AdministrativeState-Enable */\n Enable = \"Enable\",\n /** Device AdministrativeState-Disable */\n Disable = \"Disable\",\n}\n\n/**\n * Administrative state. \\\n * {@link KnownDeviceAdministrativeState} can be used interchangeably with DeviceAdministrativeState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **RMA**: Device AdministrativeState-RMA \\\n * **UngracefulRMA**: Device AdministrativeState-RMA(Return Material Authorization) Ungraceful \\\n * **Resync**: Device AdministrativeState-Resync \\\n * **GracefulQuarantine**: Device AdministrativeState-GracefulQuarantine \\\n * **UngracefulQuarantine**: Device AdministrativeState-UngracefulQuarantine \\\n * **Quarantine**: Device AdministrativeState-Quarantine \\\n * **UnderMaintenance**: Device AdministrativeState-UnderMaintenance \\\n * **Enable**: Device AdministrativeState-Enable \\\n * **Disable**: Device AdministrativeState-Disable\n */\nexport type DeviceAdministrativeState = string;\n\n/** Network Device Administrative State Update Response. */\nexport interface NetworkDeviceUpdateAdministrativeStateResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n}\n\nexport function networkDeviceUpdateAdministrativeStateResponseDeserializer(\n item: any,\n): NetworkDeviceUpdateAdministrativeStateResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** NetworkDevice Upgrade Request Properties. */\nexport interface NetworkDeviceUpgradeRequest {\n /** Version to which the device needs to be upgraded. */\n version: string;\n /** URL to the file containing Read-write configuration to be applied on the device during upgrade. */\n rwDeviceConfigUrl?: string;\n}\n\nexport function networkDeviceUpgradeRequestSerializer(item: NetworkDeviceUpgradeRequest): any {\n return { version: item[\"version\"], rwDeviceConfigUrl: item[\"rwDeviceConfigUrl\"] };\n}\n\n/** Network Device Upgrade Response. */\nexport interface NetworkDeviceUpgradeResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n}\n\nexport function networkDeviceUpgradeResponseDeserializer(item: any): NetworkDeviceUpgradeResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** Provide the RO command */\nexport interface DeviceRoCommand {\n /** Specify the command. */\n command?: string;\n}\n\nexport function deviceRoCommandSerializer(item: DeviceRoCommand): any {\n return { command: item[\"command\"] };\n}\n\n/** The current status of an async operation. */\nexport interface CommonPostActionResponseForDeviceROCommandsOperationStatusResult extends CommonErrorResponse {\n /** The end time of the operation. */\n readonly endTime?: Date;\n /** Fully qualified ID for the async operation. */\n readonly id?: string;\n /** Name of the async operation. */\n readonly name?: string;\n /** The additional properties of the operation status result. */\n properties?: CommonPostActionResponseForDeviceROCommands;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n /** The start time of the operation. */\n readonly startTime?: Date;\n /** Operation status. */\n status: string;\n}\n\nexport function commonPostActionResponseForDeviceROCommandsOperationStatusResultDeserializer(\n item: any,\n): CommonPostActionResponseForDeviceROCommandsOperationStatusResult {\n return {\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n id: item[\"id\"],\n name: item[\"name\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : commonPostActionResponseForDeviceROCommandsDeserializer(item[\"properties\"]),\n resourceId: item[\"resourceId\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n status: item[\"status\"],\n };\n}\n\n/** Common response for device Ro Commands. */\nexport interface CommonPostActionResponseForDeviceROCommands {\n /** Gets the configuration state. */\n readonly configurationState?: ConfigurationState;\n /** Predefined link containing Device RO Command output. */\n outputUrl?: string;\n /** Device RO command Response limited to 4000 characters. */\n deviceConfigurationPreview?: string;\n}\n\nexport function commonPostActionResponseForDeviceROCommandsDeserializer(\n item: any,\n): CommonPostActionResponseForDeviceROCommands {\n return {\n configurationState: item[\"configurationState\"],\n outputUrl: item[\"outputUrl\"],\n deviceConfigurationPreview: item[\"deviceConfigurationPreview\"],\n };\n}\n\n/** Provide the Rw command */\nexport interface DeviceRwCommand {\n /** Specify the command. */\n command?: string;\n /** Specify the commands file URL. */\n commandUrl?: string;\n}\n\nexport function deviceRwCommandSerializer(item: DeviceRwCommand): any {\n return { command: item[\"command\"], commandUrl: item[\"commandUrl\"] };\n}\n\n/** Response body for a RunRwCommand request on a Network Device. */\nexport interface NetworkDeviceRunRwCommandResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n /** Network Device Run Rw Command Response properties. */\n properties?: NetworkDeviceRwCommandResponseProperties;\n}\n\nexport function networkDeviceRunRwCommandResponseDeserializer(\n item: any,\n): NetworkDeviceRunRwCommandResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : networkDeviceRwCommandResponsePropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Network Device Resource defines the properties of the resource. */\nexport interface NetworkDeviceRwCommandResponseProperties {\n /** Gets the configuration state. */\n readonly configurationState?: ConfigurationState;\n /** Predefined link containing Device Rw Command output. */\n outputUrl?: string;\n}\n\nexport function networkDeviceRwCommandResponsePropertiesDeserializer(\n item: any,\n): NetworkDeviceRwCommandResponseProperties {\n return {\n configurationState: item[\"configurationState\"],\n outputUrl: item[\"outputUrl\"],\n };\n}\n\n/** Response body for a ResyncPasswords request on a Network Device. */\nexport interface NetworkDeviceResyncPasswordsResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n}\n\nexport function networkDeviceResyncPasswordsResponseDeserializer(\n item: any,\n): NetworkDeviceResyncPasswordsResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** Response body for a ResyncCertificates request on a Network Fabric. */\nexport interface NetworkFabricResyncCertificatesResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n}\n\nexport function networkFabricResyncCertificatesResponseDeserializer(\n item: any,\n): NetworkFabricResyncCertificatesResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** Defines the NetworkInterface resource. */\nexport interface NetworkInterface extends ProxyResource {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentity;\n /** Switch configuration description. */\n annotation?: string;\n /** Physical Identifier of the network interface. */\n readonly physicalIdentifier?: string;\n /** The ARM resource id of the interface or compute server its connected to. */\n readonly connectedTo?: string;\n /** The Interface Type. Example: Management/Data */\n readonly interfaceType?: InterfaceType;\n /** IPv4Address of the interface. */\n readonly ipv4Address?: string;\n /** IPv6Address of the interface. */\n readonly ipv6Address?: string;\n /** Description of the interface. */\n readonly description?: string;\n /** Additional description of the interface. */\n additionalDescription?: string;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Associated Network Fabric Resource ID */\n readonly networkFabricId?: string;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n}\n\nexport function networkInterfaceSerializer(item: NetworkInterface): any {\n return {\n properties: _networkInterfacePropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentitySerializer(item[\"identity\"]),\n };\n}\n\nexport function networkInterfaceDeserializer(item: any): NetworkInterface {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._networkInterfacePropertiesDeserializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityDeserializer(item[\"identity\"]),\n };\n}\n\n/** Network Interface Properties defines the properties of the resource. */\nexport interface NetworkInterfaceProperties extends AnnotationResource {\n /** Physical Identifier of the network interface. */\n readonly physicalIdentifier?: string;\n /** The ARM resource id of the interface or compute server its connected to. */\n readonly connectedTo?: string;\n /** The Interface Type. Example: Management/Data */\n readonly interfaceType?: InterfaceType;\n /** IPv4Address of the interface. */\n readonly ipv4Address?: string;\n /** IPv6Address of the interface. */\n readonly ipv6Address?: string;\n /** Description of the interface. */\n readonly description?: string;\n /** Additional description of the interface. */\n additionalDescription?: string;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Associated Network Fabric Resource ID */\n readonly networkFabricId?: string;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n}\n\nexport function networkInterfacePropertiesSerializer(item: NetworkInterfaceProperties): any {\n return { annotation: item[\"annotation\"], additionalDescription: item[\"additionalDescription\"] };\n}\n\nexport function networkInterfacePropertiesDeserializer(item: any): NetworkInterfaceProperties {\n return {\n annotation: item[\"annotation\"],\n physicalIdentifier: item[\"physicalIdentifier\"],\n connectedTo: item[\"connectedTo\"],\n interfaceType: item[\"interfaceType\"],\n ipv4Address: item[\"ipv4Address\"],\n ipv6Address: item[\"ipv6Address\"],\n description: item[\"description\"],\n additionalDescription: item[\"additionalDescription\"],\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n networkFabricId: item[\"networkFabricId\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n configurationState: item[\"configurationState\"],\n };\n}\n\n/** The Interface Type. Example: Management/Data */\nexport enum KnownInterfaceType {\n /** InterfaceType-Management */\n Management = \"Management\",\n /** InterfaceType-Data */\n Data = \"Data\",\n}\n\n/**\n * The Interface Type. Example: Management/Data \\\n * {@link KnownInterfaceType} can be used interchangeably with InterfaceType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Management**: InterfaceType-Management \\\n * **Data**: InterfaceType-Data\n */\nexport type InterfaceType = string;\n\n/** The NetworkInterfacePatch resource definition. */\nexport interface NetworkInterfacePatch {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentityPatch;\n /** Switch configuration description. */\n annotation?: string;\n /** Additional description of the interface. */\n additionalDescription?: string;\n}\n\nexport function networkInterfacePatchSerializer(item: NetworkInterfacePatch): any {\n return {\n properties: areAllPropsUndefined(item, [\"annotation\", \"additionalDescription\"])\n ? undefined\n : _networkInterfacePatchPropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityPatchSerializer(item[\"identity\"]),\n };\n}\n\n/** Network Interface Patch properties. */\nexport interface NetworkInterfacePatchProperties extends AnnotationResource {\n /** Additional description of the interface. */\n additionalDescription?: string;\n}\n\nexport function networkInterfacePatchPropertiesSerializer(\n item: NetworkInterfacePatchProperties,\n): any {\n return { annotation: item[\"annotation\"], additionalDescription: item[\"additionalDescription\"] };\n}\n\n/** Paged collection of NetworkInterface items */\nexport interface _NetworkInterfacesList {\n /** The NetworkInterface items on this page */\n value: NetworkInterface[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _networkInterfacesListDeserializer(item: any): _NetworkInterfacesList {\n return {\n value: networkInterfaceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function networkInterfaceArraySerializer(result: Array<NetworkInterface>): any[] {\n return result.map((item) => {\n return networkInterfaceSerializer(item);\n });\n}\n\nexport function networkInterfaceArrayDeserializer(result: Array<NetworkInterface>): any[] {\n return result.map((item) => {\n return networkInterfaceDeserializer(item);\n });\n}\n\n/** The Network Fabric Controller resource definition. */\nexport interface NetworkFabricController extends TrackedResource {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentity;\n /** Switch configuration description. */\n annotation?: string;\n /** As part of an update, the Infrastructure ExpressRoute CircuitID should be provided to create and Provision a NFC. This Express route is dedicated for Infrastructure services. (This is a Mandatory attribute) */\n infrastructureExpressRouteConnections?: ExpressRouteConnectionInformation[];\n /** As part of an update, the workload ExpressRoute CircuitID should be provided to create and Provision a NFC. This Express route is dedicated for Workload services. (This is a Mandatory attribute). */\n workloadExpressRouteConnections?: ExpressRouteConnectionInformation[];\n /** InfrastructureServices IP ranges. */\n readonly infrastructureServices?: ControllerServices;\n /** WorkloadServices IP ranges. */\n readonly workloadServices?: ControllerServices;\n /** Managed Resource Group configuration properties. */\n managedResourceGroupConfiguration?: ManagedResourceGroupConfiguration;\n /** The NF-ID will be an input parameter used by the NF to link and get associated with the parent NFC Service. */\n readonly networkFabricIds?: string[];\n /** A workload management network is required for all the tenant (workload) traffic. This traffic is only dedicated for Tenant workloads which are required to access internet or any other MSFT/Public endpoints. */\n isWorkloadManagementNetworkEnabled?: IsWorkloadManagementNetworkEnabled;\n /** List of tenant InternetGateway resource IDs */\n readonly tenantInternetGatewayIds?: string[];\n /** IPv4 Network Fabric Controller Address Space. */\n ipv4AddressSpace?: string;\n /** IPv6 Network Fabric Controller Address Space. */\n ipv6AddressSpace?: string;\n /** Network Fabric Controller SKU. */\n nfcSku?: NfcSku;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Provides you the latest status of the NFC service, whether it is Accepted, updating, Succeeded or Failed. During this process, the states keep changing based on the status of NFC provisioning. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function networkFabricControllerSerializer(item: NetworkFabricController): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: _networkFabricControllerPropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentitySerializer(item[\"identity\"]),\n };\n}\n\nexport function networkFabricControllerDeserializer(item: any): NetworkFabricController {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._networkFabricControllerPropertiesDeserializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityDeserializer(item[\"identity\"]),\n };\n}\n\n/** NetworkFabricControllerProperties defines the resource properties. */\nexport interface NetworkFabricControllerProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** As part of an update, the Infrastructure ExpressRoute CircuitID should be provided to create and Provision a NFC. This Express route is dedicated for Infrastructure services. (This is a Mandatory attribute) */\n infrastructureExpressRouteConnections?: ExpressRouteConnectionInformation[];\n /** As part of an update, the workload ExpressRoute CircuitID should be provided to create and Provision a NFC. This Express route is dedicated for Workload services. (This is a Mandatory attribute). */\n workloadExpressRouteConnections?: ExpressRouteConnectionInformation[];\n /** InfrastructureServices IP ranges. */\n readonly infrastructureServices?: ControllerServices;\n /** WorkloadServices IP ranges. */\n readonly workloadServices?: ControllerServices;\n /** Managed Resource Group configuration properties. */\n managedResourceGroupConfiguration?: ManagedResourceGroupConfiguration;\n /** The NF-ID will be an input parameter used by the NF to link and get associated with the parent NFC Service. */\n readonly networkFabricIds?: string[];\n /** A workload management network is required for all the tenant (workload) traffic. This traffic is only dedicated for Tenant workloads which are required to access internet or any other MSFT/Public endpoints. */\n isWorkloadManagementNetworkEnabled?: IsWorkloadManagementNetworkEnabled;\n /** List of tenant InternetGateway resource IDs */\n readonly tenantInternetGatewayIds?: string[];\n /** IPv4 Network Fabric Controller Address Space. */\n ipv4AddressSpace?: string;\n /** IPv6 Network Fabric Controller Address Space. */\n ipv6AddressSpace?: string;\n /** Network Fabric Controller SKU. */\n nfcSku?: NfcSku;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Provides you the latest status of the NFC service, whether it is Accepted, updating, Succeeded or Failed. During this process, the states keep changing based on the status of NFC provisioning. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function networkFabricControllerPropertiesSerializer(\n item: NetworkFabricControllerProperties,\n): any {\n return {\n annotation: item[\"annotation\"],\n infrastructureExpressRouteConnections: !item[\"infrastructureExpressRouteConnections\"]\n ? item[\"infrastructureExpressRouteConnections\"]\n : expressRouteConnectionInformationArraySerializer(\n item[\"infrastructureExpressRouteConnections\"],\n ),\n workloadExpressRouteConnections: !item[\"workloadExpressRouteConnections\"]\n ? item[\"workloadExpressRouteConnections\"]\n : expressRouteConnectionInformationArraySerializer(item[\"workloadExpressRouteConnections\"]),\n managedResourceGroupConfiguration: !item[\"managedResourceGroupConfiguration\"]\n ? item[\"managedResourceGroupConfiguration\"]\n : managedResourceGroupConfigurationSerializer(item[\"managedResourceGroupConfiguration\"]),\n isWorkloadManagementNetworkEnabled: item[\"isWorkloadManagementNetworkEnabled\"],\n ipv4AddressSpace: item[\"ipv4AddressSpace\"],\n ipv6AddressSpace: item[\"ipv6AddressSpace\"],\n nfcSku: item[\"nfcSku\"],\n };\n}\n\nexport function networkFabricControllerPropertiesDeserializer(\n item: any,\n): NetworkFabricControllerProperties {\n return {\n annotation: item[\"annotation\"],\n infrastructureExpressRouteConnections: !item[\"infrastructureExpressRouteConnections\"]\n ? item[\"infrastructureExpressRouteConnections\"]\n : expressRouteConnectionInformationArrayDeserializer(\n item[\"infrastructureExpressRouteConnections\"],\n ),\n workloadExpressRouteConnections: !item[\"workloadExpressRouteConnections\"]\n ? item[\"workloadExpressRouteConnections\"]\n : expressRouteConnectionInformationArrayDeserializer(item[\"workloadExpressRouteConnections\"]),\n infrastructureServices: !item[\"infrastructureServices\"]\n ? item[\"infrastructureServices\"]\n : controllerServicesDeserializer(item[\"infrastructureServices\"]),\n workloadServices: !item[\"workloadServices\"]\n ? item[\"workloadServices\"]\n : controllerServicesDeserializer(item[\"workloadServices\"]),\n managedResourceGroupConfiguration: !item[\"managedResourceGroupConfiguration\"]\n ? item[\"managedResourceGroupConfiguration\"]\n : managedResourceGroupConfigurationDeserializer(item[\"managedResourceGroupConfiguration\"]),\n networkFabricIds: !item[\"networkFabricIds\"]\n ? item[\"networkFabricIds\"]\n : item[\"networkFabricIds\"].map((p: any) => {\n return p;\n }),\n isWorkloadManagementNetworkEnabled: item[\"isWorkloadManagementNetworkEnabled\"],\n tenantInternetGatewayIds: !item[\"tenantInternetGatewayIds\"]\n ? item[\"tenantInternetGatewayIds\"]\n : item[\"tenantInternetGatewayIds\"].map((p: any) => {\n return p;\n }),\n ipv4AddressSpace: item[\"ipv4AddressSpace\"],\n ipv6AddressSpace: item[\"ipv6AddressSpace\"],\n nfcSku: item[\"nfcSku\"],\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\nexport function expressRouteConnectionInformationArraySerializer(\n result: Array<ExpressRouteConnectionInformation>,\n): any[] {\n return result.map((item) => {\n return expressRouteConnectionInformationSerializer(item);\n });\n}\n\nexport function expressRouteConnectionInformationArrayDeserializer(\n result: Array<ExpressRouteConnectionInformation>,\n): any[] {\n return result.map((item) => {\n return expressRouteConnectionInformationDeserializer(item);\n });\n}\n\n/** The ExpressRoute circuit ID and the Auth Key are required for you to successfully deploy NFC service. */\nexport interface ExpressRouteConnectionInformation {\n /** The express route circuit Azure resource ID, must be of type Microsoft.Network/expressRouteCircuits/circuitName. The ExpressRoute Circuit is a mandatory attribute. */\n expressRouteCircuitId: string;\n /** Authorization key for the circuit, must be of type Microsoft.Network/expressRouteCircuits/authorizations. The Auth Key is a mandatory attribute. */\n expressRouteAuthorizationKey: string;\n}\n\nexport function expressRouteConnectionInformationSerializer(\n item: ExpressRouteConnectionInformation,\n): any {\n return {\n expressRouteCircuitId: item[\"expressRouteCircuitId\"],\n expressRouteAuthorizationKey: item[\"expressRouteAuthorizationKey\"],\n };\n}\n\nexport function expressRouteConnectionInformationDeserializer(\n item: any,\n): ExpressRouteConnectionInformation {\n return {\n expressRouteCircuitId: item[\"expressRouteCircuitId\"],\n expressRouteAuthorizationKey: item[\"expressRouteAuthorizationKey\"],\n };\n}\n\n/** Network Fabric Controller services. */\nexport interface ControllerServices {\n /** The IPv4 Address space is optional, if the value is not defined at the time of NFC creation, then the default value 10.0.0.0/19 is considered. The IPV4 address subnet is an optional attribute. */\n ipv4AddressSpaces?: string[];\n /** The IPv6 is not supported right now. */\n ipv6AddressSpaces?: string[];\n}\n\nexport function controllerServicesDeserializer(item: any): ControllerServices {\n return {\n ipv4AddressSpaces: !item[\"ipv4AddressSpaces\"]\n ? item[\"ipv4AddressSpaces\"]\n : item[\"ipv4AddressSpaces\"].map((p: any) => {\n return p;\n }),\n ipv6AddressSpaces: !item[\"ipv6AddressSpaces\"]\n ? item[\"ipv6AddressSpaces\"]\n : item[\"ipv6AddressSpaces\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Managed Resource Group configuration properties. */\nexport interface ManagedResourceGroupConfiguration {\n /** The NFC service will be hosted in a Managed resource group. */\n name?: string;\n /** Managed resource group location. */\n location?: string;\n}\n\nexport function managedResourceGroupConfigurationSerializer(\n item: ManagedResourceGroupConfiguration,\n): any {\n return { name: item[\"name\"], location: item[\"location\"] };\n}\n\nexport function managedResourceGroupConfigurationDeserializer(\n item: any,\n): ManagedResourceGroupConfiguration {\n return {\n name: item[\"name\"],\n location: item[\"location\"],\n };\n}\n\n/** A workload management network is required for all the tenant (workload) traffic. This traffic is only dedicated for Tenant workloads which are required to access internet or any other MSFT/Public endpoints. */\nexport enum KnownIsWorkloadManagementNetworkEnabled {\n /** IsWorkloadManagementNetworkEnabled-True */\n True = \"True\",\n /** IsWorkloadManagementNetworkEnabled-False */\n False = \"False\",\n}\n\n/**\n * A workload management network is required for all the tenant (workload) traffic. This traffic is only dedicated for Tenant workloads which are required to access internet or any other MSFT/Public endpoints. \\\n * {@link KnownIsWorkloadManagementNetworkEnabled} can be used interchangeably with IsWorkloadManagementNetworkEnabled,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **True**: IsWorkloadManagementNetworkEnabled-True \\\n * **False**: IsWorkloadManagementNetworkEnabled-False\n */\nexport type IsWorkloadManagementNetworkEnabled = string;\n\n/** Network Fabric Controller SKU. */\nexport enum KnownNfcSku {\n /** NfcSku-Basic */\n Basic = \"Basic\",\n /** NfcSku-Standard */\n Standard = \"Standard\",\n /** NfcSku-HighPerformance */\n HighPerformance = \"HighPerformance\",\n}\n\n/**\n * Network Fabric Controller SKU. \\\n * {@link KnownNfcSku} can be used interchangeably with NfcSku,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Basic**: NfcSku-Basic \\\n * **Standard**: NfcSku-Standard \\\n * **HighPerformance**: NfcSku-HighPerformance\n */\nexport type NfcSku = string;\n\n/** The Network Fabric Controller Patch payload definition. */\nexport interface NetworkFabricControllerPatch extends TagsUpdate {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentityPatch;\n /** As part of an update, the Infrastructure ExpressRoute CircuitID should be provided to create and Provision a NFC. This Express route is dedicated for Infrastructure services. (This is a Mandatory attribute) */\n infrastructureExpressRouteConnections?: ExpressRouteConnectionInformation[];\n /** As part of an update, the workload ExpressRoute CircuitID should be provided to create and Provision a NFC. This Express route is dedicated for Workload services. (This is a Mandatory attribute). */\n workloadExpressRouteConnections?: ExpressRouteConnectionInformation[];\n}\n\nexport function networkFabricControllerPatchSerializer(item: NetworkFabricControllerPatch): any {\n return {\n tags: item[\"tags\"],\n properties: areAllPropsUndefined(item, [\n \"infrastructureExpressRouteConnections\",\n \"workloadExpressRouteConnections\",\n ])\n ? undefined\n : _networkFabricControllerPatchPropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityPatchSerializer(item[\"identity\"]),\n };\n}\n\n/** Network Fabric Controller patch properties. */\nexport interface NetworkFabricControllerPatchProperties {\n /** As part of an update, the Infrastructure ExpressRoute CircuitID should be provided to create and Provision a NFC. This Express route is dedicated for Infrastructure services. (This is a Mandatory attribute) */\n infrastructureExpressRouteConnections?: ExpressRouteConnectionInformation[];\n /** As part of an update, the workload ExpressRoute CircuitID should be provided to create and Provision a NFC. This Express route is dedicated for Workload services. (This is a Mandatory attribute). */\n workloadExpressRouteConnections?: ExpressRouteConnectionInformation[];\n}\n\nexport function networkFabricControllerPatchPropertiesSerializer(\n item: NetworkFabricControllerPatchProperties,\n): any {\n return {\n infrastructureExpressRouteConnections: !item[\"infrastructureExpressRouteConnections\"]\n ? item[\"infrastructureExpressRouteConnections\"]\n : expressRouteConnectionInformationArraySerializer(\n item[\"infrastructureExpressRouteConnections\"],\n ),\n workloadExpressRouteConnections: !item[\"workloadExpressRouteConnections\"]\n ? item[\"workloadExpressRouteConnections\"]\n : expressRouteConnectionInformationArraySerializer(item[\"workloadExpressRouteConnections\"]),\n };\n}\n\n/** Paged collection of NetworkFabricController items */\nexport interface _NetworkFabricControllersListResult {\n /** The NetworkFabricController items on this page */\n value: NetworkFabricController[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _networkFabricControllersListResultDeserializer(\n item: any,\n): _NetworkFabricControllersListResult {\n return {\n value: networkFabricControllerArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function networkFabricControllerArraySerializer(\n result: Array<NetworkFabricController>,\n): any[] {\n return result.map((item) => {\n return networkFabricControllerSerializer(item);\n });\n}\n\nexport function networkFabricControllerArrayDeserializer(\n result: Array<NetworkFabricController>,\n): any[] {\n return result.map((item) => {\n return networkFabricControllerDeserializer(item);\n });\n}\n\n/** The Network Fabric SKU resource definition. */\nexport interface NetworkFabricSku extends ProxyResource {\n /** Type of Network Fabric SKU. */\n readonly typePropertiesType?: FabricSkuType;\n /** Maximum number of compute racks available for this Network Fabric SKU. The value of max count racks is 4 for 4 rack SKU and 8 for 8 rack SKU. */\n maxComputeRacks?: number;\n /** Maximum number of servers available for this Network Fabric SKU. */\n maximumServerCount?: number;\n /** List of supported Network Fabric SKU versions. */\n readonly supportedVersions?: string[];\n /** URL providing detailed configuration of the fabric SKU. */\n readonly details?: string;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function networkFabricSkuDeserializer(item: any): NetworkFabricSku {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._networkFabricSkuPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Network Fabric SKU Properties define properties of the resource. */\nexport interface NetworkFabricSkuProperties {\n /** Type of Network Fabric SKU. */\n readonly type?: FabricSkuType;\n /** Maximum number of compute racks available for this Network Fabric SKU. The value of max count racks is 4 for 4 rack SKU and 8 for 8 rack SKU. */\n maxComputeRacks?: number;\n /** Maximum number of servers available for this Network Fabric SKU. */\n maximumServerCount?: number;\n /** List of supported Network Fabric SKU versions. */\n readonly supportedVersions?: string[];\n /** URL providing detailed configuration of the fabric SKU. */\n readonly details?: string;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function networkFabricSkuPropertiesDeserializer(item: any): NetworkFabricSkuProperties {\n return {\n type: item[\"type\"],\n maxComputeRacks: item[\"maxComputeRacks\"],\n maximumServerCount: item[\"maximumServerCount\"],\n supportedVersions: !item[\"supportedVersions\"]\n ? item[\"supportedVersions\"]\n : item[\"supportedVersions\"].map((p: any) => {\n return p;\n }),\n details: item[\"details\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** Type of Network Fabric SKU. */\nexport enum KnownFabricSkuType {\n /** FabricSkuType-SingleRack */\n SingleRack = \"SingleRack\",\n /** FabricSkuType-MultiRack */\n MultiRack = \"MultiRack\",\n}\n\n/**\n * Type of Network Fabric SKU. \\\n * {@link KnownFabricSkuType} can be used interchangeably with FabricSkuType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **SingleRack**: FabricSkuType-SingleRack \\\n * **MultiRack**: FabricSkuType-MultiRack\n */\nexport type FabricSkuType = string;\n\n/** Paged collection of NetworkFabricSku items */\nexport interface _NetworkFabricSkusListResult {\n /** The NetworkFabricSku items on this page */\n value: NetworkFabricSku[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _networkFabricSkusListResultDeserializer(item: any): _NetworkFabricSkusListResult {\n return {\n value: networkFabricSkuArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function networkFabricSkuArrayDeserializer(result: Array<NetworkFabricSku>): any[] {\n return result.map((item) => {\n return networkFabricSkuDeserializer(item);\n });\n}\n\n/** The Network Fabric resource definition. */\nexport interface NetworkFabric extends TrackedResource {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentity;\n /** Switch configuration description. */\n annotation?: string;\n /** Supported Network Fabric SKU.Example: Compute / Aggregate racks. Once the user chooses a particular SKU, only supported racks can be added to the Network Fabric. The SKU determines whether it is a single / multi rack Network Fabric. */\n networkFabricSku: string;\n /** The version of Network Fabric. */\n fabricVersion?: string;\n /** Array of router IDs. */\n readonly routerIds?: string[];\n /** Bring your own storage account configurations for Network Fabric. */\n storageAccountConfiguration?: StorageAccountConfiguration;\n /** Network Fabric Lock details */\n readonly fabricLocks?: FabricLockProperties[];\n /** Azure resource ID for the NetworkFabricController the NetworkFabric belongs. */\n networkFabricControllerId: string;\n /** Number of compute racks associated to Network Fabric. */\n rackCount?: number;\n /** Number of servers.Possible values are from 1-16. */\n serverCountPerRack: number;\n /** IPv4Prefix for Management Network. Example: 10.1.0.0/19. */\n ipv4Prefix: string;\n /** IPv6Prefix for Management Network. Example: 3FFE:FFFF:0:CD40::/59 */\n ipv6Prefix?: string;\n /** ASN of CE devices for CE/PE connectivity. */\n fabricASN: number;\n /** Network and credentials configuration currently applied to terminal server. */\n terminalServerConfiguration: TerminalServerConfiguration;\n /** Configuration to be used to setup the management network. */\n managementNetworkConfiguration: ManagementNetworkConfigurationProperties;\n /** List of NetworkRack resource IDs under the Network Fabric. The number of racks allowed depends on the Network Fabric SKU. */\n readonly racks?: string[];\n /** List of L2 Isolation Domain resource IDs under the Network Fabric. */\n readonly l2IsolationDomains?: string[];\n /** List of L3 Isolation Domain resource IDs under the Network Fabric. */\n readonly l3IsolationDomains?: string[];\n /** Hardware alert threshold percentage. Possible values are from 20 to 100. */\n hardwareAlertThreshold?: number;\n /** Control Plane Access Control List ARM resource IDs. */\n controlPlaneAcls?: string[];\n /** NetworkFabric feature flag configuration information */\n featureFlags?: FeatureFlagProperties[];\n /** Trusted IP Prefixes ARM resource IDs. */\n trustedIpPrefixes?: string[];\n /** Unique Route Distinguisher configuration */\n uniqueRdConfiguration?: UniqueRouteDistinguisherProperties;\n /** Number of Storage arrays associated with the Network Fabric. */\n storageArrayCount?: number;\n /** Active commit batch identifiers */\n readonly activeCommitBatches?: string[];\n /** Overview of secret rotation for the Network Fabric. */\n readonly secretRotationSummary?: SecretRotationSummary;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Authorized transciever configuration for NetworkFabric. */\n authorizedTransceiver?: AuthorizedTransceiverProperties;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provides you the latest status of the NFC service, whether it is Accepted, updating, Succeeded or Failed. During this process, the states keep changing based on the status of NFC provisioning. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n /** NetworkFabric QoS Configuration */\n qosConfiguration?: QosProperties;\n}\n\nexport function networkFabricSerializer(item: NetworkFabric): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: _networkFabricPropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentitySerializer(item[\"identity\"]),\n };\n}\n\nexport function networkFabricDeserializer(item: any): NetworkFabric {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._networkFabricPropertiesDeserializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityDeserializer(item[\"identity\"]),\n };\n}\n\n/** Network Fabric Properties defines the properties of the resource. */\nexport interface NetworkFabricProperties extends AnnotationResource {\n /** Supported Network Fabric SKU.Example: Compute / Aggregate racks. Once the user chooses a particular SKU, only supported racks can be added to the Network Fabric. The SKU determines whether it is a single / multi rack Network Fabric. */\n networkFabricSku: string;\n /** The version of Network Fabric. */\n fabricVersion?: string;\n /** Array of router IDs. */\n readonly routerIds?: string[];\n /** Bring your own storage account configurations for Network Fabric. */\n storageAccountConfiguration?: StorageAccountConfiguration;\n /** Network Fabric Lock details */\n readonly fabricLocks?: FabricLockProperties[];\n /** Azure resource ID for the NetworkFabricController the NetworkFabric belongs. */\n networkFabricControllerId: string;\n /** Number of compute racks associated to Network Fabric. */\n rackCount?: number;\n /** Number of servers.Possible values are from 1-16. */\n serverCountPerRack: number;\n /** IPv4Prefix for Management Network. Example: 10.1.0.0/19. */\n ipv4Prefix: string;\n /** IPv6Prefix for Management Network. Example: 3FFE:FFFF:0:CD40::/59 */\n ipv6Prefix?: string;\n /** ASN of CE devices for CE/PE connectivity. */\n fabricASN: number;\n /** Network and credentials configuration currently applied to terminal server. */\n terminalServerConfiguration: TerminalServerConfiguration;\n /** Configuration to be used to setup the management network. */\n managementNetworkConfiguration: ManagementNetworkConfigurationProperties;\n /** List of NetworkRack resource IDs under the Network Fabric. The number of racks allowed depends on the Network Fabric SKU. */\n readonly racks?: string[];\n /** List of L2 Isolation Domain resource IDs under the Network Fabric. */\n readonly l2IsolationDomains?: string[];\n /** List of L3 Isolation Domain resource IDs under the Network Fabric. */\n readonly l3IsolationDomains?: string[];\n /** Hardware alert threshold percentage. Possible values are from 20 to 100. */\n hardwareAlertThreshold?: number;\n /** Control Plane Access Control List ARM resource IDs. */\n controlPlaneAcls?: string[];\n /** NetworkFabric feature flag configuration information */\n featureFlags?: FeatureFlagProperties[];\n /** Trusted IP Prefixes ARM resource IDs. */\n trustedIpPrefixes?: string[];\n /** Unique Route Distinguisher configuration */\n uniqueRdConfiguration?: UniqueRouteDistinguisherProperties;\n /** Number of Storage arrays associated with the Network Fabric. */\n storageArrayCount?: number;\n /** Active commit batch identifiers */\n readonly activeCommitBatches?: string[];\n /** Overview of secret rotation for the Network Fabric. */\n readonly secretRotationSummary?: SecretRotationSummary;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Authorized transciever configuration for NetworkFabric. */\n authorizedTransceiver?: AuthorizedTransceiverProperties;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provides you the latest status of the NFC service, whether it is Accepted, updating, Succeeded or Failed. During this process, the states keep changing based on the status of NFC provisioning. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n /** NetworkFabric QoS Configuration */\n qosConfiguration?: QosProperties;\n}\n\nexport function networkFabricPropertiesSerializer(item: NetworkFabricProperties): any {\n return {\n annotation: item[\"annotation\"],\n networkFabricSku: item[\"networkFabricSku\"],\n fabricVersion: item[\"fabricVersion\"],\n storageAccountConfiguration: !item[\"storageAccountConfiguration\"]\n ? item[\"storageAccountConfiguration\"]\n : storageAccountConfigurationSerializer(item[\"storageAccountConfiguration\"]),\n networkFabricControllerId: item[\"networkFabricControllerId\"],\n rackCount: item[\"rackCount\"],\n serverCountPerRack: item[\"serverCountPerRack\"],\n ipv4Prefix: item[\"ipv4Prefix\"],\n ipv6Prefix: item[\"ipv6Prefix\"],\n fabricASN: item[\"fabricASN\"],\n terminalServerConfiguration: terminalServerConfigurationSerializer(\n item[\"terminalServerConfiguration\"],\n ),\n managementNetworkConfiguration: managementNetworkConfigurationPropertiesSerializer(\n item[\"managementNetworkConfiguration\"],\n ),\n hardwareAlertThreshold: item[\"hardwareAlertThreshold\"],\n controlPlaneAcls: !item[\"controlPlaneAcls\"]\n ? item[\"controlPlaneAcls\"]\n : item[\"controlPlaneAcls\"].map((p: any) => {\n return p;\n }),\n featureFlags: !item[\"featureFlags\"]\n ? item[\"featureFlags\"]\n : featureFlagPropertiesArraySerializer(item[\"featureFlags\"]),\n trustedIpPrefixes: !item[\"trustedIpPrefixes\"]\n ? item[\"trustedIpPrefixes\"]\n : item[\"trustedIpPrefixes\"].map((p: any) => {\n return p;\n }),\n uniqueRdConfiguration: !item[\"uniqueRdConfiguration\"]\n ? item[\"uniqueRdConfiguration\"]\n : uniqueRouteDistinguisherPropertiesSerializer(item[\"uniqueRdConfiguration\"]),\n storageArrayCount: item[\"storageArrayCount\"],\n authorizedTransceiver: !item[\"authorizedTransceiver\"]\n ? item[\"authorizedTransceiver\"]\n : authorizedTransceiverPropertiesSerializer(item[\"authorizedTransceiver\"]),\n qosConfiguration: !item[\"qosConfiguration\"]\n ? item[\"qosConfiguration\"]\n : qosPropertiesSerializer(item[\"qosConfiguration\"]),\n };\n}\n\nexport function networkFabricPropertiesDeserializer(item: any): NetworkFabricProperties {\n return {\n annotation: item[\"annotation\"],\n networkFabricSku: item[\"networkFabricSku\"],\n fabricVersion: item[\"fabricVersion\"],\n routerIds: !item[\"routerIds\"]\n ? item[\"routerIds\"]\n : item[\"routerIds\"].map((p: any) => {\n return p;\n }),\n storageAccountConfiguration: !item[\"storageAccountConfiguration\"]\n ? item[\"storageAccountConfiguration\"]\n : storageAccountConfigurationDeserializer(item[\"storageAccountConfiguration\"]),\n fabricLocks: !item[\"fabricLocks\"]\n ? item[\"fabricLocks\"]\n : fabricLockPropertiesArrayDeserializer(item[\"fabricLocks\"]),\n networkFabricControllerId: item[\"networkFabricControllerId\"],\n rackCount: item[\"rackCount\"],\n serverCountPerRack: item[\"serverCountPerRack\"],\n ipv4Prefix: item[\"ipv4Prefix\"],\n ipv6Prefix: item[\"ipv6Prefix\"],\n fabricASN: item[\"fabricASN\"],\n terminalServerConfiguration: terminalServerConfigurationDeserializer(\n item[\"terminalServerConfiguration\"],\n ),\n managementNetworkConfiguration: managementNetworkConfigurationPropertiesDeserializer(\n item[\"managementNetworkConfiguration\"],\n ),\n racks: !item[\"racks\"]\n ? item[\"racks\"]\n : item[\"racks\"].map((p: any) => {\n return p;\n }),\n l2IsolationDomains: !item[\"l2IsolationDomains\"]\n ? item[\"l2IsolationDomains\"]\n : item[\"l2IsolationDomains\"].map((p: any) => {\n return p;\n }),\n l3IsolationDomains: !item[\"l3IsolationDomains\"]\n ? item[\"l3IsolationDomains\"]\n : item[\"l3IsolationDomains\"].map((p: any) => {\n return p;\n }),\n hardwareAlertThreshold: item[\"hardwareAlertThreshold\"],\n controlPlaneAcls: !item[\"controlPlaneAcls\"]\n ? item[\"controlPlaneAcls\"]\n : item[\"controlPlaneAcls\"].map((p: any) => {\n return p;\n }),\n featureFlags: !item[\"featureFlags\"]\n ? item[\"featureFlags\"]\n : featureFlagPropertiesArrayDeserializer(item[\"featureFlags\"]),\n trustedIpPrefixes: !item[\"trustedIpPrefixes\"]\n ? item[\"trustedIpPrefixes\"]\n : item[\"trustedIpPrefixes\"].map((p: any) => {\n return p;\n }),\n uniqueRdConfiguration: !item[\"uniqueRdConfiguration\"]\n ? item[\"uniqueRdConfiguration\"]\n : uniqueRouteDistinguisherPropertiesDeserializer(item[\"uniqueRdConfiguration\"]),\n storageArrayCount: item[\"storageArrayCount\"],\n activeCommitBatches: !item[\"activeCommitBatches\"]\n ? item[\"activeCommitBatches\"]\n : item[\"activeCommitBatches\"].map((p: any) => {\n return p;\n }),\n secretRotationSummary: !item[\"secretRotationSummary\"]\n ? item[\"secretRotationSummary\"]\n : secretRotationSummaryDeserializer(item[\"secretRotationSummary\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n authorizedTransceiver: !item[\"authorizedTransceiver\"]\n ? item[\"authorizedTransceiver\"]\n : authorizedTransceiverPropertiesDeserializer(item[\"authorizedTransceiver\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n qosConfiguration: !item[\"qosConfiguration\"]\n ? item[\"qosConfiguration\"]\n : qosPropertiesDeserializer(item[\"qosConfiguration\"]),\n };\n}\n\n/** Storage account configuration. */\nexport interface StorageAccountConfiguration {\n /** Network Fabric storage account resource identifier. */\n storageAccountId?: string;\n /** The selection of the managed identity to use with this storage account. The identity type must be either system assigned or user assigned. */\n storageAccountIdentity?: IdentitySelector;\n}\n\nexport function storageAccountConfigurationSerializer(item: StorageAccountConfiguration): any {\n return {\n storageAccountId: item[\"storageAccountId\"],\n storageAccountIdentity: !item[\"storageAccountIdentity\"]\n ? item[\"storageAccountIdentity\"]\n : identitySelectorSerializer(item[\"storageAccountIdentity\"]),\n };\n}\n\nexport function storageAccountConfigurationDeserializer(item: any): StorageAccountConfiguration {\n return {\n storageAccountId: item[\"storageAccountId\"],\n storageAccountIdentity: !item[\"storageAccountIdentity\"]\n ? item[\"storageAccountIdentity\"]\n : identitySelectorDeserializer(item[\"storageAccountIdentity\"]),\n };\n}\n\nexport function fabricLockPropertiesArrayDeserializer(result: Array<FabricLockProperties>): any[] {\n return result.map((item) => {\n return fabricLockPropertiesDeserializer(item);\n });\n}\n\n/** Network Fabric Lock Configuration. */\nexport interface FabricLockProperties {\n /** NetworkFabric Lock State. */\n lockState?: LockConfigurationState;\n /** NetworkFabric Lock Type. */\n lockType?: NetworkFabricLockType;\n}\n\nexport function fabricLockPropertiesDeserializer(item: any): FabricLockProperties {\n return {\n lockState: item[\"lockState\"],\n lockType: item[\"lockType\"],\n };\n}\n\n/** Lock Configuration State. */\nexport enum KnownLockConfigurationState {\n /** LockConfigurationState Enabled */\n Enabled = \"Enabled\",\n /** LockConfigurationState Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * Lock Configuration State. \\\n * {@link KnownLockConfigurationState} can be used interchangeably with LockConfigurationState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: LockConfigurationState Enabled \\\n * **Disabled**: LockConfigurationState Disabled\n */\nexport type LockConfigurationState = string;\n\n/** Network fabric lock type */\nexport enum KnownNetworkFabricLockType {\n /** A administrative lock/unlock operation will be performed */\n Administrative = \"Administrative\",\n /** A lock/unlock operation will be performed on the configuration */\n Configuration = \"Configuration\",\n}\n\n/**\n * Network fabric lock type \\\n * {@link KnownNetworkFabricLockType} can be used interchangeably with NetworkFabricLockType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Administrative**: A administrative lock\\/unlock operation will be performed \\\n * **Configuration**: A lock\\/unlock operation will be performed on the configuration\n */\nexport type NetworkFabricLockType = string;\n\n/** Network and credentials configuration currently applied to terminal server. */\nexport interface TerminalServerConfiguration {\n /** Username for the terminal server connection. */\n username: string;\n /** Password for the terminal server connection. */\n password: string;\n /** Serial Number of Terminal server. */\n serialNumber?: string;\n /** IPv4 Address Prefix. */\n primaryIpv4Prefix: string;\n /** IPv6 Address Prefix. */\n primaryIpv6Prefix?: string;\n /** Secondary IPv4 Address Prefix. */\n secondaryIpv4Prefix: string;\n /** Secondary IPv6 Address Prefix. */\n secondaryIpv6Prefix?: string;\n /** ARM Resource ID used for the NetworkDevice. */\n readonly networkDeviceId?: string;\n /** Secret rotation status for the terminal server's secrets. */\n readonly secretRotationStatus?: SecretRotationStatus[];\n}\n\nexport function terminalServerConfigurationSerializer(item: TerminalServerConfiguration): any {\n return {\n username: item[\"username\"],\n password: item[\"password\"],\n serialNumber: item[\"serialNumber\"],\n primaryIpv4Prefix: item[\"primaryIpv4Prefix\"],\n primaryIpv6Prefix: item[\"primaryIpv6Prefix\"],\n secondaryIpv4Prefix: item[\"secondaryIpv4Prefix\"],\n secondaryIpv6Prefix: item[\"secondaryIpv6Prefix\"],\n };\n}\n\nexport function terminalServerConfigurationDeserializer(item: any): TerminalServerConfiguration {\n return {\n username: item[\"username\"],\n password: item[\"password\"],\n serialNumber: item[\"serialNumber\"],\n primaryIpv4Prefix: item[\"primaryIpv4Prefix\"],\n primaryIpv6Prefix: item[\"primaryIpv6Prefix\"],\n secondaryIpv4Prefix: item[\"secondaryIpv4Prefix\"],\n secondaryIpv6Prefix: item[\"secondaryIpv6Prefix\"],\n networkDeviceId: item[\"networkDeviceId\"],\n secretRotationStatus: !item[\"secretRotationStatus\"]\n ? item[\"secretRotationStatus\"]\n : secretRotationStatusArrayDeserializer(item[\"secretRotationStatus\"]),\n };\n}\n\n/** Configuration to be used to setup the management network. */\nexport interface ManagementNetworkConfigurationProperties {\n /** VPN Configuration properties. */\n infrastructureVpnConfiguration: VpnConfigurationProperties;\n /** VPN Configuration properties. */\n workloadVpnConfiguration: VpnConfigurationProperties;\n}\n\nexport function managementNetworkConfigurationPropertiesSerializer(\n item: ManagementNetworkConfigurationProperties,\n): any {\n return {\n infrastructureVpnConfiguration: vpnConfigurationPropertiesSerializer(\n item[\"infrastructureVpnConfiguration\"],\n ),\n workloadVpnConfiguration: vpnConfigurationPropertiesSerializer(\n item[\"workloadVpnConfiguration\"],\n ),\n };\n}\n\nexport function managementNetworkConfigurationPropertiesDeserializer(\n item: any,\n): ManagementNetworkConfigurationProperties {\n return {\n infrastructureVpnConfiguration: vpnConfigurationPropertiesDeserializer(\n item[\"infrastructureVpnConfiguration\"],\n ),\n workloadVpnConfiguration: vpnConfigurationPropertiesDeserializer(\n item[\"workloadVpnConfiguration\"],\n ),\n };\n}\n\n/** Network and credential configuration currently applied on terminal server. */\nexport interface VpnConfigurationProperties {\n /** ARM Resource ID of the Network To Network Interconnect. */\n networkToNetworkInterconnectId?: string;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n /** Peering option list. */\n peeringOption: PeeringOption;\n /** option B properties */\n optionBProperties?: VpnOptionBProperties;\n /** option A properties */\n optionAProperties?: VpnOptionAProperties;\n}\n\nexport function vpnConfigurationPropertiesSerializer(item: VpnConfigurationProperties): any {\n return {\n networkToNetworkInterconnectId: item[\"networkToNetworkInterconnectId\"],\n peeringOption: item[\"peeringOption\"],\n optionBProperties: !item[\"optionBProperties\"]\n ? item[\"optionBProperties\"]\n : vpnOptionBPropertiesSerializer(item[\"optionBProperties\"]),\n optionAProperties: !item[\"optionAProperties\"]\n ? item[\"optionAProperties\"]\n : vpnOptionAPropertiesSerializer(item[\"optionAProperties\"]),\n };\n}\n\nexport function vpnConfigurationPropertiesDeserializer(item: any): VpnConfigurationProperties {\n return {\n networkToNetworkInterconnectId: item[\"networkToNetworkInterconnectId\"],\n administrativeState: item[\"administrativeState\"],\n peeringOption: item[\"peeringOption\"],\n optionBProperties: !item[\"optionBProperties\"]\n ? item[\"optionBProperties\"]\n : vpnOptionBPropertiesDeserializer(item[\"optionBProperties\"]),\n optionAProperties: !item[\"optionAProperties\"]\n ? item[\"optionAProperties\"]\n : vpnOptionAPropertiesDeserializer(item[\"optionAProperties\"]),\n };\n}\n\n/** Option B configuration to be used for Management VPN. */\nexport interface VpnOptionBProperties {\n /** Route Targets to be applied for incoming routes into CE. This is for backward compatibility. */\n importRouteTargets?: string[];\n /** Route Targets to be applied for outgoing routes from CE. This is for backward compatibility. */\n exportRouteTargets?: string[];\n /** Route Targets to be applied. */\n routeTargets?: RouteTargetInformation;\n}\n\nexport function vpnOptionBPropertiesSerializer(item: VpnOptionBProperties): any {\n return {\n importRouteTargets: !item[\"importRouteTargets\"]\n ? item[\"importRouteTargets\"]\n : item[\"importRouteTargets\"].map((p: any) => {\n return p;\n }),\n exportRouteTargets: !item[\"exportRouteTargets\"]\n ? item[\"exportRouteTargets\"]\n : item[\"exportRouteTargets\"].map((p: any) => {\n return p;\n }),\n routeTargets: !item[\"routeTargets\"]\n ? item[\"routeTargets\"]\n : routeTargetInformationSerializer(item[\"routeTargets\"]),\n };\n}\n\nexport function vpnOptionBPropertiesDeserializer(item: any): VpnOptionBProperties {\n return {\n importRouteTargets: !item[\"importRouteTargets\"]\n ? item[\"importRouteTargets\"]\n : item[\"importRouteTargets\"].map((p: any) => {\n return p;\n }),\n exportRouteTargets: !item[\"exportRouteTargets\"]\n ? item[\"exportRouteTargets\"]\n : item[\"exportRouteTargets\"].map((p: any) => {\n return p;\n }),\n routeTargets: !item[\"routeTargets\"]\n ? item[\"routeTargets\"]\n : routeTargetInformationDeserializer(item[\"routeTargets\"]),\n };\n}\n\n/** option A properties */\nexport interface VpnOptionAProperties extends Layer3IpPrefixProperties {\n /** MTU to use for option A peering. */\n mtu?: number;\n /** Vlan Id.Example : 501 */\n vlanId: number;\n /** Peer ASN number.Example : 28 */\n peerASN: number;\n /** BFD Configuration properties. */\n bfdConfiguration?: BfdConfiguration;\n}\n\nexport function vpnOptionAPropertiesSerializer(item: VpnOptionAProperties): any {\n return {\n primaryIpv4Prefix: item[\"primaryIpv4Prefix\"],\n primaryIpv6Prefix: item[\"primaryIpv6Prefix\"],\n secondaryIpv4Prefix: item[\"secondaryIpv4Prefix\"],\n secondaryIpv6Prefix: item[\"secondaryIpv6Prefix\"],\n mtu: item[\"mtu\"],\n vlanId: item[\"vlanId\"],\n peerASN: item[\"peerASN\"],\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdConfigurationSerializer(item[\"bfdConfiguration\"]),\n };\n}\n\nexport function vpnOptionAPropertiesDeserializer(item: any): VpnOptionAProperties {\n return {\n primaryIpv4Prefix: item[\"primaryIpv4Prefix\"],\n primaryIpv6Prefix: item[\"primaryIpv6Prefix\"],\n secondaryIpv4Prefix: item[\"secondaryIpv4Prefix\"],\n secondaryIpv6Prefix: item[\"secondaryIpv6Prefix\"],\n mtu: item[\"mtu\"],\n vlanId: item[\"vlanId\"],\n peerASN: item[\"peerASN\"],\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdConfigurationDeserializer(item[\"bfdConfiguration\"]),\n };\n}\n\nexport function featureFlagPropertiesArraySerializer(result: Array<FeatureFlagProperties>): any[] {\n return result.map((item) => {\n return featureFlagPropertiesSerializer(item);\n });\n}\n\nexport function featureFlagPropertiesArrayDeserializer(\n result: Array<FeatureFlagProperties>,\n): any[] {\n return result.map((item) => {\n return featureFlagPropertiesDeserializer(item);\n });\n}\n\n/** Feature flag properties. */\nexport interface FeatureFlagProperties {\n /** Feature flag name. */\n featureFlagName?: string;\n /** Feature flag value. */\n featureFlagValue?: string;\n}\n\nexport function featureFlagPropertiesSerializer(item: FeatureFlagProperties): any {\n return { featureFlagName: item[\"featureFlagName\"], featureFlagValue: item[\"featureFlagValue\"] };\n}\n\nexport function featureFlagPropertiesDeserializer(item: any): FeatureFlagProperties {\n return {\n featureFlagName: item[\"featureFlagName\"],\n featureFlagValue: item[\"featureFlagValue\"],\n };\n}\n\n/** Unique Route Distinguisher properties. */\nexport interface UniqueRouteDistinguisherProperties {\n /** Unique Route Distinguisher configuration state. Default is Enabled. */\n uniqueRdConfigurationState?: UniqueRouteDistinguisherConfigurationState;\n /** List of Unique Route Distinguisher addresses. */\n readonly uniqueRds?: string[];\n /** NNI derived unique Route Distinguisher state. Default is Disabled. */\n nniDerivedUniqueRdConfigurationState?: NNIDerivedUniqueRouteDistinguisherConfigurationState;\n}\n\nexport function uniqueRouteDistinguisherPropertiesSerializer(\n item: UniqueRouteDistinguisherProperties,\n): any {\n return {\n uniqueRdConfigurationState: item[\"uniqueRdConfigurationState\"],\n nniDerivedUniqueRdConfigurationState: item[\"nniDerivedUniqueRdConfigurationState\"],\n };\n}\n\nexport function uniqueRouteDistinguisherPropertiesDeserializer(\n item: any,\n): UniqueRouteDistinguisherProperties {\n return {\n uniqueRdConfigurationState: item[\"uniqueRdConfigurationState\"],\n uniqueRds: !item[\"uniqueRds\"]\n ? item[\"uniqueRds\"]\n : item[\"uniqueRds\"].map((p: any) => {\n return p;\n }),\n nniDerivedUniqueRdConfigurationState: item[\"nniDerivedUniqueRdConfigurationState\"],\n };\n}\n\n/** Unique Route Distinguisher Configuration State. */\nexport enum KnownUniqueRouteDistinguisherConfigurationState {\n /** UniqueRouteDistinguisherConfigurationState Enabled */\n Enabled = \"Enabled\",\n /** UniqueRouteDistinguisherConfigurationState Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * Unique Route Distinguisher Configuration State. \\\n * {@link KnownUniqueRouteDistinguisherConfigurationState} can be used interchangeably with UniqueRouteDistinguisherConfigurationState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: UniqueRouteDistinguisherConfigurationState Enabled \\\n * **Disabled**: UniqueRouteDistinguisherConfigurationState Disabled\n */\nexport type UniqueRouteDistinguisherConfigurationState = string;\n\n/** NNI Derived Unique Route Distinguisher Configuration State. */\nexport enum KnownNNIDerivedUniqueRouteDistinguisherConfigurationState {\n /** NNI derived unique route distinguisher configuration state Enabled */\n Enabled = \"Enabled\",\n /** NNI derived unique route distinguisher configuration state Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * NNI Derived Unique Route Distinguisher Configuration State. \\\n * {@link KnownNNIDerivedUniqueRouteDistinguisherConfigurationState} can be used interchangeably with NNIDerivedUniqueRouteDistinguisherConfigurationState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: NNI derived unique route distinguisher configuration state Enabled \\\n * **Disabled**: NNI derived unique route distinguisher configuration state Disabled\n */\nexport type NNIDerivedUniqueRouteDistinguisherConfigurationState = string;\n\n/** Overview of secret rotation for the Network Fabric. */\nexport interface SecretRotationSummary {\n /** The number of active password sets configured on the devices. */\n readonly activePasswordSetCount?: number;\n}\n\nexport function secretRotationSummaryDeserializer(item: any): SecretRotationSummary {\n return {\n activePasswordSetCount: item[\"activePasswordSetCount\"],\n };\n}\n\n/** Authorized Transceiver Properties. */\nexport interface AuthorizedTransceiverProperties {\n /** Vendor of the transceiver. */\n vendor?: string;\n /** Key that must be configured on the fabric. */\n key?: string;\n}\n\nexport function authorizedTransceiverPropertiesSerializer(\n item: AuthorizedTransceiverProperties,\n): any {\n return { vendor: item[\"vendor\"], key: item[\"key\"] };\n}\n\nexport function authorizedTransceiverPropertiesDeserializer(\n item: any,\n): AuthorizedTransceiverProperties {\n return {\n vendor: item[\"vendor\"],\n key: item[\"key\"],\n };\n}\n\n/** NetworkFabric QoS Properties. */\nexport interface QosProperties {\n /** QoS configuration state. Default is Disabled. */\n qosConfigurationState?: QosConfigurationState;\n}\n\nexport function qosPropertiesSerializer(item: QosProperties): any {\n return { qosConfigurationState: item[\"qosConfigurationState\"] };\n}\n\nexport function qosPropertiesDeserializer(item: any): QosProperties {\n return {\n qosConfigurationState: item[\"qosConfigurationState\"],\n };\n}\n\n/** NetworkFabric QoS ConfigurationState. */\nexport enum KnownQosConfigurationState {\n /** QosConfigurationState-Disabled */\n Disabled = \"Disabled\",\n /** QosConfigurationState-Enabled */\n Enabled = \"Enabled\",\n}\n\n/**\n * NetworkFabric QoS ConfigurationState. \\\n * {@link KnownQosConfigurationState} can be used interchangeably with QosConfigurationState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Disabled**: QosConfigurationState-Disabled \\\n * **Enabled**: QosConfigurationState-Enabled\n */\nexport type QosConfigurationState = string;\n\n/** Layer 3 primary and secondary IP Address prefixes. */\nexport interface Layer3IpPrefixProperties {\n /** IPv4 Address Prefix. */\n primaryIpv4Prefix?: string;\n /** IPv6 Address Prefix. */\n primaryIpv6Prefix?: string;\n /** Secondary IPv4 Address Prefix. */\n secondaryIpv4Prefix?: string;\n /** Secondary IPv6 Address Prefix. */\n secondaryIpv6Prefix?: string;\n}\n\nexport function layer3IpPrefixPropertiesSerializer(item: Layer3IpPrefixProperties): any {\n return {\n primaryIpv4Prefix: item[\"primaryIpv4Prefix\"],\n primaryIpv6Prefix: item[\"primaryIpv6Prefix\"],\n secondaryIpv4Prefix: item[\"secondaryIpv4Prefix\"],\n secondaryIpv6Prefix: item[\"secondaryIpv6Prefix\"],\n };\n}\n\nexport function layer3IpPrefixPropertiesDeserializer(item: any): Layer3IpPrefixProperties {\n return {\n primaryIpv4Prefix: item[\"primaryIpv4Prefix\"],\n primaryIpv6Prefix: item[\"primaryIpv6Prefix\"],\n secondaryIpv4Prefix: item[\"secondaryIpv4Prefix\"],\n secondaryIpv6Prefix: item[\"secondaryIpv6Prefix\"],\n };\n}\n\n/** The Network Fabric resource definition. */\nexport interface NetworkFabricPatch extends TagsUpdate {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentityPatch;\n /** Switch configuration description. */\n annotation?: string;\n /** Number of compute racks associated to Network Fabric. */\n rackCount?: number;\n /** Number of servers.Possible values are from 1-16. */\n serverCountPerRack?: number;\n /** IPv4Prefix for Management Network. Example: 10.1.0.0/19. */\n ipv4Prefix?: string;\n /** IPv6Prefix for Management Network. Example: 3FFE:FFFF:0:CD40::/59. */\n ipv6Prefix?: string;\n /** ASN of CE devices for CE/PE connectivity. */\n fabricASN?: number;\n /** Network and credentials configuration already applied to terminal server. */\n terminalServerConfiguration?: TerminalServerPatchConfiguration;\n /** Configuration to be used to setup the management network. */\n managementNetworkConfiguration?: ManagementNetworkPatchConfiguration;\n /** Bring your own storage account configurations for Network Fabric. */\n storageAccountConfiguration?: StorageAccountPatchConfiguration;\n /** Hardware alert threshold percentage. Possible values are from 20 to 100. */\n hardwareAlertThreshold?: number;\n /** Control Plane Access Control List ARM resource IDs. */\n controlPlaneAcls?: string[];\n /** Trusted IP Prefix ARM resource IDs. */\n trustedIpPrefixes?: string[];\n /** Unique Route Distinguisher configuration */\n uniqueRdConfiguration?: UniqueRouteDistinguisherPatchProperties;\n /** NetworkFabric QoS Configuration */\n qosConfiguration?: QosPatchProperties;\n /** NetworkFabric feature flag configuration information */\n featureFlags?: FeatureFlagProperties[];\n /** Authorized transciever configuration for NetworkFabric. */\n authorizedTransceiver?: AuthorizedTransceiverPatchProperties;\n}\n\nexport function networkFabricPatchSerializer(item: NetworkFabricPatch): any {\n return {\n tags: item[\"tags\"],\n properties: areAllPropsUndefined(item, [\n \"annotation\",\n \"rackCount\",\n \"serverCountPerRack\",\n \"ipv4Prefix\",\n \"ipv6Prefix\",\n \"fabricASN\",\n \"terminalServerConfiguration\",\n \"managementNetworkConfiguration\",\n \"storageAccountConfiguration\",\n \"hardwareAlertThreshold\",\n \"controlPlaneAcls\",\n \"trustedIpPrefixes\",\n \"uniqueRdConfiguration\",\n \"qosConfiguration\",\n \"featureFlags\",\n \"authorizedTransceiver\",\n ])\n ? undefined\n : _networkFabricPatchPropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityPatchSerializer(item[\"identity\"]),\n };\n}\n\n/** Network Fabric Patch properties. */\nexport interface NetworkFabricPatchProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** Number of compute racks associated to Network Fabric. */\n rackCount?: number;\n /** Number of servers.Possible values are from 1-16. */\n serverCountPerRack?: number;\n /** IPv4Prefix for Management Network. Example: 10.1.0.0/19. */\n ipv4Prefix?: string;\n /** IPv6Prefix for Management Network. Example: 3FFE:FFFF:0:CD40::/59. */\n ipv6Prefix?: string;\n /** ASN of CE devices for CE/PE connectivity. */\n fabricASN?: number;\n /** Network and credentials configuration already applied to terminal server. */\n terminalServerConfiguration?: TerminalServerPatchConfiguration;\n /** Configuration to be used to setup the management network. */\n managementNetworkConfiguration?: ManagementNetworkPatchConfiguration;\n /** Bring your own storage account configurations for Network Fabric. */\n storageAccountConfiguration?: StorageAccountPatchConfiguration;\n /** Hardware alert threshold percentage. Possible values are from 20 to 100. */\n hardwareAlertThreshold?: number;\n /** Control Plane Access Control List ARM resource IDs. */\n controlPlaneAcls?: string[];\n /** Trusted IP Prefix ARM resource IDs. */\n trustedIpPrefixes?: string[];\n /** Unique Route Distinguisher configuration */\n uniqueRdConfiguration?: UniqueRouteDistinguisherPatchProperties;\n /** NetworkFabric QoS Configuration */\n qosConfiguration?: QosPatchProperties;\n /** NetworkFabric feature flag configuration information */\n featureFlags?: FeatureFlagProperties[];\n /** Authorized transciever configuration for NetworkFabric. */\n authorizedTransceiver?: AuthorizedTransceiverPatchProperties;\n}\n\nexport function networkFabricPatchPropertiesSerializer(item: NetworkFabricPatchProperties): any {\n return {\n annotation: item[\"annotation\"],\n rackCount: item[\"rackCount\"],\n serverCountPerRack: item[\"serverCountPerRack\"],\n ipv4Prefix: item[\"ipv4Prefix\"],\n ipv6Prefix: item[\"ipv6Prefix\"],\n fabricASN: item[\"fabricASN\"],\n terminalServerConfiguration: !item[\"terminalServerConfiguration\"]\n ? item[\"terminalServerConfiguration\"]\n : terminalServerPatchConfigurationSerializer(item[\"terminalServerConfiguration\"]),\n managementNetworkConfiguration: !item[\"managementNetworkConfiguration\"]\n ? item[\"managementNetworkConfiguration\"]\n : managementNetworkPatchConfigurationSerializer(item[\"managementNetworkConfiguration\"]),\n storageAccountConfiguration: !item[\"storageAccountConfiguration\"]\n ? item[\"storageAccountConfiguration\"]\n : storageAccountPatchConfigurationSerializer(item[\"storageAccountConfiguration\"]),\n hardwareAlertThreshold: item[\"hardwareAlertThreshold\"],\n controlPlaneAcls: !item[\"controlPlaneAcls\"]\n ? item[\"controlPlaneAcls\"]\n : item[\"controlPlaneAcls\"].map((p: any) => {\n return p;\n }),\n trustedIpPrefixes: !item[\"trustedIpPrefixes\"]\n ? item[\"trustedIpPrefixes\"]\n : item[\"trustedIpPrefixes\"].map((p: any) => {\n return p;\n }),\n uniqueRdConfiguration: !item[\"uniqueRdConfiguration\"]\n ? item[\"uniqueRdConfiguration\"]\n : uniqueRouteDistinguisherPatchPropertiesSerializer(item[\"uniqueRdConfiguration\"]),\n qosConfiguration: !item[\"qosConfiguration\"]\n ? item[\"qosConfiguration\"]\n : qosPatchPropertiesSerializer(item[\"qosConfiguration\"]),\n featureFlags: !item[\"featureFlags\"]\n ? item[\"featureFlags\"]\n : featureFlagPropertiesArraySerializer(item[\"featureFlags\"]),\n authorizedTransceiver: !item[\"authorizedTransceiver\"]\n ? item[\"authorizedTransceiver\"]\n : authorizedTransceiverPatchPropertiesSerializer(item[\"authorizedTransceiver\"]),\n };\n}\n\n/** Network and credentials configuration already applied to terminal server. */\nexport interface TerminalServerPatchConfiguration {\n /** Username for the terminal server connection. */\n username?: string;\n /** Password for the terminal server connection. */\n password?: string;\n /** Serial Number of Terminal server. */\n serialNumber?: string;\n /** IPv4 Address Prefix. */\n primaryIpv4Prefix?: string;\n /** IPv6 Address Prefix. */\n primaryIpv6Prefix?: string;\n /** Secondary IPv4 Address Prefix. */\n secondaryIpv4Prefix?: string;\n /** Secondary IPv6 Address Prefix. */\n secondaryIpv6Prefix?: string;\n}\n\nexport function terminalServerPatchConfigurationSerializer(\n item: TerminalServerPatchConfiguration,\n): any {\n return {\n username: item[\"username\"],\n password: item[\"password\"],\n serialNumber: item[\"serialNumber\"],\n primaryIpv4Prefix: item[\"primaryIpv4Prefix\"],\n primaryIpv6Prefix: item[\"primaryIpv6Prefix\"],\n secondaryIpv4Prefix: item[\"secondaryIpv4Prefix\"],\n secondaryIpv6Prefix: item[\"secondaryIpv6Prefix\"],\n };\n}\n\n/** Configuration to be used to setup the management network. */\nexport interface ManagementNetworkPatchConfiguration {\n /** VPN Configuration properties. */\n infrastructureVpnConfiguration?: VpnConfigurationPatchableProperties;\n /** VPN Configuration properties. */\n workloadVpnConfiguration?: VpnConfigurationPatchableProperties;\n}\n\nexport function managementNetworkPatchConfigurationSerializer(\n item: ManagementNetworkPatchConfiguration,\n): any {\n return {\n infrastructureVpnConfiguration: !item[\"infrastructureVpnConfiguration\"]\n ? item[\"infrastructureVpnConfiguration\"]\n : vpnConfigurationPatchablePropertiesSerializer(item[\"infrastructureVpnConfiguration\"]),\n workloadVpnConfiguration: !item[\"workloadVpnConfiguration\"]\n ? item[\"workloadVpnConfiguration\"]\n : vpnConfigurationPatchablePropertiesSerializer(item[\"workloadVpnConfiguration\"]),\n };\n}\n\n/** Network and credential configuration currently applied on terminal server. */\nexport interface VpnConfigurationPatchableProperties {\n /** ARM Resource ID of the Network To Network Interconnect. */\n networkToNetworkInterconnectId?: string;\n /** Peering option list. */\n peeringOption?: PeeringOption;\n /** option B properties */\n optionBProperties?: VpnOptionBPatchProperties;\n /** option A properties */\n optionAProperties?: VpnOptionAPatchProperties;\n}\n\nexport function vpnConfigurationPatchablePropertiesSerializer(\n item: VpnConfigurationPatchableProperties,\n): any {\n return {\n networkToNetworkInterconnectId: item[\"networkToNetworkInterconnectId\"],\n peeringOption: item[\"peeringOption\"],\n optionBProperties: !item[\"optionBProperties\"]\n ? item[\"optionBProperties\"]\n : vpnOptionBPatchPropertiesSerializer(item[\"optionBProperties\"]),\n optionAProperties: !item[\"optionAProperties\"]\n ? item[\"optionAProperties\"]\n : vpnOptionAPatchPropertiesSerializer(item[\"optionAProperties\"]),\n };\n}\n\n/** Option B configuration to be used for Management VPN. */\nexport interface VpnOptionBPatchProperties {\n /** Route Targets to be applied for incoming routes into CE. This is for backward compatibility. */\n importRouteTargets?: string[];\n /** Route Targets to be applied for outgoing routes from CE. This is for backward compatibility. */\n exportRouteTargets?: string[];\n /** Route Targets to be applied. */\n routeTargets?: RouteTargetPatchInformation;\n}\n\nexport function vpnOptionBPatchPropertiesSerializer(item: VpnOptionBPatchProperties): any {\n return {\n importRouteTargets: !item[\"importRouteTargets\"]\n ? item[\"importRouteTargets\"]\n : item[\"importRouteTargets\"].map((p: any) => {\n return p;\n }),\n exportRouteTargets: !item[\"exportRouteTargets\"]\n ? item[\"exportRouteTargets\"]\n : item[\"exportRouteTargets\"].map((p: any) => {\n return p;\n }),\n routeTargets: !item[\"routeTargets\"]\n ? item[\"routeTargets\"]\n : routeTargetPatchInformationSerializer(item[\"routeTargets\"]),\n };\n}\n\n/** Peering optionA properties */\nexport interface VpnOptionAPatchProperties extends Layer3IpPrefixPatchProperties {\n /** MTU to use for option A peering. */\n mtu?: number;\n /** Vlan Id.Example : 501 */\n vlanId?: number;\n /** Peer ASN number.Example : 28 */\n peerASN?: number;\n /** BFD Configuration properties. */\n bfdConfiguration?: BfdPatchConfiguration;\n}\n\nexport function vpnOptionAPatchPropertiesSerializer(item: VpnOptionAPatchProperties): any {\n return {\n primaryIpv4Prefix: item[\"primaryIpv4Prefix\"],\n primaryIpv6Prefix: item[\"primaryIpv6Prefix\"],\n secondaryIpv4Prefix: item[\"secondaryIpv4Prefix\"],\n secondaryIpv6Prefix: item[\"secondaryIpv6Prefix\"],\n mtu: item[\"mtu\"],\n vlanId: item[\"vlanId\"],\n peerASN: item[\"peerASN\"],\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdPatchConfigurationSerializer(item[\"bfdConfiguration\"]),\n };\n}\n\n/** Storage account configuration. */\nexport interface StorageAccountPatchConfiguration {\n /** Network Fabric storage account resource identifier. */\n storageAccountId?: string;\n /** The selection of the managed identity to use with this storage account. The identity type must be either system assigned or user assigned. */\n storageAccountIdentity?: IdentitySelectorPatch;\n}\n\nexport function storageAccountPatchConfigurationSerializer(\n item: StorageAccountPatchConfiguration,\n): any {\n return {\n storageAccountId: item[\"storageAccountId\"],\n storageAccountIdentity: !item[\"storageAccountIdentity\"]\n ? item[\"storageAccountIdentity\"]\n : identitySelectorPatchSerializer(item[\"storageAccountIdentity\"]),\n };\n}\n\n/** Unique Route Distinguisher configuration properties. */\nexport interface UniqueRouteDistinguisherPatchProperties {\n /** Unique Route Distinguisher configuration state. Default is Enabled. */\n uniqueRdConfigurationState?: UniqueRouteDistinguisherConfigurationState;\n /** NNI derived unique Route Distinguisher state. Default is Disabled. */\n nniDerivedUniqueRdConfigurationState?: NNIDerivedUniqueRouteDistinguisherConfigurationState;\n}\n\nexport function uniqueRouteDistinguisherPatchPropertiesSerializer(\n item: UniqueRouteDistinguisherPatchProperties,\n): any {\n return {\n uniqueRdConfigurationState: item[\"uniqueRdConfigurationState\"],\n nniDerivedUniqueRdConfigurationState: item[\"nniDerivedUniqueRdConfigurationState\"],\n };\n}\n\n/** NetworkFabric QoS Patch Properties. */\nexport interface QosPatchProperties {\n /** QoS configuration state. Default is Disabled. */\n qosConfigurationState?: QosConfigurationState;\n}\n\nexport function qosPatchPropertiesSerializer(item: QosPatchProperties): any {\n return { qosConfigurationState: item[\"qosConfigurationState\"] };\n}\n\n/** Authorized Transceiver Patch Properties. */\nexport interface AuthorizedTransceiverPatchProperties {\n /** Vendor of the transceiver. */\n vendor?: string;\n /** Key that must be configured on the fabric. */\n key?: string;\n}\n\nexport function authorizedTransceiverPatchPropertiesSerializer(\n item: AuthorizedTransceiverPatchProperties,\n): any {\n return { vendor: item[\"vendor\"], key: item[\"key\"] };\n}\n\n/** Layer 3 primary and secondary IP Address prefixes. */\nexport interface Layer3IpPrefixPatchProperties {\n /** IPv4 Address Prefix. */\n primaryIpv4Prefix?: string;\n /** IPv6 Address Prefix. */\n primaryIpv6Prefix?: string;\n /** Secondary IPv4 Address Prefix. */\n secondaryIpv4Prefix?: string;\n /** Secondary IPv6 Address Prefix. */\n secondaryIpv6Prefix?: string;\n}\n\nexport function layer3IpPrefixPatchPropertiesSerializer(item: Layer3IpPrefixPatchProperties): any {\n return {\n primaryIpv4Prefix: item[\"primaryIpv4Prefix\"],\n primaryIpv6Prefix: item[\"primaryIpv6Prefix\"],\n secondaryIpv4Prefix: item[\"secondaryIpv4Prefix\"],\n secondaryIpv6Prefix: item[\"secondaryIpv6Prefix\"],\n };\n}\n\n/** Paged collection of NetworkFabric items */\nexport interface _NetworkFabricsListResult {\n /** The NetworkFabric items on this page */\n value: NetworkFabric[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _networkFabricsListResultDeserializer(item: any): _NetworkFabricsListResult {\n return {\n value: networkFabricArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function networkFabricArraySerializer(result: Array<NetworkFabric>): any[] {\n return result.map((item) => {\n return networkFabricSerializer(item);\n });\n}\n\nexport function networkFabricArrayDeserializer(result: Array<NetworkFabric>): any[] {\n return result.map((item) => {\n return networkFabricDeserializer(item);\n });\n}\n\n/** Model used for Upgrade Network Fabric Properties */\nexport interface UpgradeNetworkFabricProperties extends UpdateVersion {\n /** Action to be performed while upgrading the fabric. */\n action?: NetworkFabricUpgradeAction;\n}\n\nexport function upgradeNetworkFabricPropertiesSerializer(\n item: UpgradeNetworkFabricProperties,\n): any {\n return { version: item[\"version\"], action: item[\"action\"] };\n}\n\n/** Action to be performed while upgrading the fabric. */\nexport enum KnownNetworkFabricUpgradeAction {\n /** UpgradeAction-Start */\n Start = \"Start\",\n /** UpgradeAction -Complete */\n Complete = \"Complete\",\n}\n\n/**\n * Action to be performed while upgrading the fabric. \\\n * {@link KnownNetworkFabricUpgradeAction} can be used interchangeably with NetworkFabricUpgradeAction,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Start**: UpgradeAction-Start \\\n * **Complete**: UpgradeAction -Complete\n */\nexport type NetworkFabricUpgradeAction = string;\n\n/** Update version properties. */\nexport interface UpdateVersion {\n /** Specify the version. */\n version?: string;\n}\n\nexport function updateVersionSerializer(item: UpdateVersion): any {\n return { version: item[\"version\"] };\n}\n\n/** Validation configuration properties. */\nexport interface ValidateConfigurationProperties {\n /** Validate action that to be performed */\n validateAction?: ValidateAction;\n}\n\nexport function validateConfigurationPropertiesSerializer(\n item: ValidateConfigurationProperties,\n): any {\n return { validateAction: item[\"validateAction\"] };\n}\n\n/** Validate action that to be performed */\nexport enum KnownValidateAction {\n /** ValidateAction-Cabling */\n Cabling = \"Cabling\",\n /** ValidateAction-Configuration */\n Configuration = \"Configuration\",\n /** ValidateAction-Connectivity */\n Connectivity = \"Connectivity\",\n}\n\n/**\n * Validate action that to be performed \\\n * {@link KnownValidateAction} can be used interchangeably with ValidateAction,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Cabling**: ValidateAction-Cabling \\\n * **Configuration**: ValidateAction-Configuration \\\n * **Connectivity**: ValidateAction-Connectivity\n */\nexport type ValidateAction = string;\n\n/** GetTopology Response. */\nexport interface GetTopologyResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n /** Properties of the GetTopology Response. */\n properties?: GetTopologyResponseProperties;\n}\n\nexport function getTopologyResponseDeserializer(item: any): GetTopologyResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : getTopologyResponsePropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Properties of the GetTopology Response. */\nexport interface GetTopologyResponseProperties {\n /** Topology JSON string. */\n url?: string;\n}\n\nexport function getTopologyResponsePropertiesDeserializer(\n item: any,\n): GetTopologyResponseProperties {\n return {\n url: item[\"url\"],\n };\n}\n\n/** Commit Configuration Request. */\nexport interface CommitConfigurationRequest {\n /** Commit stage Action to be performed. */\n commitStage?: CommitStage;\n /** Commit configuration Policy. Supported policy is StageCEConfiguration, which indicates to prepare the configuration for the CE device type. */\n commitPolicy?: CommitConfigurationPolicy;\n /** List of ARM resource IDs of devices to be included in the commit operation. Either CE1 or CE2 is allowed. */\n devices?: string[];\n}\n\nexport function commitConfigurationRequestSerializer(item: CommitConfigurationRequest): any {\n return {\n commitStage: item[\"commitStage\"],\n commitPolicy: item[\"commitPolicy\"],\n devices: !item[\"devices\"]\n ? item[\"devices\"]\n : item[\"devices\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Commit stage Action to be performed. */\nexport enum KnownCommitStage {\n /** CommitStage-Start indicates to prepare the device configuration for the devices which is decided by policy type */\n Start = \"Start\",\n /** CommitStage-Continue indicates to push the configuration to the devices provided. Either CE1 or CE2 is allowed */\n Continue = \"Continue\",\n /** CommitStage-Rollback indicates to revert to the previous configuration for the devices to which configuration is pushed as part of staging. */\n Rollback = \"Rollback\",\n}\n\n/**\n * Commit stage Action to be performed. \\\n * {@link KnownCommitStage} can be used interchangeably with CommitStage,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Start**: CommitStage-Start indicates to prepare the device configuration for the devices which is decided by policy type \\\n * **Continue**: CommitStage-Continue indicates to push the configuration to the devices provided. Either CE1 or CE2 is allowed \\\n * **Rollback**: CommitStage-Rollback indicates to revert to the previous configuration for the devices to which configuration is pushed as part of staging.\n */\nexport type CommitStage = string;\n\n/** Indicates Commit configuration staging policy. Supported policy is StageCEConfiguration, which indicates to prepare the configuration for the CE device type. */\nexport enum KnownCommitConfigurationPolicy {\n /** CommitConfigurationPolicy-StageCEConfiguration */\n StageCEConfiguration = \"StageCEConfiguration\",\n}\n\n/**\n * Indicates Commit configuration staging policy. Supported policy is StageCEConfiguration, which indicates to prepare the configuration for the CE device type. \\\n * {@link KnownCommitConfigurationPolicy} can be used interchangeably with CommitConfigurationPolicy,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **StageCEConfiguration**: CommitConfigurationPolicy-StageCEConfiguration\n */\nexport type CommitConfigurationPolicy = string;\n\n/** Commit Configuration Response. */\nexport interface CommitConfigurationResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n}\n\nexport function commitConfigurationResponseDeserializer(item: any): CommitConfigurationResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** Commit Batch Status Request. */\nexport interface CommitBatchStatusRequest {\n /** Commit Batch Identifier. If not provided, the latest commit batch status will be returned. */\n commitBatchId?: string;\n}\n\nexport function commitBatchStatusRequestSerializer(item: CommitBatchStatusRequest): any {\n return { commitBatchId: item[\"commitBatchId\"] };\n}\n\n/** Commit Batch Status Response. */\nexport interface CommitBatchStatusOperationResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n /** Commit Batch Status Response Properties. */\n properties?: CommitBatchStatusResponseProperties;\n}\n\nexport function commitBatchStatusOperationResponseDeserializer(\n item: any,\n): CommitBatchStatusOperationResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : commitBatchStatusResponsePropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Commit Batch Status Response Properties. */\nexport interface CommitBatchStatusResponseProperties {\n /** Commit Batch Identifier. */\n commitBatchId?: string;\n /** Commit Batch State. */\n commitBatchState?: CommitBatchState;\n /** Commit Batch Details. */\n commitBatchDetails?: CommitBatchDetails;\n}\n\nexport function commitBatchStatusResponsePropertiesDeserializer(\n item: any,\n): CommitBatchStatusResponseProperties {\n return {\n commitBatchId: item[\"commitBatchId\"],\n commitBatchState: item[\"commitBatchState\"],\n commitBatchDetails: !item[\"commitBatchDetails\"]\n ? item[\"commitBatchDetails\"]\n : commitBatchDetailsDeserializer(item[\"commitBatchDetails\"]),\n };\n}\n\n/** Commit Batch State. */\nexport enum KnownCommitBatchState {\n /** CommitBatchState-PartialSuccess */\n Processing = \"Processing\",\n /** CommitBatchState-Succeeded */\n Succeeded = \"Succeeded\",\n /** CommitBatchState-Failed */\n Failed = \"Failed\",\n}\n\n/**\n * Commit Batch State. \\\n * {@link KnownCommitBatchState} can be used interchangeably with CommitBatchState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Processing**: CommitBatchState-PartialSuccess \\\n * **Succeeded**: CommitBatchState-Succeeded \\\n * **Failed**: CommitBatchState-Failed\n */\nexport type CommitBatchState = string;\n\n/** Commit Batch Details. */\nexport interface CommitBatchDetails {\n /** List of devices for which the commit operation failed. */\n failedDevices?: string[];\n}\n\nexport function commitBatchDetailsDeserializer(item: any): CommitBatchDetails {\n return {\n failedDevices: !item[\"failedDevices\"]\n ? item[\"failedDevices\"]\n : item[\"failedDevices\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Discard Commit Batch Request. */\nexport interface DiscardCommitBatchRequest {\n /** Commit Batch Identifier. If not provided, the latest commit batch status will be returned. */\n commitBatchId?: string;\n}\n\nexport function discardCommitBatchRequestSerializer(item: DiscardCommitBatchRequest): any {\n return { commitBatchId: item[\"commitBatchId\"] };\n}\n\n/** Discard Commit Batch Response. */\nexport interface DiscardCommitBatchOperationResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n /** Discard commit batch response properties. */\n properties?: DiscardCommitBatchResponseProperties;\n}\n\nexport function discardCommitBatchOperationResponseDeserializer(\n item: any,\n): DiscardCommitBatchOperationResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : discardCommitBatchResponsePropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Discard Commit Batch Response Properties. */\nexport interface DiscardCommitBatchResponseProperties {\n /** Commit Batch Identifier. */\n commitBatchId?: string;\n}\n\nexport function discardCommitBatchResponsePropertiesDeserializer(\n item: any,\n): DiscardCommitBatchResponseProperties {\n return {\n commitBatchId: item[\"commitBatchId\"],\n };\n}\n\n/** Network Fabric Lock Request. */\nexport interface NetworkFabricLockRequest {\n /** Type of lock to be applied */\n lockType?: NetworkFabricLockType;\n /** Action to be performed on the lock */\n action?: NetworkFabricLockAction;\n}\n\nexport function networkFabricLockRequestSerializer(item: NetworkFabricLockRequest): any {\n return { lockType: item[\"lockType\"], action: item[\"action\"] };\n}\n\n/** Network fabric lock action */\nexport enum KnownNetworkFabricLockAction {\n /** Perform lock operation */\n Lock = \"Lock\",\n /** Perform unlock operation */\n Unlock = \"Unlock\",\n}\n\n/**\n * Network fabric lock action \\\n * {@link KnownNetworkFabricLockAction} can be used interchangeably with NetworkFabricLockAction,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Lock**: Perform lock operation \\\n * **Unlock**: Perform unlock operation\n */\nexport type NetworkFabricLockAction = string;\n\n/** View Device Configuration Response V2. */\nexport interface ViewDeviceConfigurationOperationResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n /** View Device Configuration Response Properties. */\n properties?: ViewDeviceConfigurationResponseProperties;\n}\n\nexport function viewDeviceConfigurationOperationResponseDeserializer(\n item: any,\n): ViewDeviceConfigurationOperationResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : viewDeviceConfigurationResponsePropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** View Device Configuration Response Properties. */\nexport interface ViewDeviceConfigurationResponseProperties {\n /** Storage URL to the device configuration file. */\n deviceConfigurationUrl?: string;\n}\n\nexport function viewDeviceConfigurationResponsePropertiesDeserializer(\n item: any,\n): ViewDeviceConfigurationResponseProperties {\n return {\n deviceConfigurationUrl: item[\"deviceConfigurationUrl\"],\n };\n}\n\n/** Arm Configuration Diff Response V2. */\nexport interface ArmConfigurationDiffOperationResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n /** Arm Configuration Diff Response Properties. */\n properties?: ArmConfigurationDiffResponseProperties;\n}\n\nexport function armConfigurationDiffOperationResponseDeserializer(\n item: any,\n): ArmConfigurationDiffOperationResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : armConfigurationDiffResponsePropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Arm Configuration Diff Response Properties. */\nexport interface ArmConfigurationDiffResponseProperties {\n /** Storage URL to the diff file. */\n configurationDiffUrl?: string;\n}\n\nexport function armConfigurationDiffResponsePropertiesDeserializer(\n item: any,\n): ArmConfigurationDiffResponseProperties {\n return {\n configurationDiffUrl: item[\"configurationDiffUrl\"],\n };\n}\n\n/** Response body for a RotatePasswords request on a Network Fabric. */\nexport interface NetworkFabricRotatePasswordsResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n}\n\nexport function networkFabricRotatePasswordsResponseDeserializer(\n item: any,\n): NetworkFabricRotatePasswordsResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** Response body for a ResyncPasswords request on a Network Fabric. */\nexport interface NetworkFabricResyncPasswordsResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n}\n\nexport function networkFabricResyncPasswordsResponseDeserializer(\n item: any,\n): NetworkFabricResyncPasswordsResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** Response body for a RotateCertificates request on a Network Fabric. */\nexport interface NetworkFabricRotateCertificatesResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n}\n\nexport function networkFabricRotateCertificatesResponseDeserializer(\n item: any,\n): NetworkFabricRotateCertificatesResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** The Network To Network Interconnect resource definition. */\nexport interface NetworkToNetworkInterconnect extends ProxyResource {\n /** Type of NNI used. Example: CE | NPB */\n nniType?: NniType;\n /** Configuration to use NNI for Infrastructure Management. Example: True/False. */\n isManagementType?: IsManagementType;\n /** Based on this option layer3 parameters are mandatory. Example: True/False */\n useOptionB: BooleanEnumProperty;\n /** Common properties for Layer2 Configuration. */\n layer2Configuration?: Layer2Configuration;\n /** Common properties for Layer3Configuration. */\n optionBLayer3Configuration?: OptionBLayer3Configuration;\n /** NPB Static Route Configuration properties. */\n npbStaticRouteConfiguration?: NpbStaticRouteConfiguration;\n /** Static Route Configuration. */\n staticRouteConfiguration?: NniStaticRouteConfiguration;\n /** Import Route Policy information. */\n importRoutePolicy?: ImportRoutePolicyInformation;\n /** Export Route Policy information */\n exportRoutePolicy?: ExportRoutePolicyInformation;\n /** Egress Acl. ARM resource ID of Access Control Lists. */\n egressAclId?: string;\n /** Ingress Acl. ARM resource ID of Access Control Lists. */\n ingressAclId?: string;\n /** Micro Bidirectional Forwarding Detection (BFD) enabled/disabled state. */\n microBfdState?: MicroBfdState;\n /** Conditional Default Route Configuration properties. */\n conditionalDefaultRouteConfiguration?: ConditionalDefaultRouteProperties;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function networkToNetworkInterconnectSerializer(item: NetworkToNetworkInterconnect): any {\n return { properties: _networkToNetworkInterconnectPropertiesSerializer(item) };\n}\n\nexport function networkToNetworkInterconnectDeserializer(item: any): NetworkToNetworkInterconnect {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._networkToNetworkInterconnectPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Configuration used to setup CE-PE connectivity. */\nexport interface NetworkToNetworkInterconnectProperties {\n /** Type of NNI used. Example: CE | NPB */\n nniType?: NniType;\n /** Configuration to use NNI for Infrastructure Management. Example: True/False. */\n isManagementType?: IsManagementType;\n /** Based on this option layer3 parameters are mandatory. Example: True/False */\n useOptionB: BooleanEnumProperty;\n /** Common properties for Layer2 Configuration. */\n layer2Configuration?: Layer2Configuration;\n /** Common properties for Layer3Configuration. */\n optionBLayer3Configuration?: OptionBLayer3Configuration;\n /** NPB Static Route Configuration properties. */\n npbStaticRouteConfiguration?: NpbStaticRouteConfiguration;\n /** Static Route Configuration. */\n staticRouteConfiguration?: NniStaticRouteConfiguration;\n /** Import Route Policy information. */\n importRoutePolicy?: ImportRoutePolicyInformation;\n /** Export Route Policy information */\n exportRoutePolicy?: ExportRoutePolicyInformation;\n /** Egress Acl. ARM resource ID of Access Control Lists. */\n egressAclId?: string;\n /** Ingress Acl. ARM resource ID of Access Control Lists. */\n ingressAclId?: string;\n /** Micro Bidirectional Forwarding Detection (BFD) enabled/disabled state. */\n microBfdState?: MicroBfdState;\n /** Conditional Default Route Configuration properties. */\n conditionalDefaultRouteConfiguration?: ConditionalDefaultRouteProperties;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function networkToNetworkInterconnectPropertiesSerializer(\n item: NetworkToNetworkInterconnectProperties,\n): any {\n return {\n nniType: item[\"nniType\"],\n isManagementType: item[\"isManagementType\"],\n useOptionB: item[\"useOptionB\"],\n layer2Configuration: !item[\"layer2Configuration\"]\n ? item[\"layer2Configuration\"]\n : layer2ConfigurationSerializer(item[\"layer2Configuration\"]),\n optionBLayer3Configuration: !item[\"optionBLayer3Configuration\"]\n ? item[\"optionBLayer3Configuration\"]\n : optionBLayer3ConfigurationSerializer(item[\"optionBLayer3Configuration\"]),\n npbStaticRouteConfiguration: !item[\"npbStaticRouteConfiguration\"]\n ? item[\"npbStaticRouteConfiguration\"]\n : npbStaticRouteConfigurationSerializer(item[\"npbStaticRouteConfiguration\"]),\n staticRouteConfiguration: !item[\"staticRouteConfiguration\"]\n ? item[\"staticRouteConfiguration\"]\n : nniStaticRouteConfigurationSerializer(item[\"staticRouteConfiguration\"]),\n importRoutePolicy: !item[\"importRoutePolicy\"]\n ? item[\"importRoutePolicy\"]\n : importRoutePolicyInformationSerializer(item[\"importRoutePolicy\"]),\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : exportRoutePolicyInformationSerializer(item[\"exportRoutePolicy\"]),\n egressAclId: item[\"egressAclId\"],\n ingressAclId: item[\"ingressAclId\"],\n microBfdState: item[\"microBfdState\"],\n conditionalDefaultRouteConfiguration: !item[\"conditionalDefaultRouteConfiguration\"]\n ? item[\"conditionalDefaultRouteConfiguration\"]\n : conditionalDefaultRoutePropertiesSerializer(item[\"conditionalDefaultRouteConfiguration\"]),\n };\n}\n\nexport function networkToNetworkInterconnectPropertiesDeserializer(\n item: any,\n): NetworkToNetworkInterconnectProperties {\n return {\n nniType: item[\"nniType\"],\n isManagementType: item[\"isManagementType\"],\n useOptionB: item[\"useOptionB\"],\n layer2Configuration: !item[\"layer2Configuration\"]\n ? item[\"layer2Configuration\"]\n : layer2ConfigurationDeserializer(item[\"layer2Configuration\"]),\n optionBLayer3Configuration: !item[\"optionBLayer3Configuration\"]\n ? item[\"optionBLayer3Configuration\"]\n : optionBLayer3ConfigurationDeserializer(item[\"optionBLayer3Configuration\"]),\n npbStaticRouteConfiguration: !item[\"npbStaticRouteConfiguration\"]\n ? item[\"npbStaticRouteConfiguration\"]\n : npbStaticRouteConfigurationDeserializer(item[\"npbStaticRouteConfiguration\"]),\n staticRouteConfiguration: !item[\"staticRouteConfiguration\"]\n ? item[\"staticRouteConfiguration\"]\n : nniStaticRouteConfigurationDeserializer(item[\"staticRouteConfiguration\"]),\n importRoutePolicy: !item[\"importRoutePolicy\"]\n ? item[\"importRoutePolicy\"]\n : importRoutePolicyInformationDeserializer(item[\"importRoutePolicy\"]),\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : exportRoutePolicyInformationDeserializer(item[\"exportRoutePolicy\"]),\n egressAclId: item[\"egressAclId\"],\n ingressAclId: item[\"ingressAclId\"],\n microBfdState: item[\"microBfdState\"],\n conditionalDefaultRouteConfiguration: !item[\"conditionalDefaultRouteConfiguration\"]\n ? item[\"conditionalDefaultRouteConfiguration\"]\n : conditionalDefaultRoutePropertiesDeserializer(item[\"conditionalDefaultRouteConfiguration\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\n/** Type of NNI used. Example: CE | NPB */\nexport enum KnownNniType {\n /** NniType-CE(Customer Edge). */\n CE = \"CE\",\n /** NniType-NPB(Network Packet Broker). */\n NPB = \"NPB\",\n}\n\n/**\n * Type of NNI used. Example: CE | NPB \\\n * {@link KnownNniType} can be used interchangeably with NniType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **CE**: NniType-CE(Customer Edge). \\\n * **NPB**: NniType-NPB(Network Packet Broker).\n */\nexport type NniType = string;\n\n/** Configuration to use NNI for Infrastructure Management. Example: True/False. */\nexport enum KnownIsManagementType {\n /** IsManagementType-True */\n True = \"True\",\n /** IsManagementType-False */\n False = \"False\",\n}\n\n/**\n * Configuration to use NNI for Infrastructure Management. Example: True/False. \\\n * {@link KnownIsManagementType} can be used interchangeably with IsManagementType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **True**: IsManagementType-True \\\n * **False**: IsManagementType-False\n */\nexport type IsManagementType = string;\n\n/** Common properties for Layer2 Configuration. */\nexport interface Layer2Configuration {\n /** MTU of the packets between PE & CE. */\n mtu?: number;\n /** List of network device interfaces resource IDs. */\n interfaces?: string[];\n}\n\nexport function layer2ConfigurationSerializer(item: Layer2Configuration): any {\n return {\n mtu: item[\"mtu\"],\n interfaces: !item[\"interfaces\"]\n ? item[\"interfaces\"]\n : item[\"interfaces\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function layer2ConfigurationDeserializer(item: any): Layer2Configuration {\n return {\n mtu: item[\"mtu\"],\n interfaces: !item[\"interfaces\"]\n ? item[\"interfaces\"]\n : item[\"interfaces\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** OptionB Layer3 Configuration properties. */\nexport interface OptionBLayer3Configuration extends Layer3IpPrefixProperties {\n /** ASN of PE devices for CE/PE connectivity.Example : 28 */\n peerASN: number;\n /** VLAN for CE/PE Layer 3 connectivity.Example : 501 */\n vlanId: number;\n /** ASN of CE devices for CE/PE connectivity. */\n readonly fabricASN?: number;\n /** Provider Edge (PE) Loopback IP Address. */\n peLoopbackIpAddress?: string[];\n /** BGP Monitoring Protocol (BMP) Configuration. */\n bmpConfiguration?: NniBmpProperties;\n /** OptionB Layer3 prefix limit configuration. */\n prefixLimits?: OptionBLayer3PrefixLimitProperties[];\n}\n\nexport function optionBLayer3ConfigurationSerializer(item: OptionBLayer3Configuration): any {\n return {\n primaryIpv4Prefix: item[\"primaryIpv4Prefix\"],\n primaryIpv6Prefix: item[\"primaryIpv6Prefix\"],\n secondaryIpv4Prefix: item[\"secondaryIpv4Prefix\"],\n secondaryIpv6Prefix: item[\"secondaryIpv6Prefix\"],\n peerASN: item[\"peerASN\"],\n vlanId: item[\"vlanId\"],\n peLoopbackIpAddress: !item[\"peLoopbackIpAddress\"]\n ? item[\"peLoopbackIpAddress\"]\n : item[\"peLoopbackIpAddress\"].map((p: any) => {\n return p;\n }),\n bmpConfiguration: !item[\"bmpConfiguration\"]\n ? item[\"bmpConfiguration\"]\n : nniBmpPropertiesSerializer(item[\"bmpConfiguration\"]),\n prefixLimits: !item[\"prefixLimits\"]\n ? item[\"prefixLimits\"]\n : optionBLayer3PrefixLimitPropertiesArraySerializer(item[\"prefixLimits\"]),\n };\n}\n\nexport function optionBLayer3ConfigurationDeserializer(item: any): OptionBLayer3Configuration {\n return {\n primaryIpv4Prefix: item[\"primaryIpv4Prefix\"],\n primaryIpv6Prefix: item[\"primaryIpv6Prefix\"],\n secondaryIpv4Prefix: item[\"secondaryIpv4Prefix\"],\n secondaryIpv6Prefix: item[\"secondaryIpv6Prefix\"],\n peerASN: item[\"peerASN\"],\n vlanId: item[\"vlanId\"],\n fabricASN: item[\"fabricASN\"],\n peLoopbackIpAddress: !item[\"peLoopbackIpAddress\"]\n ? item[\"peLoopbackIpAddress\"]\n : item[\"peLoopbackIpAddress\"].map((p: any) => {\n return p;\n }),\n bmpConfiguration: !item[\"bmpConfiguration\"]\n ? item[\"bmpConfiguration\"]\n : nniBmpPropertiesDeserializer(item[\"bmpConfiguration\"]),\n prefixLimits: !item[\"prefixLimits\"]\n ? item[\"prefixLimits\"]\n : optionBLayer3PrefixLimitPropertiesArrayDeserializer(item[\"prefixLimits\"]),\n };\n}\n\n/** BGP Monitoring Protocol (BMP) properties. */\nexport interface NniBmpProperties {\n /** BGP Monitoring Protocol (BMP) Configuration State. */\n configurationState: BmpConfigurationState;\n}\n\nexport function nniBmpPropertiesSerializer(item: NniBmpProperties): any {\n return { configurationState: item[\"configurationState\"] };\n}\n\nexport function nniBmpPropertiesDeserializer(item: any): NniBmpProperties {\n return {\n configurationState: item[\"configurationState\"],\n };\n}\n\nexport function optionBLayer3PrefixLimitPropertiesArraySerializer(\n result: Array<OptionBLayer3PrefixLimitProperties>,\n): any[] {\n return result.map((item) => {\n return optionBLayer3PrefixLimitPropertiesSerializer(item);\n });\n}\n\nexport function optionBLayer3PrefixLimitPropertiesArrayDeserializer(\n result: Array<OptionBLayer3PrefixLimitProperties>,\n): any[] {\n return result.map((item) => {\n return optionBLayer3PrefixLimitPropertiesDeserializer(item);\n });\n}\n\n/** OptionB Layer3 prefix limit properties. */\nexport interface OptionBLayer3PrefixLimitProperties {\n /** Maximum number of routes allowed. */\n maximumRoutes?: number;\n}\n\nexport function optionBLayer3PrefixLimitPropertiesSerializer(\n item: OptionBLayer3PrefixLimitProperties,\n): any {\n return { maximumRoutes: item[\"maximumRoutes\"] };\n}\n\nexport function optionBLayer3PrefixLimitPropertiesDeserializer(\n item: any,\n): OptionBLayer3PrefixLimitProperties {\n return {\n maximumRoutes: item[\"maximumRoutes\"],\n };\n}\n\n/** NPB Static Route Configuration properties. */\nexport interface NpbStaticRouteConfiguration {\n /** BFD Configuration properties. */\n bfdConfiguration?: BfdConfiguration;\n /** List of IPv4 Routes. */\n ipv4Routes?: StaticRouteProperties[];\n /** List of IPv6 Routes. */\n ipv6Routes?: StaticRouteProperties[];\n}\n\nexport function npbStaticRouteConfigurationSerializer(item: NpbStaticRouteConfiguration): any {\n return {\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdConfigurationSerializer(item[\"bfdConfiguration\"]),\n ipv4Routes: !item[\"ipv4Routes\"]\n ? item[\"ipv4Routes\"]\n : staticRoutePropertiesArraySerializer(item[\"ipv4Routes\"]),\n ipv6Routes: !item[\"ipv6Routes\"]\n ? item[\"ipv6Routes\"]\n : staticRoutePropertiesArraySerializer(item[\"ipv6Routes\"]),\n };\n}\n\nexport function npbStaticRouteConfigurationDeserializer(item: any): NpbStaticRouteConfiguration {\n return {\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdConfigurationDeserializer(item[\"bfdConfiguration\"]),\n ipv4Routes: !item[\"ipv4Routes\"]\n ? item[\"ipv4Routes\"]\n : staticRoutePropertiesArrayDeserializer(item[\"ipv4Routes\"]),\n ipv6Routes: !item[\"ipv6Routes\"]\n ? item[\"ipv6Routes\"]\n : staticRoutePropertiesArrayDeserializer(item[\"ipv6Routes\"]),\n };\n}\n\n/** Static Route Configuration properties for NNI. */\nexport interface NniStaticRouteConfiguration {\n /** BFD configuration properties */\n bfdConfiguration?: BfdConfiguration;\n /** List of IPv4 Routes. */\n ipv4Routes?: StaticRouteProperties[];\n /** List of IPv6 Routes. */\n ipv6Routes?: StaticRouteProperties[];\n}\n\nexport function nniStaticRouteConfigurationSerializer(item: NniStaticRouteConfiguration): any {\n return {\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdConfigurationSerializer(item[\"bfdConfiguration\"]),\n ipv4Routes: !item[\"ipv4Routes\"]\n ? item[\"ipv4Routes\"]\n : staticRoutePropertiesArraySerializer(item[\"ipv4Routes\"]),\n ipv6Routes: !item[\"ipv6Routes\"]\n ? item[\"ipv6Routes\"]\n : staticRoutePropertiesArraySerializer(item[\"ipv6Routes\"]),\n };\n}\n\nexport function nniStaticRouteConfigurationDeserializer(item: any): NniStaticRouteConfiguration {\n return {\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdConfigurationDeserializer(item[\"bfdConfiguration\"]),\n ipv4Routes: !item[\"ipv4Routes\"]\n ? item[\"ipv4Routes\"]\n : staticRoutePropertiesArrayDeserializer(item[\"ipv4Routes\"]),\n ipv6Routes: !item[\"ipv6Routes\"]\n ? item[\"ipv6Routes\"]\n : staticRoutePropertiesArrayDeserializer(item[\"ipv6Routes\"]),\n };\n}\n\n/** Import Route Policy Configuration. */\nexport interface ImportRoutePolicyInformation {\n /** Import IPv4 Route Policy Id. */\n importIpv4RoutePolicyId?: string;\n /** Import IPv6 Route Policy Id. */\n importIpv6RoutePolicyId?: string;\n}\n\nexport function importRoutePolicyInformationSerializer(item: ImportRoutePolicyInformation): any {\n return {\n importIpv4RoutePolicyId: item[\"importIpv4RoutePolicyId\"],\n importIpv6RoutePolicyId: item[\"importIpv6RoutePolicyId\"],\n };\n}\n\nexport function importRoutePolicyInformationDeserializer(item: any): ImportRoutePolicyInformation {\n return {\n importIpv4RoutePolicyId: item[\"importIpv4RoutePolicyId\"],\n importIpv6RoutePolicyId: item[\"importIpv6RoutePolicyId\"],\n };\n}\n\n/** Export Route Policy Configuration. */\nexport interface ExportRoutePolicyInformation {\n /** Export IPv4 Route Policy Id. */\n exportIpv4RoutePolicyId?: string;\n /** Export IPv6 Route Policy Id. */\n exportIpv6RoutePolicyId?: string;\n}\n\nexport function exportRoutePolicyInformationSerializer(item: ExportRoutePolicyInformation): any {\n return {\n exportIpv4RoutePolicyId: item[\"exportIpv4RoutePolicyId\"],\n exportIpv6RoutePolicyId: item[\"exportIpv6RoutePolicyId\"],\n };\n}\n\nexport function exportRoutePolicyInformationDeserializer(item: any): ExportRoutePolicyInformation {\n return {\n exportIpv4RoutePolicyId: item[\"exportIpv4RoutePolicyId\"],\n exportIpv6RoutePolicyId: item[\"exportIpv6RoutePolicyId\"],\n };\n}\n\n/** Micro Bidirectional Forwarding Detection (BFD) enabled/disabled state. */\nexport enum KnownMicroBfdState {\n /** MicroBfdState-Enabled */\n Enabled = \"Enabled\",\n /** MicroBfdState-Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * Micro Bidirectional Forwarding Detection (BFD) enabled/disabled state. \\\n * {@link KnownMicroBfdState} can be used interchangeably with MicroBfdState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: MicroBfdState-Enabled \\\n * **Disabled**: MicroBfdState-Disabled\n */\nexport type MicroBfdState = string;\n\n/** Conditional Default Route Configuration properties. */\nexport interface ConditionalDefaultRouteProperties {\n /** List of IPv4 Routes. */\n ipv4Routes?: StaticRouteProperties[];\n /** List of IPv6 Routes. */\n ipv6Routes?: StaticRouteProperties[];\n}\n\nexport function conditionalDefaultRoutePropertiesSerializer(\n item: ConditionalDefaultRouteProperties,\n): any {\n return {\n ipv4Routes: !item[\"ipv4Routes\"]\n ? item[\"ipv4Routes\"]\n : staticRoutePropertiesArraySerializer(item[\"ipv4Routes\"]),\n ipv6Routes: !item[\"ipv6Routes\"]\n ? item[\"ipv6Routes\"]\n : staticRoutePropertiesArraySerializer(item[\"ipv6Routes\"]),\n };\n}\n\nexport function conditionalDefaultRoutePropertiesDeserializer(\n item: any,\n): ConditionalDefaultRouteProperties {\n return {\n ipv4Routes: !item[\"ipv4Routes\"]\n ? item[\"ipv4Routes\"]\n : staticRoutePropertiesArrayDeserializer(item[\"ipv4Routes\"]),\n ipv6Routes: !item[\"ipv6Routes\"]\n ? item[\"ipv6Routes\"]\n : staticRoutePropertiesArrayDeserializer(item[\"ipv6Routes\"]),\n };\n}\n\n/** The Network To Network Interconnect resource patch definition. */\nexport interface NetworkToNetworkInterconnectPatch extends ProxyResourceBase {\n /** Common properties for Layer2Configuration. */\n layer2Configuration?: Layer2ConfigurationPatch;\n /** Common properties for Layer3Configuration. */\n optionBLayer3Configuration?: OptionBLayer3ConfigurationPatchProperties;\n /** NPB Static Route Configuration properties. */\n npbStaticRouteConfiguration?: NpbStaticRouteConfigurationPatch;\n /** Static Route Configuration. */\n staticRouteConfiguration?: NniStaticRoutePatchConfiguration;\n /** Import Route Policy information. */\n importRoutePolicy?: ImportRoutePolicyInformationPatch;\n /** Export Route Policy information */\n exportRoutePolicy?: ExportRoutePolicyInformationPatch;\n /** Egress Acl. ARM resource ID of Access Control Lists. */\n egressAclId?: string;\n /** Ingress Acl. ARM resource ID of Access Control Lists. */\n ingressAclId?: string;\n /** Micro BFD enabled/disabled state. */\n microBfdState?: MicroBfdState;\n}\n\nexport function networkToNetworkInterconnectPatchSerializer(\n item: NetworkToNetworkInterconnectPatch,\n): any {\n return {\n properties: areAllPropsUndefined(item, [\n \"layer2Configuration\",\n \"optionBLayer3Configuration\",\n \"npbStaticRouteConfiguration\",\n \"staticRouteConfiguration\",\n \"importRoutePolicy\",\n \"exportRoutePolicy\",\n \"egressAclId\",\n \"ingressAclId\",\n \"microBfdState\",\n ])\n ? undefined\n : _networkToNetworkInterconnectPatchPropertiesSerializer(item),\n };\n}\n\n/** Network Tap Rule Patch properties. */\nexport interface NetworkToNetworkInterconnectPatchProperties {\n /** Common properties for Layer2Configuration. */\n layer2Configuration?: Layer2ConfigurationPatch;\n /** Common properties for Layer3Configuration. */\n optionBLayer3Configuration?: OptionBLayer3ConfigurationPatchProperties;\n /** NPB Static Route Configuration properties. */\n npbStaticRouteConfiguration?: NpbStaticRouteConfigurationPatch;\n /** Static Route Configuration. */\n staticRouteConfiguration?: NniStaticRoutePatchConfiguration;\n /** Import Route Policy information. */\n importRoutePolicy?: ImportRoutePolicyInformationPatch;\n /** Export Route Policy information */\n exportRoutePolicy?: ExportRoutePolicyInformationPatch;\n /** Egress Acl. ARM resource ID of Access Control Lists. */\n egressAclId?: string;\n /** Ingress Acl. ARM resource ID of Access Control Lists. */\n ingressAclId?: string;\n /** Micro BFD enabled/disabled state. */\n microBfdState?: MicroBfdState;\n}\n\nexport function networkToNetworkInterconnectPatchPropertiesSerializer(\n item: NetworkToNetworkInterconnectPatchProperties,\n): any {\n return {\n layer2Configuration: !item[\"layer2Configuration\"]\n ? item[\"layer2Configuration\"]\n : layer2ConfigurationPatchSerializer(item[\"layer2Configuration\"]),\n optionBLayer3Configuration: !item[\"optionBLayer3Configuration\"]\n ? item[\"optionBLayer3Configuration\"]\n : optionBLayer3ConfigurationPatchPropertiesSerializer(item[\"optionBLayer3Configuration\"]),\n npbStaticRouteConfiguration: !item[\"npbStaticRouteConfiguration\"]\n ? item[\"npbStaticRouteConfiguration\"]\n : npbStaticRouteConfigurationPatchSerializer(item[\"npbStaticRouteConfiguration\"]),\n staticRouteConfiguration: !item[\"staticRouteConfiguration\"]\n ? item[\"staticRouteConfiguration\"]\n : nniStaticRoutePatchConfigurationSerializer(item[\"staticRouteConfiguration\"]),\n importRoutePolicy: !item[\"importRoutePolicy\"]\n ? item[\"importRoutePolicy\"]\n : importRoutePolicyInformationPatchSerializer(item[\"importRoutePolicy\"]),\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : exportRoutePolicyInformationPatchSerializer(item[\"exportRoutePolicy\"]),\n egressAclId: item[\"egressAclId\"],\n ingressAclId: item[\"ingressAclId\"],\n microBfdState: item[\"microBfdState\"],\n };\n}\n\n/** Common properties for Layer2 Configuration. */\nexport interface Layer2ConfigurationPatch {\n /** MTU of the packets between PE & CE. */\n mtu?: number;\n /** List of network device interfaces resource IDs. */\n interfaces?: string[];\n}\n\nexport function layer2ConfigurationPatchSerializer(item: Layer2ConfigurationPatch): any {\n return {\n mtu: item[\"mtu\"],\n interfaces: !item[\"interfaces\"]\n ? item[\"interfaces\"]\n : item[\"interfaces\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Common properties for Layer3Configuration. */\nexport interface OptionBLayer3ConfigurationPatchProperties extends Layer3IpPrefixPatchProperties {\n /** ASN of PE devices for CE/PE connectivity.Example : 28 */\n peerASN?: number;\n /** VLAN for CE/PE Layer 3 connectivity.Example : 501 */\n vlanId?: number;\n /** ASN of CE devices for CE/PE connectivity. */\n readonly fabricASN?: number;\n /** Provider Edge (PE) Loopback IP Address. */\n peLoopbackIpAddress?: string[];\n /** BGP Monitoring Protocol (BMP) Configuration. */\n bmpConfiguration?: NniBmpPatchProperties;\n /** OptionB Layer3 prefix limit configuration. */\n prefixLimits?: OptionBLayer3PrefixLimitPatchProperties[];\n}\n\nexport function optionBLayer3ConfigurationPatchPropertiesSerializer(\n item: OptionBLayer3ConfigurationPatchProperties,\n): any {\n return {\n primaryIpv4Prefix: item[\"primaryIpv4Prefix\"],\n primaryIpv6Prefix: item[\"primaryIpv6Prefix\"],\n secondaryIpv4Prefix: item[\"secondaryIpv4Prefix\"],\n secondaryIpv6Prefix: item[\"secondaryIpv6Prefix\"],\n peerASN: item[\"peerASN\"],\n vlanId: item[\"vlanId\"],\n peLoopbackIpAddress: !item[\"peLoopbackIpAddress\"]\n ? item[\"peLoopbackIpAddress\"]\n : item[\"peLoopbackIpAddress\"].map((p: any) => {\n return p;\n }),\n bmpConfiguration: !item[\"bmpConfiguration\"]\n ? item[\"bmpConfiguration\"]\n : nniBmpPatchPropertiesSerializer(item[\"bmpConfiguration\"]),\n prefixLimits: !item[\"prefixLimits\"]\n ? item[\"prefixLimits\"]\n : optionBLayer3PrefixLimitPatchPropertiesArraySerializer(item[\"prefixLimits\"]),\n };\n}\n\n/** BGP Monitoring Protocol (BMP) patch properties. */\nexport interface NniBmpPatchProperties {\n /** (BGP Monitoring Protocol (BMP) configuration state. */\n configurationState?: BmpConfigurationState;\n}\n\nexport function nniBmpPatchPropertiesSerializer(item: NniBmpPatchProperties): any {\n return { configurationState: item[\"configurationState\"] };\n}\n\nexport function optionBLayer3PrefixLimitPatchPropertiesArraySerializer(\n result: Array<OptionBLayer3PrefixLimitPatchProperties>,\n): any[] {\n return result.map((item) => {\n return optionBLayer3PrefixLimitPatchPropertiesSerializer(item);\n });\n}\n\n/** OptionB Layer3 prefix limit patch properties. */\nexport interface OptionBLayer3PrefixLimitPatchProperties {\n /** Maximum number of routes allowed. */\n maximumRoutes?: number;\n}\n\nexport function optionBLayer3PrefixLimitPatchPropertiesSerializer(\n item: OptionBLayer3PrefixLimitPatchProperties,\n): any {\n return { maximumRoutes: item[\"maximumRoutes\"] };\n}\n\n/** NPB Static Route Configuration properties. */\nexport interface NpbStaticRouteConfigurationPatch {\n /** BFD Configuration properties. */\n bfdConfiguration?: BfdPatchConfiguration;\n /** List of IPv4 Routes. */\n ipv4Routes?: StaticRoutePatchProperties[];\n /** List of IPv6 Routes. */\n ipv6Routes?: StaticRoutePatchProperties[];\n}\n\nexport function npbStaticRouteConfigurationPatchSerializer(\n item: NpbStaticRouteConfigurationPatch,\n): any {\n return {\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdPatchConfigurationSerializer(item[\"bfdConfiguration\"]),\n ipv4Routes: !item[\"ipv4Routes\"]\n ? item[\"ipv4Routes\"]\n : staticRoutePatchPropertiesArraySerializer(item[\"ipv4Routes\"]),\n ipv6Routes: !item[\"ipv6Routes\"]\n ? item[\"ipv6Routes\"]\n : staticRoutePatchPropertiesArraySerializer(item[\"ipv6Routes\"]),\n };\n}\n\n/** Static Route Configuration properties for NNI. */\nexport interface NniStaticRoutePatchConfiguration {\n /** Bidirectional Forwarding Detection (BFD) configuration properties */\n bfdConfiguration?: BfdPatchConfiguration;\n /** List of IPv4 Routes. */\n ipv4Routes?: StaticRoutePatchProperties[];\n /** List of IPv6 Routes. */\n ipv6Routes?: StaticRoutePatchProperties[];\n}\n\nexport function nniStaticRoutePatchConfigurationSerializer(\n item: NniStaticRoutePatchConfiguration,\n): any {\n return {\n bfdConfiguration: !item[\"bfdConfiguration\"]\n ? item[\"bfdConfiguration\"]\n : bfdPatchConfigurationSerializer(item[\"bfdConfiguration\"]),\n ipv4Routes: !item[\"ipv4Routes\"]\n ? item[\"ipv4Routes\"]\n : staticRoutePatchPropertiesArraySerializer(item[\"ipv4Routes\"]),\n ipv6Routes: !item[\"ipv6Routes\"]\n ? item[\"ipv6Routes\"]\n : staticRoutePatchPropertiesArraySerializer(item[\"ipv6Routes\"]),\n };\n}\n\n/** Import Route Policy Configuration. */\nexport interface ImportRoutePolicyInformationPatch {\n /** Import IPv4 Route Policy Id. */\n importIpv4RoutePolicyId?: string;\n /** Import IPv6 Route Policy Id. */\n importIpv6RoutePolicyId?: string;\n}\n\nexport function importRoutePolicyInformationPatchSerializer(\n item: ImportRoutePolicyInformationPatch,\n): any {\n return {\n importIpv4RoutePolicyId: item[\"importIpv4RoutePolicyId\"],\n importIpv6RoutePolicyId: item[\"importIpv6RoutePolicyId\"],\n };\n}\n\n/** Export Route Policy Configuration. */\nexport interface ExportRoutePolicyInformationPatch {\n /** Export IPv4 Route Policy Id. */\n exportIpv4RoutePolicyId?: string;\n /** Export IPv6 Route Policy Id. */\n exportIpv6RoutePolicyId?: string;\n}\n\nexport function exportRoutePolicyInformationPatchSerializer(\n item: ExportRoutePolicyInformationPatch,\n): any {\n return {\n exportIpv4RoutePolicyId: item[\"exportIpv4RoutePolicyId\"],\n exportIpv6RoutePolicyId: item[\"exportIpv6RoutePolicyId\"],\n };\n}\n\n/** ProxyResourceBase with no property bag */\nexport interface ProxyResourceBase {\n /** Fully qualified resource ID for the resource. E.g. '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}' */\n readonly id?: string;\n /** The type of the resource. E.g. 'Microsoft.Compute/virtualMachines' or 'Microsoft.Storage/storageAccounts' */\n readonly type?: string;\n /** Azure Resource Manager metadata containing createdBy and modifiedBy information. */\n readonly systemData?: SystemData;\n}\n\nexport function proxyResourceBaseSerializer(_item: ProxyResourceBase): any {\n return {};\n}\n\n/** Paged collection of NetworkToNetworkInterconnect items */\nexport interface _NetworkToNetworkInterconnectsList {\n /** The NetworkToNetworkInterconnect items on this page */\n value: NetworkToNetworkInterconnect[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _networkToNetworkInterconnectsListDeserializer(\n item: any,\n): _NetworkToNetworkInterconnectsList {\n return {\n value: networkToNetworkInterconnectArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function networkToNetworkInterconnectArraySerializer(\n result: Array<NetworkToNetworkInterconnect>,\n): any[] {\n return result.map((item) => {\n return networkToNetworkInterconnectSerializer(item);\n });\n}\n\nexport function networkToNetworkInterconnectArrayDeserializer(\n result: Array<NetworkToNetworkInterconnect>,\n): any[] {\n return result.map((item) => {\n return networkToNetworkInterconnectDeserializer(item);\n });\n}\n\n/** NNI Bidirectional Forwarding Detection (BFD) Administrative State request. */\nexport interface NniUpdateBfdAdministrativeStateRequest {\n /** Route Type. Choose either Static or OptionA. */\n routeType?: RouteType;\n /** State. Select either enable or disable. */\n administrativeState?: BfdAdministrativeState;\n}\n\nexport function nniUpdateBfdAdministrativeStateRequestSerializer(\n item: NniUpdateBfdAdministrativeStateRequest,\n): any {\n return { routeType: item[\"routeType\"], administrativeState: item[\"administrativeState\"] };\n}\n\n/** Route type to be used. */\nexport enum KnownRouteType {\n /** RouteType-Static */\n Static = \"Static\",\n /** RouteType-OptionA */\n OptionA = \"OptionA\",\n}\n\n/**\n * Route type to be used. \\\n * {@link KnownRouteType} can be used interchangeably with RouteType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Static**: RouteType-Static \\\n * **OptionA**: RouteType-OptionA\n */\nexport type RouteType = string;\n\n/** NNI Bidirectional Forwarding Detection (BFD) Administrative State response. */\nexport interface NniUpdateBfdAdministrativeStateResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n /** Properties of the NNI BFD Administrative State response. */\n properties?: NniUpdateBfdAdministrativeStateResponseProperties;\n}\n\nexport function nniUpdateBfdAdministrativeStateResponseDeserializer(\n item: any,\n): NniUpdateBfdAdministrativeStateResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : nniUpdateBfdAdministrativeStateResponsePropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** NNI Bidirectional Forwarding Detection (BFD) Update Administrative State response. */\nexport interface NniUpdateBfdAdministrativeStateResponseProperties {\n /** Route Type. Choose either Static or OptionA. */\n routeType?: RouteType;\n /** State. Select either enable or disable. */\n administrativeState?: BfdAdministrativeState;\n}\n\nexport function nniUpdateBfdAdministrativeStateResponsePropertiesDeserializer(\n item: any,\n): NniUpdateBfdAdministrativeStateResponseProperties {\n return {\n routeType: item[\"routeType\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\n/** The NetworkPacketBroker resource definition. */\nexport interface NetworkPacketBroker extends TrackedResource {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentity;\n /** ARM resource ID of the Network Fabric. */\n networkFabricId: string;\n /** List of ARM resource IDs of Network Devices [NPB]. */\n readonly networkDeviceIds?: string[];\n /** List of network interfaces across NPB devices that are used to mirror source traffic. */\n readonly sourceInterfaceIds?: string[];\n /** List of network Tap IDs configured on NPB. */\n readonly networkTapIds?: string[];\n /** List of neighbor group IDs configured on NPB. */\n readonly neighborGroupIds?: string[];\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n}\n\nexport function networkPacketBrokerSerializer(item: NetworkPacketBroker): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: _networkPacketBrokerPropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentitySerializer(item[\"identity\"]),\n };\n}\n\nexport function networkPacketBrokerDeserializer(item: any): NetworkPacketBroker {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._networkPacketBrokerPropertiesDeserializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityDeserializer(item[\"identity\"]),\n };\n}\n\n/** Network Packet Broker Properties defines the properties of the resource. */\nexport interface NetworkPacketBrokerProperties {\n /** ARM resource ID of the Network Fabric. */\n networkFabricId: string;\n /** List of ARM resource IDs of Network Devices [NPB]. */\n readonly networkDeviceIds?: string[];\n /** List of network interfaces across NPB devices that are used to mirror source traffic. */\n readonly sourceInterfaceIds?: string[];\n /** List of network Tap IDs configured on NPB. */\n readonly networkTapIds?: string[];\n /** List of neighbor group IDs configured on NPB. */\n readonly neighborGroupIds?: string[];\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n}\n\nexport function networkPacketBrokerPropertiesSerializer(item: NetworkPacketBrokerProperties): any {\n return { networkFabricId: item[\"networkFabricId\"] };\n}\n\nexport function networkPacketBrokerPropertiesDeserializer(\n item: any,\n): NetworkPacketBrokerProperties {\n return {\n networkFabricId: item[\"networkFabricId\"],\n networkDeviceIds: !item[\"networkDeviceIds\"]\n ? item[\"networkDeviceIds\"]\n : item[\"networkDeviceIds\"].map((p: any) => {\n return p;\n }),\n sourceInterfaceIds: !item[\"sourceInterfaceIds\"]\n ? item[\"sourceInterfaceIds\"]\n : item[\"sourceInterfaceIds\"].map((p: any) => {\n return p;\n }),\n networkTapIds: !item[\"networkTapIds\"]\n ? item[\"networkTapIds\"]\n : item[\"networkTapIds\"].map((p: any) => {\n return p;\n }),\n neighborGroupIds: !item[\"neighborGroupIds\"]\n ? item[\"neighborGroupIds\"]\n : item[\"neighborGroupIds\"].map((p: any) => {\n return p;\n }),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n provisioningState: item[\"provisioningState\"],\n configurationState: item[\"configurationState\"],\n };\n}\n\n/** The NetworkPacketBroker patch resource definition. */\nexport interface NetworkPacketBrokerPatch extends TagsUpdate {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentityPatch;\n}\n\nexport function networkPacketBrokerPatchSerializer(item: NetworkPacketBrokerPatch): any {\n return {\n tags: item[\"tags\"],\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityPatchSerializer(item[\"identity\"]),\n };\n}\n\n/** Paged collection of NetworkPacketBroker items */\nexport interface _NetworkPacketBrokersListResult {\n /** The NetworkPacketBroker items on this page */\n value: NetworkPacketBroker[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _networkPacketBrokersListResultDeserializer(\n item: any,\n): _NetworkPacketBrokersListResult {\n return {\n value: networkPacketBrokerArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function networkPacketBrokerArraySerializer(result: Array<NetworkPacketBroker>): any[] {\n return result.map((item) => {\n return networkPacketBrokerSerializer(item);\n });\n}\n\nexport function networkPacketBrokerArrayDeserializer(result: Array<NetworkPacketBroker>): any[] {\n return result.map((item) => {\n return networkPacketBrokerDeserializer(item);\n });\n}\n\n/** The Network Rack resource definition. */\nexport interface NetworkRack extends TrackedResource {\n /** Switch configuration description. */\n annotation?: string;\n /** Network Rack SKU name. */\n networkRackType?: NetworkRackType;\n /** ARM resource ID of the Network Fabric. */\n networkFabricId: string;\n /** List of network device ARM resource IDs. */\n readonly networkDevices?: string[];\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n}\n\nexport function networkRackSerializer(item: NetworkRack): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: _networkRackPropertiesSerializer(item),\n };\n}\n\nexport function networkRackDeserializer(item: any): NetworkRack {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._networkRackPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Network Rack Properties defines the properties of the resource. */\nexport interface NetworkRackProperties extends AnnotationResource {\n /** Network Rack SKU name. */\n networkRackType?: NetworkRackType;\n /** ARM resource ID of the Network Fabric. */\n networkFabricId: string;\n /** List of network device ARM resource IDs. */\n readonly networkDevices?: string[];\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n}\n\nexport function networkRackPropertiesSerializer(item: NetworkRackProperties): any {\n return {\n annotation: item[\"annotation\"],\n networkRackType: item[\"networkRackType\"],\n networkFabricId: item[\"networkFabricId\"],\n };\n}\n\nexport function networkRackPropertiesDeserializer(item: any): NetworkRackProperties {\n return {\n annotation: item[\"annotation\"],\n networkRackType: item[\"networkRackType\"],\n networkFabricId: item[\"networkFabricId\"],\n networkDevices: !item[\"networkDevices\"]\n ? item[\"networkDevices\"]\n : item[\"networkDevices\"].map((p: any) => {\n return p;\n }),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n provisioningState: item[\"provisioningState\"],\n configurationState: item[\"configurationState\"],\n };\n}\n\n/** Network Rack SKU name. */\nexport enum KnownNetworkRackType {\n /** NetworkRackType-Aggregate */\n Aggregate = \"Aggregate\",\n /** NetworkRackType-Compute */\n Compute = \"Compute\",\n /** NetworkRackType-Combined */\n Combined = \"Combined\",\n}\n\n/**\n * Network Rack SKU name. \\\n * {@link KnownNetworkRackType} can be used interchangeably with NetworkRackType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Aggregate**: NetworkRackType-Aggregate \\\n * **Compute**: NetworkRackType-Compute \\\n * **Combined**: NetworkRackType-Combined\n */\nexport type NetworkRackType = string;\n\n/** Network Rack patch resource definition. */\nexport interface NetworkRackPatch {\n /** Resource tags. */\n tags?: Record<string, string>;\n}\n\nexport function networkRackPatchSerializer(item: NetworkRackPatch): any {\n return { tags: item[\"tags\"] };\n}\n\n/** Paged collection of NetworkRack items */\nexport interface _NetworkRacksListResult {\n /** The NetworkRack items on this page */\n value: NetworkRack[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _networkRacksListResultDeserializer(item: any): _NetworkRacksListResult {\n return {\n value: networkRackArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function networkRackArraySerializer(result: Array<NetworkRack>): any[] {\n return result.map((item) => {\n return networkRackSerializer(item);\n });\n}\n\nexport function networkRackArrayDeserializer(result: Array<NetworkRack>): any[] {\n return result.map((item) => {\n return networkRackDeserializer(item);\n });\n}\n\n/** The NetworkTapRule resource definition. */\nexport interface NetworkTapRule extends TrackedResource {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentity;\n /** Switch configuration description. */\n annotation?: string;\n /** Input method to configure Network Tap Rule. */\n configurationType: ConfigurationType;\n /** Network Tap Rules file URL. */\n tapRulesUrl?: string;\n /** The selection of the managed identity to use with this storage account. The identity type must be either system assigned or user assigned. */\n identitySelector?: IdentitySelector;\n /** List of match configurations. */\n matchConfigurations?: NetworkTapRuleMatchConfiguration[];\n /** List of dynamic match configurations. */\n dynamicMatchConfigurations?: CommonDynamicMatchConfiguration[];\n /** The ARM resource Id of the NetworkTap. */\n readonly networkTapId?: string;\n /** The ARM resource Id of the NetworkTap Rules. */\n readonly networkTapIds?: string[];\n /** Polling interval in seconds. */\n pollingIntervalInSeconds?: number;\n /** The last sync timestamp. */\n readonly lastSyncedTime?: Date;\n /** Global network tap rule actions */\n globalNetworkTapRuleActions?: GlobalNetworkTapRuleActionProperties;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Associated Network Fabric Resource IDs */\n readonly networkFabricIds?: string[];\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function networkTapRuleSerializer(item: NetworkTapRule): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: _networkTapRulePropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentitySerializer(item[\"identity\"]),\n };\n}\n\nexport function networkTapRuleDeserializer(item: any): NetworkTapRule {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._networkTapRulePropertiesDeserializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityDeserializer(item[\"identity\"]),\n };\n}\n\n/** Network Tap Rule Properties defines the resource properties. */\nexport interface NetworkTapRuleProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** Input method to configure Network Tap Rule. */\n configurationType: ConfigurationType;\n /** Network Tap Rules file URL. */\n tapRulesUrl?: string;\n /** The selection of the managed identity to use with this storage account. The identity type must be either system assigned or user assigned. */\n identitySelector?: IdentitySelector;\n /** List of match configurations. */\n matchConfigurations?: NetworkTapRuleMatchConfiguration[];\n /** List of dynamic match configurations. */\n dynamicMatchConfigurations?: CommonDynamicMatchConfiguration[];\n /** The ARM resource Id of the NetworkTap. */\n readonly networkTapId?: string;\n /** The ARM resource Id of the NetworkTap Rules. */\n readonly networkTapIds?: string[];\n /** Polling interval in seconds. */\n pollingIntervalInSeconds?: number;\n /** The last sync timestamp. */\n readonly lastSyncedTime?: Date;\n /** Global network tap rule actions */\n globalNetworkTapRuleActions?: GlobalNetworkTapRuleActionProperties;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Associated Network Fabric Resource IDs */\n readonly networkFabricIds?: string[];\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function networkTapRulePropertiesSerializer(item: NetworkTapRuleProperties): any {\n return {\n annotation: item[\"annotation\"],\n configurationType: item[\"configurationType\"],\n tapRulesUrl: item[\"tapRulesUrl\"],\n identitySelector: !item[\"identitySelector\"]\n ? item[\"identitySelector\"]\n : identitySelectorSerializer(item[\"identitySelector\"]),\n matchConfigurations: !item[\"matchConfigurations\"]\n ? item[\"matchConfigurations\"]\n : networkTapRuleMatchConfigurationArraySerializer(item[\"matchConfigurations\"]),\n dynamicMatchConfigurations: !item[\"dynamicMatchConfigurations\"]\n ? item[\"dynamicMatchConfigurations\"]\n : commonDynamicMatchConfigurationArraySerializer(item[\"dynamicMatchConfigurations\"]),\n pollingIntervalInSeconds: item[\"pollingIntervalInSeconds\"],\n globalNetworkTapRuleActions: !item[\"globalNetworkTapRuleActions\"]\n ? item[\"globalNetworkTapRuleActions\"]\n : globalNetworkTapRuleActionPropertiesSerializer(item[\"globalNetworkTapRuleActions\"]),\n };\n}\n\nexport function networkTapRulePropertiesDeserializer(item: any): NetworkTapRuleProperties {\n return {\n annotation: item[\"annotation\"],\n configurationType: item[\"configurationType\"],\n tapRulesUrl: item[\"tapRulesUrl\"],\n identitySelector: !item[\"identitySelector\"]\n ? item[\"identitySelector\"]\n : identitySelectorDeserializer(item[\"identitySelector\"]),\n matchConfigurations: !item[\"matchConfigurations\"]\n ? item[\"matchConfigurations\"]\n : networkTapRuleMatchConfigurationArrayDeserializer(item[\"matchConfigurations\"]),\n dynamicMatchConfigurations: !item[\"dynamicMatchConfigurations\"]\n ? item[\"dynamicMatchConfigurations\"]\n : commonDynamicMatchConfigurationArrayDeserializer(item[\"dynamicMatchConfigurations\"]),\n networkTapId: item[\"networkTapId\"],\n networkTapIds: !item[\"networkTapIds\"]\n ? item[\"networkTapIds\"]\n : item[\"networkTapIds\"].map((p: any) => {\n return p;\n }),\n pollingIntervalInSeconds: item[\"pollingIntervalInSeconds\"],\n lastSyncedTime: !item[\"lastSyncedTime\"]\n ? item[\"lastSyncedTime\"]\n : new Date(item[\"lastSyncedTime\"]),\n globalNetworkTapRuleActions: !item[\"globalNetworkTapRuleActions\"]\n ? item[\"globalNetworkTapRuleActions\"]\n : globalNetworkTapRuleActionPropertiesDeserializer(item[\"globalNetworkTapRuleActions\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n networkFabricIds: !item[\"networkFabricIds\"]\n ? item[\"networkFabricIds\"]\n : item[\"networkFabricIds\"].map((p: any) => {\n return p;\n }),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\nexport function networkTapRuleMatchConfigurationArraySerializer(\n result: Array<NetworkTapRuleMatchConfiguration>,\n): any[] {\n return result.map((item) => {\n return networkTapRuleMatchConfigurationSerializer(item);\n });\n}\n\nexport function networkTapRuleMatchConfigurationArrayDeserializer(\n result: Array<NetworkTapRuleMatchConfiguration>,\n): any[] {\n return result.map((item) => {\n return networkTapRuleMatchConfigurationDeserializer(item);\n });\n}\n\n/** Defines the match configuration that are supported to filter the traffic. */\nexport interface NetworkTapRuleMatchConfiguration {\n /** The name of the match configuration. */\n matchConfigurationName?: string;\n /** Sequence Number of the match configuration.. */\n sequenceNumber?: number;\n /** Type of IP Address. IPv4 or IPv6 */\n ipAddressType?: IPAddressType;\n /** List of the match conditions. */\n matchConditions?: NetworkTapRuleMatchCondition[];\n /** List of actions that need to be performed for the matched conditions. */\n actions?: NetworkTapRuleAction[];\n}\n\nexport function networkTapRuleMatchConfigurationSerializer(\n item: NetworkTapRuleMatchConfiguration,\n): any {\n return {\n matchConfigurationName: item[\"matchConfigurationName\"],\n sequenceNumber: item[\"sequenceNumber\"],\n ipAddressType: item[\"ipAddressType\"],\n matchConditions: !item[\"matchConditions\"]\n ? item[\"matchConditions\"]\n : networkTapRuleMatchConditionArraySerializer(item[\"matchConditions\"]),\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : networkTapRuleActionArraySerializer(item[\"actions\"]),\n };\n}\n\nexport function networkTapRuleMatchConfigurationDeserializer(\n item: any,\n): NetworkTapRuleMatchConfiguration {\n return {\n matchConfigurationName: item[\"matchConfigurationName\"],\n sequenceNumber: item[\"sequenceNumber\"],\n ipAddressType: item[\"ipAddressType\"],\n matchConditions: !item[\"matchConditions\"]\n ? item[\"matchConditions\"]\n : networkTapRuleMatchConditionArrayDeserializer(item[\"matchConditions\"]),\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : networkTapRuleActionArrayDeserializer(item[\"actions\"]),\n };\n}\n\nexport function networkTapRuleMatchConditionArraySerializer(\n result: Array<NetworkTapRuleMatchCondition>,\n): any[] {\n return result.map((item) => {\n return networkTapRuleMatchConditionSerializer(item);\n });\n}\n\nexport function networkTapRuleMatchConditionArrayDeserializer(\n result: Array<NetworkTapRuleMatchCondition>,\n): any[] {\n return result.map((item) => {\n return networkTapRuleMatchConditionDeserializer(item);\n });\n}\n\n/** Defines the match condition that is supported to filter the traffic. */\nexport interface NetworkTapRuleMatchCondition extends CommonMatchConditions {\n /** Encapsulation Type that needs to be matched. */\n encapsulationType?: EncapsulationType;\n /** Defines the port condition that needs to be matched. */\n portCondition?: PortCondition;\n}\n\nexport function networkTapRuleMatchConditionSerializer(item: NetworkTapRuleMatchCondition): any {\n return {\n protocolTypes: !item[\"protocolTypes\"]\n ? item[\"protocolTypes\"]\n : item[\"protocolTypes\"].map((p: any) => {\n return p;\n }),\n vlanMatchCondition: !item[\"vlanMatchCondition\"]\n ? item[\"vlanMatchCondition\"]\n : vlanMatchConditionSerializer(item[\"vlanMatchCondition\"]),\n ipCondition: !item[\"ipCondition\"]\n ? item[\"ipCondition\"]\n : ipMatchConditionSerializer(item[\"ipCondition\"]),\n encapsulationType: item[\"encapsulationType\"],\n portCondition: !item[\"portCondition\"]\n ? item[\"portCondition\"]\n : portConditionSerializer(item[\"portCondition\"]),\n };\n}\n\nexport function networkTapRuleMatchConditionDeserializer(item: any): NetworkTapRuleMatchCondition {\n return {\n protocolTypes: !item[\"protocolTypes\"]\n ? item[\"protocolTypes\"]\n : item[\"protocolTypes\"].map((p: any) => {\n return p;\n }),\n vlanMatchCondition: !item[\"vlanMatchCondition\"]\n ? item[\"vlanMatchCondition\"]\n : vlanMatchConditionDeserializer(item[\"vlanMatchCondition\"]),\n ipCondition: !item[\"ipCondition\"]\n ? item[\"ipCondition\"]\n : ipMatchConditionDeserializer(item[\"ipCondition\"]),\n encapsulationType: item[\"encapsulationType\"],\n portCondition: !item[\"portCondition\"]\n ? item[\"portCondition\"]\n : portConditionDeserializer(item[\"portCondition\"]),\n };\n}\n\n/** Encapsulation Type that needs to be matched. */\nexport enum KnownEncapsulationType {\n /** None EncapsulationType */\n None = \"None\",\n /** GTPv1 EncapsulationType */\n GTPv1 = \"GTPv1\",\n}\n\n/**\n * Encapsulation Type that needs to be matched. \\\n * {@link KnownEncapsulationType} can be used interchangeably with EncapsulationType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **None**: None EncapsulationType \\\n * **GTPv1**: GTPv1 EncapsulationType\n */\nexport type EncapsulationType = string;\n\nexport function networkTapRuleActionArraySerializer(result: Array<NetworkTapRuleAction>): any[] {\n return result.map((item) => {\n return networkTapRuleActionSerializer(item);\n });\n}\n\nexport function networkTapRuleActionArrayDeserializer(result: Array<NetworkTapRuleAction>): any[] {\n return result.map((item) => {\n return networkTapRuleActionDeserializer(item);\n });\n}\n\n/** Action that need to performed. */\nexport interface NetworkTapRuleAction {\n /** Type of actions that can be performed. */\n type?: TapRuleActionType;\n /** Truncate. 0 indicates do not truncate. */\n truncate?: string;\n /** The parameter to enable or disable the timestamp. */\n isTimestampEnabled?: BooleanEnumProperty;\n /** Destination Id. The ARM resource Id may be either Network To Network Interconnect or NeighborGroup. */\n destinationId?: string;\n /** The name of the match configuration. This is used when Goto type is provided. */\n matchConfigurationName?: string;\n}\n\nexport function networkTapRuleActionSerializer(item: NetworkTapRuleAction): any {\n return {\n type: item[\"type\"],\n truncate: item[\"truncate\"],\n isTimestampEnabled: item[\"isTimestampEnabled\"],\n destinationId: item[\"destinationId\"],\n matchConfigurationName: item[\"matchConfigurationName\"],\n };\n}\n\nexport function networkTapRuleActionDeserializer(item: any): NetworkTapRuleAction {\n return {\n type: item[\"type\"],\n truncate: item[\"truncate\"],\n isTimestampEnabled: item[\"isTimestampEnabled\"],\n destinationId: item[\"destinationId\"],\n matchConfigurationName: item[\"matchConfigurationName\"],\n };\n}\n\n/** Type of actions that can be performed. */\nexport enum KnownTapRuleActionType {\n /** TapRuleActionType-Drop */\n Drop = \"Drop\",\n /** TapRuleActionType-Count */\n Count = \"Count\",\n /** TapRuleActionType-Log */\n Log = \"Log\",\n /** TapRuleActionType-Replicate */\n Replicate = \"Replicate\",\n /** TapRuleActionType-Goto */\n Goto = \"Goto\",\n /** TapRuleActionType-Redirect */\n Redirect = \"Redirect\",\n /** TapRuleActionType-Mirror */\n Mirror = \"Mirror\",\n}\n\n/**\n * Type of actions that can be performed. \\\n * {@link KnownTapRuleActionType} can be used interchangeably with TapRuleActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Drop**: TapRuleActionType-Drop \\\n * **Count**: TapRuleActionType-Count \\\n * **Log**: TapRuleActionType-Log \\\n * **Replicate**: TapRuleActionType-Replicate \\\n * **Goto**: TapRuleActionType-Goto \\\n * **Redirect**: TapRuleActionType-Redirect \\\n * **Mirror**: TapRuleActionType-Mirror\n */\nexport type TapRuleActionType = string;\n\n/** Global network tap rule actions properties */\nexport interface GlobalNetworkTapRuleActionProperties {\n /** Configuration to enable network tap rule counter. */\n enableCount?: BooleanEnumProperty;\n /** Truncate. 0 indicates do not truncate. */\n truncate?: string;\n}\n\nexport function globalNetworkTapRuleActionPropertiesSerializer(\n item: GlobalNetworkTapRuleActionProperties,\n): any {\n return { enableCount: item[\"enableCount\"], truncate: item[\"truncate\"] };\n}\n\nexport function globalNetworkTapRuleActionPropertiesDeserializer(\n item: any,\n): GlobalNetworkTapRuleActionProperties {\n return {\n enableCount: item[\"enableCount\"],\n truncate: item[\"truncate\"],\n };\n}\n\n/** The NetworkTapRule resource definition. */\nexport interface NetworkTapRulePatch extends TagsUpdate {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentityPatch;\n /** Switch configuration description. */\n annotation?: string;\n /** Input method to configure Network Tap Rule. */\n configurationType?: ConfigurationType;\n /** Network Tap Rules file URL. */\n tapRulesUrl?: string;\n /** List of match configurations. */\n matchConfigurations?: NetworkTapRuleMatchConfigurationPatch[];\n /** List of dynamic match configurations. */\n dynamicMatchConfigurations?: CommonDynamicMatchConfigurationPatch[];\n /** The selection of the managed identity to use with this storage account. The identity type must be either system assigned or user assigned. */\n identitySelector?: IdentitySelectorPatch;\n /** Global network tap rule actions */\n globalNetworkTapRuleActions?: GlobalNetworkTapRuleActionPatchProperties;\n}\n\nexport function networkTapRulePatchSerializer(item: NetworkTapRulePatch): any {\n return {\n tags: item[\"tags\"],\n properties: areAllPropsUndefined(item, [\n \"annotation\",\n \"configurationType\",\n \"tapRulesUrl\",\n \"matchConfigurations\",\n \"dynamicMatchConfigurations\",\n \"identitySelector\",\n \"globalNetworkTapRuleActions\",\n ])\n ? undefined\n : _networkTapRulePatchPropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityPatchSerializer(item[\"identity\"]),\n };\n}\n\n/** Network Tap Rule Patch properties. */\nexport interface NetworkTapRulePatchProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** Input method to configure Network Tap Rule. */\n configurationType?: ConfigurationType;\n /** Network Tap Rules file URL. */\n tapRulesUrl?: string;\n /** List of match configurations. */\n matchConfigurations?: NetworkTapRuleMatchConfigurationPatch[];\n /** List of dynamic match configurations. */\n dynamicMatchConfigurations?: CommonDynamicMatchConfigurationPatch[];\n /** The selection of the managed identity to use with this storage account. The identity type must be either system assigned or user assigned. */\n identitySelector?: IdentitySelectorPatch;\n /** Global network tap rule actions */\n globalNetworkTapRuleActions?: GlobalNetworkTapRuleActionPatchProperties;\n}\n\nexport function networkTapRulePatchPropertiesSerializer(item: NetworkTapRulePatchProperties): any {\n return {\n annotation: item[\"annotation\"],\n configurationType: item[\"configurationType\"],\n tapRulesUrl: item[\"tapRulesUrl\"],\n matchConfigurations: !item[\"matchConfigurations\"]\n ? item[\"matchConfigurations\"]\n : networkTapRuleMatchConfigurationPatchArraySerializer(item[\"matchConfigurations\"]),\n dynamicMatchConfigurations: !item[\"dynamicMatchConfigurations\"]\n ? item[\"dynamicMatchConfigurations\"]\n : commonDynamicMatchConfigurationPatchArraySerializer(item[\"dynamicMatchConfigurations\"]),\n identitySelector: !item[\"identitySelector\"]\n ? item[\"identitySelector\"]\n : identitySelectorPatchSerializer(item[\"identitySelector\"]),\n globalNetworkTapRuleActions: !item[\"globalNetworkTapRuleActions\"]\n ? item[\"globalNetworkTapRuleActions\"]\n : globalNetworkTapRuleActionPatchPropertiesSerializer(item[\"globalNetworkTapRuleActions\"]),\n };\n}\n\nexport function networkTapRuleMatchConfigurationPatchArraySerializer(\n result: Array<NetworkTapRuleMatchConfigurationPatch>,\n): any[] {\n return result.map((item) => {\n return networkTapRuleMatchConfigurationPatchSerializer(item);\n });\n}\n\n/** Defines the match configuration that are supported to filter the traffic. */\nexport interface NetworkTapRuleMatchConfigurationPatch {\n /** The name of the match configuration. */\n matchConfigurationName?: string;\n /** Sequence Number of the match configuration.. */\n sequenceNumber?: number;\n /** Type of IP Address. IPv4 or IPv6 */\n ipAddressType?: IPAddressType;\n /** List of the match conditions. */\n matchConditions?: NetworkTapRuleMatchConditionPatch[];\n /** List of actions that need to be performed for the matched conditions. */\n actions?: NetworkTapRuleActionPatch[];\n}\n\nexport function networkTapRuleMatchConfigurationPatchSerializer(\n item: NetworkTapRuleMatchConfigurationPatch,\n): any {\n return {\n matchConfigurationName: item[\"matchConfigurationName\"],\n sequenceNumber: item[\"sequenceNumber\"],\n ipAddressType: item[\"ipAddressType\"],\n matchConditions: !item[\"matchConditions\"]\n ? item[\"matchConditions\"]\n : networkTapRuleMatchConditionPatchArraySerializer(item[\"matchConditions\"]),\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : networkTapRuleActionPatchArraySerializer(item[\"actions\"]),\n };\n}\n\nexport function networkTapRuleMatchConditionPatchArraySerializer(\n result: Array<NetworkTapRuleMatchConditionPatch>,\n): any[] {\n return result.map((item) => {\n return networkTapRuleMatchConditionPatchSerializer(item);\n });\n}\n\n/** Defines the match condition that is supported to filter the traffic. */\nexport interface NetworkTapRuleMatchConditionPatch extends CommonMatchConditionsPatch {\n /** Encapsulation Type that needs to be matched. */\n encapsulationType?: EncapsulationType;\n /** Defines the port condition that needs to be matched. */\n portCondition?: PortConditionPatch;\n}\n\nexport function networkTapRuleMatchConditionPatchSerializer(\n item: NetworkTapRuleMatchConditionPatch,\n): any {\n return {\n protocolTypes: !item[\"protocolTypes\"]\n ? item[\"protocolTypes\"]\n : item[\"protocolTypes\"].map((p: any) => {\n return p;\n }),\n vlanMatchCondition: !item[\"vlanMatchCondition\"]\n ? item[\"vlanMatchCondition\"]\n : vlanMatchConditionPatchSerializer(item[\"vlanMatchCondition\"]),\n ipCondition: !item[\"ipCondition\"]\n ? item[\"ipCondition\"]\n : ipMatchConditionPatchSerializer(item[\"ipCondition\"]),\n encapsulationType: item[\"encapsulationType\"],\n portCondition: !item[\"portCondition\"]\n ? item[\"portCondition\"]\n : portConditionPatchSerializer(item[\"portCondition\"]),\n };\n}\n\nexport function networkTapRuleActionPatchArraySerializer(\n result: Array<NetworkTapRuleActionPatch>,\n): any[] {\n return result.map((item) => {\n return networkTapRuleActionPatchSerializer(item);\n });\n}\n\n/** Action that need to performed. */\nexport interface NetworkTapRuleActionPatch {\n /** Type of actions that can be performed. */\n type?: TapRuleActionType;\n /** Truncate. 0 indicates do not truncate. */\n truncate?: string;\n /** The parameter to enable or disable the timestamp. */\n isTimestampEnabled?: BooleanEnumProperty;\n /** Destination Id. The ARM resource Id may be either Network To Network Interconnect or NeighborGroup. */\n destinationId?: string;\n /** The name of the match configuration. This is used when Goto type is provided. */\n matchConfigurationName?: string;\n}\n\nexport function networkTapRuleActionPatchSerializer(item: NetworkTapRuleActionPatch): any {\n return {\n type: item[\"type\"],\n truncate: item[\"truncate\"],\n isTimestampEnabled: item[\"isTimestampEnabled\"],\n destinationId: item[\"destinationId\"],\n matchConfigurationName: item[\"matchConfigurationName\"],\n };\n}\n\n/** Global network tap rule actions patch properties */\nexport interface GlobalNetworkTapRuleActionPatchProperties {\n /** Configuration to enable network tap rule counter. */\n enableCount?: BooleanEnumProperty;\n /** Truncate. 0 indicates do not truncate. */\n truncate?: string;\n}\n\nexport function globalNetworkTapRuleActionPatchPropertiesSerializer(\n item: GlobalNetworkTapRuleActionPatchProperties,\n): any {\n return { enableCount: item[\"enableCount\"], truncate: item[\"truncate\"] };\n}\n\n/** Paged collection of NetworkTapRule items */\nexport interface _NetworkTapRulesListResult {\n /** The NetworkTapRule items on this page */\n value: NetworkTapRule[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _networkTapRulesListResultDeserializer(item: any): _NetworkTapRulesListResult {\n return {\n value: networkTapRuleArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function networkTapRuleArraySerializer(result: Array<NetworkTapRule>): any[] {\n return result.map((item) => {\n return networkTapRuleSerializer(item);\n });\n}\n\nexport function networkTapRuleArrayDeserializer(result: Array<NetworkTapRule>): any[] {\n return result.map((item) => {\n return networkTapRuleDeserializer(item);\n });\n}\n\n/** Response for Network Tap Rule resync operation. */\nexport interface NetworkTapRuleResyncResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n}\n\nexport function networkTapRuleResyncResponseDeserializer(item: any): NetworkTapRuleResyncResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** The Network Tap resource definition. */\nexport interface NetworkTap extends TrackedResource {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentity;\n /** Switch configuration description. */\n annotation?: string;\n /** ARM resource ID of the Network Packet Broker. */\n networkPacketBrokerId: string;\n /** Source Tap Rule Id. ARM Resource ID of the Network Tap Rule. */\n readonly sourceTapRuleId?: string;\n /** Associated Network Fabric Resource IDs */\n readonly networkFabricIds?: string[];\n /** List of destinations to send the filter traffic. */\n destinations: DestinationProperties[];\n /** Polling type. */\n pollingType?: PollingType;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Gets the configurations state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provides you the latest status of the NFC service, whether it is Accepted, updating, Succeeded or Failed. During this process, the states keep changing based on the status of Network Tap provisioning. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. Example -Enabled/Disabled */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function networkTapSerializer(item: NetworkTap): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: _networkTapPropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentitySerializer(item[\"identity\"]),\n };\n}\n\nexport function networkTapDeserializer(item: any): NetworkTap {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._networkTapPropertiesDeserializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityDeserializer(item[\"identity\"]),\n };\n}\n\n/** Network Tap Properties defines the properties of the resource. */\nexport interface NetworkTapProperties extends AnnotationResource {\n /** ARM resource ID of the Network Packet Broker. */\n networkPacketBrokerId: string;\n /** Source Tap Rule Id. ARM Resource ID of the Network Tap Rule. */\n readonly sourceTapRuleId?: string;\n /** Associated Network Fabric Resource IDs */\n readonly networkFabricIds?: string[];\n /** List of destinations to send the filter traffic. */\n destinations: DestinationProperties[];\n /** Polling type. */\n pollingType?: PollingType;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Gets the configurations state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provides you the latest status of the NFC service, whether it is Accepted, updating, Succeeded or Failed. During this process, the states keep changing based on the status of Network Tap provisioning. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. Example -Enabled/Disabled */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function networkTapPropertiesSerializer(item: NetworkTapProperties): any {\n return {\n annotation: item[\"annotation\"],\n networkPacketBrokerId: item[\"networkPacketBrokerId\"],\n destinations: destinationPropertiesArraySerializer(item[\"destinations\"]),\n pollingType: item[\"pollingType\"],\n };\n}\n\nexport function networkTapPropertiesDeserializer(item: any): NetworkTapProperties {\n return {\n annotation: item[\"annotation\"],\n networkPacketBrokerId: item[\"networkPacketBrokerId\"],\n sourceTapRuleId: item[\"sourceTapRuleId\"],\n networkFabricIds: !item[\"networkFabricIds\"]\n ? item[\"networkFabricIds\"]\n : item[\"networkFabricIds\"].map((p: any) => {\n return p;\n }),\n destinations: destinationPropertiesArrayDeserializer(item[\"destinations\"]),\n pollingType: item[\"pollingType\"],\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\nexport function destinationPropertiesArraySerializer(result: Array<DestinationProperties>): any[] {\n return result.map((item) => {\n return destinationPropertiesSerializer(item);\n });\n}\n\nexport function destinationPropertiesArrayDeserializer(\n result: Array<DestinationProperties>,\n): any[] {\n return result.map((item) => {\n return destinationPropertiesDeserializer(item);\n });\n}\n\n/** The network tap destination properties. */\nexport interface DestinationProperties {\n /** Destination name. */\n name: string;\n /** Type of destination. Input can be IsolationDomain or Direct. */\n destinationType: DestinationType;\n /** The destination Id. ARM Resource ID of either NNI or Internal Networks. */\n destinationId: string;\n /** Isolation Domain Properties. */\n isolationDomainProperties?: IsolationDomainProperties;\n /** ARM Resource ID of destination Tap Rule that contains match configurations. */\n destinationTapRuleId?: string;\n}\n\nexport function destinationPropertiesSerializer(item: DestinationProperties): any {\n return {\n name: item[\"name\"],\n destinationType: item[\"destinationType\"],\n destinationId: item[\"destinationId\"],\n isolationDomainProperties: !item[\"isolationDomainProperties\"]\n ? item[\"isolationDomainProperties\"]\n : isolationDomainPropertiesSerializer(item[\"isolationDomainProperties\"]),\n destinationTapRuleId: item[\"destinationTapRuleId\"],\n };\n}\n\nexport function destinationPropertiesDeserializer(item: any): DestinationProperties {\n return {\n name: item[\"name\"],\n destinationType: item[\"destinationType\"],\n destinationId: item[\"destinationId\"],\n isolationDomainProperties: !item[\"isolationDomainProperties\"]\n ? item[\"isolationDomainProperties\"]\n : isolationDomainPropertiesDeserializer(item[\"isolationDomainProperties\"]),\n destinationTapRuleId: item[\"destinationTapRuleId\"],\n };\n}\n\n/** Type of destination. Input can be IsolationDomain or Direct. */\nexport enum KnownDestinationType {\n /** DestinationType-IsolationDomain */\n IsolationDomain = \"IsolationDomain\",\n /** DestinationType-Direct */\n Direct = \"Direct\",\n}\n\n/**\n * Type of destination. Input can be IsolationDomain or Direct. \\\n * {@link KnownDestinationType} can be used interchangeably with DestinationType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **IsolationDomain**: DestinationType-IsolationDomain \\\n * **Direct**: DestinationType-Direct\n */\nexport type DestinationType = string;\n\n/** Isolation Domain Properties. */\nexport interface IsolationDomainProperties {\n /** Type of encapsulation. */\n encapsulation?: Encapsulation;\n /** List of Neighbor Group IDs. */\n neighborGroupIds?: string[];\n}\n\nexport function isolationDomainPropertiesSerializer(item: IsolationDomainProperties): any {\n return {\n encapsulation: item[\"encapsulation\"],\n neighborGroupIds: !item[\"neighborGroupIds\"]\n ? item[\"neighborGroupIds\"]\n : item[\"neighborGroupIds\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function isolationDomainPropertiesDeserializer(item: any): IsolationDomainProperties {\n return {\n encapsulation: item[\"encapsulation\"],\n neighborGroupIds: !item[\"neighborGroupIds\"]\n ? item[\"neighborGroupIds\"]\n : item[\"neighborGroupIds\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Type of encapsulation. */\nexport enum KnownEncapsulation {\n /** Encapsulation-None */\n None = \"None\",\n /** Encapsulation-GRE */\n GRE = \"GRE\",\n}\n\n/**\n * Type of encapsulation. \\\n * {@link KnownEncapsulation} can be used interchangeably with Encapsulation,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **None**: Encapsulation-None \\\n * **GRE**: Encapsulation-GRE\n */\nexport type Encapsulation = string;\n\n/** Polling type. */\nexport enum KnownPollingType {\n /** PollingType-Pull */\n Pull = \"Pull\",\n /** PollingType-Push */\n Push = \"Push\",\n}\n\n/**\n * Polling type. \\\n * {@link KnownPollingType} can be used interchangeably with PollingType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Pull**: PollingType-Pull \\\n * **Push**: PollingType-Push\n */\nexport type PollingType = string;\n\n/** The NetworkFabric resource definition. */\nexport interface NetworkTapPatch extends TagsUpdate {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentityPatch;\n /** Switch configuration description. */\n annotation?: string;\n /** Polling type. */\n pollingType?: PollingType;\n /** List of destination properties to send the filter traffic. */\n destinations?: DestinationPatchProperties[];\n}\n\nexport function networkTapPatchSerializer(item: NetworkTapPatch): any {\n return {\n tags: item[\"tags\"],\n properties: areAllPropsUndefined(item, [\"annotation\", \"pollingType\", \"destinations\"])\n ? undefined\n : _networkTapPatchPropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityPatchSerializer(item[\"identity\"]),\n };\n}\n\n/** The Network Tap resource patch definition. */\nexport interface NetworkTapPatchProperties extends AnnotationResource {\n /** Polling type. */\n pollingType?: PollingType;\n /** List of destination properties to send the filter traffic. */\n destinations?: DestinationPatchProperties[];\n}\n\nexport function networkTapPatchPropertiesSerializer(item: NetworkTapPatchProperties): any {\n return {\n annotation: item[\"annotation\"],\n pollingType: item[\"pollingType\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : destinationPatchPropertiesArraySerializer(item[\"destinations\"]),\n };\n}\n\nexport function destinationPatchPropertiesArraySerializer(\n result: Array<DestinationPatchProperties>,\n): any[] {\n return result.map((item) => {\n return destinationPatchPropertiesSerializer(item);\n });\n}\n\n/** The network tap destination properties. */\nexport interface DestinationPatchProperties {\n /** Destination name. */\n name?: string;\n /** Type of destination. Input can be IsolationDomain or Direct. */\n destinationType?: DestinationType;\n /** The destination Id. ARM Resource ID of either NNI or Internal Networks. */\n destinationId?: string;\n /** Isolation Domain Properties. */\n isolationDomainProperties?: IsolationDomainPatchProperties;\n /** ARM Resource ID of destination Tap Rule that contains match configurations. */\n destinationTapRuleId?: string;\n}\n\nexport function destinationPatchPropertiesSerializer(item: DestinationPatchProperties): any {\n return {\n name: item[\"name\"],\n destinationType: item[\"destinationType\"],\n destinationId: item[\"destinationId\"],\n isolationDomainProperties: !item[\"isolationDomainProperties\"]\n ? item[\"isolationDomainProperties\"]\n : isolationDomainPatchPropertiesSerializer(item[\"isolationDomainProperties\"]),\n destinationTapRuleId: item[\"destinationTapRuleId\"],\n };\n}\n\n/** Isolation Domain Properties. */\nexport interface IsolationDomainPatchProperties {\n /** Type of encapsulation. */\n encapsulation?: Encapsulation;\n /** List of Neighbor Group IDs. */\n neighborGroupIds?: string[];\n}\n\nexport function isolationDomainPatchPropertiesSerializer(\n item: IsolationDomainPatchProperties,\n): any {\n return {\n encapsulation: item[\"encapsulation\"],\n neighborGroupIds: !item[\"neighborGroupIds\"]\n ? item[\"neighborGroupIds\"]\n : item[\"neighborGroupIds\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Paged collection of NetworkTap items */\nexport interface _NetworkTapsListResult {\n /** The NetworkTap items on this page */\n value: NetworkTap[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _networkTapsListResultDeserializer(item: any): _NetworkTapsListResult {\n return {\n value: networkTapArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function networkTapArraySerializer(result: Array<NetworkTap>): any[] {\n return result.map((item) => {\n return networkTapSerializer(item);\n });\n}\n\nexport function networkTapArrayDeserializer(result: Array<NetworkTap>): any[] {\n return result.map((item) => {\n return networkTapDeserializer(item);\n });\n}\n\n/** Response for NetworkTap Resync operation. */\nexport interface NetworkTapResyncResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n}\n\nexport function networkTapResyncResponseDeserializer(item: any): NetworkTapResyncResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** The RoutePolicy resource definition. */\nexport interface RoutePolicy extends TrackedResource {\n /** Switch configuration description. */\n annotation?: string;\n /** Default action that needs to be applied when no condition is matched. Example: Permit | Deny. */\n defaultAction?: CommunityActionTypes;\n /** Route Policy statements. */\n statements: RoutePolicyStatementProperties[];\n /** Arm Resource ID of Network Fabric. */\n networkFabricId: string;\n /** AddressFamilyType. This parameter decides whether the given ipv4 or ipv6 route policy. */\n addressFamilyType?: AddressFamilyType;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function routePolicySerializer(item: RoutePolicy): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: _routePolicyPropertiesSerializer(item),\n };\n}\n\nexport function routePolicyDeserializer(item: any): RoutePolicy {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._routePolicyPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** RoutePolicyProperties defines the resource properties. */\nexport interface RoutePolicyProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** Default action that needs to be applied when no condition is matched. Example: Permit | Deny. */\n defaultAction?: CommunityActionTypes;\n /** Route Policy statements. */\n statements: RoutePolicyStatementProperties[];\n /** Arm Resource ID of Network Fabric. */\n networkFabricId: string;\n /** AddressFamilyType. This parameter decides whether the given ipv4 or ipv6 route policy. */\n addressFamilyType?: AddressFamilyType;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function routePolicyPropertiesSerializer(item: RoutePolicyProperties): any {\n return {\n annotation: item[\"annotation\"],\n defaultAction: item[\"defaultAction\"],\n statements: routePolicyStatementPropertiesArraySerializer(item[\"statements\"]),\n networkFabricId: item[\"networkFabricId\"],\n addressFamilyType: item[\"addressFamilyType\"],\n };\n}\n\nexport function routePolicyPropertiesDeserializer(item: any): RoutePolicyProperties {\n return {\n annotation: item[\"annotation\"],\n defaultAction: item[\"defaultAction\"],\n statements: routePolicyStatementPropertiesArrayDeserializer(item[\"statements\"]),\n networkFabricId: item[\"networkFabricId\"],\n addressFamilyType: item[\"addressFamilyType\"],\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\nexport function routePolicyStatementPropertiesArraySerializer(\n result: Array<RoutePolicyStatementProperties>,\n): any[] {\n return result.map((item) => {\n return routePolicyStatementPropertiesSerializer(item);\n });\n}\n\nexport function routePolicyStatementPropertiesArrayDeserializer(\n result: Array<RoutePolicyStatementProperties>,\n): any[] {\n return result.map((item) => {\n return routePolicyStatementPropertiesDeserializer(item);\n });\n}\n\n/** Route Policy Statement properties. */\nexport interface RoutePolicyStatementProperties extends AnnotationResource {\n /** Sequence to insert to/delete from existing route. */\n sequenceNumber: number;\n /** Route policy condition properties. */\n condition: StatementConditionProperties;\n /** Route policy action properties. */\n action: StatementActionProperties;\n}\n\nexport function routePolicyStatementPropertiesSerializer(\n item: RoutePolicyStatementProperties,\n): any {\n return {\n annotation: item[\"annotation\"],\n sequenceNumber: item[\"sequenceNumber\"],\n condition: statementConditionPropertiesSerializer(item[\"condition\"]),\n action: statementActionPropertiesSerializer(item[\"action\"]),\n };\n}\n\nexport function routePolicyStatementPropertiesDeserializer(\n item: any,\n): RoutePolicyStatementProperties {\n return {\n annotation: item[\"annotation\"],\n sequenceNumber: item[\"sequenceNumber\"],\n condition: statementConditionPropertiesDeserializer(item[\"condition\"]),\n action: statementActionPropertiesDeserializer(item[\"action\"]),\n };\n}\n\n/** Route policy statement condition properties. */\nexport interface StatementConditionProperties {\n /** List of IP Community resource IDs. */\n ipCommunityIds?: string[];\n /** List of IP Extended Community resource IDs. */\n ipExtendedCommunityIds?: string[];\n /** Type of the condition used. */\n type?: RoutePolicyConditionType;\n /** Arm Resource Id of IpPrefix. */\n ipPrefixId?: string;\n}\n\nexport function statementConditionPropertiesSerializer(item: StatementConditionProperties): any {\n return {\n ipCommunityIds: !item[\"ipCommunityIds\"]\n ? item[\"ipCommunityIds\"]\n : item[\"ipCommunityIds\"].map((p: any) => {\n return p;\n }),\n ipExtendedCommunityIds: !item[\"ipExtendedCommunityIds\"]\n ? item[\"ipExtendedCommunityIds\"]\n : item[\"ipExtendedCommunityIds\"].map((p: any) => {\n return p;\n }),\n type: item[\"type\"],\n ipPrefixId: item[\"ipPrefixId\"],\n };\n}\n\nexport function statementConditionPropertiesDeserializer(item: any): StatementConditionProperties {\n return {\n ipCommunityIds: !item[\"ipCommunityIds\"]\n ? item[\"ipCommunityIds\"]\n : item[\"ipCommunityIds\"].map((p: any) => {\n return p;\n }),\n ipExtendedCommunityIds: !item[\"ipExtendedCommunityIds\"]\n ? item[\"ipExtendedCommunityIds\"]\n : item[\"ipExtendedCommunityIds\"].map((p: any) => {\n return p;\n }),\n type: item[\"type\"],\n ipPrefixId: item[\"ipPrefixId\"],\n };\n}\n\n/** Type of the condition used. */\nexport enum KnownRoutePolicyConditionType {\n /** RoutePolicyConditionType-Or */\n Or = \"Or\",\n /** RoutePolicyConditionType-And */\n And = \"And\",\n}\n\n/**\n * Type of the condition used. \\\n * {@link KnownRoutePolicyConditionType} can be used interchangeably with RoutePolicyConditionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Or**: RoutePolicyConditionType-Or \\\n * **And**: RoutePolicyConditionType-And\n */\nexport type RoutePolicyConditionType = string;\n\n/** Route policy action properties. */\nexport interface StatementActionProperties {\n /** Local Preference of the route policy. */\n localPreference?: number;\n /** Action type. Example: Permit | Deny | Continue. */\n actionType: RoutePolicyActionType;\n /** IP Community Properties. */\n ipCommunityProperties?: ActionIpCommunityProperties;\n /** IP Extended Community Properties. */\n ipExtendedCommunityProperties?: ActionIpExtendedCommunityProperties;\n}\n\nexport function statementActionPropertiesSerializer(item: StatementActionProperties): any {\n return {\n localPreference: item[\"localPreference\"],\n actionType: item[\"actionType\"],\n ipCommunityProperties: !item[\"ipCommunityProperties\"]\n ? item[\"ipCommunityProperties\"]\n : actionIpCommunityPropertiesSerializer(item[\"ipCommunityProperties\"]),\n ipExtendedCommunityProperties: !item[\"ipExtendedCommunityProperties\"]\n ? item[\"ipExtendedCommunityProperties\"]\n : actionIpExtendedCommunityPropertiesSerializer(item[\"ipExtendedCommunityProperties\"]),\n };\n}\n\nexport function statementActionPropertiesDeserializer(item: any): StatementActionProperties {\n return {\n localPreference: item[\"localPreference\"],\n actionType: item[\"actionType\"],\n ipCommunityProperties: !item[\"ipCommunityProperties\"]\n ? item[\"ipCommunityProperties\"]\n : actionIpCommunityPropertiesDeserializer(item[\"ipCommunityProperties\"]),\n ipExtendedCommunityProperties: !item[\"ipExtendedCommunityProperties\"]\n ? item[\"ipExtendedCommunityProperties\"]\n : actionIpExtendedCommunityPropertiesDeserializer(item[\"ipExtendedCommunityProperties\"]),\n };\n}\n\n/** Action type. Example: Permit | Deny | Continue. */\nexport enum KnownRoutePolicyActionType {\n /** RoutePolicyActionType-Permit */\n Permit = \"Permit\",\n /** RoutePolicyActionType-Deny */\n Deny = \"Deny\",\n /** RoutePolicyActionType-Continue */\n Continue = \"Continue\",\n}\n\n/**\n * Action type. Example: Permit | Deny | Continue. \\\n * {@link KnownRoutePolicyActionType} can be used interchangeably with RoutePolicyActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Permit**: RoutePolicyActionType-Permit \\\n * **Deny**: RoutePolicyActionType-Deny \\\n * **Continue**: RoutePolicyActionType-Continue\n */\nexport type RoutePolicyActionType = string;\n\n/** IP Community Properties. */\nexport interface ActionIpCommunityProperties {\n /** List of IP Community IDs. */\n add?: IpCommunityIdList;\n /** List of IP Community IDs. */\n delete?: IpCommunityIdList;\n /** List of IP Community IDs. */\n set?: IpCommunityIdList;\n}\n\nexport function actionIpCommunityPropertiesSerializer(item: ActionIpCommunityProperties): any {\n return {\n add: !item[\"add\"] ? item[\"add\"] : ipCommunityIdListSerializer(item[\"add\"]),\n delete: !item[\"delete\"] ? item[\"delete\"] : ipCommunityIdListSerializer(item[\"delete\"]),\n set: !item[\"set\"] ? item[\"set\"] : ipCommunityIdListSerializer(item[\"set\"]),\n };\n}\n\nexport function actionIpCommunityPropertiesDeserializer(item: any): ActionIpCommunityProperties {\n return {\n add: !item[\"add\"] ? item[\"add\"] : ipCommunityIdListDeserializer(item[\"add\"]),\n delete: !item[\"delete\"] ? item[\"delete\"] : ipCommunityIdListDeserializer(item[\"delete\"]),\n set: !item[\"set\"] ? item[\"set\"] : ipCommunityIdListDeserializer(item[\"set\"]),\n };\n}\n\n/** IP Community ID list properties. */\nexport interface IpCommunityIdList {\n /** List of IP Community resource IDs. */\n ipCommunityIds?: string[];\n}\n\nexport function ipCommunityIdListSerializer(item: IpCommunityIdList): any {\n return {\n ipCommunityIds: !item[\"ipCommunityIds\"]\n ? item[\"ipCommunityIds\"]\n : item[\"ipCommunityIds\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function ipCommunityIdListDeserializer(item: any): IpCommunityIdList {\n return {\n ipCommunityIds: !item[\"ipCommunityIds\"]\n ? item[\"ipCommunityIds\"]\n : item[\"ipCommunityIds\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** IP Extended Community Properties. */\nexport interface ActionIpExtendedCommunityProperties {\n /** List of IP Extended Community IDs. */\n add?: IpExtendedCommunityIdList;\n /** List of IP Extended Community IDs. */\n delete?: IpExtendedCommunityIdList;\n /** List of IP Extended Community IDs. */\n set?: IpExtendedCommunityIdList;\n}\n\nexport function actionIpExtendedCommunityPropertiesSerializer(\n item: ActionIpExtendedCommunityProperties,\n): any {\n return {\n add: !item[\"add\"] ? item[\"add\"] : ipExtendedCommunityIdListSerializer(item[\"add\"]),\n delete: !item[\"delete\"] ? item[\"delete\"] : ipExtendedCommunityIdListSerializer(item[\"delete\"]),\n set: !item[\"set\"] ? item[\"set\"] : ipExtendedCommunityIdListSerializer(item[\"set\"]),\n };\n}\n\nexport function actionIpExtendedCommunityPropertiesDeserializer(\n item: any,\n): ActionIpExtendedCommunityProperties {\n return {\n add: !item[\"add\"] ? item[\"add\"] : ipExtendedCommunityIdListDeserializer(item[\"add\"]),\n delete: !item[\"delete\"]\n ? item[\"delete\"]\n : ipExtendedCommunityIdListDeserializer(item[\"delete\"]),\n set: !item[\"set\"] ? item[\"set\"] : ipExtendedCommunityIdListDeserializer(item[\"set\"]),\n };\n}\n\n/** IP Extended Community Id list properties. */\nexport interface IpExtendedCommunityIdList {\n /** List of IP Extended Community resource IDs. */\n ipExtendedCommunityIds?: string[];\n}\n\nexport function ipExtendedCommunityIdListSerializer(item: IpExtendedCommunityIdList): any {\n return {\n ipExtendedCommunityIds: !item[\"ipExtendedCommunityIds\"]\n ? item[\"ipExtendedCommunityIds\"]\n : item[\"ipExtendedCommunityIds\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function ipExtendedCommunityIdListDeserializer(item: any): IpExtendedCommunityIdList {\n return {\n ipExtendedCommunityIds: !item[\"ipExtendedCommunityIds\"]\n ? item[\"ipExtendedCommunityIds\"]\n : item[\"ipExtendedCommunityIds\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** AddressFamilyType. This parameter decides whether the given ipv4 or ipv6 route policy. */\nexport enum KnownAddressFamilyType {\n /** AddressType-IPv4 */\n IPv4 = \"IPv4\",\n /** AddressType-IPv6 */\n IPv6 = \"IPv6\",\n}\n\n/**\n * AddressFamilyType. This parameter decides whether the given ipv4 or ipv6 route policy. \\\n * {@link KnownAddressFamilyType} can be used interchangeably with AddressFamilyType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **IPv4**: AddressType-IPv4 \\\n * **IPv6**: AddressType-IPv6\n */\nexport type AddressFamilyType = string;\n\n/** The Route Policy patch resource definition. */\nexport interface RoutePolicyPatch extends TagsUpdate {\n /** Default action that needs to be applied when no condition is matched. Example: Permit | Deny. */\n defaultAction?: CommunityActionTypes;\n /** Route Policy statements. */\n statements?: RoutePolicyStatementPatchProperties[];\n}\n\nexport function routePolicyPatchSerializer(item: RoutePolicyPatch): any {\n return {\n tags: item[\"tags\"],\n properties: areAllPropsUndefined(item, [\"defaultAction\", \"statements\"])\n ? undefined\n : _routePolicyPatchPropertiesSerializer(item),\n };\n}\n\n/** Route Policy patchable properties. */\nexport interface RoutePolicyPatchableProperties {\n /** Default action that needs to be applied when no condition is matched. Example: Permit | Deny. */\n defaultAction?: CommunityActionTypes;\n /** Route Policy statements. */\n statements?: RoutePolicyStatementPatchProperties[];\n}\n\nexport function routePolicyPatchablePropertiesSerializer(\n item: RoutePolicyPatchableProperties,\n): any {\n return {\n defaultAction: item[\"defaultAction\"],\n statements: !item[\"statements\"]\n ? item[\"statements\"]\n : routePolicyStatementPatchPropertiesArraySerializer(item[\"statements\"]),\n };\n}\n\nexport function routePolicyStatementPatchPropertiesArraySerializer(\n result: Array<RoutePolicyStatementPatchProperties>,\n): any[] {\n return result.map((item) => {\n return routePolicyStatementPatchPropertiesSerializer(item);\n });\n}\n\n/** Route Policy Statement properties. */\nexport interface RoutePolicyStatementPatchProperties extends AnnotationResource {\n /** Sequence to insert to/delete from existing route. */\n sequenceNumber: number;\n /** Route policy condition properties. */\n condition: StatementConditionPatchProperties;\n /** Route policy action properties. */\n action: StatementActionPatchProperties;\n}\n\nexport function routePolicyStatementPatchPropertiesSerializer(\n item: RoutePolicyStatementPatchProperties,\n): any {\n return {\n annotation: item[\"annotation\"],\n sequenceNumber: item[\"sequenceNumber\"],\n condition: statementConditionPatchPropertiesSerializer(item[\"condition\"]),\n action: statementActionPatchPropertiesSerializer(item[\"action\"]),\n };\n}\n\n/** Route policy statement condition properties. */\nexport interface StatementConditionPatchProperties {\n /** List of IP Community resource IDs. */\n ipCommunityIds?: string[];\n /** List of IP Extended Community resource IDs. */\n ipExtendedCommunityIds?: string[];\n /** Type of the condition used. */\n type?: RoutePolicyConditionType;\n /** Arm Resource Id of IpPrefix. */\n ipPrefixId?: string;\n}\n\nexport function statementConditionPatchPropertiesSerializer(\n item: StatementConditionPatchProperties,\n): any {\n return {\n ipCommunityIds: !item[\"ipCommunityIds\"]\n ? item[\"ipCommunityIds\"]\n : item[\"ipCommunityIds\"].map((p: any) => {\n return p;\n }),\n ipExtendedCommunityIds: !item[\"ipExtendedCommunityIds\"]\n ? item[\"ipExtendedCommunityIds\"]\n : item[\"ipExtendedCommunityIds\"].map((p: any) => {\n return p;\n }),\n type: item[\"type\"],\n ipPrefixId: item[\"ipPrefixId\"],\n };\n}\n\n/** Route policy action properties */\nexport interface StatementActionPatchProperties {\n /** Local Preference of the route policy. */\n localPreference?: number;\n /** Action type. Example: Permit | Deny | Continue. */\n actionType: RoutePolicyActionType;\n /** IP Community Properties. */\n ipCommunityProperties?: ActionIpCommunityPatchProperties;\n /** IP Extended Community Properties. */\n ipExtendedCommunityProperties?: ActionIpExtendedCommunityPatchProperties;\n}\n\nexport function statementActionPatchPropertiesSerializer(\n item: StatementActionPatchProperties,\n): any {\n return {\n localPreference: item[\"localPreference\"],\n actionType: item[\"actionType\"],\n ipCommunityProperties: !item[\"ipCommunityProperties\"]\n ? item[\"ipCommunityProperties\"]\n : actionIpCommunityPatchPropertiesSerializer(item[\"ipCommunityProperties\"]),\n ipExtendedCommunityProperties: !item[\"ipExtendedCommunityProperties\"]\n ? item[\"ipExtendedCommunityProperties\"]\n : actionIpExtendedCommunityPatchPropertiesSerializer(item[\"ipExtendedCommunityProperties\"]),\n };\n}\n\n/** IP Community Properties. */\nexport interface ActionIpCommunityPatchProperties {\n /** List of IP Community IDs. */\n add?: IpCommunityIdList;\n /** List of IP Community IDs. */\n delete?: IpCommunityIdList;\n /** List of IP Community IDs. */\n set?: IpCommunityIdList;\n}\n\nexport function actionIpCommunityPatchPropertiesSerializer(\n item: ActionIpCommunityPatchProperties,\n): any {\n return {\n add: !item[\"add\"] ? item[\"add\"] : ipCommunityIdListSerializer(item[\"add\"]),\n delete: !item[\"delete\"] ? item[\"delete\"] : ipCommunityIdListSerializer(item[\"delete\"]),\n set: !item[\"set\"] ? item[\"set\"] : ipCommunityIdListSerializer(item[\"set\"]),\n };\n}\n\n/** IP Extended Community Properties. */\nexport interface ActionIpExtendedCommunityPatchProperties {\n /** List of IP Extended Community IDs. */\n add?: IpExtendedCommunityIdList;\n /** List of IP Extended Community IDs. */\n delete?: IpExtendedCommunityIdList;\n /** List of IP Extended Community IDs. */\n set?: IpExtendedCommunityIdList;\n}\n\nexport function actionIpExtendedCommunityPatchPropertiesSerializer(\n item: ActionIpExtendedCommunityPatchProperties,\n): any {\n return {\n add: !item[\"add\"] ? item[\"add\"] : ipExtendedCommunityIdListSerializer(item[\"add\"]),\n delete: !item[\"delete\"] ? item[\"delete\"] : ipExtendedCommunityIdListSerializer(item[\"delete\"]),\n set: !item[\"set\"] ? item[\"set\"] : ipExtendedCommunityIdListSerializer(item[\"set\"]),\n };\n}\n\n/** Paged collection of RoutePolicy items */\nexport interface _RoutePoliciesListResult {\n /** The RoutePolicy items on this page */\n value: RoutePolicy[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _routePoliciesListResultDeserializer(item: any): _RoutePoliciesListResult {\n return {\n value: routePolicyArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function routePolicyArraySerializer(result: Array<RoutePolicy>): any[] {\n return result.map((item) => {\n return routePolicySerializer(item);\n });\n}\n\nexport function routePolicyArrayDeserializer(result: Array<RoutePolicy>): any[] {\n return result.map((item) => {\n return routePolicyDeserializer(item);\n });\n}\n\n/** The NetworkMonitor resource definition. */\nexport interface NetworkMonitor extends TrackedResource {\n /** Switch configuration description. */\n annotation?: string;\n /** BMP Configurations for the Network Fabric. */\n bmpConfiguration?: BmpConfigurationProperties;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provides you the latest status of the NetworkMonitor resource */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function networkMonitorSerializer(item: NetworkMonitor): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: _networkMonitorPropertiesSerializer(item),\n };\n}\n\nexport function networkMonitorDeserializer(item: any): NetworkMonitor {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._networkMonitorPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Network Monitor Properties defines the properties of the resource. */\nexport interface NetworkMonitorProperties extends AnnotationResource {\n /** BMP Configurations for the Network Fabric. */\n bmpConfiguration?: BmpConfigurationProperties;\n /** Details of the last operation performed on the resource */\n readonly lastOperation?: LastOperationProperties;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Provides you the latest status of the NetworkMonitor resource */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n}\n\nexport function networkMonitorPropertiesSerializer(item: NetworkMonitorProperties): any {\n return {\n annotation: item[\"annotation\"],\n bmpConfiguration: !item[\"bmpConfiguration\"]\n ? item[\"bmpConfiguration\"]\n : bmpConfigurationPropertiesSerializer(item[\"bmpConfiguration\"]),\n };\n}\n\nexport function networkMonitorPropertiesDeserializer(item: any): NetworkMonitorProperties {\n return {\n annotation: item[\"annotation\"],\n bmpConfiguration: !item[\"bmpConfiguration\"]\n ? item[\"bmpConfiguration\"]\n : bmpConfigurationPropertiesDeserializer(item[\"bmpConfiguration\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\n/** BGP Monitoring Protocol (BMP) Configuration properties. */\nexport interface BmpConfigurationProperties {\n /** Enabling a station. Either True/False. */\n stationConfigurationState?: StationConfigurationState;\n /** Scope resource ARM Identifier. */\n scopeResourceId?: string;\n /** Name of the station. */\n stationName?: string;\n /** IP Address of the station. */\n stationIp?: string;\n /** Port of the station. Default value is 5000. */\n stationPort?: number;\n /** Station Connection Mode. */\n stationConnectionMode?: StationConnectionMode;\n /** Station Connection Properties. */\n stationConnectionProperties?: StationConnectionProperties;\n /** Network of the station */\n stationNetwork?: string;\n /** The List of Network ID's that need to be monitored. */\n monitoredNetworks?: string[];\n /** Export Policy for the BMP Configuration. */\n exportPolicy?: BmpExportPolicy;\n /** Export Policy configuration properties for the BMP. */\n exportPolicyConfiguration?: BmpExportPolicyProperties;\n /** Monitored Address Families for the BMP Configuration. */\n monitoredAddressFamilies?: BmpMonitoredAddressFamily[];\n}\n\nexport function bmpConfigurationPropertiesSerializer(item: BmpConfigurationProperties): any {\n return {\n stationConfigurationState: item[\"stationConfigurationState\"],\n scopeResourceId: item[\"scopeResourceId\"],\n stationName: item[\"stationName\"],\n stationIp: item[\"stationIp\"],\n stationPort: item[\"stationPort\"],\n stationConnectionMode: item[\"stationConnectionMode\"],\n stationConnectionProperties: !item[\"stationConnectionProperties\"]\n ? item[\"stationConnectionProperties\"]\n : stationConnectionPropertiesSerializer(item[\"stationConnectionProperties\"]),\n stationNetwork: item[\"stationNetwork\"],\n monitoredNetworks: !item[\"monitoredNetworks\"]\n ? item[\"monitoredNetworks\"]\n : item[\"monitoredNetworks\"].map((p: any) => {\n return p;\n }),\n exportPolicy: item[\"exportPolicy\"],\n exportPolicyConfiguration: !item[\"exportPolicyConfiguration\"]\n ? item[\"exportPolicyConfiguration\"]\n : bmpExportPolicyPropertiesSerializer(item[\"exportPolicyConfiguration\"]),\n monitoredAddressFamilies: !item[\"monitoredAddressFamilies\"]\n ? item[\"monitoredAddressFamilies\"]\n : item[\"monitoredAddressFamilies\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function bmpConfigurationPropertiesDeserializer(item: any): BmpConfigurationProperties {\n return {\n stationConfigurationState: item[\"stationConfigurationState\"],\n scopeResourceId: item[\"scopeResourceId\"],\n stationName: item[\"stationName\"],\n stationIp: item[\"stationIp\"],\n stationPort: item[\"stationPort\"],\n stationConnectionMode: item[\"stationConnectionMode\"],\n stationConnectionProperties: !item[\"stationConnectionProperties\"]\n ? item[\"stationConnectionProperties\"]\n : stationConnectionPropertiesDeserializer(item[\"stationConnectionProperties\"]),\n stationNetwork: item[\"stationNetwork\"],\n monitoredNetworks: !item[\"monitoredNetworks\"]\n ? item[\"monitoredNetworks\"]\n : item[\"monitoredNetworks\"].map((p: any) => {\n return p;\n }),\n exportPolicy: item[\"exportPolicy\"],\n exportPolicyConfiguration: !item[\"exportPolicyConfiguration\"]\n ? item[\"exportPolicyConfiguration\"]\n : bmpExportPolicyPropertiesDeserializer(item[\"exportPolicyConfiguration\"]),\n monitoredAddressFamilies: !item[\"monitoredAddressFamilies\"]\n ? item[\"monitoredAddressFamilies\"]\n : item[\"monitoredAddressFamilies\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Station Configuration State. */\nexport enum KnownStationConfigurationState {\n /** StationConfigurationState Enabled */\n Enabled = \"Enabled\",\n /** StationConfigurationState Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * Station Configuration State. \\\n * {@link KnownStationConfigurationState} can be used interchangeably with StationConfigurationState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: StationConfigurationState Enabled \\\n * **Disabled**: StationConfigurationState Disabled\n */\nexport type StationConfigurationState = string;\n\n/** Station Connection Mode. */\nexport enum KnownStationConnectionMode {\n /** StationConnectionMode Active */\n Active = \"Active\",\n /** StationConnectionMode Passive */\n Passive = \"Passive\",\n}\n\n/**\n * Station Connection Mode. \\\n * {@link KnownStationConnectionMode} can be used interchangeably with StationConnectionMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Active**: StationConnectionMode Active \\\n * **Passive**: StationConnectionMode Passive\n */\nexport type StationConnectionMode = string;\n\n/** Station Connection Properties. */\nexport interface StationConnectionProperties {\n /** Connection keepalive idle time in seconds */\n keepaliveIdleTime?: number;\n /** Probe interval in seconds, default value is 60 */\n probeInterval?: number;\n /** Probe count, default value is 10 */\n probeCount?: number;\n}\n\nexport function stationConnectionPropertiesSerializer(item: StationConnectionProperties): any {\n return {\n keepaliveIdleTime: item[\"keepaliveIdleTime\"],\n probeInterval: item[\"probeInterval\"],\n probeCount: item[\"probeCount\"],\n };\n}\n\nexport function stationConnectionPropertiesDeserializer(item: any): StationConnectionProperties {\n return {\n keepaliveIdleTime: item[\"keepaliveIdleTime\"],\n probeInterval: item[\"probeInterval\"],\n probeCount: item[\"probeCount\"],\n };\n}\n\n/** Monitored Address Family. */\nexport enum KnownBmpMonitoredAddressFamily {\n /** IPv4 Unicast */\n Ipv4Unicast = \"ipv4Unicast\",\n /** IPv6 Unicast */\n Ipv6Unicast = \"ipv6Unicast\",\n /** VPN IPv4 */\n VpnIpv4 = \"vpnIpv4\",\n /** VPN IPv6 */\n VpnIpv6 = \"vpnIpv6\",\n /** All Address Families */\n All = \"All\",\n}\n\n/**\n * Monitored Address Family. \\\n * {@link KnownBmpMonitoredAddressFamily} can be used interchangeably with BmpMonitoredAddressFamily,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ipv4Unicast**: IPv4 Unicast \\\n * **ipv6Unicast**: IPv6 Unicast \\\n * **vpnIpv4**: VPN IPv4 \\\n * **vpnIpv6**: VPN IPv6 \\\n * **All**: All Address Families\n */\nexport type BmpMonitoredAddressFamily = string;\n\n/** The Network Monitor Patch resource definition. */\nexport interface NetworkMonitorPatch extends TagsUpdate {\n /** BGP Monitoring Protocol (BMP) Configurations for the Network Monitor. */\n bmpConfiguration?: BmpConfigurationPatchProperties;\n}\n\nexport function networkMonitorPatchSerializer(item: NetworkMonitorPatch): any {\n return {\n tags: item[\"tags\"],\n properties: areAllPropsUndefined(item, [\"bmpConfiguration\"])\n ? undefined\n : _networkMonitorPatchPropertiesSerializer(item),\n };\n}\n\n/** The Network Monitor Patch Properties. */\nexport interface NetworkMonitorPatchProperties {\n /** BGP Monitoring Protocol (BMP) Configurations for the Network Monitor. */\n bmpConfiguration?: BmpConfigurationPatchProperties;\n}\n\nexport function networkMonitorPatchPropertiesSerializer(item: NetworkMonitorPatchProperties): any {\n return {\n bmpConfiguration: !item[\"bmpConfiguration\"]\n ? item[\"bmpConfiguration\"]\n : bmpConfigurationPatchPropertiesSerializer(item[\"bmpConfiguration\"]),\n };\n}\n\n/** BMP Configuration patch properties. */\nexport interface BmpConfigurationPatchProperties {\n /** Enabling a station. Either True/False. */\n stationConfigurationState?: StationConfigurationState;\n /** Scope resource ARM Identifier. */\n scopeResourceId?: string;\n /** Name of the station. */\n stationName?: string;\n /** IP Address of the station. */\n stationIp?: string;\n /** Port of the station. Default value is 5000. */\n stationPort?: number;\n /** Station Connection Mode. */\n stationConnectionMode?: StationConnectionMode;\n /** Station Connection Properties. */\n stationConnectionProperties?: StationConnectionPatchProperties;\n /** Network of the station */\n stationNetwork?: string;\n /** The List of Network ID's that need to be monitored. */\n monitoredNetworks?: string[];\n /** Export Policy for the BMP Configuration. */\n exportPolicy?: BmpExportPolicy;\n /** Export Policy configuration properties for the BMP. */\n exportPolicyConfiguration?: BmpExportPolicyPatchProperties;\n /** Monitored Address Families for the BMP Configuration. */\n monitoredAddressFamilies?: BmpMonitoredAddressFamily[];\n}\n\nexport function bmpConfigurationPatchPropertiesSerializer(\n item: BmpConfigurationPatchProperties,\n): any {\n return {\n stationConfigurationState: item[\"stationConfigurationState\"],\n scopeResourceId: item[\"scopeResourceId\"],\n stationName: item[\"stationName\"],\n stationIp: item[\"stationIp\"],\n stationPort: item[\"stationPort\"],\n stationConnectionMode: item[\"stationConnectionMode\"],\n stationConnectionProperties: !item[\"stationConnectionProperties\"]\n ? item[\"stationConnectionProperties\"]\n : stationConnectionPatchPropertiesSerializer(item[\"stationConnectionProperties\"]),\n stationNetwork: item[\"stationNetwork\"],\n monitoredNetworks: !item[\"monitoredNetworks\"]\n ? item[\"monitoredNetworks\"]\n : item[\"monitoredNetworks\"].map((p: any) => {\n return p;\n }),\n exportPolicy: item[\"exportPolicy\"],\n exportPolicyConfiguration: !item[\"exportPolicyConfiguration\"]\n ? item[\"exportPolicyConfiguration\"]\n : bmpExportPolicyPatchPropertiesSerializer(item[\"exportPolicyConfiguration\"]),\n monitoredAddressFamilies: !item[\"monitoredAddressFamilies\"]\n ? item[\"monitoredAddressFamilies\"]\n : item[\"monitoredAddressFamilies\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Station Connection PATCH Properties. */\nexport interface StationConnectionPatchProperties {\n /** Connection keepalive idle time in seconds */\n keepaliveIdleTime?: number;\n /** Probe interval in seconds, default value is 60 */\n probeInterval?: number;\n /** Probe count, default value is 10 */\n probeCount?: number;\n}\n\nexport function stationConnectionPatchPropertiesSerializer(\n item: StationConnectionPatchProperties,\n): any {\n return {\n keepaliveIdleTime: item[\"keepaliveIdleTime\"],\n probeInterval: item[\"probeInterval\"],\n probeCount: item[\"probeCount\"],\n };\n}\n\n/** The response of a NetworkMonitor list operation. */\nexport interface _NetworkMonitorListResult {\n /** The NetworkMonitor items on this page */\n value: NetworkMonitor[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _networkMonitorListResultDeserializer(item: any): _NetworkMonitorListResult {\n return {\n value: networkMonitorArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function networkMonitorArraySerializer(result: Array<NetworkMonitor>): any[] {\n return result.map((item) => {\n return networkMonitorSerializer(item);\n });\n}\n\nexport function networkMonitorArrayDeserializer(result: Array<NetworkMonitor>): any[] {\n return result.map((item) => {\n return networkMonitorDeserializer(item);\n });\n}\n\n/** Common response for device updates. */\nexport interface CommonPostActionResponseForDeviceUpdate extends CommonErrorResponse {\n /** Gets the configuration state. */\n readonly configurationState?: ConfigurationState;\n /** List of ARM Resource IDs for which the given action applied successfully. */\n successfulDevices?: string[];\n /** List of ARM Resource IDs for which the given action failed to apply. */\n failedDevices?: string[];\n}\n\nexport function commonPostActionResponseForDeviceUpdateDeserializer(\n item: any,\n): CommonPostActionResponseForDeviceUpdate {\n return {\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n configurationState: item[\"configurationState\"],\n successfulDevices: !item[\"successfulDevices\"]\n ? item[\"successfulDevices\"]\n : item[\"successfulDevices\"].map((p: any) => {\n return p;\n }),\n failedDevices: !item[\"failedDevices\"]\n ? item[\"failedDevices\"]\n : item[\"failedDevices\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** The Network Bootstrap Device resource definition. */\nexport interface NetworkBootstrapDevice extends TrackedResource {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentity;\n /** Switch configuration description. */\n annotation?: string;\n /** The host name of the device. */\n hostName?: string;\n /** Serial number of the device. Format of serial Number - Make;Model;HardwareRevisionId;SerialNumber. */\n serialNumber?: string;\n /** Current version of the device as defined in SKU. */\n readonly version?: string;\n /** Network Bootstrap Device SKU name. */\n networkDeviceSku?: string;\n /** Associated Network Fabric Resource ID */\n readonly networkFabricId?: string;\n /** Secondary Management IPv4 Address. */\n readonly secondaryManagementIpv4Address?: string;\n /** Dhcp server IPv4 Address. */\n readonly dhcpV4ServerIpAddress?: string;\n /** Primary Management IPv6 Address. */\n readonly primaryManagementIpv6Address?: string;\n /** Secondary Management IPv6 Address. */\n readonly secondaryManagementIpv6Address?: string;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Primary Management IPv4 Address. */\n readonly primaryManagementIpv4Address?: string;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n}\n\nexport function networkBootstrapDeviceSerializer(item: NetworkBootstrapDevice): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: _networkBootstrapDevicePropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentitySerializer(item[\"identity\"]),\n };\n}\n\nexport function networkBootstrapDeviceDeserializer(item: any): NetworkBootstrapDevice {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._networkBootstrapDevicePropertiesDeserializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityDeserializer(item[\"identity\"]),\n };\n}\n\n/** Network Bootstrap Device Properties defines the properties of the resource. */\nexport interface NetworkBootstrapDeviceProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** The host name of the device. */\n hostName?: string;\n /** Serial number of the device. Format of serial Number - Make;Model;HardwareRevisionId;SerialNumber. */\n serialNumber?: string;\n /** Current version of the device as defined in SKU. */\n readonly version?: string;\n /** Network Bootstrap Device SKU name. */\n networkDeviceSku?: string;\n /** Associated Network Fabric Resource ID */\n readonly networkFabricId?: string;\n /** Secondary Management IPv4 Address. */\n readonly secondaryManagementIpv4Address?: string;\n /** Dhcp server IPv4 Address. */\n readonly dhcpV4ServerIpAddress?: string;\n /** Primary Management IPv6 Address. */\n readonly primaryManagementIpv6Address?: string;\n /** Secondary Management IPv6 Address. */\n readonly secondaryManagementIpv6Address?: string;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Primary Management IPv4 Address. */\n readonly primaryManagementIpv4Address?: string;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n}\n\nexport function networkBootstrapDevicePropertiesSerializer(\n item: NetworkBootstrapDeviceProperties,\n): any {\n return {\n annotation: item[\"annotation\"],\n hostName: item[\"hostName\"],\n serialNumber: item[\"serialNumber\"],\n networkDeviceSku: item[\"networkDeviceSku\"],\n };\n}\n\nexport function networkBootstrapDevicePropertiesDeserializer(\n item: any,\n): NetworkBootstrapDeviceProperties {\n return {\n annotation: item[\"annotation\"],\n hostName: item[\"hostName\"],\n serialNumber: item[\"serialNumber\"],\n version: item[\"version\"],\n networkDeviceSku: item[\"networkDeviceSku\"],\n networkFabricId: item[\"networkFabricId\"],\n secondaryManagementIpv4Address: item[\"secondaryManagementIpv4Address\"],\n dhcpV4ServerIpAddress: item[\"dhcpV4ServerIpAddress\"],\n primaryManagementIpv6Address: item[\"primaryManagementIpv6Address\"],\n secondaryManagementIpv6Address: item[\"secondaryManagementIpv6Address\"],\n provisioningState: item[\"provisioningState\"],\n primaryManagementIpv4Address: item[\"primaryManagementIpv4Address\"],\n administrativeState: item[\"administrativeState\"],\n configurationState: item[\"configurationState\"],\n };\n}\n\n/** The Network Bootstrap Device Patch Parameters defines the patch parameters of the resource. */\nexport interface NetworkBootstrapDevicePatch extends TagsUpdate {\n /** The managed service identities assigned to this resource. */\n identity?: ManagedServiceIdentityPatch;\n /** Switch configuration description. */\n annotation?: string;\n /** The host name of the device. */\n hostName?: string;\n /** Serial number of the device. Format of serial Number - Make;Model;HardwareRevisionId;SerialNumber. */\n serialNumber?: string;\n}\n\nexport function networkBootstrapDevicePatchSerializer(item: NetworkBootstrapDevicePatch): any {\n return {\n tags: item[\"tags\"],\n properties: areAllPropsUndefined(item, [\"annotation\", \"hostName\", \"serialNumber\"])\n ? undefined\n : _networkBootstrapDevicePatchPropertiesSerializer(item),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : managedServiceIdentityPatchSerializer(item[\"identity\"]),\n };\n}\n\n/** Network Bootstrap Device Patch properties. */\nexport interface NetworkBootstrapDevicePatchProperties {\n /** Switch configuration description. */\n annotation?: string;\n /** The host name of the device. */\n hostName?: string;\n /** Serial number of the device. Format of serial Number - Make;Model;HardwareRevisionId;SerialNumber. */\n serialNumber?: string;\n}\n\nexport function networkBootstrapDevicePatchPropertiesSerializer(\n item: NetworkBootstrapDevicePatchProperties,\n): any {\n return {\n annotation: item[\"annotation\"],\n hostName: item[\"hostName\"],\n serialNumber: item[\"serialNumber\"],\n };\n}\n\n/** The response of a NetworkBootstrapDevice list operation. */\nexport interface _NetworkBootstrapDeviceListResult {\n /** The NetworkBootstrapDevice items on this page */\n value: NetworkBootstrapDevice[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _networkBootstrapDeviceListResultDeserializer(\n item: any,\n): _NetworkBootstrapDeviceListResult {\n return {\n value: networkBootstrapDeviceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function networkBootstrapDeviceArraySerializer(\n result: Array<NetworkBootstrapDevice>,\n): any[] {\n return result.map((item) => {\n return networkBootstrapDeviceSerializer(item);\n });\n}\n\nexport function networkBootstrapDeviceArrayDeserializer(\n result: Array<NetworkBootstrapDevice>,\n): any[] {\n return result.map((item) => {\n return networkBootstrapDeviceDeserializer(item);\n });\n}\n\n/** Network Bootstrap Device reboot Response. */\nexport interface NetworkBootstrapDeviceRebootResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n}\n\nexport function networkBootstrapDeviceRebootResponseDeserializer(\n item: any,\n): NetworkBootstrapDeviceRebootResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** The current status of an refresh configuration async operation. */\nexport interface NetworkBootstrapDeviceRefreshConfigurationResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n}\n\nexport function networkBootstrapDeviceRefreshConfigurationResponseDeserializer(\n item: any,\n): NetworkBootstrapDeviceRefreshConfigurationResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** Network Bootstrap Device upgrade Response. */\nexport interface NetworkBootstrapDeviceUpgradeResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n}\n\nexport function networkBootstrapDeviceUpgradeResponseDeserializer(\n item: any,\n): NetworkBootstrapDeviceUpgradeResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** Network Bootstrap Device Administrative State Update Response. */\nexport interface NetworkBootstrapDeviceUpdateAdministrativeStateResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n}\n\nexport function networkBootstrapDeviceUpdateAdministrativeStateResponseDeserializer(\n item: any,\n): NetworkBootstrapDeviceUpdateAdministrativeStateResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** Response body for a ResyncPasswords request on a Network Bootstrap Device. */\nexport interface NetworkBootstrapDeviceResyncPasswordsResponse {\n /** Fully qualified ID for the async operation. */\n id?: string;\n /** Name of the async operation. */\n name?: string;\n /** Operation status. */\n status: string;\n /** Percent of the operation that is complete. */\n percentComplete?: number;\n /** The start time of the operation. */\n startTime?: Date;\n /** The end time of the operation. */\n endTime?: Date;\n /** The operations list. */\n operations?: OperationStatusResult[];\n /** If present, details of the operation error. */\n error?: ErrorDetail;\n /** Fully qualified ID of the resource against which the original async operation was started. */\n readonly resourceId?: string;\n}\n\nexport function networkBootstrapDeviceResyncPasswordsResponseDeserializer(\n item: any,\n): NetworkBootstrapDeviceResyncPasswordsResponse {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n status: item[\"status\"],\n percentComplete: item[\"percentComplete\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n operations: !item[\"operations\"]\n ? item[\"operations\"]\n : operationStatusResultArrayDeserializer(item[\"operations\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** Defines the NetworkBootstrapInterface resource. */\nexport interface NetworkBootstrapInterface extends ProxyResource {\n /** Switch configuration description. */\n annotation?: string;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Physical identifier of the device. */\n readonly physicalIdentifier?: string;\n /** Connected to information of the device. */\n readonly connectedTo?: string;\n /** Type of the interface. */\n readonly interfaceType?: InterfaceType;\n /** Description of the interface. */\n readonly description?: string;\n /** Additional description of the interface. */\n additionalDescription?: string;\n /** IPv4Address of the interface. */\n readonly ipv4Address?: string;\n /** IPv6Address of the interface. */\n readonly ipv6Address?: string;\n /** Serial number of the interface. Format of serial Number - Make;Model;HardwareRevisionId;SerialNumber. */\n serialNumber?: string;\n}\n\nexport function networkBootstrapInterfaceSerializer(item: NetworkBootstrapInterface): any {\n return { properties: _networkBootstrapInterfacePropertiesSerializer(item) };\n}\n\nexport function networkBootstrapInterfaceDeserializer(item: any): NetworkBootstrapInterface {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._networkBootstrapInterfacePropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Network Bootstrap Interface Properties defines the properties of the resource. */\nexport interface NetworkBootstrapInterfaceProperties extends AnnotationResource {\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Administrative state of the resource. */\n readonly administrativeState?: AdministrativeState;\n /** Configuration state of the resource. */\n readonly configurationState?: ConfigurationState;\n /** Physical identifier of the device. */\n readonly physicalIdentifier?: string;\n /** Connected to information of the device. */\n readonly connectedTo?: string;\n /** Type of the interface. */\n readonly interfaceType?: InterfaceType;\n /** Description of the interface. */\n readonly description?: string;\n /** Additional description of the interface. */\n additionalDescription?: string;\n /** IPv4Address of the interface. */\n readonly ipv4Address?: string;\n /** IPv6Address of the interface. */\n readonly ipv6Address?: string;\n /** Serial number of the interface. Format of serial Number - Make;Model;HardwareRevisionId;SerialNumber. */\n serialNumber?: string;\n}\n\nexport function networkBootstrapInterfacePropertiesSerializer(\n item: NetworkBootstrapInterfaceProperties,\n): any {\n return {\n annotation: item[\"annotation\"],\n additionalDescription: item[\"additionalDescription\"],\n serialNumber: item[\"serialNumber\"],\n };\n}\n\nexport function networkBootstrapInterfacePropertiesDeserializer(\n item: any,\n): NetworkBootstrapInterfaceProperties {\n return {\n annotation: item[\"annotation\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n configurationState: item[\"configurationState\"],\n physicalIdentifier: item[\"physicalIdentifier\"],\n connectedTo: item[\"connectedTo\"],\n interfaceType: item[\"interfaceType\"],\n description: item[\"description\"],\n additionalDescription: item[\"additionalDescription\"],\n ipv4Address: item[\"ipv4Address\"],\n ipv6Address: item[\"ipv6Address\"],\n serialNumber: item[\"serialNumber\"],\n };\n}\n\n/** The NetworkBootstrapInterfacePatch resource definition. */\nexport interface NetworkBootstrapInterfacePatch {\n /** Switch configuration description. */\n annotation?: string;\n /** Serial number of the interface. Format of serial Number - Make;Model;HardwareRevisionId;SerialNumber. */\n serialNumber?: string;\n /** Additional description of the interface. */\n additionalDescription?: string;\n}\n\nexport function networkBootstrapInterfacePatchSerializer(\n item: NetworkBootstrapInterfacePatch,\n): any {\n return {\n properties: areAllPropsUndefined(item, [\"annotation\", \"serialNumber\", \"additionalDescription\"])\n ? undefined\n : _networkBootstrapInterfacePatchPropertiesSerializer(item),\n };\n}\n\n/** Network Bootstrap Interface Patch properties. */\nexport interface NetworkBootstrapInterfacePatchProperties extends AnnotationResource {\n /** Serial number of the interface. Format of serial Number - Make;Model;HardwareRevisionId;SerialNumber. */\n serialNumber?: string;\n /** Additional description of the interface. */\n additionalDescription?: string;\n}\n\nexport function networkBootstrapInterfacePatchPropertiesSerializer(\n item: NetworkBootstrapInterfacePatchProperties,\n): any {\n return {\n annotation: item[\"annotation\"],\n serialNumber: item[\"serialNumber\"],\n additionalDescription: item[\"additionalDescription\"],\n };\n}\n\n/** The response of a NetworkBootstrapInterface list operation. */\nexport interface _NetworkBootstrapInterfaceListResult {\n /** The NetworkBootstrapInterface items on this page */\n value: NetworkBootstrapInterface[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _networkBootstrapInterfaceListResultDeserializer(\n item: any,\n): _NetworkBootstrapInterfaceListResult {\n return {\n value: networkBootstrapInterfaceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function networkBootstrapInterfaceArraySerializer(\n result: Array<NetworkBootstrapInterface>,\n): any[] {\n return result.map((item) => {\n return networkBootstrapInterfaceSerializer(item);\n });\n}\n\nexport function networkBootstrapInterfaceArrayDeserializer(\n result: Array<NetworkBootstrapInterface>,\n): any[] {\n return result.map((item) => {\n return networkBootstrapInterfaceDeserializer(item);\n });\n}\n\n/** API Versions */\nexport enum KnownVersions {\n /** 2025-07-15 */\n V20250715 = \"2025-07-15\",\n}\n\nexport function _accessControlListPropertiesSerializer(item: AccessControlList): any {\n return {\n annotation: item[\"annotation\"],\n configurationType: item[\"configurationType\"],\n aclsUrl: item[\"aclsUrl\"],\n defaultAction: item[\"defaultAction\"],\n matchConfigurations: !item[\"matchConfigurations\"]\n ? item[\"matchConfigurations\"]\n : accessControlListMatchConfigurationArraySerializer(item[\"matchConfigurations\"]),\n dynamicMatchConfigurations: !item[\"dynamicMatchConfigurations\"]\n ? item[\"dynamicMatchConfigurations\"]\n : commonDynamicMatchConfigurationArraySerializer(item[\"dynamicMatchConfigurations\"]),\n aclType: item[\"aclType\"],\n deviceRole: item[\"deviceRole\"],\n globalAccessControlListActions: !item[\"globalAccessControlListActions\"]\n ? item[\"globalAccessControlListActions\"]\n : globalAccessControlListActionPropertiesSerializer(item[\"globalAccessControlListActions\"]),\n controlPlaneAclConfiguration: !item[\"controlPlaneAclConfiguration\"]\n ? item[\"controlPlaneAclConfiguration\"]\n : controlPlaneAclPropertiesArraySerializer(item[\"controlPlaneAclConfiguration\"]),\n };\n}\n\nexport function _accessControlListPropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n configurationType: item[\"configurationType\"],\n aclsUrl: item[\"aclsUrl\"],\n defaultAction: item[\"defaultAction\"],\n matchConfigurations: !item[\"matchConfigurations\"]\n ? item[\"matchConfigurations\"]\n : accessControlListMatchConfigurationArrayDeserializer(item[\"matchConfigurations\"]),\n dynamicMatchConfigurations: !item[\"dynamicMatchConfigurations\"]\n ? item[\"dynamicMatchConfigurations\"]\n : commonDynamicMatchConfigurationArrayDeserializer(item[\"dynamicMatchConfigurations\"]),\n lastSyncedTime: !item[\"lastSyncedTime\"]\n ? item[\"lastSyncedTime\"]\n : new Date(item[\"lastSyncedTime\"]),\n aclType: item[\"aclType\"],\n deviceRole: item[\"deviceRole\"],\n globalAccessControlListActions: !item[\"globalAccessControlListActions\"]\n ? item[\"globalAccessControlListActions\"]\n : globalAccessControlListActionPropertiesDeserializer(item[\"globalAccessControlListActions\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n networkFabricIds: !item[\"networkFabricIds\"]\n ? item[\"networkFabricIds\"]\n : item[\"networkFabricIds\"].map((p: any) => {\n return p;\n }),\n controlPlaneAclConfiguration: !item[\"controlPlaneAclConfiguration\"]\n ? item[\"controlPlaneAclConfiguration\"]\n : controlPlaneAclPropertiesArrayDeserializer(item[\"controlPlaneAclConfiguration\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\nexport function _accessControlListPatchPropertiesSerializer(item: AccessControlListPatch): any {\n return {\n configurationType: item[\"configurationType\"],\n aclsUrl: item[\"aclsUrl\"],\n defaultAction: item[\"defaultAction\"],\n matchConfigurations: !item[\"matchConfigurations\"]\n ? item[\"matchConfigurations\"]\n : accessControlListMatchConfigurationPatchArraySerializer(item[\"matchConfigurations\"]),\n dynamicMatchConfigurations: !item[\"dynamicMatchConfigurations\"]\n ? item[\"dynamicMatchConfigurations\"]\n : commonDynamicMatchConfigurationPatchArraySerializer(item[\"dynamicMatchConfigurations\"]),\n controlPlaneAclConfiguration: !item[\"controlPlaneAclConfiguration\"]\n ? item[\"controlPlaneAclConfiguration\"]\n : controlPlaneAclPatchPropertiesArraySerializer(item[\"controlPlaneAclConfiguration\"]),\n aclType: item[\"aclType\"],\n deviceRole: item[\"deviceRole\"],\n globalAccessControlListActions: !item[\"globalAccessControlListActions\"]\n ? item[\"globalAccessControlListActions\"]\n : globalAccessControlListActionPatchPropertiesSerializer(\n item[\"globalAccessControlListActions\"],\n ),\n annotation: item[\"annotation\"],\n };\n}\n\nexport function _internetGatewayRulePropertiesSerializer(item: InternetGatewayRule): any {\n return {\n annotation: item[\"annotation\"],\n ruleProperties: rulePropertiesSerializer(item[\"ruleProperties\"]),\n };\n}\n\nexport function _internetGatewayRulePropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n ruleProperties: rulePropertiesDeserializer(item[\"ruleProperties\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n provisioningState: item[\"provisioningState\"],\n internetGatewayIds: !item[\"internetGatewayIds\"]\n ? item[\"internetGatewayIds\"]\n : item[\"internetGatewayIds\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function _internetGatewayPropertiesSerializer(item: InternetGateway): any {\n return {\n annotation: item[\"annotation\"],\n internetGatewayRuleId: item[\"internetGatewayRuleId\"],\n type: item[\"typePropertiesType\"],\n internetGatewayType: item[\"internetGatewayType\"],\n networkFabricControllerId: item[\"networkFabricControllerId\"],\n };\n}\n\nexport function _internetGatewayPropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n internetGatewayRuleId: item[\"internetGatewayRuleId\"],\n ipv4Address: item[\"ipv4Address\"],\n port: item[\"port\"],\n typePropertiesType: item[\"type\"],\n internetGatewayType: item[\"internetGatewayType\"],\n networkFabricControllerId: item[\"networkFabricControllerId\"],\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\nexport function _internetGatewayPatchPropertiesSerializer(item: InternetGatewayPatch): any {\n return { internetGatewayRuleId: item[\"internetGatewayRuleId\"] };\n}\n\nexport function _ipCommunityPropertiesSerializer(item: IpCommunity): any {\n return {\n annotation: item[\"annotation\"],\n ipCommunityRules: ipCommunityRuleArraySerializer(item[\"ipCommunityRules\"]),\n };\n}\n\nexport function _ipCommunityPropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n networkFabricId: item[\"networkFabricId\"],\n ipCommunityRules: ipCommunityRuleArrayDeserializer(item[\"ipCommunityRules\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\nexport function _ipCommunityPatchPropertiesSerializer(item: IpCommunityPatch): any {\n return {\n ipCommunityRules: !item[\"ipCommunityRules\"]\n ? item[\"ipCommunityRules\"]\n : ipCommunityRuleArraySerializer(item[\"ipCommunityRules\"]),\n };\n}\n\nexport function _ipExtendedCommunityPropertiesSerializer(item: IpExtendedCommunity): any {\n return {\n annotation: item[\"annotation\"],\n ipExtendedCommunityRules: ipExtendedCommunityRuleArraySerializer(\n item[\"ipExtendedCommunityRules\"],\n ),\n };\n}\n\nexport function _ipExtendedCommunityPropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n ipExtendedCommunityRules: ipExtendedCommunityRuleArrayDeserializer(\n item[\"ipExtendedCommunityRules\"],\n ),\n networkFabricId: item[\"networkFabricId\"],\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\nexport function _ipExtendedCommunityPatchPropertiesSerializer(item: IpExtendedCommunityPatch): any {\n return {\n annotation: item[\"annotation\"],\n ipExtendedCommunityRules: !item[\"ipExtendedCommunityRules\"]\n ? item[\"ipExtendedCommunityRules\"]\n : ipExtendedCommunityRuleArraySerializer(item[\"ipExtendedCommunityRules\"]),\n };\n}\n\nexport function _ipPrefixPropertiesSerializer(item: IpPrefix): any {\n return {\n annotation: item[\"annotation\"],\n ipPrefixRules: ipPrefixRuleArraySerializer(item[\"ipPrefixRules\"]),\n };\n}\n\nexport function _ipPrefixPropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n networkFabricId: item[\"networkFabricId\"],\n ipPrefixRules: ipPrefixRuleArrayDeserializer(item[\"ipPrefixRules\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\nexport function _ipPrefixPatchPropertiesSerializer(item: IpPrefixPatch): any {\n return {\n annotation: item[\"annotation\"],\n ipPrefixRules: !item[\"ipPrefixRules\"]\n ? item[\"ipPrefixRules\"]\n : ipPrefixRuleArraySerializer(item[\"ipPrefixRules\"]),\n };\n}\n\nexport function _l2IsolationDomainPropertiesSerializer(item: L2IsolationDomain): any {\n return {\n annotation: item[\"annotation\"],\n networkFabricId: item[\"networkFabricId\"],\n vlanId: item[\"vlanId\"],\n mtu: item[\"mtu\"],\n extendedVlan: item[\"extendedVlan\"],\n networkToNetworkInterconnectId: item[\"networkToNetworkInterconnectId\"],\n };\n}\n\nexport function _l2IsolationDomainPropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n networkFabricId: item[\"networkFabricId\"],\n vlanId: item[\"vlanId\"],\n mtu: item[\"mtu\"],\n extendedVlan: item[\"extendedVlan\"],\n networkToNetworkInterconnectId: item[\"networkToNetworkInterconnectId\"],\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\nexport function _l2IsolationDomainPatchPropertiesSerializer(item: L2IsolationDomainPatch): any {\n return {\n annotation: item[\"annotation\"],\n mtu: item[\"mtu\"],\n extendedVlan: item[\"extendedVlan\"],\n networkToNetworkInterconnectId: item[\"networkToNetworkInterconnectId\"],\n };\n}\n\nexport function _l3IsolationDomainPropertiesSerializer(item: L3IsolationDomain): any {\n return {\n annotation: item[\"annotation\"],\n redistributeConnectedSubnets: item[\"redistributeConnectedSubnets\"],\n redistributeStaticRoutes: item[\"redistributeStaticRoutes\"],\n aggregateRouteConfiguration: !item[\"aggregateRouteConfiguration\"]\n ? item[\"aggregateRouteConfiguration\"]\n : aggregateRouteConfigurationSerializer(item[\"aggregateRouteConfiguration\"]),\n connectedSubnetRoutePolicy: !item[\"connectedSubnetRoutePolicy\"]\n ? item[\"connectedSubnetRoutePolicy\"]\n : connectedSubnetRoutePolicySerializer(item[\"connectedSubnetRoutePolicy\"]),\n networkFabricId: item[\"networkFabricId\"],\n staticRouteRoutePolicy: !item[\"staticRouteRoutePolicy\"]\n ? item[\"staticRouteRoutePolicy\"]\n : staticRouteRoutePolicySerializer(item[\"staticRouteRoutePolicy\"]),\n uniqueRdConfiguration: !item[\"uniqueRdConfiguration\"]\n ? item[\"uniqueRdConfiguration\"]\n : l3UniqueRouteDistinguisherPropertiesSerializer(item[\"uniqueRdConfiguration\"]),\n v4routePrefixLimit: !item[\"v4RoutePrefixLimit\"]\n ? item[\"v4RoutePrefixLimit\"]\n : routePrefixLimitPropertiesSerializer(item[\"v4RoutePrefixLimit\"]),\n v6routePrefixLimit: !item[\"v6RoutePrefixLimit\"]\n ? item[\"v6RoutePrefixLimit\"]\n : routePrefixLimitPropertiesSerializer(item[\"v6RoutePrefixLimit\"]),\n exportPolicyConfiguration: !item[\"exportPolicyConfiguration\"]\n ? item[\"exportPolicyConfiguration\"]\n : bmpExportPolicyPropertiesSerializer(item[\"exportPolicyConfiguration\"]),\n };\n}\n\nexport function _l3IsolationDomainPropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n redistributeConnectedSubnets: item[\"redistributeConnectedSubnets\"],\n redistributeStaticRoutes: item[\"redistributeStaticRoutes\"],\n aggregateRouteConfiguration: !item[\"aggregateRouteConfiguration\"]\n ? item[\"aggregateRouteConfiguration\"]\n : aggregateRouteConfigurationDeserializer(item[\"aggregateRouteConfiguration\"]),\n connectedSubnetRoutePolicy: !item[\"connectedSubnetRoutePolicy\"]\n ? item[\"connectedSubnetRoutePolicy\"]\n : connectedSubnetRoutePolicyDeserializer(item[\"connectedSubnetRoutePolicy\"]),\n networkFabricId: item[\"networkFabricId\"],\n staticRouteRoutePolicy: !item[\"staticRouteRoutePolicy\"]\n ? item[\"staticRouteRoutePolicy\"]\n : staticRouteRoutePolicyDeserializer(item[\"staticRouteRoutePolicy\"]),\n uniqueRdConfiguration: !item[\"uniqueRdConfiguration\"]\n ? item[\"uniqueRdConfiguration\"]\n : l3UniqueRouteDistinguisherPropertiesDeserializer(item[\"uniqueRdConfiguration\"]),\n v4RoutePrefixLimit: !item[\"v4routePrefixLimit\"]\n ? item[\"v4routePrefixLimit\"]\n : routePrefixLimitPropertiesDeserializer(item[\"v4routePrefixLimit\"]),\n v6RoutePrefixLimit: !item[\"v6routePrefixLimit\"]\n ? item[\"v6routePrefixLimit\"]\n : routePrefixLimitPropertiesDeserializer(item[\"v6routePrefixLimit\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n exportPolicyConfiguration: !item[\"exportPolicyConfiguration\"]\n ? item[\"exportPolicyConfiguration\"]\n : bmpExportPolicyPropertiesDeserializer(item[\"exportPolicyConfiguration\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\nexport function _l3IsolationDomainPatchPropertiesSerializer(item: L3IsolationDomainPatch): any {\n return {\n annotation: item[\"annotation\"],\n redistributeConnectedSubnets: item[\"redistributeConnectedSubnets\"],\n redistributeStaticRoutes: item[\"redistributeStaticRoutes\"],\n aggregateRouteConfiguration: !item[\"aggregateRouteConfiguration\"]\n ? item[\"aggregateRouteConfiguration\"]\n : aggregateRoutePatchConfigurationSerializer(item[\"aggregateRouteConfiguration\"]),\n connectedSubnetRoutePolicy: !item[\"connectedSubnetRoutePolicy\"]\n ? item[\"connectedSubnetRoutePolicy\"]\n : connectedSubnetRoutePolicyPatchSerializer(item[\"connectedSubnetRoutePolicy\"]),\n staticRouteRoutePolicy: !item[\"staticRouteRoutePolicy\"]\n ? item[\"staticRouteRoutePolicy\"]\n : staticRouteRoutePolicyPatchSerializer(item[\"staticRouteRoutePolicy\"]),\n v4routePrefixLimit: !item[\"v4RoutePrefixLimit\"]\n ? item[\"v4RoutePrefixLimit\"]\n : routePrefixLimitPatchPropertiesSerializer(item[\"v4RoutePrefixLimit\"]),\n v6routePrefixLimit: !item[\"v6RoutePrefixLimit\"]\n ? item[\"v6RoutePrefixLimit\"]\n : routePrefixLimitPatchPropertiesSerializer(item[\"v6RoutePrefixLimit\"]),\n exportPolicyConfiguration: !item[\"exportPolicyConfiguration\"]\n ? item[\"exportPolicyConfiguration\"]\n : bmpExportPolicyPatchPropertiesSerializer(item[\"exportPolicyConfiguration\"]),\n };\n}\n\nexport function _internalNetworkPropertiesSerializer(item: InternalNetwork): any {\n return {\n annotation: item[\"annotation\"],\n extension: item[\"extension\"],\n mtu: item[\"mtu\"],\n connectedIPv4Subnets: !item[\"connectedIPv4Subnets\"]\n ? item[\"connectedIPv4Subnets\"]\n : connectedSubnetArraySerializer(item[\"connectedIPv4Subnets\"]),\n connectedIPv6Subnets: !item[\"connectedIPv6Subnets\"]\n ? item[\"connectedIPv6Subnets\"]\n : connectedSubnetArraySerializer(item[\"connectedIPv6Subnets\"]),\n importRoutePolicy: !item[\"importRoutePolicy\"]\n ? item[\"importRoutePolicy\"]\n : importRoutePolicySerializer(item[\"importRoutePolicy\"]),\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : exportRoutePolicySerializer(item[\"exportRoutePolicy\"]),\n ingressAclId: item[\"ingressAclId\"],\n egressAclId: item[\"egressAclId\"],\n isMonitoringEnabled: item[\"isMonitoringEnabled\"],\n vlanId: item[\"vlanId\"],\n bgpConfiguration: !item[\"bgpConfiguration\"]\n ? item[\"bgpConfiguration\"]\n : bgpConfigurationSerializer(item[\"bgpConfiguration\"]),\n staticRouteConfiguration: !item[\"staticRouteConfiguration\"]\n ? item[\"staticRouteConfiguration\"]\n : staticRouteConfigurationSerializer(item[\"staticRouteConfiguration\"]),\n nativeIpv4PrefixLimit: !item[\"nativeIpv4PrefixLimit\"]\n ? item[\"nativeIpv4PrefixLimit\"]\n : nativeIpv4PrefixLimitPropertiesSerializer(item[\"nativeIpv4PrefixLimit\"]),\n nativeIpv6PrefixLimit: !item[\"nativeIpv6PrefixLimit\"]\n ? item[\"nativeIpv6PrefixLimit\"]\n : nativeIpv6PrefixLimitPropertiesSerializer(item[\"nativeIpv6PrefixLimit\"]),\n };\n}\n\nexport function _internalNetworkPropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n extension: item[\"extension\"],\n mtu: item[\"mtu\"],\n connectedIPv4Subnets: !item[\"connectedIPv4Subnets\"]\n ? item[\"connectedIPv4Subnets\"]\n : connectedSubnetArrayDeserializer(item[\"connectedIPv4Subnets\"]),\n connectedIPv6Subnets: !item[\"connectedIPv6Subnets\"]\n ? item[\"connectedIPv6Subnets\"]\n : connectedSubnetArrayDeserializer(item[\"connectedIPv6Subnets\"]),\n importRoutePolicy: !item[\"importRoutePolicy\"]\n ? item[\"importRoutePolicy\"]\n : importRoutePolicyDeserializer(item[\"importRoutePolicy\"]),\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : exportRoutePolicyDeserializer(item[\"exportRoutePolicy\"]),\n ingressAclId: item[\"ingressAclId\"],\n egressAclId: item[\"egressAclId\"],\n isMonitoringEnabled: item[\"isMonitoringEnabled\"],\n vlanId: item[\"vlanId\"],\n bgpConfiguration: !item[\"bgpConfiguration\"]\n ? item[\"bgpConfiguration\"]\n : bgpConfigurationDeserializer(item[\"bgpConfiguration\"]),\n staticRouteConfiguration: !item[\"staticRouteConfiguration\"]\n ? item[\"staticRouteConfiguration\"]\n : staticRouteConfigurationDeserializer(item[\"staticRouteConfiguration\"]),\n nativeIpv4PrefixLimit: !item[\"nativeIpv4PrefixLimit\"]\n ? item[\"nativeIpv4PrefixLimit\"]\n : nativeIpv4PrefixLimitPropertiesDeserializer(item[\"nativeIpv4PrefixLimit\"]),\n nativeIpv6PrefixLimit: !item[\"nativeIpv6PrefixLimit\"]\n ? item[\"nativeIpv6PrefixLimit\"]\n : nativeIpv6PrefixLimitPropertiesDeserializer(item[\"nativeIpv6PrefixLimit\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n networkFabricId: item[\"networkFabricId\"],\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\nexport function _internalNetworkPatchPropertiesSerializer(item: InternalNetworkPatch): any {\n return {\n annotation: item[\"annotation\"],\n mtu: item[\"mtu\"],\n connectedIPv4Subnets: !item[\"connectedIPv4Subnets\"]\n ? item[\"connectedIPv4Subnets\"]\n : connectedSubnetPatchArraySerializer(item[\"connectedIPv4Subnets\"]),\n connectedIPv6Subnets: !item[\"connectedIPv6Subnets\"]\n ? item[\"connectedIPv6Subnets\"]\n : connectedSubnetPatchArraySerializer(item[\"connectedIPv6Subnets\"]),\n importRoutePolicy: !item[\"importRoutePolicy\"]\n ? item[\"importRoutePolicy\"]\n : importRoutePolicySerializer(item[\"importRoutePolicy\"]),\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : exportRoutePolicySerializer(item[\"exportRoutePolicy\"]),\n ingressAclId: item[\"ingressAclId\"],\n egressAclId: item[\"egressAclId\"],\n isMonitoringEnabled: item[\"isMonitoringEnabled\"],\n bgpConfiguration: !item[\"bgpConfiguration\"]\n ? item[\"bgpConfiguration\"]\n : bgpPatchConfigurationSerializer(item[\"bgpConfiguration\"]),\n staticRouteConfiguration: !item[\"staticRouteConfiguration\"]\n ? item[\"staticRouteConfiguration\"]\n : staticRoutePatchConfigurationSerializer(item[\"staticRouteConfiguration\"]),\n nativeIpv4PrefixLimit: !item[\"nativeIpv4PrefixLimit\"]\n ? item[\"nativeIpv4PrefixLimit\"]\n : nativeIpv4PrefixLimitPatchPropertiesSerializer(item[\"nativeIpv4PrefixLimit\"]),\n nativeIpv6PrefixLimit: !item[\"nativeIpv6PrefixLimit\"]\n ? item[\"nativeIpv6PrefixLimit\"]\n : nativeIpv6PrefixLimitPatchPropertiesSerializer(item[\"nativeIpv6PrefixLimit\"]),\n };\n}\n\nexport function _externalNetworkPropertiesSerializer(item: ExternalNetwork): any {\n return {\n annotation: item[\"annotation\"],\n networkToNetworkInterconnectId: item[\"networkToNetworkInterconnectId\"],\n importRoutePolicy: !item[\"importRoutePolicy\"]\n ? item[\"importRoutePolicy\"]\n : importRoutePolicySerializer(item[\"importRoutePolicy\"]),\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : exportRoutePolicySerializer(item[\"exportRoutePolicy\"]),\n peeringOption: item[\"peeringOption\"],\n optionBProperties: !item[\"optionBProperties\"]\n ? item[\"optionBProperties\"]\n : l3OptionBPropertiesSerializer(item[\"optionBProperties\"]),\n optionAProperties: !item[\"optionAProperties\"]\n ? item[\"optionAProperties\"]\n : externalNetworkPropertiesOptionAPropertiesSerializer(item[\"optionAProperties\"]),\n staticRouteConfiguration: !item[\"staticRouteConfiguration\"]\n ? item[\"staticRouteConfiguration\"]\n : externalNetworkStaticRouteConfigurationSerializer(item[\"staticRouteConfiguration\"]),\n };\n}\n\nexport function _externalNetworkPropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n networkToNetworkInterconnectId: item[\"networkToNetworkInterconnectId\"],\n importRoutePolicy: !item[\"importRoutePolicy\"]\n ? item[\"importRoutePolicy\"]\n : importRoutePolicyDeserializer(item[\"importRoutePolicy\"]),\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : exportRoutePolicyDeserializer(item[\"exportRoutePolicy\"]),\n peeringOption: item[\"peeringOption\"],\n optionBProperties: !item[\"optionBProperties\"]\n ? item[\"optionBProperties\"]\n : l3OptionBPropertiesDeserializer(item[\"optionBProperties\"]),\n optionAProperties: !item[\"optionAProperties\"]\n ? item[\"optionAProperties\"]\n : externalNetworkPropertiesOptionAPropertiesDeserializer(item[\"optionAProperties\"]),\n staticRouteConfiguration: !item[\"staticRouteConfiguration\"]\n ? item[\"staticRouteConfiguration\"]\n : externalNetworkStaticRouteConfigurationDeserializer(item[\"staticRouteConfiguration\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n networkFabricId: item[\"networkFabricId\"],\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\nexport function _externalNetworkPatchPropertiesSerializer(item: ExternalNetworkPatch): any {\n return {\n annotation: item[\"annotation\"],\n networkToNetworkInterconnectId: item[\"networkToNetworkInterconnectId\"],\n importRoutePolicy: !item[\"importRoutePolicy\"]\n ? item[\"importRoutePolicy\"]\n : importRoutePolicyPatchSerializer(item[\"importRoutePolicy\"]),\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : exportRoutePolicyPatchSerializer(item[\"exportRoutePolicy\"]),\n peeringOption: item[\"peeringOption\"],\n optionBProperties: !item[\"optionBProperties\"]\n ? item[\"optionBProperties\"]\n : l3OptionBPatchPropertiesSerializer(item[\"optionBProperties\"]),\n optionAProperties: !item[\"optionAProperties\"]\n ? item[\"optionAProperties\"]\n : externalNetworkPatchPropertiesOptionAPropertiesSerializer(item[\"optionAProperties\"]),\n staticRouteConfiguration: !item[\"staticRouteConfiguration\"]\n ? item[\"staticRouteConfiguration\"]\n : externalNetworkStaticRoutePatchConfigurationSerializer(item[\"staticRouteConfiguration\"]),\n };\n}\n\nexport function _neighborGroupPropertiesSerializer(item: NeighborGroup): any {\n return {\n annotation: item[\"annotation\"],\n destination: neighborGroupDestinationSerializer(item[\"destination\"]),\n };\n}\n\nexport function _neighborGroupPropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n destination: neighborGroupDestinationDeserializer(item[\"destination\"]),\n networkTapIds: !item[\"networkTapIds\"]\n ? item[\"networkTapIds\"]\n : item[\"networkTapIds\"].map((p: any) => {\n return p;\n }),\n networkTapRuleIds: !item[\"networkTapRuleIds\"]\n ? item[\"networkTapRuleIds\"]\n : item[\"networkTapRuleIds\"].map((p: any) => {\n return p;\n }),\n networkFabricIds: !item[\"networkFabricIds\"]\n ? item[\"networkFabricIds\"]\n : item[\"networkFabricIds\"].map((p: any) => {\n return p;\n }),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n provisioningState: item[\"provisioningState\"],\n configurationState: item[\"configurationState\"],\n };\n}\n\nexport function _neighborGroupPatchPropertiesSerializer(item: NeighborGroupPatch): any {\n return {\n annotation: item[\"annotation\"],\n destination: !item[\"destination\"]\n ? item[\"destination\"]\n : neighborGroupDestinationPatchSerializer(item[\"destination\"]),\n };\n}\n\nexport function _networkDeviceSkuPropertiesDeserializer(item: any) {\n return {\n model: item[\"model\"],\n manufacturer: item[\"manufacturer\"],\n supportedVersions: !item[\"supportedVersions\"]\n ? item[\"supportedVersions\"]\n : supportedVersionPropertiesArrayDeserializer(item[\"supportedVersions\"]),\n supportedRoleTypes: !item[\"supportedRoleTypes\"]\n ? item[\"supportedRoleTypes\"]\n : item[\"supportedRoleTypes\"].map((p: any) => {\n return p;\n }),\n interfaces: !item[\"interfaces\"]\n ? item[\"interfaces\"]\n : deviceInterfacePropertiesArrayDeserializer(item[\"interfaces\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\nexport function _networkDevicePropertiesSerializer(item: NetworkDevice): any {\n return {\n annotation: item[\"annotation\"],\n hostName: item[\"hostName\"],\n serialNumber: item[\"serialNumber\"],\n identitySelector: !item[\"identitySelector\"]\n ? item[\"identitySelector\"]\n : identitySelectorSerializer(item[\"identitySelector\"]),\n networkDeviceSku: item[\"networkDeviceSku\"],\n };\n}\n\nexport function _networkDevicePropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n hostName: item[\"hostName\"],\n serialNumber: item[\"serialNumber\"],\n identitySelector: !item[\"identitySelector\"]\n ? item[\"identitySelector\"]\n : identitySelectorDeserializer(item[\"identitySelector\"]),\n version: item[\"version\"],\n networkDeviceSku: item[\"networkDeviceSku\"],\n networkDeviceRole: item[\"networkDeviceRole\"],\n networkRackId: item[\"networkRackId\"],\n managementIpv4Address: item[\"managementIpv4Address\"],\n managementIpv6Address: item[\"managementIpv6Address\"],\n rwDeviceConfig: item[\"rwDeviceConfig\"],\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n secretRotationStatus: !item[\"secretRotationStatus\"]\n ? item[\"secretRotationStatus\"]\n : secretRotationStatusArrayDeserializer(item[\"secretRotationStatus\"]),\n certificateRotationStatus: !item[\"certificateRotationStatus\"]\n ? item[\"certificateRotationStatus\"]\n : certificateRotationStatusArrayDeserializer(item[\"certificateRotationStatus\"]),\n networkFabricId: item[\"networkFabricId\"],\n };\n}\n\nexport function _networkDevicePatchParametersPropertiesSerializer(\n item: NetworkDevicePatchParameters,\n): any {\n return {\n annotation: item[\"annotation\"],\n hostName: item[\"hostName\"],\n serialNumber: item[\"serialNumber\"],\n identitySelector: !item[\"identitySelector\"]\n ? item[\"identitySelector\"]\n : identitySelectorPatchSerializer(item[\"identitySelector\"]),\n };\n}\n\nexport function _networkInterfacePropertiesSerializer(item: NetworkInterface): any {\n return { annotation: item[\"annotation\"], additionalDescription: item[\"additionalDescription\"] };\n}\n\nexport function _networkInterfacePropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n physicalIdentifier: item[\"physicalIdentifier\"],\n connectedTo: item[\"connectedTo\"],\n interfaceType: item[\"interfaceType\"],\n ipv4Address: item[\"ipv4Address\"],\n ipv6Address: item[\"ipv6Address\"],\n description: item[\"description\"],\n additionalDescription: item[\"additionalDescription\"],\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n networkFabricId: item[\"networkFabricId\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n configurationState: item[\"configurationState\"],\n };\n}\n\nexport function _networkInterfacePatchPropertiesSerializer(item: NetworkInterfacePatch): any {\n return { annotation: item[\"annotation\"], additionalDescription: item[\"additionalDescription\"] };\n}\n\nexport function _networkFabricControllerPropertiesSerializer(item: NetworkFabricController): any {\n return {\n annotation: item[\"annotation\"],\n infrastructureExpressRouteConnections: !item[\"infrastructureExpressRouteConnections\"]\n ? item[\"infrastructureExpressRouteConnections\"]\n : expressRouteConnectionInformationArraySerializer(\n item[\"infrastructureExpressRouteConnections\"],\n ),\n workloadExpressRouteConnections: !item[\"workloadExpressRouteConnections\"]\n ? item[\"workloadExpressRouteConnections\"]\n : expressRouteConnectionInformationArraySerializer(item[\"workloadExpressRouteConnections\"]),\n managedResourceGroupConfiguration: !item[\"managedResourceGroupConfiguration\"]\n ? item[\"managedResourceGroupConfiguration\"]\n : managedResourceGroupConfigurationSerializer(item[\"managedResourceGroupConfiguration\"]),\n isWorkloadManagementNetworkEnabled: item[\"isWorkloadManagementNetworkEnabled\"],\n ipv4AddressSpace: item[\"ipv4AddressSpace\"],\n ipv6AddressSpace: item[\"ipv6AddressSpace\"],\n nfcSku: item[\"nfcSku\"],\n };\n}\n\nexport function _networkFabricControllerPropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n infrastructureExpressRouteConnections: !item[\"infrastructureExpressRouteConnections\"]\n ? item[\"infrastructureExpressRouteConnections\"]\n : expressRouteConnectionInformationArrayDeserializer(\n item[\"infrastructureExpressRouteConnections\"],\n ),\n workloadExpressRouteConnections: !item[\"workloadExpressRouteConnections\"]\n ? item[\"workloadExpressRouteConnections\"]\n : expressRouteConnectionInformationArrayDeserializer(item[\"workloadExpressRouteConnections\"]),\n infrastructureServices: !item[\"infrastructureServices\"]\n ? item[\"infrastructureServices\"]\n : controllerServicesDeserializer(item[\"infrastructureServices\"]),\n workloadServices: !item[\"workloadServices\"]\n ? item[\"workloadServices\"]\n : controllerServicesDeserializer(item[\"workloadServices\"]),\n managedResourceGroupConfiguration: !item[\"managedResourceGroupConfiguration\"]\n ? item[\"managedResourceGroupConfiguration\"]\n : managedResourceGroupConfigurationDeserializer(item[\"managedResourceGroupConfiguration\"]),\n networkFabricIds: !item[\"networkFabricIds\"]\n ? item[\"networkFabricIds\"]\n : item[\"networkFabricIds\"].map((p: any) => {\n return p;\n }),\n isWorkloadManagementNetworkEnabled: item[\"isWorkloadManagementNetworkEnabled\"],\n tenantInternetGatewayIds: !item[\"tenantInternetGatewayIds\"]\n ? item[\"tenantInternetGatewayIds\"]\n : item[\"tenantInternetGatewayIds\"].map((p: any) => {\n return p;\n }),\n ipv4AddressSpace: item[\"ipv4AddressSpace\"],\n ipv6AddressSpace: item[\"ipv6AddressSpace\"],\n nfcSku: item[\"nfcSku\"],\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\nexport function _networkFabricControllerPatchPropertiesSerializer(\n item: NetworkFabricControllerPatch,\n): any {\n return {\n infrastructureExpressRouteConnections: !item[\"infrastructureExpressRouteConnections\"]\n ? item[\"infrastructureExpressRouteConnections\"]\n : expressRouteConnectionInformationArraySerializer(\n item[\"infrastructureExpressRouteConnections\"],\n ),\n workloadExpressRouteConnections: !item[\"workloadExpressRouteConnections\"]\n ? item[\"workloadExpressRouteConnections\"]\n : expressRouteConnectionInformationArraySerializer(item[\"workloadExpressRouteConnections\"]),\n };\n}\n\nexport function _networkFabricSkuPropertiesDeserializer(item: any) {\n return {\n typePropertiesType: item[\"type\"],\n maxComputeRacks: item[\"maxComputeRacks\"],\n maximumServerCount: item[\"maximumServerCount\"],\n supportedVersions: !item[\"supportedVersions\"]\n ? item[\"supportedVersions\"]\n : item[\"supportedVersions\"].map((p: any) => {\n return p;\n }),\n details: item[\"details\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\nexport function _networkFabricPropertiesSerializer(item: NetworkFabric): any {\n return {\n annotation: item[\"annotation\"],\n networkFabricSku: item[\"networkFabricSku\"],\n fabricVersion: item[\"fabricVersion\"],\n storageAccountConfiguration: !item[\"storageAccountConfiguration\"]\n ? item[\"storageAccountConfiguration\"]\n : storageAccountConfigurationSerializer(item[\"storageAccountConfiguration\"]),\n networkFabricControllerId: item[\"networkFabricControllerId\"],\n rackCount: item[\"rackCount\"],\n serverCountPerRack: item[\"serverCountPerRack\"],\n ipv4Prefix: item[\"ipv4Prefix\"],\n ipv6Prefix: item[\"ipv6Prefix\"],\n fabricASN: item[\"fabricASN\"],\n terminalServerConfiguration: terminalServerConfigurationSerializer(\n item[\"terminalServerConfiguration\"],\n ),\n managementNetworkConfiguration: managementNetworkConfigurationPropertiesSerializer(\n item[\"managementNetworkConfiguration\"],\n ),\n hardwareAlertThreshold: item[\"hardwareAlertThreshold\"],\n controlPlaneAcls: !item[\"controlPlaneAcls\"]\n ? item[\"controlPlaneAcls\"]\n : item[\"controlPlaneAcls\"].map((p: any) => {\n return p;\n }),\n featureFlags: !item[\"featureFlags\"]\n ? item[\"featureFlags\"]\n : featureFlagPropertiesArraySerializer(item[\"featureFlags\"]),\n trustedIpPrefixes: !item[\"trustedIpPrefixes\"]\n ? item[\"trustedIpPrefixes\"]\n : item[\"trustedIpPrefixes\"].map((p: any) => {\n return p;\n }),\n uniqueRdConfiguration: !item[\"uniqueRdConfiguration\"]\n ? item[\"uniqueRdConfiguration\"]\n : uniqueRouteDistinguisherPropertiesSerializer(item[\"uniqueRdConfiguration\"]),\n storageArrayCount: item[\"storageArrayCount\"],\n authorizedTransceiver: !item[\"authorizedTransceiver\"]\n ? item[\"authorizedTransceiver\"]\n : authorizedTransceiverPropertiesSerializer(item[\"authorizedTransceiver\"]),\n qosConfiguration: !item[\"qosConfiguration\"]\n ? item[\"qosConfiguration\"]\n : qosPropertiesSerializer(item[\"qosConfiguration\"]),\n };\n}\n\nexport function _networkFabricPropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n networkFabricSku: item[\"networkFabricSku\"],\n fabricVersion: item[\"fabricVersion\"],\n routerIds: !item[\"routerIds\"]\n ? item[\"routerIds\"]\n : item[\"routerIds\"].map((p: any) => {\n return p;\n }),\n storageAccountConfiguration: !item[\"storageAccountConfiguration\"]\n ? item[\"storageAccountConfiguration\"]\n : storageAccountConfigurationDeserializer(item[\"storageAccountConfiguration\"]),\n fabricLocks: !item[\"fabricLocks\"]\n ? item[\"fabricLocks\"]\n : fabricLockPropertiesArrayDeserializer(item[\"fabricLocks\"]),\n networkFabricControllerId: item[\"networkFabricControllerId\"],\n rackCount: item[\"rackCount\"],\n serverCountPerRack: item[\"serverCountPerRack\"],\n ipv4Prefix: item[\"ipv4Prefix\"],\n ipv6Prefix: item[\"ipv6Prefix\"],\n fabricASN: item[\"fabricASN\"],\n terminalServerConfiguration: terminalServerConfigurationDeserializer(\n item[\"terminalServerConfiguration\"],\n ),\n managementNetworkConfiguration: managementNetworkConfigurationPropertiesDeserializer(\n item[\"managementNetworkConfiguration\"],\n ),\n racks: !item[\"racks\"]\n ? item[\"racks\"]\n : item[\"racks\"].map((p: any) => {\n return p;\n }),\n l2IsolationDomains: !item[\"l2IsolationDomains\"]\n ? item[\"l2IsolationDomains\"]\n : item[\"l2IsolationDomains\"].map((p: any) => {\n return p;\n }),\n l3IsolationDomains: !item[\"l3IsolationDomains\"]\n ? item[\"l3IsolationDomains\"]\n : item[\"l3IsolationDomains\"].map((p: any) => {\n return p;\n }),\n hardwareAlertThreshold: item[\"hardwareAlertThreshold\"],\n controlPlaneAcls: !item[\"controlPlaneAcls\"]\n ? item[\"controlPlaneAcls\"]\n : item[\"controlPlaneAcls\"].map((p: any) => {\n return p;\n }),\n featureFlags: !item[\"featureFlags\"]\n ? item[\"featureFlags\"]\n : featureFlagPropertiesArrayDeserializer(item[\"featureFlags\"]),\n trustedIpPrefixes: !item[\"trustedIpPrefixes\"]\n ? item[\"trustedIpPrefixes\"]\n : item[\"trustedIpPrefixes\"].map((p: any) => {\n return p;\n }),\n uniqueRdConfiguration: !item[\"uniqueRdConfiguration\"]\n ? item[\"uniqueRdConfiguration\"]\n : uniqueRouteDistinguisherPropertiesDeserializer(item[\"uniqueRdConfiguration\"]),\n storageArrayCount: item[\"storageArrayCount\"],\n activeCommitBatches: !item[\"activeCommitBatches\"]\n ? item[\"activeCommitBatches\"]\n : item[\"activeCommitBatches\"].map((p: any) => {\n return p;\n }),\n secretRotationSummary: !item[\"secretRotationSummary\"]\n ? item[\"secretRotationSummary\"]\n : secretRotationSummaryDeserializer(item[\"secretRotationSummary\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n authorizedTransceiver: !item[\"authorizedTransceiver\"]\n ? item[\"authorizedTransceiver\"]\n : authorizedTransceiverPropertiesDeserializer(item[\"authorizedTransceiver\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n qosConfiguration: !item[\"qosConfiguration\"]\n ? item[\"qosConfiguration\"]\n : qosPropertiesDeserializer(item[\"qosConfiguration\"]),\n };\n}\n\nexport function _networkFabricPatchPropertiesSerializer(item: NetworkFabricPatch): any {\n return {\n annotation: item[\"annotation\"],\n rackCount: item[\"rackCount\"],\n serverCountPerRack: item[\"serverCountPerRack\"],\n ipv4Prefix: item[\"ipv4Prefix\"],\n ipv6Prefix: item[\"ipv6Prefix\"],\n fabricASN: item[\"fabricASN\"],\n terminalServerConfiguration: !item[\"terminalServerConfiguration\"]\n ? item[\"terminalServerConfiguration\"]\n : terminalServerPatchConfigurationSerializer(item[\"terminalServerConfiguration\"]),\n managementNetworkConfiguration: !item[\"managementNetworkConfiguration\"]\n ? item[\"managementNetworkConfiguration\"]\n : managementNetworkPatchConfigurationSerializer(item[\"managementNetworkConfiguration\"]),\n storageAccountConfiguration: !item[\"storageAccountConfiguration\"]\n ? item[\"storageAccountConfiguration\"]\n : storageAccountPatchConfigurationSerializer(item[\"storageAccountConfiguration\"]),\n hardwareAlertThreshold: item[\"hardwareAlertThreshold\"],\n controlPlaneAcls: !item[\"controlPlaneAcls\"]\n ? item[\"controlPlaneAcls\"]\n : item[\"controlPlaneAcls\"].map((p: any) => {\n return p;\n }),\n trustedIpPrefixes: !item[\"trustedIpPrefixes\"]\n ? item[\"trustedIpPrefixes\"]\n : item[\"trustedIpPrefixes\"].map((p: any) => {\n return p;\n }),\n uniqueRdConfiguration: !item[\"uniqueRdConfiguration\"]\n ? item[\"uniqueRdConfiguration\"]\n : uniqueRouteDistinguisherPatchPropertiesSerializer(item[\"uniqueRdConfiguration\"]),\n qosConfiguration: !item[\"qosConfiguration\"]\n ? item[\"qosConfiguration\"]\n : qosPatchPropertiesSerializer(item[\"qosConfiguration\"]),\n featureFlags: !item[\"featureFlags\"]\n ? item[\"featureFlags\"]\n : featureFlagPropertiesArraySerializer(item[\"featureFlags\"]),\n authorizedTransceiver: !item[\"authorizedTransceiver\"]\n ? item[\"authorizedTransceiver\"]\n : authorizedTransceiverPatchPropertiesSerializer(item[\"authorizedTransceiver\"]),\n };\n}\n\nexport function _networkToNetworkInterconnectPropertiesSerializer(\n item: NetworkToNetworkInterconnect,\n): any {\n return {\n nniType: item[\"nniType\"],\n isManagementType: item[\"isManagementType\"],\n useOptionB: item[\"useOptionB\"],\n layer2Configuration: !item[\"layer2Configuration\"]\n ? item[\"layer2Configuration\"]\n : layer2ConfigurationSerializer(item[\"layer2Configuration\"]),\n optionBLayer3Configuration: !item[\"optionBLayer3Configuration\"]\n ? item[\"optionBLayer3Configuration\"]\n : optionBLayer3ConfigurationSerializer(item[\"optionBLayer3Configuration\"]),\n npbStaticRouteConfiguration: !item[\"npbStaticRouteConfiguration\"]\n ? item[\"npbStaticRouteConfiguration\"]\n : npbStaticRouteConfigurationSerializer(item[\"npbStaticRouteConfiguration\"]),\n staticRouteConfiguration: !item[\"staticRouteConfiguration\"]\n ? item[\"staticRouteConfiguration\"]\n : nniStaticRouteConfigurationSerializer(item[\"staticRouteConfiguration\"]),\n importRoutePolicy: !item[\"importRoutePolicy\"]\n ? item[\"importRoutePolicy\"]\n : importRoutePolicyInformationSerializer(item[\"importRoutePolicy\"]),\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : exportRoutePolicyInformationSerializer(item[\"exportRoutePolicy\"]),\n egressAclId: item[\"egressAclId\"],\n ingressAclId: item[\"ingressAclId\"],\n microBfdState: item[\"microBfdState\"],\n conditionalDefaultRouteConfiguration: !item[\"conditionalDefaultRouteConfiguration\"]\n ? item[\"conditionalDefaultRouteConfiguration\"]\n : conditionalDefaultRoutePropertiesSerializer(item[\"conditionalDefaultRouteConfiguration\"]),\n };\n}\n\nexport function _networkToNetworkInterconnectPropertiesDeserializer(item: any) {\n return {\n nniType: item[\"nniType\"],\n isManagementType: item[\"isManagementType\"],\n useOptionB: item[\"useOptionB\"],\n layer2Configuration: !item[\"layer2Configuration\"]\n ? item[\"layer2Configuration\"]\n : layer2ConfigurationDeserializer(item[\"layer2Configuration\"]),\n optionBLayer3Configuration: !item[\"optionBLayer3Configuration\"]\n ? item[\"optionBLayer3Configuration\"]\n : optionBLayer3ConfigurationDeserializer(item[\"optionBLayer3Configuration\"]),\n npbStaticRouteConfiguration: !item[\"npbStaticRouteConfiguration\"]\n ? item[\"npbStaticRouteConfiguration\"]\n : npbStaticRouteConfigurationDeserializer(item[\"npbStaticRouteConfiguration\"]),\n staticRouteConfiguration: !item[\"staticRouteConfiguration\"]\n ? item[\"staticRouteConfiguration\"]\n : nniStaticRouteConfigurationDeserializer(item[\"staticRouteConfiguration\"]),\n importRoutePolicy: !item[\"importRoutePolicy\"]\n ? item[\"importRoutePolicy\"]\n : importRoutePolicyInformationDeserializer(item[\"importRoutePolicy\"]),\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : exportRoutePolicyInformationDeserializer(item[\"exportRoutePolicy\"]),\n egressAclId: item[\"egressAclId\"],\n ingressAclId: item[\"ingressAclId\"],\n microBfdState: item[\"microBfdState\"],\n conditionalDefaultRouteConfiguration: !item[\"conditionalDefaultRouteConfiguration\"]\n ? item[\"conditionalDefaultRouteConfiguration\"]\n : conditionalDefaultRoutePropertiesDeserializer(item[\"conditionalDefaultRouteConfiguration\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\nexport function _networkToNetworkInterconnectPatchPropertiesSerializer(\n item: NetworkToNetworkInterconnectPatch,\n): any {\n return {\n layer2Configuration: !item[\"layer2Configuration\"]\n ? item[\"layer2Configuration\"]\n : layer2ConfigurationPatchSerializer(item[\"layer2Configuration\"]),\n optionBLayer3Configuration: !item[\"optionBLayer3Configuration\"]\n ? item[\"optionBLayer3Configuration\"]\n : optionBLayer3ConfigurationPatchPropertiesSerializer(item[\"optionBLayer3Configuration\"]),\n npbStaticRouteConfiguration: !item[\"npbStaticRouteConfiguration\"]\n ? item[\"npbStaticRouteConfiguration\"]\n : npbStaticRouteConfigurationPatchSerializer(item[\"npbStaticRouteConfiguration\"]),\n staticRouteConfiguration: !item[\"staticRouteConfiguration\"]\n ? item[\"staticRouteConfiguration\"]\n : nniStaticRoutePatchConfigurationSerializer(item[\"staticRouteConfiguration\"]),\n importRoutePolicy: !item[\"importRoutePolicy\"]\n ? item[\"importRoutePolicy\"]\n : importRoutePolicyInformationPatchSerializer(item[\"importRoutePolicy\"]),\n exportRoutePolicy: !item[\"exportRoutePolicy\"]\n ? item[\"exportRoutePolicy\"]\n : exportRoutePolicyInformationPatchSerializer(item[\"exportRoutePolicy\"]),\n egressAclId: item[\"egressAclId\"],\n ingressAclId: item[\"ingressAclId\"],\n microBfdState: item[\"microBfdState\"],\n };\n}\n\nexport function _networkPacketBrokerPropertiesSerializer(item: NetworkPacketBroker): any {\n return { networkFabricId: item[\"networkFabricId\"] };\n}\n\nexport function _networkPacketBrokerPropertiesDeserializer(item: any) {\n return {\n networkFabricId: item[\"networkFabricId\"],\n networkDeviceIds: !item[\"networkDeviceIds\"]\n ? item[\"networkDeviceIds\"]\n : item[\"networkDeviceIds\"].map((p: any) => {\n return p;\n }),\n sourceInterfaceIds: !item[\"sourceInterfaceIds\"]\n ? item[\"sourceInterfaceIds\"]\n : item[\"sourceInterfaceIds\"].map((p: any) => {\n return p;\n }),\n networkTapIds: !item[\"networkTapIds\"]\n ? item[\"networkTapIds\"]\n : item[\"networkTapIds\"].map((p: any) => {\n return p;\n }),\n neighborGroupIds: !item[\"neighborGroupIds\"]\n ? item[\"neighborGroupIds\"]\n : item[\"neighborGroupIds\"].map((p: any) => {\n return p;\n }),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n provisioningState: item[\"provisioningState\"],\n configurationState: item[\"configurationState\"],\n };\n}\n\nexport function _networkRackPropertiesSerializer(item: NetworkRack): any {\n return {\n annotation: item[\"annotation\"],\n networkRackType: item[\"networkRackType\"],\n networkFabricId: item[\"networkFabricId\"],\n };\n}\n\nexport function _networkRackPropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n networkRackType: item[\"networkRackType\"],\n networkFabricId: item[\"networkFabricId\"],\n networkDevices: !item[\"networkDevices\"]\n ? item[\"networkDevices\"]\n : item[\"networkDevices\"].map((p: any) => {\n return p;\n }),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n provisioningState: item[\"provisioningState\"],\n configurationState: item[\"configurationState\"],\n };\n}\n\nexport function _networkTapRulePropertiesSerializer(item: NetworkTapRule): any {\n return {\n annotation: item[\"annotation\"],\n configurationType: item[\"configurationType\"],\n tapRulesUrl: item[\"tapRulesUrl\"],\n identitySelector: !item[\"identitySelector\"]\n ? item[\"identitySelector\"]\n : identitySelectorSerializer(item[\"identitySelector\"]),\n matchConfigurations: !item[\"matchConfigurations\"]\n ? item[\"matchConfigurations\"]\n : networkTapRuleMatchConfigurationArraySerializer(item[\"matchConfigurations\"]),\n dynamicMatchConfigurations: !item[\"dynamicMatchConfigurations\"]\n ? item[\"dynamicMatchConfigurations\"]\n : commonDynamicMatchConfigurationArraySerializer(item[\"dynamicMatchConfigurations\"]),\n pollingIntervalInSeconds: item[\"pollingIntervalInSeconds\"],\n globalNetworkTapRuleActions: !item[\"globalNetworkTapRuleActions\"]\n ? item[\"globalNetworkTapRuleActions\"]\n : globalNetworkTapRuleActionPropertiesSerializer(item[\"globalNetworkTapRuleActions\"]),\n };\n}\n\nexport function _networkTapRulePropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n configurationType: item[\"configurationType\"],\n tapRulesUrl: item[\"tapRulesUrl\"],\n identitySelector: !item[\"identitySelector\"]\n ? item[\"identitySelector\"]\n : identitySelectorDeserializer(item[\"identitySelector\"]),\n matchConfigurations: !item[\"matchConfigurations\"]\n ? item[\"matchConfigurations\"]\n : networkTapRuleMatchConfigurationArrayDeserializer(item[\"matchConfigurations\"]),\n dynamicMatchConfigurations: !item[\"dynamicMatchConfigurations\"]\n ? item[\"dynamicMatchConfigurations\"]\n : commonDynamicMatchConfigurationArrayDeserializer(item[\"dynamicMatchConfigurations\"]),\n networkTapId: item[\"networkTapId\"],\n networkTapIds: !item[\"networkTapIds\"]\n ? item[\"networkTapIds\"]\n : item[\"networkTapIds\"].map((p: any) => {\n return p;\n }),\n pollingIntervalInSeconds: item[\"pollingIntervalInSeconds\"],\n lastSyncedTime: !item[\"lastSyncedTime\"]\n ? item[\"lastSyncedTime\"]\n : new Date(item[\"lastSyncedTime\"]),\n globalNetworkTapRuleActions: !item[\"globalNetworkTapRuleActions\"]\n ? item[\"globalNetworkTapRuleActions\"]\n : globalNetworkTapRuleActionPropertiesDeserializer(item[\"globalNetworkTapRuleActions\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n networkFabricIds: !item[\"networkFabricIds\"]\n ? item[\"networkFabricIds\"]\n : item[\"networkFabricIds\"].map((p: any) => {\n return p;\n }),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\nexport function _networkTapRulePatchPropertiesSerializer(item: NetworkTapRulePatch): any {\n return {\n annotation: item[\"annotation\"],\n configurationType: item[\"configurationType\"],\n tapRulesUrl: item[\"tapRulesUrl\"],\n matchConfigurations: !item[\"matchConfigurations\"]\n ? item[\"matchConfigurations\"]\n : networkTapRuleMatchConfigurationPatchArraySerializer(item[\"matchConfigurations\"]),\n dynamicMatchConfigurations: !item[\"dynamicMatchConfigurations\"]\n ? item[\"dynamicMatchConfigurations\"]\n : commonDynamicMatchConfigurationPatchArraySerializer(item[\"dynamicMatchConfigurations\"]),\n identitySelector: !item[\"identitySelector\"]\n ? item[\"identitySelector\"]\n : identitySelectorPatchSerializer(item[\"identitySelector\"]),\n globalNetworkTapRuleActions: !item[\"globalNetworkTapRuleActions\"]\n ? item[\"globalNetworkTapRuleActions\"]\n : globalNetworkTapRuleActionPatchPropertiesSerializer(item[\"globalNetworkTapRuleActions\"]),\n };\n}\n\nexport function _networkTapPropertiesSerializer(item: NetworkTap): any {\n return {\n annotation: item[\"annotation\"],\n networkPacketBrokerId: item[\"networkPacketBrokerId\"],\n destinations: destinationPropertiesArraySerializer(item[\"destinations\"]),\n pollingType: item[\"pollingType\"],\n };\n}\n\nexport function _networkTapPropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n networkPacketBrokerId: item[\"networkPacketBrokerId\"],\n sourceTapRuleId: item[\"sourceTapRuleId\"],\n networkFabricIds: !item[\"networkFabricIds\"]\n ? item[\"networkFabricIds\"]\n : item[\"networkFabricIds\"].map((p: any) => {\n return p;\n }),\n destinations: destinationPropertiesArrayDeserializer(item[\"destinations\"]),\n pollingType: item[\"pollingType\"],\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\nexport function _networkTapPatchPropertiesSerializer(item: NetworkTapPatch): any {\n return {\n annotation: item[\"annotation\"],\n pollingType: item[\"pollingType\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : destinationPatchPropertiesArraySerializer(item[\"destinations\"]),\n };\n}\n\nexport function _routePolicyPropertiesSerializer(item: RoutePolicy): any {\n return {\n annotation: item[\"annotation\"],\n defaultAction: item[\"defaultAction\"],\n statements: routePolicyStatementPropertiesArraySerializer(item[\"statements\"]),\n networkFabricId: item[\"networkFabricId\"],\n addressFamilyType: item[\"addressFamilyType\"],\n };\n}\n\nexport function _routePolicyPropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n defaultAction: item[\"defaultAction\"],\n statements: routePolicyStatementPropertiesArrayDeserializer(item[\"statements\"]),\n networkFabricId: item[\"networkFabricId\"],\n addressFamilyType: item[\"addressFamilyType\"],\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\nexport function _routePolicyPatchPropertiesSerializer(item: RoutePolicyPatch): any {\n return {\n defaultAction: item[\"defaultAction\"],\n statements: !item[\"statements\"]\n ? item[\"statements\"]\n : routePolicyStatementPatchPropertiesArraySerializer(item[\"statements\"]),\n };\n}\n\nexport function _networkMonitorPropertiesSerializer(item: NetworkMonitor): any {\n return {\n annotation: item[\"annotation\"],\n bmpConfiguration: !item[\"bmpConfiguration\"]\n ? item[\"bmpConfiguration\"]\n : bmpConfigurationPropertiesSerializer(item[\"bmpConfiguration\"]),\n };\n}\n\nexport function _networkMonitorPropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n bmpConfiguration: !item[\"bmpConfiguration\"]\n ? item[\"bmpConfiguration\"]\n : bmpConfigurationPropertiesDeserializer(item[\"bmpConfiguration\"]),\n lastOperation: !item[\"lastOperation\"]\n ? item[\"lastOperation\"]\n : lastOperationPropertiesDeserializer(item[\"lastOperation\"]),\n configurationState: item[\"configurationState\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n };\n}\n\nexport function _networkMonitorPatchPropertiesSerializer(item: NetworkMonitorPatch): any {\n return {\n bmpConfiguration: !item[\"bmpConfiguration\"]\n ? item[\"bmpConfiguration\"]\n : bmpConfigurationPatchPropertiesSerializer(item[\"bmpConfiguration\"]),\n };\n}\n\nexport function _networkBootstrapDevicePropertiesSerializer(item: NetworkBootstrapDevice): any {\n return {\n annotation: item[\"annotation\"],\n hostName: item[\"hostName\"],\n serialNumber: item[\"serialNumber\"],\n networkDeviceSku: item[\"networkDeviceSku\"],\n };\n}\n\nexport function _networkBootstrapDevicePropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n hostName: item[\"hostName\"],\n serialNumber: item[\"serialNumber\"],\n version: item[\"version\"],\n networkDeviceSku: item[\"networkDeviceSku\"],\n networkFabricId: item[\"networkFabricId\"],\n secondaryManagementIpv4Address: item[\"secondaryManagementIpv4Address\"],\n dhcpV4ServerIpAddress: item[\"dhcpV4ServerIpAddress\"],\n primaryManagementIpv6Address: item[\"primaryManagementIpv6Address\"],\n secondaryManagementIpv6Address: item[\"secondaryManagementIpv6Address\"],\n provisioningState: item[\"provisioningState\"],\n primaryManagementIpv4Address: item[\"primaryManagementIpv4Address\"],\n administrativeState: item[\"administrativeState\"],\n configurationState: item[\"configurationState\"],\n };\n}\n\nexport function _networkBootstrapDevicePatchPropertiesSerializer(\n item: NetworkBootstrapDevicePatch,\n): any {\n return {\n annotation: item[\"annotation\"],\n hostName: item[\"hostName\"],\n serialNumber: item[\"serialNumber\"],\n };\n}\n\nexport function _networkBootstrapInterfacePropertiesSerializer(\n item: NetworkBootstrapInterface,\n): any {\n return {\n annotation: item[\"annotation\"],\n additionalDescription: item[\"additionalDescription\"],\n serialNumber: item[\"serialNumber\"],\n };\n}\n\nexport function _networkBootstrapInterfacePropertiesDeserializer(item: any) {\n return {\n annotation: item[\"annotation\"],\n provisioningState: item[\"provisioningState\"],\n administrativeState: item[\"administrativeState\"],\n configurationState: item[\"configurationState\"],\n physicalIdentifier: item[\"physicalIdentifier\"],\n connectedTo: item[\"connectedTo\"],\n interfaceType: item[\"interfaceType\"],\n description: item[\"description\"],\n additionalDescription: item[\"additionalDescription\"],\n ipv4Address: item[\"ipv4Address\"],\n ipv6Address: item[\"ipv6Address\"],\n serialNumber: item[\"serialNumber\"],\n };\n}\n\nexport function _networkBootstrapInterfacePatchPropertiesSerializer(\n item: NetworkBootstrapInterfacePatch,\n): any {\n return {\n annotation: item[\"annotation\"],\n serialNumber: item[\"serialNumber\"],\n additionalDescription: item[\"additionalDescription\"],\n };\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAA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",
6
+ "names": ["KnownOrigin", "KnownActionType", "KnownConfigurationType", "KnownCommunityActionTypes", "KnownIPAddressType", "KnownAclActionType", "KnownBitRateUnit", "KnownBurstSizeUnit", "KnownAclType", "KnownDeviceRole", "KnownBooleanEnumProperty", "KnownControlPlaneAclTtlMatchType", "KnownControlPlaneAclPortMatchType", "KnownControlPlaneAclActionType", "KnownConfigurationState", "KnownProvisioningState", "KnownAdministrativeState", "KnownPortType", "KnownLayer4Protocol", "KnownSourceDestinationType", "KnownPrefixType", "KnownCreatedByType", "KnownEnableDisableState", "KnownAction", "KnownRuleCondition", "KnownGatewayType", "KnownWellKnownCommunities", "KnownCondition", "KnownExtendedVlan", "KnownManagedServiceIdentityType", "KnownRedistributeConnectedSubnets", "KnownRedistributeStaticRoutes", "KnownBmpExportPolicy", "KnownExtension", "KnownIsMonitoringEnabled", "KnownBfdAdministrativeState", "KnownAllowASOverride", "KnownBgpAdministrativeState", "KnownBmpConfigurationState", "KnownV4OverV6BgpSessionState", "KnownV6OverV4BgpSessionState", "KnownInternalNetworkRouteType", "KnownPeeringOption", "KnownExternalNetworkRouteType", "KnownNetworkDeviceRoleName", "KnownManagedServiceIdentitySelectorType", "KnownNetworkDeviceRole", "KnownSynchronizationStatus", "KnownRebootType", "KnownDeviceAdministrativeState", "KnownInterfaceType", "KnownIsWorkloadManagementNetworkEnabled", "KnownNfcSku", "KnownFabricSkuType", "KnownLockConfigurationState", "KnownNetworkFabricLockType", "KnownUniqueRouteDistinguisherConfigurationState", "KnownNNIDerivedUniqueRouteDistinguisherConfigurationState", "KnownQosConfigurationState", "KnownNetworkFabricUpgradeAction", "KnownValidateAction", "KnownCommitStage", "KnownCommitConfigurationPolicy", "KnownCommitBatchState", "KnownNetworkFabricLockAction", "KnownNniType", "KnownIsManagementType", "KnownMicroBfdState", "KnownRouteType", "KnownNetworkRackType", "KnownEncapsulationType", "KnownTapRuleActionType", "KnownDestinationType", "KnownEncapsulation", "KnownPollingType", "KnownRoutePolicyConditionType", "KnownRoutePolicyActionType", "KnownAddressFamilyType", "KnownStationConfigurationState", "KnownStationConnectionMode", "KnownBmpMonitoredAddressFamily", "KnownVersions"]
7
+ }