@azure/arm-deviceregistry 1.1.0 → 1.2.0-beta.1

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 (527) hide show
  1. package/README.md +1 -1
  2. package/dist/browser/api/assetEndpointProfiles/index.d.ts +1 -1
  3. package/dist/browser/api/assetEndpointProfiles/index.js.map +1 -1
  4. package/dist/browser/api/assetEndpointProfiles/operations.js +34 -50
  5. package/dist/browser/api/assetEndpointProfiles/operations.js.map +1 -1
  6. package/dist/browser/api/assets/index.d.ts +1 -1
  7. package/dist/browser/api/assets/index.js.map +1 -1
  8. package/dist/browser/api/assets/operations.js +27 -31
  9. package/dist/browser/api/assets/operations.js.map +1 -1
  10. package/dist/browser/api/billingContainers/index.d.ts +1 -1
  11. package/dist/browser/api/billingContainers/index.js.map +1 -1
  12. package/dist/browser/api/billingContainers/operations.js +11 -17
  13. package/dist/browser/api/billingContainers/operations.js.map +1 -1
  14. package/dist/browser/api/credentials/index.d.ts +3 -0
  15. package/dist/browser/api/credentials/index.js +4 -0
  16. package/dist/browser/api/credentials/index.js.map +1 -0
  17. package/dist/browser/api/credentials/operations.d.ts +36 -0
  18. package/dist/browser/api/credentials/operations.js +202 -0
  19. package/dist/browser/api/credentials/operations.js.map +1 -0
  20. package/dist/browser/api/credentials/options.d.ts +28 -0
  21. package/dist/browser/api/credentials/options.js +4 -0
  22. package/dist/browser/api/credentials/options.js.map +1 -0
  23. package/dist/browser/api/deviceRegistryManagementContext.d.ts +3 -3
  24. package/dist/browser/api/deviceRegistryManagementContext.js +4 -23
  25. package/dist/browser/api/deviceRegistryManagementContext.js.map +1 -1
  26. package/dist/browser/api/index.d.ts +2 -1
  27. package/dist/browser/api/index.js +1 -1
  28. package/dist/browser/api/index.js.map +1 -1
  29. package/dist/browser/api/namespaceAssets/index.d.ts +1 -1
  30. package/dist/browser/api/namespaceAssets/index.js.map +1 -1
  31. package/dist/browser/api/namespaceAssets/operations.js +24 -37
  32. package/dist/browser/api/namespaceAssets/operations.js.map +1 -1
  33. package/dist/browser/api/namespaceDevices/index.d.ts +2 -2
  34. package/dist/browser/api/namespaceDevices/index.js +1 -1
  35. package/dist/browser/api/namespaceDevices/index.js.map +1 -1
  36. package/dist/browser/api/namespaceDevices/operations.d.ts +6 -2
  37. package/dist/browser/api/namespaceDevices/operations.js +61 -38
  38. package/dist/browser/api/namespaceDevices/operations.js.map +1 -1
  39. package/dist/browser/api/namespaceDevices/options.d.ts +5 -0
  40. package/dist/browser/api/namespaceDevices/options.js.map +1 -1
  41. package/dist/browser/api/namespaceDiscoveredAssets/index.d.ts +1 -1
  42. package/dist/browser/api/namespaceDiscoveredAssets/index.js.map +1 -1
  43. package/dist/browser/api/namespaceDiscoveredAssets/operations.js +28 -49
  44. package/dist/browser/api/namespaceDiscoveredAssets/operations.js.map +1 -1
  45. package/dist/browser/api/namespaceDiscoveredAssets/options.js.map +1 -1
  46. package/dist/browser/api/namespaceDiscoveredDevices/index.d.ts +1 -1
  47. package/dist/browser/api/namespaceDiscoveredDevices/index.js.map +1 -1
  48. package/dist/browser/api/namespaceDiscoveredDevices/operations.js +28 -49
  49. package/dist/browser/api/namespaceDiscoveredDevices/operations.js.map +1 -1
  50. package/dist/browser/api/namespaceDiscoveredDevices/options.js.map +1 -1
  51. package/dist/browser/api/namespaces/index.d.ts +1 -1
  52. package/dist/browser/api/namespaces/index.js.map +1 -1
  53. package/dist/browser/api/namespaces/operations.js +32 -38
  54. package/dist/browser/api/namespaces/operations.js.map +1 -1
  55. package/dist/browser/api/operationStatus/index.d.ts +1 -1
  56. package/dist/browser/api/operationStatus/index.js.map +1 -1
  57. package/dist/browser/api/operationStatus/operations.js +2 -5
  58. package/dist/browser/api/operationStatus/operations.js.map +1 -1
  59. package/dist/browser/api/operations/index.d.ts +1 -1
  60. package/dist/browser/api/operations/index.js.map +1 -1
  61. package/dist/browser/api/operations/operations.js +7 -6
  62. package/dist/browser/api/operations/operations.js.map +1 -1
  63. package/dist/browser/api/policies/index.d.ts +3 -0
  64. package/dist/browser/api/policies/index.js +4 -0
  65. package/dist/browser/api/policies/index.js.map +1 -0
  66. package/dist/browser/api/policies/operations.d.ts +40 -0
  67. package/dist/browser/api/policies/operations.js +242 -0
  68. package/dist/browser/api/policies/operations.js.map +1 -0
  69. package/dist/browser/api/policies/options.d.ts +33 -0
  70. package/dist/browser/api/policies/options.js +4 -0
  71. package/dist/browser/api/policies/options.js.map +1 -0
  72. package/dist/browser/api/schemaRegistries/index.d.ts +1 -1
  73. package/dist/browser/api/schemaRegistries/index.js.map +1 -1
  74. package/dist/browser/api/schemaRegistries/operations.js +34 -50
  75. package/dist/browser/api/schemaRegistries/operations.js.map +1 -1
  76. package/dist/browser/api/schemaVersions/index.d.ts +1 -1
  77. package/dist/browser/api/schemaVersions/index.js.map +1 -1
  78. package/dist/browser/api/schemaVersions/operations.js +13 -17
  79. package/dist/browser/api/schemaVersions/operations.js.map +1 -1
  80. package/dist/browser/api/schemas/index.d.ts +1 -1
  81. package/dist/browser/api/schemas/index.js.map +1 -1
  82. package/dist/browser/api/schemas/operations.js +13 -17
  83. package/dist/browser/api/schemas/operations.js.map +1 -1
  84. package/dist/browser/classic/credentials/index.d.ts +27 -0
  85. package/dist/browser/classic/credentials/index.js +19 -0
  86. package/dist/browser/classic/credentials/index.js.map +1 -0
  87. package/dist/browser/classic/index.d.ts +15 -13
  88. package/dist/browser/classic/index.js.map +1 -1
  89. package/dist/browser/classic/namespaceDevices/index.d.ts +4 -2
  90. package/dist/browser/classic/namespaceDevices/index.js +2 -1
  91. package/dist/browser/classic/namespaceDevices/index.js.map +1 -1
  92. package/dist/browser/classic/policies/index.d.ts +29 -0
  93. package/dist/browser/classic/policies/index.js +20 -0
  94. package/dist/browser/classic/policies/index.js.map +1 -0
  95. package/dist/browser/deviceRegistryManagementClient.d.ts +7 -1
  96. package/dist/browser/deviceRegistryManagementClient.js +8 -0
  97. package/dist/browser/deviceRegistryManagementClient.js.map +1 -1
  98. package/dist/browser/index.d.ts +27 -21
  99. package/dist/browser/index.js +1 -1
  100. package/dist/browser/index.js.map +1 -1
  101. package/dist/browser/models/index.d.ts +2 -1
  102. package/dist/browser/models/index.js +1 -1
  103. package/dist/browser/models/index.js.map +1 -1
  104. package/dist/browser/models/models.d.ts +211 -4
  105. package/dist/browser/models/models.js +292 -35
  106. package/dist/browser/models/models.js.map +1 -1
  107. package/dist/browser/restorePollerHelpers.js +42 -57
  108. package/dist/browser/restorePollerHelpers.js.map +1 -1
  109. package/dist/browser/static-helpers/pagingHelpers.d.ts +2 -0
  110. package/dist/browser/static-helpers/pagingHelpers.js +28 -3
  111. package/dist/browser/static-helpers/pagingHelpers.js.map +1 -1
  112. package/dist/browser/static-helpers/pollingHelpers.d.ts +4 -0
  113. package/dist/browser/static-helpers/pollingHelpers.js +18 -2
  114. package/dist/browser/static-helpers/pollingHelpers.js.map +1 -1
  115. package/dist/browser/static-helpers/urlTemplate.js +20 -5
  116. package/dist/browser/static-helpers/urlTemplate.js.map +1 -1
  117. package/dist/commonjs/api/assetEndpointProfiles/index.d.ts +1 -1
  118. package/dist/commonjs/api/assetEndpointProfiles/index.js +38 -13
  119. package/dist/commonjs/api/assetEndpointProfiles/index.js.map +7 -1
  120. package/dist/commonjs/api/assetEndpointProfiles/operations.js +257 -210
  121. package/dist/commonjs/api/assetEndpointProfiles/operations.js.map +7 -1
  122. package/dist/commonjs/api/assetEndpointProfiles/options.js +16 -5
  123. package/dist/commonjs/api/assetEndpointProfiles/options.js.map +7 -1
  124. package/dist/commonjs/api/assets/index.d.ts +1 -1
  125. package/dist/commonjs/api/assets/index.js +38 -13
  126. package/dist/commonjs/api/assets/index.js.map +7 -1
  127. package/dist/commonjs/api/assets/operations.js +248 -189
  128. package/dist/commonjs/api/assets/operations.js.map +7 -1
  129. package/dist/commonjs/api/assets/options.js +16 -5
  130. package/dist/commonjs/api/assets/options.js.map +7 -1
  131. package/dist/commonjs/api/billingContainers/index.d.ts +1 -1
  132. package/dist/commonjs/api/billingContainers/index.js +30 -9
  133. package/dist/commonjs/api/billingContainers/index.js.map +7 -1
  134. package/dist/commonjs/api/billingContainers/operations.js +99 -67
  135. package/dist/commonjs/api/billingContainers/operations.js.map +7 -1
  136. package/dist/commonjs/api/billingContainers/options.js +16 -5
  137. package/dist/commonjs/api/billingContainers/options.js.map +7 -1
  138. package/dist/commonjs/api/credentials/index.d.ts +3 -0
  139. package/dist/commonjs/api/credentials/index.js +38 -0
  140. package/dist/commonjs/api/credentials/index.js.map +7 -0
  141. package/dist/commonjs/api/credentials/operations.d.ts +36 -0
  142. package/dist/commonjs/api/credentials/operations.js +279 -0
  143. package/dist/commonjs/api/credentials/operations.js.map +7 -0
  144. package/dist/commonjs/api/credentials/options.d.ts +28 -0
  145. package/dist/commonjs/api/credentials/options.js +16 -0
  146. package/dist/commonjs/api/credentials/options.js.map +7 -0
  147. package/dist/commonjs/api/deviceRegistryManagementContext.d.ts +3 -3
  148. package/dist/commonjs/api/deviceRegistryManagementContext.js +43 -44
  149. package/dist/commonjs/api/deviceRegistryManagementContext.js.map +7 -1
  150. package/dist/commonjs/api/index.d.ts +2 -1
  151. package/dist/commonjs/api/index.js +28 -8
  152. package/dist/commonjs/api/index.js.map +7 -1
  153. package/dist/commonjs/api/namespaceAssets/index.d.ts +1 -1
  154. package/dist/commonjs/api/namespaceAssets/index.js +36 -12
  155. package/dist/commonjs/api/namespaceAssets/index.js.map +7 -1
  156. package/dist/commonjs/api/namespaceAssets/operations.js +218 -180
  157. package/dist/commonjs/api/namespaceAssets/operations.js.map +7 -1
  158. package/dist/commonjs/api/namespaceAssets/options.js +16 -5
  159. package/dist/commonjs/api/namespaceAssets/options.js.map +7 -1
  160. package/dist/commonjs/api/namespaceDevices/index.d.ts +2 -2
  161. package/dist/commonjs/api/namespaceDevices/index.js +38 -12
  162. package/dist/commonjs/api/namespaceDevices/index.js.map +7 -1
  163. package/dist/commonjs/api/namespaceDevices/operations.d.ts +6 -2
  164. package/dist/commonjs/api/namespaceDevices/operations.js +273 -183
  165. package/dist/commonjs/api/namespaceDevices/operations.js.map +7 -1
  166. package/dist/commonjs/api/namespaceDevices/options.d.ts +5 -0
  167. package/dist/commonjs/api/namespaceDevices/options.js +16 -5
  168. package/dist/commonjs/api/namespaceDevices/options.js.map +7 -1
  169. package/dist/commonjs/api/namespaceDiscoveredAssets/index.d.ts +1 -1
  170. package/dist/commonjs/api/namespaceDiscoveredAssets/index.js +36 -12
  171. package/dist/commonjs/api/namespaceDiscoveredAssets/index.js.map +7 -1
  172. package/dist/commonjs/api/namespaceDiscoveredAssets/operations.js +242 -192
  173. package/dist/commonjs/api/namespaceDiscoveredAssets/operations.js.map +7 -1
  174. package/dist/commonjs/api/namespaceDiscoveredAssets/options.js +16 -5
  175. package/dist/commonjs/api/namespaceDiscoveredAssets/options.js.map +7 -1
  176. package/dist/commonjs/api/namespaceDiscoveredDevices/index.d.ts +1 -1
  177. package/dist/commonjs/api/namespaceDiscoveredDevices/index.js +36 -12
  178. package/dist/commonjs/api/namespaceDiscoveredDevices/index.js.map +7 -1
  179. package/dist/commonjs/api/namespaceDiscoveredDevices/operations.js +242 -192
  180. package/dist/commonjs/api/namespaceDiscoveredDevices/operations.js.map +7 -1
  181. package/dist/commonjs/api/namespaceDiscoveredDevices/options.js +16 -5
  182. package/dist/commonjs/api/namespaceDiscoveredDevices/options.js.map +7 -1
  183. package/dist/commonjs/api/namespaces/index.d.ts +1 -1
  184. package/dist/commonjs/api/namespaces/index.js +40 -14
  185. package/dist/commonjs/api/namespaces/index.js.map +7 -1
  186. package/dist/commonjs/api/namespaces/operations.js +285 -222
  187. package/dist/commonjs/api/namespaces/operations.js.map +7 -1
  188. package/dist/commonjs/api/namespaces/options.js +16 -5
  189. package/dist/commonjs/api/namespaces/options.js.map +7 -1
  190. package/dist/commonjs/api/operationStatus/index.d.ts +1 -1
  191. package/dist/commonjs/api/operationStatus/index.js +28 -8
  192. package/dist/commonjs/api/operationStatus/index.js.map +7 -1
  193. package/dist/commonjs/api/operationStatus/operations.js +59 -36
  194. package/dist/commonjs/api/operationStatus/operations.js.map +7 -1
  195. package/dist/commonjs/api/operationStatus/options.js +16 -5
  196. package/dist/commonjs/api/operationStatus/options.js.map +7 -1
  197. package/dist/commonjs/api/operations/index.d.ts +1 -1
  198. package/dist/commonjs/api/operations/index.js +28 -8
  199. package/dist/commonjs/api/operations/index.js.map +7 -1
  200. package/dist/commonjs/api/operations/operations.js +66 -33
  201. package/dist/commonjs/api/operations/operations.js.map +7 -1
  202. package/dist/commonjs/api/operations/options.js +16 -5
  203. package/dist/commonjs/api/operations/options.js.map +7 -1
  204. package/dist/commonjs/api/policies/index.d.ts +3 -0
  205. package/dist/commonjs/api/policies/index.js +40 -0
  206. package/dist/commonjs/api/policies/index.js.map +7 -0
  207. package/dist/commonjs/api/policies/operations.d.ts +40 -0
  208. package/dist/commonjs/api/policies/operations.js +340 -0
  209. package/dist/commonjs/api/policies/operations.js.map +7 -0
  210. package/dist/commonjs/api/policies/options.d.ts +33 -0
  211. package/dist/commonjs/api/policies/options.js +16 -0
  212. package/dist/commonjs/api/policies/options.js.map +7 -0
  213. package/dist/commonjs/api/schemaRegistries/index.d.ts +1 -1
  214. package/dist/commonjs/api/schemaRegistries/index.js +38 -13
  215. package/dist/commonjs/api/schemaRegistries/index.js.map +7 -1
  216. package/dist/commonjs/api/schemaRegistries/operations.js +257 -210
  217. package/dist/commonjs/api/schemaRegistries/operations.js.map +7 -1
  218. package/dist/commonjs/api/schemaRegistries/options.js +16 -5
  219. package/dist/commonjs/api/schemaRegistries/options.js.map +7 -1
  220. package/dist/commonjs/api/schemaVersions/index.d.ts +1 -1
  221. package/dist/commonjs/api/schemaVersions/index.js +34 -11
  222. package/dist/commonjs/api/schemaVersions/index.js.map +7 -1
  223. package/dist/commonjs/api/schemaVersions/operations.js +196 -133
  224. package/dist/commonjs/api/schemaVersions/operations.js.map +7 -1
  225. package/dist/commonjs/api/schemaVersions/options.js +16 -5
  226. package/dist/commonjs/api/schemaVersions/options.js.map +7 -1
  227. package/dist/commonjs/api/schemas/index.d.ts +1 -1
  228. package/dist/commonjs/api/schemas/index.js +34 -11
  229. package/dist/commonjs/api/schemas/index.js.map +7 -1
  230. package/dist/commonjs/api/schemas/operations.js +183 -129
  231. package/dist/commonjs/api/schemas/operations.js.map +7 -1
  232. package/dist/commonjs/api/schemas/options.js +16 -5
  233. package/dist/commonjs/api/schemas/options.js.map +7 -1
  234. package/dist/commonjs/classic/assetEndpointProfiles/index.js +39 -18
  235. package/dist/commonjs/classic/assetEndpointProfiles/index.js.map +7 -1
  236. package/dist/commonjs/classic/assets/index.js +39 -18
  237. package/dist/commonjs/classic/assets/index.js.map +7 -1
  238. package/dist/commonjs/classic/billingContainers/index.js +35 -14
  239. package/dist/commonjs/classic/billingContainers/index.js.map +7 -1
  240. package/dist/commonjs/classic/credentials/index.d.ts +27 -0
  241. package/dist/commonjs/classic/credentials/index.js +43 -0
  242. package/dist/commonjs/classic/credentials/index.js.map +7 -0
  243. package/dist/commonjs/classic/index.d.ts +15 -13
  244. package/dist/commonjs/classic/index.js +16 -5
  245. package/dist/commonjs/classic/index.js.map +7 -1
  246. package/dist/commonjs/classic/namespaceAssets/index.js +38 -17
  247. package/dist/commonjs/classic/namespaceAssets/index.js.map +7 -1
  248. package/dist/commonjs/classic/namespaceDevices/index.d.ts +4 -2
  249. package/dist/commonjs/classic/namespaceDevices/index.js +39 -17
  250. package/dist/commonjs/classic/namespaceDevices/index.js.map +7 -1
  251. package/dist/commonjs/classic/namespaceDiscoveredAssets/index.js +45 -17
  252. package/dist/commonjs/classic/namespaceDiscoveredAssets/index.js.map +7 -1
  253. package/dist/commonjs/classic/namespaceDiscoveredDevices/index.js +45 -17
  254. package/dist/commonjs/classic/namespaceDiscoveredDevices/index.js.map +7 -1
  255. package/dist/commonjs/classic/namespaces/index.js +40 -19
  256. package/dist/commonjs/classic/namespaces/index.js.map +7 -1
  257. package/dist/commonjs/classic/operationStatus/index.js +34 -13
  258. package/dist/commonjs/classic/operationStatus/index.js.map +7 -1
  259. package/dist/commonjs/classic/operations/index.js +34 -13
  260. package/dist/commonjs/classic/operations/index.js.map +7 -1
  261. package/dist/commonjs/classic/policies/index.d.ts +29 -0
  262. package/dist/commonjs/classic/policies/index.js +51 -0
  263. package/dist/commonjs/classic/policies/index.js.map +7 -0
  264. package/dist/commonjs/classic/schemaRegistries/index.js +39 -18
  265. package/dist/commonjs/classic/schemaRegistries/index.js.map +7 -1
  266. package/dist/commonjs/classic/schemaVersions/index.js +52 -16
  267. package/dist/commonjs/classic/schemaVersions/index.js.map +7 -1
  268. package/dist/commonjs/classic/schemas/index.js +44 -16
  269. package/dist/commonjs/classic/schemas/index.js.map +7 -1
  270. package/dist/commonjs/deviceRegistryManagementClient.d.ts +7 -1
  271. package/dist/commonjs/deviceRegistryManagementClient.js +101 -75
  272. package/dist/commonjs/deviceRegistryManagementClient.js.map +7 -1
  273. package/dist/commonjs/index.d.ts +27 -21
  274. package/dist/commonjs/index.js +77 -32
  275. package/dist/commonjs/index.js.map +7 -1
  276. package/dist/commonjs/logger.js +29 -8
  277. package/dist/commonjs/logger.js.map +7 -1
  278. package/dist/commonjs/models/index.d.ts +2 -1
  279. package/dist/commonjs/models/index.js +68 -26
  280. package/dist/commonjs/models/index.js.map +7 -1
  281. package/dist/commonjs/models/models.d.ts +211 -4
  282. package/dist/commonjs/models/models.js +2730 -2554
  283. package/dist/commonjs/models/models.js.map +7 -1
  284. package/dist/commonjs/restorePollerHelpers.js +185 -190
  285. package/dist/commonjs/restorePollerHelpers.js.map +7 -1
  286. package/dist/commonjs/static-helpers/cloudSettingHelpers.js +50 -40
  287. package/dist/commonjs/static-helpers/cloudSettingHelpers.js.map +7 -1
  288. package/dist/commonjs/static-helpers/pagingHelpers.d.ts +2 -0
  289. package/dist/commonjs/static-helpers/pagingHelpers.js +125 -103
  290. package/dist/commonjs/static-helpers/pagingHelpers.js.map +7 -1
  291. package/dist/commonjs/static-helpers/pollingHelpers.d.ts +4 -0
  292. package/dist/commonjs/static-helpers/pollingHelpers.js +95 -76
  293. package/dist/commonjs/static-helpers/pollingHelpers.js.map +7 -1
  294. package/dist/commonjs/static-helpers/urlTemplate.js +167 -158
  295. package/dist/commonjs/static-helpers/urlTemplate.js.map +7 -1
  296. package/dist/commonjs/tsdoc-metadata.json +1 -1
  297. package/dist/esm/api/assetEndpointProfiles/index.d.ts +1 -1
  298. package/dist/esm/api/assetEndpointProfiles/index.js.map +1 -1
  299. package/dist/esm/api/assetEndpointProfiles/operations.js +34 -50
  300. package/dist/esm/api/assetEndpointProfiles/operations.js.map +1 -1
  301. package/dist/esm/api/assets/index.d.ts +1 -1
  302. package/dist/esm/api/assets/index.js.map +1 -1
  303. package/dist/esm/api/assets/operations.js +27 -31
  304. package/dist/esm/api/assets/operations.js.map +1 -1
  305. package/dist/esm/api/billingContainers/index.d.ts +1 -1
  306. package/dist/esm/api/billingContainers/index.js.map +1 -1
  307. package/dist/esm/api/billingContainers/operations.js +11 -17
  308. package/dist/esm/api/billingContainers/operations.js.map +1 -1
  309. package/dist/esm/api/credentials/index.d.ts +3 -0
  310. package/dist/esm/api/credentials/index.js +4 -0
  311. package/dist/esm/api/credentials/index.js.map +1 -0
  312. package/dist/esm/api/credentials/operations.d.ts +36 -0
  313. package/dist/esm/api/credentials/operations.js +202 -0
  314. package/dist/esm/api/credentials/operations.js.map +1 -0
  315. package/dist/esm/api/credentials/options.d.ts +28 -0
  316. package/dist/esm/api/credentials/options.js +4 -0
  317. package/dist/esm/api/credentials/options.js.map +1 -0
  318. package/dist/esm/api/deviceRegistryManagementContext.d.ts +3 -3
  319. package/dist/esm/api/deviceRegistryManagementContext.js +4 -23
  320. package/dist/esm/api/deviceRegistryManagementContext.js.map +1 -1
  321. package/dist/esm/api/index.d.ts +2 -1
  322. package/dist/esm/api/index.js +1 -1
  323. package/dist/esm/api/index.js.map +1 -1
  324. package/dist/esm/api/namespaceAssets/index.d.ts +1 -1
  325. package/dist/esm/api/namespaceAssets/index.js.map +1 -1
  326. package/dist/esm/api/namespaceAssets/operations.js +24 -37
  327. package/dist/esm/api/namespaceAssets/operations.js.map +1 -1
  328. package/dist/esm/api/namespaceDevices/index.d.ts +2 -2
  329. package/dist/esm/api/namespaceDevices/index.js +1 -1
  330. package/dist/esm/api/namespaceDevices/index.js.map +1 -1
  331. package/dist/esm/api/namespaceDevices/operations.d.ts +6 -2
  332. package/dist/esm/api/namespaceDevices/operations.js +61 -38
  333. package/dist/esm/api/namespaceDevices/operations.js.map +1 -1
  334. package/dist/esm/api/namespaceDevices/options.d.ts +5 -0
  335. package/dist/esm/api/namespaceDevices/options.js.map +1 -1
  336. package/dist/esm/api/namespaceDiscoveredAssets/index.d.ts +1 -1
  337. package/dist/esm/api/namespaceDiscoveredAssets/index.js.map +1 -1
  338. package/dist/esm/api/namespaceDiscoveredAssets/operations.js +28 -49
  339. package/dist/esm/api/namespaceDiscoveredAssets/operations.js.map +1 -1
  340. package/dist/esm/api/namespaceDiscoveredAssets/options.js.map +1 -1
  341. package/dist/esm/api/namespaceDiscoveredDevices/index.d.ts +1 -1
  342. package/dist/esm/api/namespaceDiscoveredDevices/index.js.map +1 -1
  343. package/dist/esm/api/namespaceDiscoveredDevices/operations.js +28 -49
  344. package/dist/esm/api/namespaceDiscoveredDevices/operations.js.map +1 -1
  345. package/dist/esm/api/namespaceDiscoveredDevices/options.js.map +1 -1
  346. package/dist/esm/api/namespaces/index.d.ts +1 -1
  347. package/dist/esm/api/namespaces/index.js.map +1 -1
  348. package/dist/esm/api/namespaces/operations.js +32 -38
  349. package/dist/esm/api/namespaces/operations.js.map +1 -1
  350. package/dist/esm/api/operationStatus/index.d.ts +1 -1
  351. package/dist/esm/api/operationStatus/index.js.map +1 -1
  352. package/dist/esm/api/operationStatus/operations.js +2 -5
  353. package/dist/esm/api/operationStatus/operations.js.map +1 -1
  354. package/dist/esm/api/operations/index.d.ts +1 -1
  355. package/dist/esm/api/operations/index.js.map +1 -1
  356. package/dist/esm/api/operations/operations.js +7 -6
  357. package/dist/esm/api/operations/operations.js.map +1 -1
  358. package/dist/esm/api/policies/index.d.ts +3 -0
  359. package/dist/esm/api/policies/index.js +4 -0
  360. package/dist/esm/api/policies/index.js.map +1 -0
  361. package/dist/esm/api/policies/operations.d.ts +40 -0
  362. package/dist/esm/api/policies/operations.js +242 -0
  363. package/dist/esm/api/policies/operations.js.map +1 -0
  364. package/dist/esm/api/policies/options.d.ts +33 -0
  365. package/dist/esm/api/policies/options.js +4 -0
  366. package/dist/esm/api/policies/options.js.map +1 -0
  367. package/dist/esm/api/schemaRegistries/index.d.ts +1 -1
  368. package/dist/esm/api/schemaRegistries/index.js.map +1 -1
  369. package/dist/esm/api/schemaRegistries/operations.js +34 -50
  370. package/dist/esm/api/schemaRegistries/operations.js.map +1 -1
  371. package/dist/esm/api/schemaVersions/index.d.ts +1 -1
  372. package/dist/esm/api/schemaVersions/index.js.map +1 -1
  373. package/dist/esm/api/schemaVersions/operations.js +13 -17
  374. package/dist/esm/api/schemaVersions/operations.js.map +1 -1
  375. package/dist/esm/api/schemas/index.d.ts +1 -1
  376. package/dist/esm/api/schemas/index.js.map +1 -1
  377. package/dist/esm/api/schemas/operations.js +13 -17
  378. package/dist/esm/api/schemas/operations.js.map +1 -1
  379. package/dist/esm/classic/credentials/index.d.ts +27 -0
  380. package/dist/esm/classic/credentials/index.js +19 -0
  381. package/dist/esm/classic/credentials/index.js.map +1 -0
  382. package/dist/esm/classic/index.d.ts +15 -13
  383. package/dist/esm/classic/index.js.map +1 -1
  384. package/dist/esm/classic/namespaceDevices/index.d.ts +4 -2
  385. package/dist/esm/classic/namespaceDevices/index.js +2 -1
  386. package/dist/esm/classic/namespaceDevices/index.js.map +1 -1
  387. package/dist/esm/classic/policies/index.d.ts +29 -0
  388. package/dist/esm/classic/policies/index.js +20 -0
  389. package/dist/esm/classic/policies/index.js.map +1 -0
  390. package/dist/esm/deviceRegistryManagementClient.d.ts +7 -1
  391. package/dist/esm/deviceRegistryManagementClient.js +8 -0
  392. package/dist/esm/deviceRegistryManagementClient.js.map +1 -1
  393. package/dist/esm/index.d.ts +27 -21
  394. package/dist/esm/index.js +1 -1
  395. package/dist/esm/index.js.map +1 -1
  396. package/dist/esm/models/index.d.ts +2 -1
  397. package/dist/esm/models/index.js +1 -1
  398. package/dist/esm/models/index.js.map +1 -1
  399. package/dist/esm/models/models.d.ts +211 -4
  400. package/dist/esm/models/models.js +292 -35
  401. package/dist/esm/models/models.js.map +1 -1
  402. package/dist/esm/restorePollerHelpers.js +42 -57
  403. package/dist/esm/restorePollerHelpers.js.map +1 -1
  404. package/dist/esm/static-helpers/pagingHelpers.d.ts +2 -0
  405. package/dist/esm/static-helpers/pagingHelpers.js +28 -3
  406. package/dist/esm/static-helpers/pagingHelpers.js.map +1 -1
  407. package/dist/esm/static-helpers/pollingHelpers.d.ts +4 -0
  408. package/dist/esm/static-helpers/pollingHelpers.js +18 -2
  409. package/dist/esm/static-helpers/pollingHelpers.js.map +1 -1
  410. package/dist/esm/static-helpers/urlTemplate.js +20 -5
  411. package/dist/esm/static-helpers/urlTemplate.js.map +1 -1
  412. package/dist/react-native/api/assetEndpointProfiles/index.d.ts +1 -1
  413. package/dist/react-native/api/assetEndpointProfiles/index.js.map +1 -1
  414. package/dist/react-native/api/assetEndpointProfiles/operations.js +34 -50
  415. package/dist/react-native/api/assetEndpointProfiles/operations.js.map +1 -1
  416. package/dist/react-native/api/assets/index.d.ts +1 -1
  417. package/dist/react-native/api/assets/index.js.map +1 -1
  418. package/dist/react-native/api/assets/operations.js +27 -31
  419. package/dist/react-native/api/assets/operations.js.map +1 -1
  420. package/dist/react-native/api/billingContainers/index.d.ts +1 -1
  421. package/dist/react-native/api/billingContainers/index.js.map +1 -1
  422. package/dist/react-native/api/billingContainers/operations.js +11 -17
  423. package/dist/react-native/api/billingContainers/operations.js.map +1 -1
  424. package/dist/react-native/api/credentials/index.d.ts +3 -0
  425. package/dist/react-native/api/credentials/index.js +4 -0
  426. package/dist/react-native/api/credentials/index.js.map +1 -0
  427. package/dist/react-native/api/credentials/operations.d.ts +36 -0
  428. package/dist/react-native/api/credentials/operations.js +202 -0
  429. package/dist/react-native/api/credentials/operations.js.map +1 -0
  430. package/dist/react-native/api/credentials/options.d.ts +28 -0
  431. package/dist/react-native/api/credentials/options.js +4 -0
  432. package/dist/react-native/api/credentials/options.js.map +1 -0
  433. package/dist/react-native/api/deviceRegistryManagementContext.d.ts +3 -3
  434. package/dist/react-native/api/deviceRegistryManagementContext.js +4 -23
  435. package/dist/react-native/api/deviceRegistryManagementContext.js.map +1 -1
  436. package/dist/react-native/api/index.d.ts +2 -1
  437. package/dist/react-native/api/index.js +1 -1
  438. package/dist/react-native/api/index.js.map +1 -1
  439. package/dist/react-native/api/namespaceAssets/index.d.ts +1 -1
  440. package/dist/react-native/api/namespaceAssets/index.js.map +1 -1
  441. package/dist/react-native/api/namespaceAssets/operations.js +24 -37
  442. package/dist/react-native/api/namespaceAssets/operations.js.map +1 -1
  443. package/dist/react-native/api/namespaceDevices/index.d.ts +2 -2
  444. package/dist/react-native/api/namespaceDevices/index.js +1 -1
  445. package/dist/react-native/api/namespaceDevices/index.js.map +1 -1
  446. package/dist/react-native/api/namespaceDevices/operations.d.ts +6 -2
  447. package/dist/react-native/api/namespaceDevices/operations.js +61 -38
  448. package/dist/react-native/api/namespaceDevices/operations.js.map +1 -1
  449. package/dist/react-native/api/namespaceDevices/options.d.ts +5 -0
  450. package/dist/react-native/api/namespaceDevices/options.js.map +1 -1
  451. package/dist/react-native/api/namespaceDiscoveredAssets/index.d.ts +1 -1
  452. package/dist/react-native/api/namespaceDiscoveredAssets/index.js.map +1 -1
  453. package/dist/react-native/api/namespaceDiscoveredAssets/operations.js +28 -49
  454. package/dist/react-native/api/namespaceDiscoveredAssets/operations.js.map +1 -1
  455. package/dist/react-native/api/namespaceDiscoveredAssets/options.js.map +1 -1
  456. package/dist/react-native/api/namespaceDiscoveredDevices/index.d.ts +1 -1
  457. package/dist/react-native/api/namespaceDiscoveredDevices/index.js.map +1 -1
  458. package/dist/react-native/api/namespaceDiscoveredDevices/operations.js +28 -49
  459. package/dist/react-native/api/namespaceDiscoveredDevices/operations.js.map +1 -1
  460. package/dist/react-native/api/namespaceDiscoveredDevices/options.js.map +1 -1
  461. package/dist/react-native/api/namespaces/index.d.ts +1 -1
  462. package/dist/react-native/api/namespaces/index.js.map +1 -1
  463. package/dist/react-native/api/namespaces/operations.js +32 -38
  464. package/dist/react-native/api/namespaces/operations.js.map +1 -1
  465. package/dist/react-native/api/operationStatus/index.d.ts +1 -1
  466. package/dist/react-native/api/operationStatus/index.js.map +1 -1
  467. package/dist/react-native/api/operationStatus/operations.js +2 -5
  468. package/dist/react-native/api/operationStatus/operations.js.map +1 -1
  469. package/dist/react-native/api/operations/index.d.ts +1 -1
  470. package/dist/react-native/api/operations/index.js.map +1 -1
  471. package/dist/react-native/api/operations/operations.js +7 -6
  472. package/dist/react-native/api/operations/operations.js.map +1 -1
  473. package/dist/react-native/api/policies/index.d.ts +3 -0
  474. package/dist/react-native/api/policies/index.js +4 -0
  475. package/dist/react-native/api/policies/index.js.map +1 -0
  476. package/dist/react-native/api/policies/operations.d.ts +40 -0
  477. package/dist/react-native/api/policies/operations.js +242 -0
  478. package/dist/react-native/api/policies/operations.js.map +1 -0
  479. package/dist/react-native/api/policies/options.d.ts +33 -0
  480. package/dist/react-native/api/policies/options.js +4 -0
  481. package/dist/react-native/api/policies/options.js.map +1 -0
  482. package/dist/react-native/api/schemaRegistries/index.d.ts +1 -1
  483. package/dist/react-native/api/schemaRegistries/index.js.map +1 -1
  484. package/dist/react-native/api/schemaRegistries/operations.js +34 -50
  485. package/dist/react-native/api/schemaRegistries/operations.js.map +1 -1
  486. package/dist/react-native/api/schemaVersions/index.d.ts +1 -1
  487. package/dist/react-native/api/schemaVersions/index.js.map +1 -1
  488. package/dist/react-native/api/schemaVersions/operations.js +13 -17
  489. package/dist/react-native/api/schemaVersions/operations.js.map +1 -1
  490. package/dist/react-native/api/schemas/index.d.ts +1 -1
  491. package/dist/react-native/api/schemas/index.js.map +1 -1
  492. package/dist/react-native/api/schemas/operations.js +13 -17
  493. package/dist/react-native/api/schemas/operations.js.map +1 -1
  494. package/dist/react-native/classic/credentials/index.d.ts +27 -0
  495. package/dist/react-native/classic/credentials/index.js +19 -0
  496. package/dist/react-native/classic/credentials/index.js.map +1 -0
  497. package/dist/react-native/classic/index.d.ts +15 -13
  498. package/dist/react-native/classic/index.js.map +1 -1
  499. package/dist/react-native/classic/namespaceDevices/index.d.ts +4 -2
  500. package/dist/react-native/classic/namespaceDevices/index.js +2 -1
  501. package/dist/react-native/classic/namespaceDevices/index.js.map +1 -1
  502. package/dist/react-native/classic/policies/index.d.ts +29 -0
  503. package/dist/react-native/classic/policies/index.js +20 -0
  504. package/dist/react-native/classic/policies/index.js.map +1 -0
  505. package/dist/react-native/deviceRegistryManagementClient.d.ts +7 -1
  506. package/dist/react-native/deviceRegistryManagementClient.js +8 -0
  507. package/dist/react-native/deviceRegistryManagementClient.js.map +1 -1
  508. package/dist/react-native/index.d.ts +27 -21
  509. package/dist/react-native/index.js +1 -1
  510. package/dist/react-native/index.js.map +1 -1
  511. package/dist/react-native/models/index.d.ts +2 -1
  512. package/dist/react-native/models/index.js +1 -1
  513. package/dist/react-native/models/index.js.map +1 -1
  514. package/dist/react-native/models/models.d.ts +211 -4
  515. package/dist/react-native/models/models.js +292 -35
  516. package/dist/react-native/models/models.js.map +1 -1
  517. package/dist/react-native/restorePollerHelpers.js +42 -57
  518. package/dist/react-native/restorePollerHelpers.js.map +1 -1
  519. package/dist/react-native/static-helpers/pagingHelpers.d.ts +2 -0
  520. package/dist/react-native/static-helpers/pagingHelpers.js +28 -3
  521. package/dist/react-native/static-helpers/pagingHelpers.js.map +1 -1
  522. package/dist/react-native/static-helpers/pollingHelpers.d.ts +4 -0
  523. package/dist/react-native/static-helpers/pollingHelpers.js +18 -2
  524. package/dist/react-native/static-helpers/pollingHelpers.js.map +1 -1
  525. package/dist/react-native/static-helpers/urlTemplate.js +20 -5
  526. package/dist/react-native/static-helpers/urlTemplate.js.map +1 -1
  527. package/package.json +53 -49
@@ -1 +1,7 @@
1
- {"version":3,"file":"models.js","sourceRoot":"","sources":["../../../src/models/models.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\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 and 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 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\nexport function operationStatusResultArrayDeserializer(\n result: Array<OperationStatusResult>,\n): any[] {\n return result.map((item) => {\n return operationStatusResultDeserializer(item);\n });\n}\n\n/** Asset definition. */\nexport interface Asset extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: AssetProperties;\n /** The extended location. */\n extendedLocation: ExtendedLocation;\n}\n\nexport function assetSerializer(item: Asset): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : assetPropertiesSerializer(item[\"properties\"]),\n extendedLocation: extendedLocationSerializer(item[\"extendedLocation\"]),\n };\n}\n\nexport function assetDeserializer(item: any): Asset {\n return {\n tags: item[\"tags\"],\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : assetPropertiesDeserializer(item[\"properties\"]),\n extendedLocation: extendedLocationDeserializer(item[\"extendedLocation\"]),\n };\n}\n\n/** Defines the asset properties. */\nexport interface AssetProperties {\n /** Globally unique, immutable, non-reusable id. */\n readonly uuid?: string;\n /** Enabled/Disabled status of the asset. */\n enabled?: boolean;\n /** Asset id provided by the customer. */\n externalAssetId?: string;\n /** Human-readable display name. */\n displayName?: string;\n /** Human-readable description of the asset. */\n description?: string;\n /** A reference to the asset endpoint profile (connection information) used by brokers to connect to an endpoint that provides data points for this asset. Must provide asset endpoint profile name. */\n assetEndpointProfileRef: string;\n /** An integer that is incremented each time the resource is modified. */\n readonly version?: number;\n /** Asset manufacturer name. */\n manufacturer?: string;\n /** Asset manufacturer URI. */\n manufacturerUri?: string;\n /** Asset model name. */\n model?: string;\n /** Asset product code. */\n productCode?: string;\n /** Revision number of the hardware. */\n hardwareRevision?: string;\n /** Revision number of the software. */\n softwareRevision?: string;\n /** Reference to the documentation. */\n documentationUri?: string;\n /** Asset serial number. */\n serialNumber?: string;\n /** A set of key-value pairs that contain custom attributes set by the customer. */\n attributes?: Record<string, any>;\n /** Reference to a list of discovered assets. Populated only if the asset has been created from discovery flow. Discovered asset names must be provided. */\n discoveredAssetRefs?: string[];\n /** Stringified JSON that contains connector-specific default configuration for all datasets. Each dataset can have its own configuration that overrides the default settings here. */\n defaultDatasetsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all events. Each event can have its own configuration that overrides the default settings here. */\n defaultEventsConfiguration?: string;\n /** Object that describes the default topic information for the asset. */\n defaultTopic?: Topic;\n /** Array of datasets that are part of the asset. Each dataset describes the data points that make up the set. */\n datasets?: Dataset[];\n /** Array of events that are part of the asset. Each event can have per-event configuration. */\n events?: Event[];\n /** Read only object to reflect changes that have occurred on the Edge. Similar to Kubernetes status property for custom resources. */\n readonly status?: AssetStatus;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function assetPropertiesSerializer(item: AssetProperties): any {\n return {\n enabled: item[\"enabled\"],\n externalAssetId: item[\"externalAssetId\"],\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n assetEndpointProfileRef: item[\"assetEndpointProfileRef\"],\n manufacturer: item[\"manufacturer\"],\n manufacturerUri: item[\"manufacturerUri\"],\n model: item[\"model\"],\n productCode: item[\"productCode\"],\n hardwareRevision: item[\"hardwareRevision\"],\n softwareRevision: item[\"softwareRevision\"],\n documentationUri: item[\"documentationUri\"],\n serialNumber: item[\"serialNumber\"],\n attributes: item[\"attributes\"],\n discoveredAssetRefs: !item[\"discoveredAssetRefs\"]\n ? item[\"discoveredAssetRefs\"]\n : item[\"discoveredAssetRefs\"].map((p: any) => {\n return p;\n }),\n defaultDatasetsConfiguration: item[\"defaultDatasetsConfiguration\"],\n defaultEventsConfiguration: item[\"defaultEventsConfiguration\"],\n defaultTopic: !item[\"defaultTopic\"]\n ? item[\"defaultTopic\"]\n : topicSerializer(item[\"defaultTopic\"]),\n datasets: !item[\"datasets\"] ? item[\"datasets\"] : datasetArraySerializer(item[\"datasets\"]),\n events: !item[\"events\"] ? item[\"events\"] : eventArraySerializer(item[\"events\"]),\n };\n}\n\nexport function assetPropertiesDeserializer(item: any): AssetProperties {\n return {\n uuid: item[\"uuid\"],\n enabled: item[\"enabled\"],\n externalAssetId: item[\"externalAssetId\"],\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n assetEndpointProfileRef: item[\"assetEndpointProfileRef\"],\n version: item[\"version\"],\n manufacturer: item[\"manufacturer\"],\n manufacturerUri: item[\"manufacturerUri\"],\n model: item[\"model\"],\n productCode: item[\"productCode\"],\n hardwareRevision: item[\"hardwareRevision\"],\n softwareRevision: item[\"softwareRevision\"],\n documentationUri: item[\"documentationUri\"],\n serialNumber: item[\"serialNumber\"],\n attributes: item[\"attributes\"],\n discoveredAssetRefs: !item[\"discoveredAssetRefs\"]\n ? item[\"discoveredAssetRefs\"]\n : item[\"discoveredAssetRefs\"].map((p: any) => {\n return p;\n }),\n defaultDatasetsConfiguration: item[\"defaultDatasetsConfiguration\"],\n defaultEventsConfiguration: item[\"defaultEventsConfiguration\"],\n defaultTopic: !item[\"defaultTopic\"]\n ? item[\"defaultTopic\"]\n : topicDeserializer(item[\"defaultTopic\"]),\n datasets: !item[\"datasets\"] ? item[\"datasets\"] : datasetArrayDeserializer(item[\"datasets\"]),\n events: !item[\"events\"] ? item[\"events\"] : eventArrayDeserializer(item[\"events\"]),\n status: !item[\"status\"] ? item[\"status\"] : assetStatusDeserializer(item[\"status\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** Object that describes the topic information. */\nexport interface Topic {\n /** The topic path for messages published to an MQTT broker. */\n path: string;\n /** When set to 'Keep', messages published to an MQTT broker will have the retain flag set. Default: 'Never'. */\n retain?: TopicRetainType;\n}\n\nexport function topicSerializer(item: Topic): any {\n return { path: item[\"path\"], retain: item[\"retain\"] };\n}\n\nexport function topicDeserializer(item: any): Topic {\n return {\n path: item[\"path\"],\n retain: item[\"retain\"],\n };\n}\n\n/** Topic retain types. */\nexport enum KnownTopicRetainType {\n /** Retain the messages. */\n Keep = \"Keep\",\n /** Never retain messages. */\n Never = \"Never\",\n}\n\n/**\n * Topic retain types. \\\n * {@link KnownTopicRetainType} can be used interchangeably with TopicRetainType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Keep**: Retain the messages. \\\n * **Never**: Never retain messages.\n */\nexport type TopicRetainType = string;\n\nexport function datasetArraySerializer(result: Array<Dataset>): any[] {\n return result.map((item) => {\n return datasetSerializer(item);\n });\n}\n\nexport function datasetArrayDeserializer(result: Array<Dataset>): any[] {\n return result.map((item) => {\n return datasetDeserializer(item);\n });\n}\n\n/** Defines the dataset properties. */\nexport interface Dataset {\n /** Name of the dataset. */\n name: string;\n /** Stringified JSON that contains connector-specific JSON string that describes configuration for the specific dataset. */\n datasetConfiguration?: string;\n /** Object that describes the topic information for the specific dataset. */\n topic?: Topic;\n /** Array of data points that are part of the dataset. Each data point can have per-data point configuration. */\n dataPoints?: DataPoint[];\n}\n\nexport function datasetSerializer(item: Dataset): any {\n return {\n name: item[\"name\"],\n datasetConfiguration: item[\"datasetConfiguration\"],\n topic: !item[\"topic\"] ? item[\"topic\"] : topicSerializer(item[\"topic\"]),\n dataPoints: !item[\"dataPoints\"]\n ? item[\"dataPoints\"]\n : dataPointArraySerializer(item[\"dataPoints\"]),\n };\n}\n\nexport function datasetDeserializer(item: any): Dataset {\n return {\n name: item[\"name\"],\n datasetConfiguration: item[\"datasetConfiguration\"],\n topic: !item[\"topic\"] ? item[\"topic\"] : topicDeserializer(item[\"topic\"]),\n dataPoints: !item[\"dataPoints\"]\n ? item[\"dataPoints\"]\n : dataPointArrayDeserializer(item[\"dataPoints\"]),\n };\n}\n\nexport function dataPointArraySerializer(result: Array<DataPoint>): any[] {\n return result.map((item) => {\n return dataPointSerializer(item);\n });\n}\n\nexport function dataPointArrayDeserializer(result: Array<DataPoint>): any[] {\n return result.map((item) => {\n return dataPointDeserializer(item);\n });\n}\n\n/** Defines the data point properties. */\nexport interface DataPoint extends DataPointBase {\n /** An indication of how the data point should be mapped to OpenTelemetry. */\n observabilityMode?: DataPointObservabilityMode;\n}\n\nexport function dataPointSerializer(item: DataPoint): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n dataPointConfiguration: item[\"dataPointConfiguration\"],\n observabilityMode: item[\"observabilityMode\"],\n };\n}\n\nexport function dataPointDeserializer(item: any): DataPoint {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n dataPointConfiguration: item[\"dataPointConfiguration\"],\n observabilityMode: item[\"observabilityMode\"],\n };\n}\n\n/** Defines the data point observability mode. */\nexport enum KnownDataPointObservabilityMode {\n /** No mapping to OpenTelemetry. */\n None = \"None\",\n /** Map as counter to OpenTelemetry. */\n Counter = \"Counter\",\n /** Map as gauge to OpenTelemetry. */\n Gauge = \"Gauge\",\n /** Map as histogram to OpenTelemetry. */\n Histogram = \"Histogram\",\n /** Map as log to OpenTelemetry. */\n Log = \"Log\",\n}\n\n/**\n * Defines the data point observability mode. \\\n * {@link KnownDataPointObservabilityMode} can be used interchangeably with DataPointObservabilityMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **None**: No mapping to OpenTelemetry. \\\n * **Counter**: Map as counter to OpenTelemetry. \\\n * **Gauge**: Map as gauge to OpenTelemetry. \\\n * **Histogram**: Map as histogram to OpenTelemetry. \\\n * **Log**: Map as log to OpenTelemetry.\n */\nexport type DataPointObservabilityMode = string;\n\nexport function eventArraySerializer(result: Array<Event>): any[] {\n return result.map((item) => {\n return eventSerializer(item);\n });\n}\n\nexport function eventArrayDeserializer(result: Array<Event>): any[] {\n return result.map((item) => {\n return eventDeserializer(item);\n });\n}\n\n/** Defines the event properties. */\nexport interface Event extends EventBase {\n /** An indication of how the event should be mapped to OpenTelemetry. */\n observabilityMode?: EventObservabilityMode;\n}\n\nexport function eventSerializer(item: Event): any {\n return {\n name: item[\"name\"],\n eventNotifier: item[\"eventNotifier\"],\n eventConfiguration: item[\"eventConfiguration\"],\n topic: !item[\"topic\"] ? item[\"topic\"] : topicSerializer(item[\"topic\"]),\n observabilityMode: item[\"observabilityMode\"],\n };\n}\n\nexport function eventDeserializer(item: any): Event {\n return {\n name: item[\"name\"],\n eventNotifier: item[\"eventNotifier\"],\n eventConfiguration: item[\"eventConfiguration\"],\n topic: !item[\"topic\"] ? item[\"topic\"] : topicDeserializer(item[\"topic\"]),\n observabilityMode: item[\"observabilityMode\"],\n };\n}\n\n/** Defines the event observability mode. */\nexport enum KnownEventObservabilityMode {\n /** No mapping to OpenTelemetry. */\n None = \"None\",\n /** Map as log to OpenTelemetry. */\n Log = \"Log\",\n}\n\n/**\n * Defines the event observability mode. \\\n * {@link KnownEventObservabilityMode} can be used interchangeably with EventObservabilityMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **None**: No mapping to OpenTelemetry. \\\n * **Log**: Map as log to OpenTelemetry.\n */\nexport type EventObservabilityMode = string;\n\n/** Defines the asset status properties. */\nexport interface AssetStatus {\n /** Array object to transfer and persist errors that originate from the Edge. */\n readonly errors?: AssetStatusError[];\n /** A read only incremental counter indicating the number of times the configuration has been modified from the perspective of the current actual (Edge) state of the Asset. Edge would be the only writer of this value and would sync back up to the cloud. In steady state, this should equal version. */\n readonly version?: number;\n /** Array of dataset statuses that describe the status of each dataset. */\n readonly datasets?: AssetStatusDataset[];\n /** Array of event statuses that describe the status of each event. */\n readonly events?: AssetStatusEvent[];\n}\n\nexport function assetStatusDeserializer(item: any): AssetStatus {\n return {\n errors: !item[\"errors\"] ? item[\"errors\"] : assetStatusErrorArrayDeserializer(item[\"errors\"]),\n version: item[\"version\"],\n datasets: !item[\"datasets\"]\n ? item[\"datasets\"]\n : assetStatusDatasetArrayDeserializer(item[\"datasets\"]),\n events: !item[\"events\"] ? item[\"events\"] : assetStatusEventArrayDeserializer(item[\"events\"]),\n };\n}\n\nexport function assetStatusErrorArrayDeserializer(result: Array<AssetStatusError>): any[] {\n return result.map((item) => {\n return assetStatusErrorDeserializer(item);\n });\n}\n\n/** Defines the asset status error properties. */\nexport interface AssetStatusError {\n /** Error code for classification of errors (ex: 400, 404, 500, etc.). */\n readonly code?: number;\n /** Human readable helpful error message to provide additional context for error (ex: “capability Id 'foo' does not exist”). */\n readonly message?: string;\n}\n\nexport function assetStatusErrorDeserializer(item: any): AssetStatusError {\n return {\n code: item[\"code\"],\n message: item[\"message\"],\n };\n}\n\nexport function assetStatusDatasetArrayDeserializer(result: Array<AssetStatusDataset>): any[] {\n return result.map((item) => {\n return assetStatusDatasetDeserializer(item);\n });\n}\n\n/** Defines the asset status dataset properties. */\nexport interface AssetStatusDataset {\n /** The name of the dataset. Must be unique within the status.datasets array. This name is used to correlate between the spec and status dataset information. */\n readonly name: string;\n /** The message schema reference object. */\n readonly messageSchemaReference?: MessageSchemaReference;\n}\n\nexport function assetStatusDatasetDeserializer(item: any): AssetStatusDataset {\n return {\n name: item[\"name\"],\n messageSchemaReference: !item[\"messageSchemaReference\"]\n ? item[\"messageSchemaReference\"]\n : messageSchemaReferenceDeserializer(item[\"messageSchemaReference\"]),\n };\n}\n\n/** Defines the message schema reference properties. */\nexport interface MessageSchemaReference {\n /** The message schema registry namespace. */\n readonly schemaRegistryNamespace: string;\n /** The message schema name. */\n readonly schemaName: string;\n /** The message schema version. */\n readonly schemaVersion: string;\n}\n\nexport function messageSchemaReferenceDeserializer(item: any): MessageSchemaReference {\n return {\n schemaRegistryNamespace: item[\"schemaRegistryNamespace\"],\n schemaName: item[\"schemaName\"],\n schemaVersion: item[\"schemaVersion\"],\n };\n}\n\nexport function assetStatusEventArrayDeserializer(result: Array<AssetStatusEvent>): any[] {\n return result.map((item) => {\n return assetStatusEventDeserializer(item);\n });\n}\n\n/** Defines the asset status event properties. */\nexport interface AssetStatusEvent {\n /** The name of the event. Must be unique within the status.events array. This name is used to correlate between the spec and status event information. */\n readonly name: string;\n /** The message schema reference object. */\n readonly messageSchemaReference?: MessageSchemaReference;\n}\n\nexport function assetStatusEventDeserializer(item: any): AssetStatusEvent {\n return {\n name: item[\"name\"],\n messageSchemaReference: !item[\"messageSchemaReference\"]\n ? item[\"messageSchemaReference\"]\n : messageSchemaReferenceDeserializer(item[\"messageSchemaReference\"]),\n };\n}\n\n/** The provisioning status of the resource. */\nexport enum KnownProvisioningState {\n /** Resource has been created. */\n Succeeded = \"Succeeded\",\n /** Resource creation failed. */\n Failed = \"Failed\",\n /** Resource creation was canceled. */\n Canceled = \"Canceled\",\n /** Resource has been accepted by the server. */\n Accepted = \"Accepted\",\n /** Resource is deleting. */\n Deleting = \"Deleting\",\n}\n\n/**\n * The provisioning status of the resource. \\\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 * **Succeeded**: Resource has been created. \\\n * **Failed**: Resource creation failed. \\\n * **Canceled**: Resource creation was canceled. \\\n * **Accepted**: Resource has been accepted by the server. \\\n * **Deleting**: Resource is deleting.\n */\nexport type ProvisioningState = string;\n\n/** The extended location. */\nexport interface ExtendedLocation {\n /** The extended location type. */\n type: string;\n /** The extended location name. */\n name: string;\n}\n\nexport function extendedLocationSerializer(item: ExtendedLocation): any {\n return { type: item[\"type\"], name: item[\"name\"] };\n}\n\nexport function extendedLocationDeserializer(item: any): ExtendedLocation {\n return {\n type: item[\"type\"],\n name: item[\"name\"],\n };\n}\n\n/** Defines the data point properties. */\nexport interface DataPointBase {\n /** The name of the data point. */\n name: string;\n /** The address of the source of the data in the asset (e.g. URL) so that a client can access the data source on the asset. */\n dataSource: string;\n /** Stringified JSON that contains connector-specific configuration for the data point. For OPC UA, this could include configuration like, publishingInterval, samplingInterval, and queueSize. */\n dataPointConfiguration?: string;\n}\n\nexport function dataPointBaseSerializer(item: DataPointBase): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n dataPointConfiguration: item[\"dataPointConfiguration\"],\n };\n}\n\nexport function dataPointBaseDeserializer(item: any): DataPointBase {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n dataPointConfiguration: item[\"dataPointConfiguration\"],\n };\n}\n\n/** Defines the event properties. */\nexport interface EventBase {\n /** The name of the event. */\n name: string;\n /** The address of the notifier of the event in the asset (e.g. URL) so that a client can access the event on the asset. */\n eventNotifier: string;\n /** Stringified JSON that contains connector-specific configuration for the event. For OPC UA, this could include configuration like, publishingInterval, samplingInterval, and queueSize. */\n eventConfiguration?: string;\n /** Object that describes the topic information for the specific event. */\n topic?: Topic;\n}\n\nexport function eventBaseSerializer(item: EventBase): any {\n return {\n name: item[\"name\"],\n eventNotifier: item[\"eventNotifier\"],\n eventConfiguration: item[\"eventConfiguration\"],\n topic: !item[\"topic\"] ? item[\"topic\"] : topicSerializer(item[\"topic\"]),\n };\n}\n\nexport function eventBaseDeserializer(item: any): EventBase {\n return {\n name: item[\"name\"],\n eventNotifier: item[\"eventNotifier\"],\n eventConfiguration: item[\"eventConfiguration\"],\n topic: !item[\"topic\"] ? item[\"topic\"] : topicDeserializer(item[\"topic\"]),\n };\n}\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 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 item;\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 type used for update operations of the Asset. */\nexport interface AssetUpdate {\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The resource-specific properties for this resource. */\n properties?: AssetUpdateProperties;\n}\n\nexport function assetUpdateSerializer(item: AssetUpdate): any {\n return {\n tags: item[\"tags\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : assetUpdatePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** The updatable properties of the Asset. */\nexport interface AssetUpdateProperties {\n /** Enabled/Disabled status of the asset. */\n enabled?: boolean;\n /** Human-readable display name. */\n displayName?: string;\n /** Human-readable description of the asset. */\n description?: string;\n /** Asset manufacturer name. */\n manufacturer?: string;\n /** Asset manufacturer URI. */\n manufacturerUri?: string;\n /** Asset model name. */\n model?: string;\n /** Asset product code. */\n productCode?: string;\n /** Revision number of the hardware. */\n hardwareRevision?: string;\n /** Revision number of the software. */\n softwareRevision?: string;\n /** Reference to the documentation. */\n documentationUri?: string;\n /** Asset serial number. */\n serialNumber?: string;\n /** A set of key-value pairs that contain custom attributes set by the customer. */\n attributes?: Record<string, any>;\n /** Stringified JSON that contains connector-specific default configuration for all datasets. Each dataset can have its own configuration that overrides the default settings here. */\n defaultDatasetsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all events. Each event can have its own configuration that overrides the default settings here. */\n defaultEventsConfiguration?: string;\n /** Object that describes the default topic information for the asset. */\n defaultTopic?: Topic;\n /** Array of datasets that are part of the asset. Each dataset describes the data points that make up the set. */\n datasets?: Dataset[];\n /** Array of events that are part of the asset. Each event can have per-event configuration. */\n events?: Event[];\n}\n\nexport function assetUpdatePropertiesSerializer(item: AssetUpdateProperties): any {\n return {\n enabled: item[\"enabled\"],\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n manufacturer: item[\"manufacturer\"],\n manufacturerUri: item[\"manufacturerUri\"],\n model: item[\"model\"],\n productCode: item[\"productCode\"],\n hardwareRevision: item[\"hardwareRevision\"],\n softwareRevision: item[\"softwareRevision\"],\n documentationUri: item[\"documentationUri\"],\n serialNumber: item[\"serialNumber\"],\n attributes: item[\"attributes\"],\n defaultDatasetsConfiguration: item[\"defaultDatasetsConfiguration\"],\n defaultEventsConfiguration: item[\"defaultEventsConfiguration\"],\n defaultTopic: !item[\"defaultTopic\"]\n ? item[\"defaultTopic\"]\n : topicSerializer(item[\"defaultTopic\"]),\n datasets: !item[\"datasets\"] ? item[\"datasets\"] : datasetArraySerializer(item[\"datasets\"]),\n events: !item[\"events\"] ? item[\"events\"] : eventArraySerializer(item[\"events\"]),\n };\n}\n\n/** The response of a Asset list operation. */\nexport interface _AssetListResult {\n /** The Asset items on this page */\n value: Asset[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _assetListResultDeserializer(item: any): _AssetListResult {\n return {\n value: assetArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function assetArraySerializer(result: Array<Asset>): any[] {\n return result.map((item) => {\n return assetSerializer(item);\n });\n}\n\nexport function assetArrayDeserializer(result: Array<Asset>): any[] {\n return result.map((item) => {\n return assetDeserializer(item);\n });\n}\n\n/** Asset Endpoint Profile definition. */\nexport interface AssetEndpointProfile extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: AssetEndpointProfileProperties;\n /** The extended location. */\n extendedLocation: ExtendedLocation;\n}\n\nexport function assetEndpointProfileSerializer(item: AssetEndpointProfile): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : assetEndpointProfilePropertiesSerializer(item[\"properties\"]),\n extendedLocation: extendedLocationSerializer(item[\"extendedLocation\"]),\n };\n}\n\nexport function assetEndpointProfileDeserializer(item: any): AssetEndpointProfile {\n return {\n tags: item[\"tags\"],\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : assetEndpointProfilePropertiesDeserializer(item[\"properties\"]),\n extendedLocation: extendedLocationDeserializer(item[\"extendedLocation\"]),\n };\n}\n\n/** Defines the Asset Endpoint Profile properties. */\nexport interface AssetEndpointProfileProperties {\n /** Globally unique, immutable, non-reusable id. */\n readonly uuid?: string;\n /** The local valid URI specifying the network address/DNS name of a southbound device. The scheme part of the targetAddress URI specifies the type of the device. The additionalConfiguration field holds further connector type specific configuration. */\n targetAddress: string;\n /** Defines the configuration for the connector type that is being used with the endpoint profile. */\n endpointProfileType: string;\n /** Defines the client authentication mechanism to the server. */\n authentication?: Authentication;\n /** Stringified JSON that contains connectivity type specific further configuration (e.g. OPC UA, Modbus, ONVIF). */\n additionalConfiguration?: string;\n /** Reference to a discovered asset endpoint profile. Populated only if the asset endpoint profile has been created from discovery flow. Discovered asset endpoint profile name must be provided. */\n discoveredAssetEndpointProfileRef?: string;\n /** Read only object to reflect changes that have occurred on the Edge. Similar to Kubernetes status property for custom resources. */\n readonly status?: AssetEndpointProfileStatus;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function assetEndpointProfilePropertiesSerializer(\n item: AssetEndpointProfileProperties,\n): any {\n return {\n targetAddress: item[\"targetAddress\"],\n endpointProfileType: item[\"endpointProfileType\"],\n authentication: !item[\"authentication\"]\n ? item[\"authentication\"]\n : authenticationSerializer(item[\"authentication\"]),\n additionalConfiguration: item[\"additionalConfiguration\"],\n discoveredAssetEndpointProfileRef: item[\"discoveredAssetEndpointProfileRef\"],\n };\n}\n\nexport function assetEndpointProfilePropertiesDeserializer(\n item: any,\n): AssetEndpointProfileProperties {\n return {\n uuid: item[\"uuid\"],\n targetAddress: item[\"targetAddress\"],\n endpointProfileType: item[\"endpointProfileType\"],\n authentication: !item[\"authentication\"]\n ? item[\"authentication\"]\n : authenticationDeserializer(item[\"authentication\"]),\n additionalConfiguration: item[\"additionalConfiguration\"],\n discoveredAssetEndpointProfileRef: item[\"discoveredAssetEndpointProfileRef\"],\n status: !item[\"status\"]\n ? item[\"status\"]\n : assetEndpointProfileStatusDeserializer(item[\"status\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** Definition of the client authentication mechanism to the server. */\nexport interface Authentication {\n /** Defines the method to authenticate the user of the client at the server. */\n method: AuthenticationMethod;\n /** Defines the username and password references when UsernamePassword user authentication mode is selected. */\n usernamePasswordCredentials?: UsernamePasswordCredentials;\n /** Defines the certificate reference when Certificate user authentication mode is selected. */\n x509Credentials?: X509Credentials;\n}\n\nexport function authenticationSerializer(item: Authentication): any {\n return {\n method: item[\"method\"],\n usernamePasswordCredentials: !item[\"usernamePasswordCredentials\"]\n ? item[\"usernamePasswordCredentials\"]\n : usernamePasswordCredentialsSerializer(item[\"usernamePasswordCredentials\"]),\n x509Credentials: !item[\"x509Credentials\"]\n ? item[\"x509Credentials\"]\n : x509CredentialsSerializer(item[\"x509Credentials\"]),\n };\n}\n\nexport function authenticationDeserializer(item: any): Authentication {\n return {\n method: item[\"method\"],\n usernamePasswordCredentials: !item[\"usernamePasswordCredentials\"]\n ? item[\"usernamePasswordCredentials\"]\n : usernamePasswordCredentialsDeserializer(item[\"usernamePasswordCredentials\"]),\n x509Credentials: !item[\"x509Credentials\"]\n ? item[\"x509Credentials\"]\n : x509CredentialsDeserializer(item[\"x509Credentials\"]),\n };\n}\n\n/** The method to authenticate the user of the client at the server. */\nexport enum KnownAuthenticationMethod {\n /** The user authentication method is anonymous. */\n Anonymous = \"Anonymous\",\n /** The user authentication method is an x509 certificate. */\n Certificate = \"Certificate\",\n /** The user authentication method is a username and password. */\n UsernamePassword = \"UsernamePassword\",\n}\n\n/**\n * The method to authenticate the user of the client at the server. \\\n * {@link KnownAuthenticationMethod} can be used interchangeably with AuthenticationMethod,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Anonymous**: The user authentication method is anonymous. \\\n * **Certificate**: The user authentication method is an x509 certificate. \\\n * **UsernamePassword**: The user authentication method is a username and password.\n */\nexport type AuthenticationMethod = string;\n\n/** The credentials for authentication mode UsernamePassword. */\nexport interface UsernamePasswordCredentials {\n /** The name of the secret containing the username. */\n usernameSecretName: string;\n /** The name of the secret containing the password. */\n passwordSecretName: string;\n}\n\nexport function usernamePasswordCredentialsSerializer(item: UsernamePasswordCredentials): any {\n return {\n usernameSecretName: item[\"usernameSecretName\"],\n passwordSecretName: item[\"passwordSecretName\"],\n };\n}\n\nexport function usernamePasswordCredentialsDeserializer(item: any): UsernamePasswordCredentials {\n return {\n usernameSecretName: item[\"usernameSecretName\"],\n passwordSecretName: item[\"passwordSecretName\"],\n };\n}\n\n/** The x509 certificate for authentication mode Certificate. */\nexport interface X509Credentials {\n /** The name of the secret containing the certificate and private key (e.g. stored as .der/.pem or .der/.pfx). */\n certificateSecretName: string;\n}\n\nexport function x509CredentialsSerializer(item: X509Credentials): any {\n return { certificateSecretName: item[\"certificateSecretName\"] };\n}\n\nexport function x509CredentialsDeserializer(item: any): X509Credentials {\n return {\n certificateSecretName: item[\"certificateSecretName\"],\n };\n}\n\n/** Defines the asset endpoint profile status properties. */\nexport interface AssetEndpointProfileStatus {\n /** Array object to transfer and persist errors that originate from the Edge. */\n readonly errors?: AssetEndpointProfileStatusError[];\n}\n\nexport function assetEndpointProfileStatusDeserializer(item: any): AssetEndpointProfileStatus {\n return {\n errors: !item[\"errors\"]\n ? item[\"errors\"]\n : assetEndpointProfileStatusErrorArrayDeserializer(item[\"errors\"]),\n };\n}\n\nexport function assetEndpointProfileStatusErrorArrayDeserializer(\n result: Array<AssetEndpointProfileStatusError>,\n): any[] {\n return result.map((item) => {\n return assetEndpointProfileStatusErrorDeserializer(item);\n });\n}\n\n/** Defines the asset endpoint profile status error properties. */\nexport interface AssetEndpointProfileStatusError {\n /** Error code for classification of errors (ex: 400, 404, 500, etc.). */\n readonly code?: number;\n /** Human readable helpful error message to provide additional context for error (ex: “targetAddress 'foo' is not a valid url”). */\n readonly message?: string;\n}\n\nexport function assetEndpointProfileStatusErrorDeserializer(\n item: any,\n): AssetEndpointProfileStatusError {\n return {\n code: item[\"code\"],\n message: item[\"message\"],\n };\n}\n\n/** The type used for update operations of the AssetEndpointProfile. */\nexport interface AssetEndpointProfileUpdate {\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The resource-specific properties for this resource. */\n properties?: AssetEndpointProfileUpdateProperties;\n}\n\nexport function assetEndpointProfileUpdateSerializer(item: AssetEndpointProfileUpdate): any {\n return {\n tags: item[\"tags\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : assetEndpointProfileUpdatePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** The updatable properties of the AssetEndpointProfile. */\nexport interface AssetEndpointProfileUpdateProperties {\n /** The local valid URI specifying the network address/DNS name of a southbound device. The scheme part of the targetAddress URI specifies the type of the device. The additionalConfiguration field holds further connector type specific configuration. */\n targetAddress?: string;\n /** Defines the configuration for the connector type that is being used with the endpoint profile. */\n endpointProfileType?: string;\n /** Defines the client authentication mechanism to the server. */\n authentication?: Authentication;\n /** Stringified JSON that contains connectivity type specific further configuration (e.g. OPC UA, Modbus, ONVIF). */\n additionalConfiguration?: string;\n}\n\nexport function assetEndpointProfileUpdatePropertiesSerializer(\n item: AssetEndpointProfileUpdateProperties,\n): any {\n return {\n targetAddress: item[\"targetAddress\"],\n endpointProfileType: item[\"endpointProfileType\"],\n authentication: !item[\"authentication\"]\n ? item[\"authentication\"]\n : authenticationSerializer(item[\"authentication\"]),\n additionalConfiguration: item[\"additionalConfiguration\"],\n };\n}\n\n/** The response of a AssetEndpointProfile list operation. */\nexport interface _AssetEndpointProfileListResult {\n /** The AssetEndpointProfile items on this page */\n value: AssetEndpointProfile[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _assetEndpointProfileListResultDeserializer(\n item: any,\n): _AssetEndpointProfileListResult {\n return {\n value: assetEndpointProfileArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function assetEndpointProfileArraySerializer(result: Array<AssetEndpointProfile>): any[] {\n return result.map((item) => {\n return assetEndpointProfileSerializer(item);\n });\n}\n\nexport function assetEndpointProfileArrayDeserializer(result: Array<AssetEndpointProfile>): any[] {\n return result.map((item) => {\n return assetEndpointProfileDeserializer(item);\n });\n}\n\n/** billingContainer Model as Azure resource whose sole purpose is to keep track of billables resources under a subscription. */\nexport interface BillingContainer extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: BillingContainerProperties;\n /** Resource ETag */\n readonly etag?: string;\n}\n\nexport function billingContainerDeserializer(item: any): BillingContainer {\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : billingContainerPropertiesDeserializer(item[\"properties\"]),\n etag: item[\"etag\"],\n };\n}\n\n/** Defines the billingContainer properties. */\nexport interface BillingContainerProperties {\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function billingContainerPropertiesDeserializer(item: any): BillingContainerProperties {\n return {\n provisioningState: item[\"provisioningState\"],\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 item;\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 response of a BillingContainer list operation. */\nexport interface _BillingContainerListResult {\n /** The BillingContainer items on this page */\n value: BillingContainer[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _billingContainerListResultDeserializer(item: any): _BillingContainerListResult {\n return {\n value: billingContainerArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function billingContainerArrayDeserializer(result: Array<BillingContainer>): any[] {\n return result.map((item) => {\n return billingContainerDeserializer(item);\n });\n}\n\n/** Namespace definition. */\nexport interface Namespace extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: NamespaceProperties;\n /** The managed service identities assigned to this resource. */\n identity?: SystemAssignedServiceIdentity;\n}\n\nexport function namespaceSerializer(item: Namespace): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespacePropertiesSerializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : systemAssignedServiceIdentitySerializer(item[\"identity\"]),\n };\n}\n\nexport function namespaceDeserializer(item: any): Namespace {\n return {\n tags: item[\"tags\"],\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespacePropertiesDeserializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : systemAssignedServiceIdentityDeserializer(item[\"identity\"]),\n };\n}\n\n/** The namespace properties model. */\nexport interface NamespaceProperties {\n /** Globally unique, immutable, non-reusable ID. */\n readonly uuid?: string;\n /** Assigned and unassigned messaging endpoints. */\n messaging?: Messaging;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function namespacePropertiesSerializer(item: NamespaceProperties): any {\n return {\n messaging: !item[\"messaging\"] ? item[\"messaging\"] : messagingSerializer(item[\"messaging\"]),\n };\n}\n\nexport function namespacePropertiesDeserializer(item: any): NamespaceProperties {\n return {\n uuid: item[\"uuid\"],\n messaging: !item[\"messaging\"] ? item[\"messaging\"] : messagingDeserializer(item[\"messaging\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The namespace messaging endpoints model. */\nexport interface Messaging {\n /** Dictionary of messaging endpoints. */\n endpoints?: Record<string, MessagingEndpoint>;\n}\n\nexport function messagingSerializer(item: Messaging): any {\n return {\n endpoints: !item[\"endpoints\"]\n ? item[\"endpoints\"]\n : messagingEndpointRecordSerializer(item[\"endpoints\"]),\n };\n}\n\nexport function messagingDeserializer(item: any): Messaging {\n return {\n endpoints: !item[\"endpoints\"]\n ? item[\"endpoints\"]\n : messagingEndpointRecordDeserializer(item[\"endpoints\"]),\n };\n}\n\nexport function messagingEndpointRecordSerializer(\n item: Record<string, MessagingEndpoint>,\n): Record<string, any> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : messagingEndpointSerializer(item[key]);\n });\n return result;\n}\n\nexport function messagingEndpointRecordDeserializer(\n item: Record<string, any>,\n): Record<string, MessagingEndpoint> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : messagingEndpointDeserializer(item[key]);\n });\n return result;\n}\n\n/** Namespace messaging endpoint model used by a device to connect to a service. */\nexport interface MessagingEndpoint {\n /** Type of connection used for messaging endpoint. */\n endpointType?: string;\n /** The endpoint address to connect to. */\n address: string;\n /** The messaging endpoint Azure resource Id. */\n resourceId?: string;\n}\n\nexport function messagingEndpointSerializer(item: MessagingEndpoint): any {\n return {\n endpointType: item[\"endpointType\"],\n address: item[\"address\"],\n resourceId: item[\"resourceId\"],\n };\n}\n\nexport function messagingEndpointDeserializer(item: any): MessagingEndpoint {\n return {\n endpointType: item[\"endpointType\"],\n address: item[\"address\"],\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** Managed service identity (either system assigned, or none) */\nexport interface SystemAssignedServiceIdentity {\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: SystemAssignedServiceIdentityType;\n}\n\nexport function systemAssignedServiceIdentitySerializer(item: SystemAssignedServiceIdentity): any {\n return { type: item[\"type\"] };\n}\n\nexport function systemAssignedServiceIdentityDeserializer(\n item: any,\n): SystemAssignedServiceIdentity {\n return {\n principalId: item[\"principalId\"],\n tenantId: item[\"tenantId\"],\n type: item[\"type\"],\n };\n}\n\n/** Type of managed service identity (either system assigned, or none). */\nexport enum KnownSystemAssignedServiceIdentityType {\n /** No managed system identity. */\n None = \"None\",\n /** System assigned managed system identity. */\n SystemAssigned = \"SystemAssigned\",\n}\n\n/**\n * Type of managed service identity (either system assigned, or none). \\\n * {@link KnownSystemAssignedServiceIdentityType} can be used interchangeably with SystemAssignedServiceIdentityType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **None**: No managed system identity. \\\n * **SystemAssigned**: System assigned managed system identity.\n */\nexport type SystemAssignedServiceIdentityType = string;\n\n/** The type used for update operations of the Namespace. */\nexport interface NamespaceUpdate {\n /** The managed service identities assigned to this resource. */\n identity?: SystemAssignedServiceIdentity;\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The resource-specific properties for this resource. */\n properties?: NamespaceUpdateProperties;\n}\n\nexport function namespaceUpdateSerializer(item: NamespaceUpdate): any {\n return {\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : systemAssignedServiceIdentitySerializer(item[\"identity\"]),\n tags: item[\"tags\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceUpdatePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** The updatable properties of the Namespace. */\nexport interface NamespaceUpdateProperties {\n /** Assigned and unassigned messaging endpoints. */\n messaging?: Messaging;\n}\n\nexport function namespaceUpdatePropertiesSerializer(item: NamespaceUpdateProperties): any {\n return {\n messaging: !item[\"messaging\"] ? item[\"messaging\"] : messagingSerializer(item[\"messaging\"]),\n };\n}\n\n/** The response of a Namespace list operation. */\nexport interface _NamespaceListResult {\n /** The Namespace items on this page */\n value: Namespace[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _namespaceListResultDeserializer(item: any): _NamespaceListResult {\n return {\n value: namespaceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function namespaceArraySerializer(result: Array<Namespace>): any[] {\n return result.map((item) => {\n return namespaceSerializer(item);\n });\n}\n\nexport function namespaceArrayDeserializer(result: Array<Namespace>): any[] {\n return result.map((item) => {\n return namespaceDeserializer(item);\n });\n}\n\n/** Request body for the migrate resources operation in to Namespace resource. */\nexport interface NamespaceMigrateRequest {\n /** Scope of the migrate resources operation. */\n scope?: Scope;\n /** List of asset resources to be migrated. */\n resourceIds?: string[];\n}\n\nexport function namespaceMigrateRequestSerializer(item: NamespaceMigrateRequest): any {\n return {\n scope: item[\"scope\"],\n resourceIds: !item[\"resourceIds\"]\n ? item[\"resourceIds\"]\n : item[\"resourceIds\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Scope of the migrate resources operation. */\nexport enum KnownScope {\n /** Scoping the migration to resourceIds provided */\n Resources = \"Resources\",\n}\n\n/**\n * Scope of the migrate resources operation. \\\n * {@link KnownScope} can be used interchangeably with Scope,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Resources**: Scoping the migration to resourceIds provided\n */\nexport type Scope = string;\n\nexport function errorDetailsArrayDeserializer(result: Array<ErrorDetails>): any[] {\n return result.map((item) => {\n return errorDetailsDeserializer(item);\n });\n}\n\n/** Defines the error details properties. */\nexport interface ErrorDetails {\n /** Multi-part error code for classification and root causing of errors (ex: 400.200.100.432). */\n readonly code?: string;\n /** Human-readable helpful error message to provide additional context for error (ex: “Authentication method not supported”). */\n readonly message?: string;\n /** Human-readable helpful detailed text context for debugging (ex: “The following mechanisms are supported...”). */\n readonly info?: string;\n /** Unique identifier for the transaction to aid in debugging. */\n readonly correlationId?: string;\n}\n\nexport function errorDetailsDeserializer(item: any): ErrorDetails {\n return {\n code: item[\"code\"],\n message: item[\"message\"],\n info: item[\"info\"],\n correlationId: item[\"correlationId\"],\n };\n}\n\n/** Asset definition. */\nexport interface NamespaceAsset extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: NamespaceAssetProperties;\n /** The extended location. */\n extendedLocation: ExtendedLocation;\n}\n\nexport function namespaceAssetSerializer(item: NamespaceAsset): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceAssetPropertiesSerializer(item[\"properties\"]),\n extendedLocation: extendedLocationSerializer(item[\"extendedLocation\"]),\n };\n}\n\nexport function namespaceAssetDeserializer(item: any): NamespaceAsset {\n return {\n tags: item[\"tags\"],\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceAssetPropertiesDeserializer(item[\"properties\"]),\n extendedLocation: extendedLocationDeserializer(item[\"extendedLocation\"]),\n };\n}\n\n/** Defines the asset properties. */\nexport interface NamespaceAssetProperties {\n /** Globally unique, immutable, non-reusable ID. */\n readonly uuid?: string;\n /** Enabled/disabled status of the asset. */\n enabled?: boolean;\n /** Asset ID provided by the customer. */\n externalAssetId?: string;\n /** Human-readable display name. */\n displayName?: string;\n /** Human-readable description of the asset. */\n description?: string;\n /** Reference to the device that provides data for this asset. Must provide device name & endpoint on the device to use. */\n deviceRef: DeviceRef;\n /** URIs or type definition IDs. */\n assetTypeRefs?: string[];\n /** An integer that is incremented each time the resource is modified. */\n readonly version?: number;\n /** A timestamp (in UTC) that is updated each time the resource is modified. */\n readonly lastTransitionTime?: Date;\n /** Asset manufacturer. */\n manufacturer?: string;\n /** Asset manufacturer URI. */\n manufacturerUri?: string;\n /** Asset model. */\n model?: string;\n /** Asset product code. */\n productCode?: string;\n /** Asset hardware revision number. */\n hardwareRevision?: string;\n /** Asset software revision number. */\n softwareRevision?: string;\n /** Asset documentation reference. */\n documentationUri?: string;\n /** Asset serial number. */\n serialNumber?: string;\n /** A set of key-value pairs that contain custom attributes set by the customer. */\n attributes?: Record<string, any>;\n /** Reference to a list of discovered assets. Populated only if the asset has been created from discovery flow. Discovered asset names must be provided. */\n discoveredAssetRefs?: string[];\n /** Stringified JSON that contains connector-specific default configuration for all datasets. Each dataset can have its own configuration that overrides the default settings here. */\n defaultDatasetsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all events. Each event can have its own configuration that overrides the default settings here. */\n defaultEventsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all streams. Each stream can have its own configuration that overrides the default settings here. */\n defaultStreamsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all management groups. Each management group can have its own configuration that overrides the default settings here. */\n defaultManagementGroupsConfiguration?: string;\n /** Default destinations for a dataset. */\n defaultDatasetsDestinations?: DatasetDestinationUnion[];\n /** Default destinations for an event. */\n defaultEventsDestinations?: EventDestinationUnion[];\n /** Default destinations for a stream. */\n defaultStreamsDestinations?: StreamDestinationUnion[];\n /** Array of datasets that are part of the asset. Each dataset describes the data points that make up the set. */\n datasets?: NamespaceDataset[];\n /** Array of event groups that are part of the asset. Each event group can have per-event group configuration. */\n eventGroups?: NamespaceEventGroup[];\n /** Array of streams that are part of the asset. Each stream can have a per-stream configuration. */\n streams?: NamespaceStream[];\n /** Array of management groups that are part of the asset. Each management group can have a per-group configuration. */\n managementGroups?: ManagementGroup[];\n /** Read only object to reflect changes that have occurred on the Edge. Similar to Kubernetes status property for custom resources. */\n readonly status?: NamespaceAssetStatus;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function namespaceAssetPropertiesSerializer(item: NamespaceAssetProperties): any {\n return {\n enabled: item[\"enabled\"],\n externalAssetId: item[\"externalAssetId\"],\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n deviceRef: deviceRefSerializer(item[\"deviceRef\"]),\n assetTypeRefs: !item[\"assetTypeRefs\"]\n ? item[\"assetTypeRefs\"]\n : item[\"assetTypeRefs\"].map((p: any) => {\n return p;\n }),\n manufacturer: item[\"manufacturer\"],\n manufacturerUri: item[\"manufacturerUri\"],\n model: item[\"model\"],\n productCode: item[\"productCode\"],\n hardwareRevision: item[\"hardwareRevision\"],\n softwareRevision: item[\"softwareRevision\"],\n documentationUri: item[\"documentationUri\"],\n serialNumber: item[\"serialNumber\"],\n attributes: item[\"attributes\"],\n discoveredAssetRefs: !item[\"discoveredAssetRefs\"]\n ? item[\"discoveredAssetRefs\"]\n : item[\"discoveredAssetRefs\"].map((p: any) => {\n return p;\n }),\n defaultDatasetsConfiguration: item[\"defaultDatasetsConfiguration\"],\n defaultEventsConfiguration: item[\"defaultEventsConfiguration\"],\n defaultStreamsConfiguration: item[\"defaultStreamsConfiguration\"],\n defaultManagementGroupsConfiguration: item[\"defaultManagementGroupsConfiguration\"],\n defaultDatasetsDestinations: !item[\"defaultDatasetsDestinations\"]\n ? item[\"defaultDatasetsDestinations\"]\n : datasetDestinationUnionArraySerializer(item[\"defaultDatasetsDestinations\"]),\n defaultEventsDestinations: !item[\"defaultEventsDestinations\"]\n ? item[\"defaultEventsDestinations\"]\n : eventDestinationUnionArraySerializer(item[\"defaultEventsDestinations\"]),\n defaultStreamsDestinations: !item[\"defaultStreamsDestinations\"]\n ? item[\"defaultStreamsDestinations\"]\n : streamDestinationUnionArraySerializer(item[\"defaultStreamsDestinations\"]),\n datasets: !item[\"datasets\"]\n ? item[\"datasets\"]\n : namespaceDatasetArraySerializer(item[\"datasets\"]),\n eventGroups: !item[\"eventGroups\"]\n ? item[\"eventGroups\"]\n : namespaceEventGroupArraySerializer(item[\"eventGroups\"]),\n streams: !item[\"streams\"] ? item[\"streams\"] : namespaceStreamArraySerializer(item[\"streams\"]),\n managementGroups: !item[\"managementGroups\"]\n ? item[\"managementGroups\"]\n : managementGroupArraySerializer(item[\"managementGroups\"]),\n };\n}\n\nexport function namespaceAssetPropertiesDeserializer(item: any): NamespaceAssetProperties {\n return {\n uuid: item[\"uuid\"],\n enabled: item[\"enabled\"],\n externalAssetId: item[\"externalAssetId\"],\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n deviceRef: deviceRefDeserializer(item[\"deviceRef\"]),\n assetTypeRefs: !item[\"assetTypeRefs\"]\n ? item[\"assetTypeRefs\"]\n : item[\"assetTypeRefs\"].map((p: any) => {\n return p;\n }),\n version: item[\"version\"],\n lastTransitionTime: !item[\"lastTransitionTime\"]\n ? item[\"lastTransitionTime\"]\n : new Date(item[\"lastTransitionTime\"]),\n manufacturer: item[\"manufacturer\"],\n manufacturerUri: item[\"manufacturerUri\"],\n model: item[\"model\"],\n productCode: item[\"productCode\"],\n hardwareRevision: item[\"hardwareRevision\"],\n softwareRevision: item[\"softwareRevision\"],\n documentationUri: item[\"documentationUri\"],\n serialNumber: item[\"serialNumber\"],\n attributes: item[\"attributes\"],\n discoveredAssetRefs: !item[\"discoveredAssetRefs\"]\n ? item[\"discoveredAssetRefs\"]\n : item[\"discoveredAssetRefs\"].map((p: any) => {\n return p;\n }),\n defaultDatasetsConfiguration: item[\"defaultDatasetsConfiguration\"],\n defaultEventsConfiguration: item[\"defaultEventsConfiguration\"],\n defaultStreamsConfiguration: item[\"defaultStreamsConfiguration\"],\n defaultManagementGroupsConfiguration: item[\"defaultManagementGroupsConfiguration\"],\n defaultDatasetsDestinations: !item[\"defaultDatasetsDestinations\"]\n ? item[\"defaultDatasetsDestinations\"]\n : datasetDestinationUnionArrayDeserializer(item[\"defaultDatasetsDestinations\"]),\n defaultEventsDestinations: !item[\"defaultEventsDestinations\"]\n ? item[\"defaultEventsDestinations\"]\n : eventDestinationUnionArrayDeserializer(item[\"defaultEventsDestinations\"]),\n defaultStreamsDestinations: !item[\"defaultStreamsDestinations\"]\n ? item[\"defaultStreamsDestinations\"]\n : streamDestinationUnionArrayDeserializer(item[\"defaultStreamsDestinations\"]),\n datasets: !item[\"datasets\"]\n ? item[\"datasets\"]\n : namespaceDatasetArrayDeserializer(item[\"datasets\"]),\n eventGroups: !item[\"eventGroups\"]\n ? item[\"eventGroups\"]\n : namespaceEventGroupArrayDeserializer(item[\"eventGroups\"]),\n streams: !item[\"streams\"] ? item[\"streams\"] : namespaceStreamArrayDeserializer(item[\"streams\"]),\n managementGroups: !item[\"managementGroups\"]\n ? item[\"managementGroups\"]\n : managementGroupArrayDeserializer(item[\"managementGroups\"]),\n status: !item[\"status\"] ? item[\"status\"] : namespaceAssetStatusDeserializer(item[\"status\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** Defines which device and endpoint to use for this asset */\nexport interface DeviceRef {\n /** Name of the device resource */\n deviceName: string;\n /** The name of endpoint to use */\n endpointName: string;\n}\n\nexport function deviceRefSerializer(item: DeviceRef): any {\n return { deviceName: item[\"deviceName\"], endpointName: item[\"endpointName\"] };\n}\n\nexport function deviceRefDeserializer(item: any): DeviceRef {\n return {\n deviceName: item[\"deviceName\"],\n endpointName: item[\"endpointName\"],\n };\n}\n\nexport function datasetDestinationUnionArraySerializer(\n result: Array<DatasetDestinationUnion>,\n): any[] {\n return result.map((item) => {\n return datasetDestinationUnionSerializer(item);\n });\n}\n\nexport function datasetDestinationUnionArrayDeserializer(\n result: Array<DatasetDestinationUnion>,\n): any[] {\n return result.map((item) => {\n return datasetDestinationUnionDeserializer(item);\n });\n}\n\n/** The type of the destination. */\nexport interface DatasetDestination {\n /** Target destination. */\n /** The discriminator possible values: Mqtt, BrokerStateStore, Storage */\n target?: DatasetDestinationTarget;\n}\n\nexport function datasetDestinationSerializer(item: DatasetDestination): any {\n return { target: item[\"target\"] };\n}\n\nexport function datasetDestinationDeserializer(item: any): DatasetDestination {\n return {\n target: item[\"target\"],\n };\n}\n\n/** Alias for DatasetDestinationUnion */\nexport type DatasetDestinationUnion =\n | DatasetMqttDestination\n | DatasetBrokerStateStoreDestination\n | DatasetStorageDestination\n | DatasetDestination;\n\nexport function datasetDestinationUnionSerializer(item: DatasetDestinationUnion): any {\n switch (item.target) {\n case \"Mqtt\":\n return datasetMqttDestinationSerializer(item as DatasetMqttDestination);\n\n case \"BrokerStateStore\":\n return datasetBrokerStateStoreDestinationSerializer(\n item as DatasetBrokerStateStoreDestination,\n );\n\n case \"Storage\":\n return datasetStorageDestinationSerializer(item as DatasetStorageDestination);\n\n default:\n return datasetDestinationSerializer(item);\n }\n}\n\nexport function datasetDestinationUnionDeserializer(item: any): DatasetDestinationUnion {\n switch (item.target) {\n case \"Mqtt\":\n return datasetMqttDestinationDeserializer(item as DatasetMqttDestination);\n\n case \"BrokerStateStore\":\n return datasetBrokerStateStoreDestinationDeserializer(\n item as DatasetBrokerStateStoreDestination,\n );\n\n case \"Storage\":\n return datasetStorageDestinationDeserializer(item as DatasetStorageDestination);\n\n default:\n return datasetDestinationDeserializer(item);\n }\n}\n\n/** The set of supported dataset destinations for an asset. */\nexport enum KnownDatasetDestinationTarget {\n /** MQTT target. */\n Mqtt = \"Mqtt\",\n /** Broker State Store target. */\n BrokerStateStore = \"BrokerStateStore\",\n /** Storage target. */\n Storage = \"Storage\",\n}\n\n/**\n * The set of supported dataset destinations for an asset. \\\n * {@link KnownDatasetDestinationTarget} can be used interchangeably with DatasetDestinationTarget,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Mqtt**: MQTT target. \\\n * **BrokerStateStore**: Broker State Store target. \\\n * **Storage**: Storage target.\n */\nexport type DatasetDestinationTarget = string;\n\n/** The type for a MQTT destination. */\nexport interface DatasetMqttDestination extends DatasetDestination {\n /** The MQTT destination type. */\n target: \"Mqtt\";\n /** The MQTT destination configuration. */\n configuration: MqttDestinationConfiguration;\n}\n\nexport function datasetMqttDestinationSerializer(item: DatasetMqttDestination): any {\n return {\n target: item[\"target\"],\n configuration: mqttDestinationConfigurationSerializer(item[\"configuration\"]),\n };\n}\n\nexport function datasetMqttDestinationDeserializer(item: any): DatasetMqttDestination {\n return {\n target: item[\"target\"],\n configuration: mqttDestinationConfigurationDeserializer(item[\"configuration\"]),\n };\n}\n\n/** The configuration for a MQTT destination. */\nexport interface MqttDestinationConfiguration {\n /** The MQTT topic. */\n topic: string;\n /** When set to 'Keep', messages published to an MQTT broker will have the retain flag set. Default: 'Never'. */\n retain?: TopicRetainType;\n /** The MQTT QoS setting. Defaults to QoS 1. */\n qos?: MqttDestinationQos;\n /** The MQTT TTL setting. */\n ttl?: number;\n}\n\nexport function mqttDestinationConfigurationSerializer(item: MqttDestinationConfiguration): any {\n return {\n topic: item[\"topic\"],\n retain: item[\"retain\"],\n qos: item[\"qos\"],\n ttl: item[\"ttl\"],\n };\n}\n\nexport function mqttDestinationConfigurationDeserializer(item: any): MqttDestinationConfiguration {\n return {\n topic: item[\"topic\"],\n retain: item[\"retain\"],\n qos: item[\"qos\"],\n ttl: item[\"ttl\"],\n };\n}\n\n/** The set of supported QoS types for a MQTT destination. */\nexport enum KnownMqttDestinationQos {\n /** QoS 0. */\n Qos0 = \"Qos0\",\n /** QoS 1. */\n Qos1 = \"Qos1\",\n}\n\n/**\n * The set of supported QoS types for a MQTT destination. \\\n * {@link KnownMqttDestinationQos} can be used interchangeably with MqttDestinationQos,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Qos0**: QoS 0. \\\n * **Qos1**: QoS 1.\n */\nexport type MqttDestinationQos = string;\n\n/** The type for a MQTT broker state store destination. */\nexport interface DatasetBrokerStateStoreDestination extends DatasetDestination {\n /** The MQTT broker state store destination target. */\n target: \"BrokerStateStore\";\n /** The MQTT broker state store destination configuration. */\n configuration: BrokerStateStoreDestinationConfiguration;\n}\n\nexport function datasetBrokerStateStoreDestinationSerializer(\n item: DatasetBrokerStateStoreDestination,\n): any {\n return {\n target: item[\"target\"],\n configuration: brokerStateStoreDestinationConfigurationSerializer(item[\"configuration\"]),\n };\n}\n\nexport function datasetBrokerStateStoreDestinationDeserializer(\n item: any,\n): DatasetBrokerStateStoreDestination {\n return {\n target: item[\"target\"],\n configuration: brokerStateStoreDestinationConfigurationDeserializer(item[\"configuration\"]),\n };\n}\n\n/** The configuration for a MQTT broker state store destination. */\nexport interface BrokerStateStoreDestinationConfiguration {\n /** The MQTT broker state store destination key. */\n key: string;\n}\n\nexport function brokerStateStoreDestinationConfigurationSerializer(\n item: BrokerStateStoreDestinationConfiguration,\n): any {\n return { key: item[\"key\"] };\n}\n\nexport function brokerStateStoreDestinationConfigurationDeserializer(\n item: any,\n): BrokerStateStoreDestinationConfiguration {\n return {\n key: item[\"key\"],\n };\n}\n\n/** The type for a storage destination. */\nexport interface DatasetStorageDestination extends DatasetDestination {\n /** The storage destination type. */\n target: \"Storage\";\n /** The storage destination configuration. */\n configuration: StorageDestinationConfiguration;\n}\n\nexport function datasetStorageDestinationSerializer(item: DatasetStorageDestination): any {\n return {\n target: item[\"target\"],\n configuration: storageDestinationConfigurationSerializer(item[\"configuration\"]),\n };\n}\n\nexport function datasetStorageDestinationDeserializer(item: any): DatasetStorageDestination {\n return {\n target: item[\"target\"],\n configuration: storageDestinationConfigurationDeserializer(item[\"configuration\"]),\n };\n}\n\n/** The configuration for a storage destination. */\nexport interface StorageDestinationConfiguration {\n /** The storage destination path. */\n path: string;\n}\n\nexport function storageDestinationConfigurationSerializer(\n item: StorageDestinationConfiguration,\n): any {\n return { path: item[\"path\"] };\n}\n\nexport function storageDestinationConfigurationDeserializer(\n item: any,\n): StorageDestinationConfiguration {\n return {\n path: item[\"path\"],\n };\n}\n\nexport function eventDestinationUnionArraySerializer(result: Array<EventDestinationUnion>): any[] {\n return result.map((item) => {\n return eventDestinationUnionSerializer(item);\n });\n}\n\nexport function eventDestinationUnionArrayDeserializer(\n result: Array<EventDestinationUnion>,\n): any[] {\n return result.map((item) => {\n return eventDestinationUnionDeserializer(item);\n });\n}\n\n/** The type of the destination. */\nexport interface EventDestination {\n /** Target destination. */\n /** The discriminator possible values: Mqtt, Storage */\n target?: EventDestinationTarget;\n}\n\nexport function eventDestinationSerializer(item: EventDestination): any {\n return { target: item[\"target\"] };\n}\n\nexport function eventDestinationDeserializer(item: any): EventDestination {\n return {\n target: item[\"target\"],\n };\n}\n\n/** Alias for EventDestinationUnion */\nexport type EventDestinationUnion =\n | EventMqttDestination\n | EventStorageDestination\n | EventDestination;\n\nexport function eventDestinationUnionSerializer(item: EventDestinationUnion): any {\n switch (item.target) {\n case \"Mqtt\":\n return eventMqttDestinationSerializer(item as EventMqttDestination);\n\n case \"Storage\":\n return eventStorageDestinationSerializer(item as EventStorageDestination);\n\n default:\n return eventDestinationSerializer(item);\n }\n}\n\nexport function eventDestinationUnionDeserializer(item: any): EventDestinationUnion {\n switch (item.target) {\n case \"Mqtt\":\n return eventMqttDestinationDeserializer(item as EventMqttDestination);\n\n case \"Storage\":\n return eventStorageDestinationDeserializer(item as EventStorageDestination);\n\n default:\n return eventDestinationDeserializer(item);\n }\n}\n\n/** The set of supported event destinations for an asset. */\nexport enum KnownEventDestinationTarget {\n /** MQTT target. */\n Mqtt = \"Mqtt\",\n /** Storage target. */\n Storage = \"Storage\",\n}\n\n/**\n * The set of supported event destinations for an asset. \\\n * {@link KnownEventDestinationTarget} can be used interchangeably with EventDestinationTarget,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Mqtt**: MQTT target. \\\n * **Storage**: Storage target.\n */\nexport type EventDestinationTarget = string;\n\n/** The type for a MQTT destination. */\nexport interface EventMqttDestination extends EventDestination {\n /** The MQTT destination type. */\n target: \"Mqtt\";\n /** The MQTT destination configuration. */\n configuration: MqttDestinationConfiguration;\n}\n\nexport function eventMqttDestinationSerializer(item: EventMqttDestination): any {\n return {\n target: item[\"target\"],\n configuration: mqttDestinationConfigurationSerializer(item[\"configuration\"]),\n };\n}\n\nexport function eventMqttDestinationDeserializer(item: any): EventMqttDestination {\n return {\n target: item[\"target\"],\n configuration: mqttDestinationConfigurationDeserializer(item[\"configuration\"]),\n };\n}\n\n/** The type for a storage destination. */\nexport interface EventStorageDestination extends EventDestination {\n /** The storage destination type. */\n target: \"Storage\";\n /** The storage destination configuration. */\n configuration: StorageDestinationConfiguration;\n}\n\nexport function eventStorageDestinationSerializer(item: EventStorageDestination): any {\n return {\n target: item[\"target\"],\n configuration: storageDestinationConfigurationSerializer(item[\"configuration\"]),\n };\n}\n\nexport function eventStorageDestinationDeserializer(item: any): EventStorageDestination {\n return {\n target: item[\"target\"],\n configuration: storageDestinationConfigurationDeserializer(item[\"configuration\"]),\n };\n}\n\nexport function streamDestinationUnionArraySerializer(\n result: Array<StreamDestinationUnion>,\n): any[] {\n return result.map((item) => {\n return streamDestinationUnionSerializer(item);\n });\n}\n\nexport function streamDestinationUnionArrayDeserializer(\n result: Array<StreamDestinationUnion>,\n): any[] {\n return result.map((item) => {\n return streamDestinationUnionDeserializer(item);\n });\n}\n\n/** The type of the destination. */\nexport interface StreamDestination {\n /** Target destination. */\n /** The discriminator possible values: Mqtt, Storage */\n target?: StreamDestinationTarget;\n}\n\nexport function streamDestinationSerializer(item: StreamDestination): any {\n return { target: item[\"target\"] };\n}\n\nexport function streamDestinationDeserializer(item: any): StreamDestination {\n return {\n target: item[\"target\"],\n };\n}\n\n/** Alias for StreamDestinationUnion */\nexport type StreamDestinationUnion =\n | StreamMqttDestination\n | StreamStorageDestination\n | StreamDestination;\n\nexport function streamDestinationUnionSerializer(item: StreamDestinationUnion): any {\n switch (item.target) {\n case \"Mqtt\":\n return streamMqttDestinationSerializer(item as StreamMqttDestination);\n\n case \"Storage\":\n return streamStorageDestinationSerializer(item as StreamStorageDestination);\n\n default:\n return streamDestinationSerializer(item);\n }\n}\n\nexport function streamDestinationUnionDeserializer(item: any): StreamDestinationUnion {\n switch (item.target) {\n case \"Mqtt\":\n return streamMqttDestinationDeserializer(item as StreamMqttDestination);\n\n case \"Storage\":\n return streamStorageDestinationDeserializer(item as StreamStorageDestination);\n\n default:\n return streamDestinationDeserializer(item);\n }\n}\n\n/** The set of supported stream destinations for an asset. */\nexport enum KnownStreamDestinationTarget {\n /** MQTT target. */\n Mqtt = \"Mqtt\",\n /** Storage target. */\n Storage = \"Storage\",\n}\n\n/**\n * The set of supported stream destinations for an asset. \\\n * {@link KnownStreamDestinationTarget} can be used interchangeably with StreamDestinationTarget,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Mqtt**: MQTT target. \\\n * **Storage**: Storage target.\n */\nexport type StreamDestinationTarget = string;\n\n/** The type for a MQTT destination. */\nexport interface StreamMqttDestination extends StreamDestination {\n /** The MQTT destination type. */\n target: \"Mqtt\";\n /** The MQTT destination configuration. */\n configuration: MqttDestinationConfiguration;\n}\n\nexport function streamMqttDestinationSerializer(item: StreamMqttDestination): any {\n return {\n target: item[\"target\"],\n configuration: mqttDestinationConfigurationSerializer(item[\"configuration\"]),\n };\n}\n\nexport function streamMqttDestinationDeserializer(item: any): StreamMqttDestination {\n return {\n target: item[\"target\"],\n configuration: mqttDestinationConfigurationDeserializer(item[\"configuration\"]),\n };\n}\n\n/** The type for a storage destination. */\nexport interface StreamStorageDestination extends StreamDestination {\n /** The storage destination type. */\n target: \"Storage\";\n /** The storage destination configuration. */\n configuration: StorageDestinationConfiguration;\n}\n\nexport function streamStorageDestinationSerializer(item: StreamStorageDestination): any {\n return {\n target: item[\"target\"],\n configuration: storageDestinationConfigurationSerializer(item[\"configuration\"]),\n };\n}\n\nexport function streamStorageDestinationDeserializer(item: any): StreamStorageDestination {\n return {\n target: item[\"target\"],\n configuration: storageDestinationConfigurationDeserializer(item[\"configuration\"]),\n };\n}\n\nexport function namespaceDatasetArraySerializer(result: Array<NamespaceDataset>): any[] {\n return result.map((item) => {\n return namespaceDatasetSerializer(item);\n });\n}\n\nexport function namespaceDatasetArrayDeserializer(result: Array<NamespaceDataset>): any[] {\n return result.map((item) => {\n return namespaceDatasetDeserializer(item);\n });\n}\n\n/** Defines the dataset properties. */\nexport interface NamespaceDataset {\n /** Name of the dataset. */\n name: string;\n /** Reference to a data source for a given dataset. */\n dataSource?: string;\n /** URI or type definition ID. */\n typeRef?: string;\n /** Stringified JSON that contains connector-specific JSON string that describes configuration for the specific dataset. */\n datasetConfiguration?: string;\n /** Destinations for a dataset. */\n destinations?: DatasetDestinationUnion[];\n /** Array of data points that are part of the dataset. Each data point can have per-data point configuration. */\n dataPoints?: NamespaceDatasetDataPoint[];\n}\n\nexport function namespaceDatasetSerializer(item: NamespaceDataset): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n typeRef: item[\"typeRef\"],\n datasetConfiguration: item[\"datasetConfiguration\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : datasetDestinationUnionArraySerializer(item[\"destinations\"]),\n dataPoints: !item[\"dataPoints\"]\n ? item[\"dataPoints\"]\n : namespaceDatasetDataPointArraySerializer(item[\"dataPoints\"]),\n };\n}\n\nexport function namespaceDatasetDeserializer(item: any): NamespaceDataset {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n typeRef: item[\"typeRef\"],\n datasetConfiguration: item[\"datasetConfiguration\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : datasetDestinationUnionArrayDeserializer(item[\"destinations\"]),\n dataPoints: !item[\"dataPoints\"]\n ? item[\"dataPoints\"]\n : namespaceDatasetDataPointArrayDeserializer(item[\"dataPoints\"]),\n };\n}\n\nexport function namespaceDatasetDataPointArraySerializer(\n result: Array<NamespaceDatasetDataPoint>,\n): any[] {\n return result.map((item) => {\n return namespaceDatasetDataPointSerializer(item);\n });\n}\n\nexport function namespaceDatasetDataPointArrayDeserializer(\n result: Array<NamespaceDatasetDataPoint>,\n): any[] {\n return result.map((item) => {\n return namespaceDatasetDataPointDeserializer(item);\n });\n}\n\n/** Defines the dataset data point properties. */\nexport interface NamespaceDatasetDataPoint {\n /** The name of the data point. */\n name: string;\n /** The address of the source of the data in the asset (e.g. URL) so that a client can access the data source on the asset. */\n dataSource: string;\n /** Stringified JSON that contains connector-specific configuration for the data point. For OPC UA, this could include configuration like, publishingInterval, samplingInterval, and queueSize. */\n dataPointConfiguration?: string;\n /** URI or type definition ID. */\n typeRef?: string;\n}\n\nexport function namespaceDatasetDataPointSerializer(item: NamespaceDatasetDataPoint): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n dataPointConfiguration: item[\"dataPointConfiguration\"],\n typeRef: item[\"typeRef\"],\n };\n}\n\nexport function namespaceDatasetDataPointDeserializer(item: any): NamespaceDatasetDataPoint {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n dataPointConfiguration: item[\"dataPointConfiguration\"],\n typeRef: item[\"typeRef\"],\n };\n}\n\nexport function namespaceEventGroupArraySerializer(result: Array<NamespaceEventGroup>): any[] {\n return result.map((item) => {\n return namespaceEventGroupSerializer(item);\n });\n}\n\nexport function namespaceEventGroupArrayDeserializer(result: Array<NamespaceEventGroup>): any[] {\n return result.map((item) => {\n return namespaceEventGroupDeserializer(item);\n });\n}\n\n/** Defines the event group properties. */\nexport interface NamespaceEventGroup {\n /** The name of the event group. */\n name: string;\n /** The address of the notifier of the event group in the asset (e.g. URL) so that a client can access the event group on the asset. */\n dataSource?: string;\n /** Stringified JSON that contains connector-specific configuration for the event group. For OPC UA, this could include configuration like, publishingInterval, samplingInterval, and queueSize. */\n eventGroupConfiguration?: string;\n /** Destinations for events. Default destinations when destinations is not defined at the event level. */\n defaultDestinations?: EventDestinationUnion[];\n /** URI or type definition ID. */\n typeRef?: string;\n /** Array of events that are part of the event group. */\n events?: NamespaceEvent[];\n}\n\nexport function namespaceEventGroupSerializer(item: NamespaceEventGroup): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n eventGroupConfiguration: item[\"eventGroupConfiguration\"],\n defaultDestinations: !item[\"defaultDestinations\"]\n ? item[\"defaultDestinations\"]\n : eventDestinationUnionArraySerializer(item[\"defaultDestinations\"]),\n typeRef: item[\"typeRef\"],\n events: !item[\"events\"] ? item[\"events\"] : namespaceEventArraySerializer(item[\"events\"]),\n };\n}\n\nexport function namespaceEventGroupDeserializer(item: any): NamespaceEventGroup {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n eventGroupConfiguration: item[\"eventGroupConfiguration\"],\n defaultDestinations: !item[\"defaultDestinations\"]\n ? item[\"defaultDestinations\"]\n : eventDestinationUnionArrayDeserializer(item[\"defaultDestinations\"]),\n typeRef: item[\"typeRef\"],\n events: !item[\"events\"] ? item[\"events\"] : namespaceEventArrayDeserializer(item[\"events\"]),\n };\n}\n\nexport function namespaceEventArraySerializer(result: Array<NamespaceEvent>): any[] {\n return result.map((item) => {\n return namespaceEventSerializer(item);\n });\n}\n\nexport function namespaceEventArrayDeserializer(result: Array<NamespaceEvent>): any[] {\n return result.map((item) => {\n return namespaceEventDeserializer(item);\n });\n}\n\n/** Defines the event properties. */\nexport interface NamespaceEvent {\n /** The name of the event. */\n name: string;\n /** Reference to a data source for a given event. */\n dataSource?: string;\n /** Stringified JSON that contains connector-specific configuration for the event. For OPC UA, this could include configuration like, publishingInterval, samplingInterval, and queueSize. */\n eventConfiguration?: string;\n /** Destinations for an event. */\n destinations?: EventDestinationUnion[];\n /** URI or type definition ID. */\n typeRef?: string;\n}\n\nexport function namespaceEventSerializer(item: NamespaceEvent): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n eventConfiguration: item[\"eventConfiguration\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : eventDestinationUnionArraySerializer(item[\"destinations\"]),\n typeRef: item[\"typeRef\"],\n };\n}\n\nexport function namespaceEventDeserializer(item: any): NamespaceEvent {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n eventConfiguration: item[\"eventConfiguration\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : eventDestinationUnionArrayDeserializer(item[\"destinations\"]),\n typeRef: item[\"typeRef\"],\n };\n}\n\nexport function namespaceStreamArraySerializer(result: Array<NamespaceStream>): any[] {\n return result.map((item) => {\n return namespaceStreamSerializer(item);\n });\n}\n\nexport function namespaceStreamArrayDeserializer(result: Array<NamespaceStream>): any[] {\n return result.map((item) => {\n return namespaceStreamDeserializer(item);\n });\n}\n\n/** Defines the stream properties. */\nexport interface NamespaceStream {\n /** Name of the stream definition. */\n name: string;\n /** Stringified JSON that contains connector-specific configuration for the specific stream. */\n streamConfiguration?: string;\n /** URI or type definition ID. */\n typeRef?: string;\n /** Destinations for a stream. */\n destinations?: StreamDestinationUnion[];\n}\n\nexport function namespaceStreamSerializer(item: NamespaceStream): any {\n return {\n name: item[\"name\"],\n streamConfiguration: item[\"streamConfiguration\"],\n typeRef: item[\"typeRef\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : streamDestinationUnionArraySerializer(item[\"destinations\"]),\n };\n}\n\nexport function namespaceStreamDeserializer(item: any): NamespaceStream {\n return {\n name: item[\"name\"],\n streamConfiguration: item[\"streamConfiguration\"],\n typeRef: item[\"typeRef\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : streamDestinationUnionArrayDeserializer(item[\"destinations\"]),\n };\n}\n\nexport function managementGroupArraySerializer(result: Array<ManagementGroup>): any[] {\n return result.map((item) => {\n return managementGroupSerializer(item);\n });\n}\n\nexport function managementGroupArrayDeserializer(result: Array<ManagementGroup>): any[] {\n return result.map((item) => {\n return managementGroupDeserializer(item);\n });\n}\n\n/** Defines the management group properties. */\nexport interface ManagementGroup {\n /** Name of the management group. */\n name: string;\n /** Reference to a data source for a given management group. */\n dataSource?: string;\n /** Stringified JSON that contains connector-specific configuration for the management group. */\n managementGroupConfiguration?: string;\n /** URI or type definition ID. */\n typeRef?: string;\n /** Default MQTT topic path on which a client will receive the request for all actions that are part of the management group. */\n defaultTopic?: string;\n /** Default response timeout for all actions that are part of the management group. */\n defaultTimeoutInSeconds?: number;\n /** Array of actions that are part of the management group. Each action can have an individual configuration. */\n actions?: ManagementAction[];\n}\n\nexport function managementGroupSerializer(item: ManagementGroup): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n managementGroupConfiguration: item[\"managementGroupConfiguration\"],\n typeRef: item[\"typeRef\"],\n defaultTopic: item[\"defaultTopic\"],\n defaultTimeoutInSeconds: item[\"defaultTimeoutInSeconds\"],\n actions: !item[\"actions\"] ? item[\"actions\"] : managementActionArraySerializer(item[\"actions\"]),\n };\n}\n\nexport function managementGroupDeserializer(item: any): ManagementGroup {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n managementGroupConfiguration: item[\"managementGroupConfiguration\"],\n typeRef: item[\"typeRef\"],\n defaultTopic: item[\"defaultTopic\"],\n defaultTimeoutInSeconds: item[\"defaultTimeoutInSeconds\"],\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : managementActionArrayDeserializer(item[\"actions\"]),\n };\n}\n\nexport function managementActionArraySerializer(result: Array<ManagementAction>): any[] {\n return result.map((item) => {\n return managementActionSerializer(item);\n });\n}\n\nexport function managementActionArrayDeserializer(result: Array<ManagementAction>): any[] {\n return result.map((item) => {\n return managementActionDeserializer(item);\n });\n}\n\n/** Defines the action properties. */\nexport interface ManagementAction {\n /** Name of the action. */\n name: string;\n /** Stringified JSON that contains connector-specific configuration for the action. */\n actionConfiguration?: string;\n /** The target URI on which a client can invoke the specific action. */\n targetUri: string;\n /** URI or type definition ID. */\n typeRef?: string;\n /** The MQTT topic path on which a client will receive the request for the action. */\n topic?: string;\n /** The type of the action. */\n actionType?: ManagementActionType;\n /** Response timeout for the action. */\n timeoutInSeconds?: number;\n}\n\nexport function managementActionSerializer(item: ManagementAction): any {\n return {\n name: item[\"name\"],\n actionConfiguration: item[\"actionConfiguration\"],\n targetUri: item[\"targetUri\"],\n typeRef: item[\"typeRef\"],\n topic: item[\"topic\"],\n actionType: item[\"actionType\"],\n timeoutInSeconds: item[\"timeoutInSeconds\"],\n };\n}\n\nexport function managementActionDeserializer(item: any): ManagementAction {\n return {\n name: item[\"name\"],\n actionConfiguration: item[\"actionConfiguration\"],\n targetUri: item[\"targetUri\"],\n typeRef: item[\"typeRef\"],\n topic: item[\"topic\"],\n actionType: item[\"actionType\"],\n timeoutInSeconds: item[\"timeoutInSeconds\"],\n };\n}\n\n/** Defines the ManagementAction's type. */\nexport enum KnownManagementActionType {\n /** Call action type. */\n Call = \"Call\",\n /** Read action type. */\n Read = \"Read\",\n /** Write action type. */\n Write = \"Write\",\n}\n\n/**\n * Defines the ManagementAction's type. \\\n * {@link KnownManagementActionType} can be used interchangeably with ManagementActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Call**: Call action type. \\\n * **Read**: Read action type. \\\n * **Write**: Write action type.\n */\nexport type ManagementActionType = string;\n\n/** Defines the asset status properties. */\nexport interface NamespaceAssetStatus {\n /** Defines the asset status config properties. */\n readonly config?: StatusConfig;\n /** Array of dataset statuses that describe the status of each dataset. */\n readonly datasets?: NamespaceAssetStatusDataset[];\n /** Array of event group statuses that describe the status of each event group. */\n readonly eventGroups?: NamespaceAssetStatusEventGroup[];\n /** Array of stream statuses that describe the status of each stream. */\n readonly streams?: NamespaceAssetStatusStream[];\n /** Array of management group statuses that describe the status of each management group. */\n readonly managementGroups?: NamespaceAssetStatusManagementGroup[];\n}\n\nexport function namespaceAssetStatusDeserializer(item: any): NamespaceAssetStatus {\n return {\n config: !item[\"config\"] ? item[\"config\"] : statusConfigDeserializer(item[\"config\"]),\n datasets: !item[\"datasets\"]\n ? item[\"datasets\"]\n : namespaceAssetStatusDatasetArrayDeserializer(item[\"datasets\"]),\n eventGroups: !item[\"eventGroups\"]\n ? item[\"eventGroups\"]\n : namespaceAssetStatusEventGroupArrayDeserializer(item[\"eventGroups\"]),\n streams: !item[\"streams\"]\n ? item[\"streams\"]\n : namespaceAssetStatusStreamArrayDeserializer(item[\"streams\"]),\n managementGroups: !item[\"managementGroups\"]\n ? item[\"managementGroups\"]\n : namespaceAssetStatusManagementGroupArrayDeserializer(item[\"managementGroups\"]),\n };\n}\n\n/** Defines the status config properties. */\nexport interface StatusConfig {\n /** A read-only incremental counter indicating the number of times the configuration has been modified from the perspective of the current actual (edge) state of the CRD. Edge would be the only writer of this value and would sync back up to the cloud. In steady state, this should equal version. */\n readonly version?: number;\n /** A read-only timestamp indicating the last time the configuration has been modified from the perspective of the current actual (edge) state of the CRD. Edge would be the only writer of this value and would sync back up to the cloud. */\n readonly lastTransitionTime?: Date;\n /** Object to transfer and persist errors that originate from the edge. */\n readonly error?: StatusError;\n}\n\nexport function statusConfigDeserializer(item: any): StatusConfig {\n return {\n version: item[\"version\"],\n lastTransitionTime: !item[\"lastTransitionTime\"]\n ? item[\"lastTransitionTime\"]\n : new Date(item[\"lastTransitionTime\"]),\n error: !item[\"error\"] ? item[\"error\"] : statusErrorDeserializer(item[\"error\"]),\n };\n}\n\n/** Defines the status config error properties. */\nexport interface StatusError {\n /** Error code for classification of errors (ex: '400', '404', '500', etc.). */\n readonly code?: string;\n /** Human-readable helpful error message to provide additional context for error (e.g.,: “Capability ID 'foo' does not exist”). */\n readonly message?: string;\n /** Array of error details that describe the status of each error. */\n readonly details?: ErrorDetails[];\n}\n\nexport function statusErrorDeserializer(item: any): StatusError {\n return {\n code: item[\"code\"],\n message: item[\"message\"],\n details: !item[\"details\"] ? item[\"details\"] : errorDetailsArrayDeserializer(item[\"details\"]),\n };\n}\n\nexport function namespaceAssetStatusDatasetArrayDeserializer(\n result: Array<NamespaceAssetStatusDataset>,\n): any[] {\n return result.map((item) => {\n return namespaceAssetStatusDatasetDeserializer(item);\n });\n}\n\n/** Defines the asset status dataset properties. */\nexport interface NamespaceAssetStatusDataset {\n /** The name of the dataset. Must be unique within the status.datasets array. This name is used to correlate between the spec and status dataset information. */\n readonly name: string;\n /** The message schema reference object. */\n readonly messageSchemaReference?: NamespaceMessageSchemaReference;\n /** Object to transfer and persist errors that originate from the edge. */\n readonly error?: StatusError;\n}\n\nexport function namespaceAssetStatusDatasetDeserializer(item: any): NamespaceAssetStatusDataset {\n return {\n name: item[\"name\"],\n messageSchemaReference: !item[\"messageSchemaReference\"]\n ? item[\"messageSchemaReference\"]\n : namespaceMessageSchemaReferenceDeserializer(item[\"messageSchemaReference\"]),\n error: !item[\"error\"] ? item[\"error\"] : statusErrorDeserializer(item[\"error\"]),\n };\n}\n\n/** Defines the message schema reference properties. */\nexport interface NamespaceMessageSchemaReference {\n /** The message schema registry namespace. */\n readonly schemaRegistryNamespace: string;\n /** The message schema name. */\n readonly schemaName: string;\n /** The message schema version. */\n readonly schemaVersion: string;\n}\n\nexport function namespaceMessageSchemaReferenceDeserializer(\n item: any,\n): NamespaceMessageSchemaReference {\n return {\n schemaRegistryNamespace: item[\"schemaRegistryNamespace\"],\n schemaName: item[\"schemaName\"],\n schemaVersion: item[\"schemaVersion\"],\n };\n}\n\nexport function namespaceAssetStatusEventGroupArrayDeserializer(\n result: Array<NamespaceAssetStatusEventGroup>,\n): any[] {\n return result.map((item) => {\n return namespaceAssetStatusEventGroupDeserializer(item);\n });\n}\n\n/** Defines the asset status event group properties. */\nexport interface NamespaceAssetStatusEventGroup {\n /** The name of the event group. Must be unique within the status.eventGroups array. This name is used to correlate between the spec and status event group information. */\n readonly name: string;\n /** Array of event statuses that describe the status of each event in the event group. */\n readonly events?: NamespaceAssetStatusEvent[];\n}\n\nexport function namespaceAssetStatusEventGroupDeserializer(\n item: any,\n): NamespaceAssetStatusEventGroup {\n return {\n name: item[\"name\"],\n events: !item[\"events\"]\n ? item[\"events\"]\n : namespaceAssetStatusEventArrayDeserializer(item[\"events\"]),\n };\n}\n\nexport function namespaceAssetStatusEventArrayDeserializer(\n result: Array<NamespaceAssetStatusEvent>,\n): any[] {\n return result.map((item) => {\n return namespaceAssetStatusEventDeserializer(item);\n });\n}\n\n/** Defines the asset status event properties. */\nexport interface NamespaceAssetStatusEvent {\n /** The name of the event. Must be unique within the status.events array. This name is used to correlate between the spec and status event information. */\n readonly name: string;\n /** The message schema reference object. */\n readonly messageSchemaReference?: NamespaceMessageSchemaReference;\n /** Object to transfer and persist errors that originate from the edge. */\n readonly error?: StatusError;\n}\n\nexport function namespaceAssetStatusEventDeserializer(item: any): NamespaceAssetStatusEvent {\n return {\n name: item[\"name\"],\n messageSchemaReference: !item[\"messageSchemaReference\"]\n ? item[\"messageSchemaReference\"]\n : namespaceMessageSchemaReferenceDeserializer(item[\"messageSchemaReference\"]),\n error: !item[\"error\"] ? item[\"error\"] : statusErrorDeserializer(item[\"error\"]),\n };\n}\n\nexport function namespaceAssetStatusStreamArrayDeserializer(\n result: Array<NamespaceAssetStatusStream>,\n): any[] {\n return result.map((item) => {\n return namespaceAssetStatusStreamDeserializer(item);\n });\n}\n\n/** Defines the asset status stream properties. */\nexport interface NamespaceAssetStatusStream {\n /** The name of the stream. Must be unique within the status.streams array. This name is used to correlate between the spec and status event information. */\n readonly name: string;\n /** The message schema reference object. */\n readonly messageSchemaReference?: NamespaceMessageSchemaReference;\n /** Object to transfer and persist errors that originate from the edge. */\n readonly error?: StatusError;\n}\n\nexport function namespaceAssetStatusStreamDeserializer(item: any): NamespaceAssetStatusStream {\n return {\n name: item[\"name\"],\n messageSchemaReference: !item[\"messageSchemaReference\"]\n ? item[\"messageSchemaReference\"]\n : namespaceMessageSchemaReferenceDeserializer(item[\"messageSchemaReference\"]),\n error: !item[\"error\"] ? item[\"error\"] : statusErrorDeserializer(item[\"error\"]),\n };\n}\n\nexport function namespaceAssetStatusManagementGroupArrayDeserializer(\n result: Array<NamespaceAssetStatusManagementGroup>,\n): any[] {\n return result.map((item) => {\n return namespaceAssetStatusManagementGroupDeserializer(item);\n });\n}\n\n/** Defines the asset status management group properties. */\nexport interface NamespaceAssetStatusManagementGroup {\n /** The name of the management group. Must be unique within the status.managementGroups array. This name is used to correlate between the spec and status event information. */\n readonly name: string;\n /** Array of action statuses that describe the status of each action. */\n readonly actions?: NamespaceAssetStatusManagementAction[];\n}\n\nexport function namespaceAssetStatusManagementGroupDeserializer(\n item: any,\n): NamespaceAssetStatusManagementGroup {\n return {\n name: item[\"name\"],\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : namespaceAssetStatusManagementActionArrayDeserializer(item[\"actions\"]),\n };\n}\n\nexport function namespaceAssetStatusManagementActionArrayDeserializer(\n result: Array<NamespaceAssetStatusManagementAction>,\n): any[] {\n return result.map((item) => {\n return namespaceAssetStatusManagementActionDeserializer(item);\n });\n}\n\n/** Defines the asset status action properties. */\nexport interface NamespaceAssetStatusManagementAction {\n /** The name of the action. Must be unique within the status.actions array. This name is used to correlate between the spec and status event information. */\n readonly name: string;\n /** The request message schema reference object for the action. */\n readonly requestMessageSchemaReference?: NamespaceMessageSchemaReference;\n /** The response message schema reference object for the action. */\n readonly responseMessageSchemaReference?: NamespaceMessageSchemaReference;\n /** Object to transfer and persist errors that originate from the edge. */\n readonly error?: StatusError;\n}\n\nexport function namespaceAssetStatusManagementActionDeserializer(\n item: any,\n): NamespaceAssetStatusManagementAction {\n return {\n name: item[\"name\"],\n requestMessageSchemaReference: !item[\"requestMessageSchemaReference\"]\n ? item[\"requestMessageSchemaReference\"]\n : namespaceMessageSchemaReferenceDeserializer(item[\"requestMessageSchemaReference\"]),\n responseMessageSchemaReference: !item[\"responseMessageSchemaReference\"]\n ? item[\"responseMessageSchemaReference\"]\n : namespaceMessageSchemaReferenceDeserializer(item[\"responseMessageSchemaReference\"]),\n error: !item[\"error\"] ? item[\"error\"] : statusErrorDeserializer(item[\"error\"]),\n };\n}\n\n/** The type used for update operations of the NamespaceAsset. */\nexport interface NamespaceAssetUpdate {\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The resource-specific properties for this resource. */\n properties?: NamespaceAssetUpdateProperties;\n}\n\nexport function namespaceAssetUpdateSerializer(item: NamespaceAssetUpdate): any {\n return {\n tags: item[\"tags\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceAssetUpdatePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** The updatable properties of the NamespaceAsset. */\nexport interface NamespaceAssetUpdateProperties {\n /** Enabled/disabled status of the asset. */\n enabled?: boolean;\n /** Human-readable display name. */\n displayName?: string;\n /** Human-readable description of the asset. */\n description?: string;\n /** URIs or type definition IDs. */\n assetTypeRefs?: string[];\n /** Asset manufacturer. */\n manufacturer?: string;\n /** Asset manufacturer URI. */\n manufacturerUri?: string;\n /** Asset model. */\n model?: string;\n /** Asset product code. */\n productCode?: string;\n /** Asset hardware revision number. */\n hardwareRevision?: string;\n /** Asset software revision number. */\n softwareRevision?: string;\n /** Asset documentation reference. */\n documentationUri?: string;\n /** Asset serial number. */\n serialNumber?: string;\n /** A set of key-value pairs that contain custom attributes set by the customer. */\n attributes?: Record<string, any>;\n /** Stringified JSON that contains connector-specific default configuration for all datasets. Each dataset can have its own configuration that overrides the default settings here. */\n defaultDatasetsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all events. Each event can have its own configuration that overrides the default settings here. */\n defaultEventsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all streams. Each stream can have its own configuration that overrides the default settings here. */\n defaultStreamsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all management groups. Each management group can have its own configuration that overrides the default settings here. */\n defaultManagementGroupsConfiguration?: string;\n /** Default destinations for a dataset. */\n defaultDatasetsDestinations?: DatasetDestinationUnion[];\n /** Default destinations for an event. */\n defaultEventsDestinations?: EventDestinationUnion[];\n /** Default destinations for a stream. */\n defaultStreamsDestinations?: StreamDestinationUnion[];\n /** Array of datasets that are part of the asset. Each dataset describes the data points that make up the set. */\n datasets?: NamespaceDataset[];\n /** Array of event groups that are part of the asset. Each event group can have per-event group configuration. */\n eventGroups?: NamespaceEventGroup[];\n /** Array of streams that are part of the asset. Each stream can have a per-stream configuration. */\n streams?: NamespaceStream[];\n /** Array of management groups that are part of the asset. Each management group can have a per-group configuration. */\n managementGroups?: ManagementGroup[];\n}\n\nexport function namespaceAssetUpdatePropertiesSerializer(\n item: NamespaceAssetUpdateProperties,\n): any {\n return {\n enabled: item[\"enabled\"],\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n assetTypeRefs: !item[\"assetTypeRefs\"]\n ? item[\"assetTypeRefs\"]\n : item[\"assetTypeRefs\"].map((p: any) => {\n return p;\n }),\n manufacturer: item[\"manufacturer\"],\n manufacturerUri: item[\"manufacturerUri\"],\n model: item[\"model\"],\n productCode: item[\"productCode\"],\n hardwareRevision: item[\"hardwareRevision\"],\n softwareRevision: item[\"softwareRevision\"],\n documentationUri: item[\"documentationUri\"],\n serialNumber: item[\"serialNumber\"],\n attributes: item[\"attributes\"],\n defaultDatasetsConfiguration: item[\"defaultDatasetsConfiguration\"],\n defaultEventsConfiguration: item[\"defaultEventsConfiguration\"],\n defaultStreamsConfiguration: item[\"defaultStreamsConfiguration\"],\n defaultManagementGroupsConfiguration: item[\"defaultManagementGroupsConfiguration\"],\n defaultDatasetsDestinations: !item[\"defaultDatasetsDestinations\"]\n ? item[\"defaultDatasetsDestinations\"]\n : datasetDestinationUnionArraySerializer(item[\"defaultDatasetsDestinations\"]),\n defaultEventsDestinations: !item[\"defaultEventsDestinations\"]\n ? item[\"defaultEventsDestinations\"]\n : eventDestinationUnionArraySerializer(item[\"defaultEventsDestinations\"]),\n defaultStreamsDestinations: !item[\"defaultStreamsDestinations\"]\n ? item[\"defaultStreamsDestinations\"]\n : streamDestinationUnionArraySerializer(item[\"defaultStreamsDestinations\"]),\n datasets: !item[\"datasets\"]\n ? item[\"datasets\"]\n : namespaceDatasetArraySerializer(item[\"datasets\"]),\n eventGroups: !item[\"eventGroups\"]\n ? item[\"eventGroups\"]\n : namespaceEventGroupArraySerializer(item[\"eventGroups\"]),\n streams: !item[\"streams\"] ? item[\"streams\"] : namespaceStreamArraySerializer(item[\"streams\"]),\n managementGroups: !item[\"managementGroups\"]\n ? item[\"managementGroups\"]\n : managementGroupArraySerializer(item[\"managementGroups\"]),\n };\n}\n\n/** The response of a NamespaceAsset list operation. */\nexport interface _NamespaceAssetListResult {\n /** The NamespaceAsset items on this page */\n value: NamespaceAsset[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _namespaceAssetListResultDeserializer(item: any): _NamespaceAssetListResult {\n return {\n value: namespaceAssetArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function namespaceAssetArraySerializer(result: Array<NamespaceAsset>): any[] {\n return result.map((item) => {\n return namespaceAssetSerializer(item);\n });\n}\n\nexport function namespaceAssetArrayDeserializer(result: Array<NamespaceAsset>): any[] {\n return result.map((item) => {\n return namespaceAssetDeserializer(item);\n });\n}\n\n/** Device definition. */\nexport interface NamespaceDevice extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: NamespaceDeviceProperties;\n /** Resource Tag. */\n readonly etag?: string;\n /** The extended location. */\n extendedLocation?: ExtendedLocation;\n}\n\nexport function namespaceDeviceSerializer(item: NamespaceDevice): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceDevicePropertiesSerializer(item[\"properties\"]),\n extendedLocation: !item[\"extendedLocation\"]\n ? item[\"extendedLocation\"]\n : extendedLocationSerializer(item[\"extendedLocation\"]),\n };\n}\n\nexport function namespaceDeviceDeserializer(item: any): NamespaceDevice {\n return {\n tags: item[\"tags\"],\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceDevicePropertiesDeserializer(item[\"properties\"]),\n etag: item[\"etag\"],\n extendedLocation: !item[\"extendedLocation\"]\n ? item[\"extendedLocation\"]\n : extendedLocationDeserializer(item[\"extendedLocation\"]),\n };\n}\n\n/** Defines the device properties. */\nexport interface NamespaceDeviceProperties {\n /** A unique identifier for the device. */\n readonly uuid?: string;\n /** Indicates if the resource is enabled or not. */\n enabled?: boolean;\n /** The Device ID provided by the customer. */\n externalDeviceId?: string;\n /** Reference to a device. Populated only if the device had been created from discovery flow. Discovered device name must be provided. */\n discoveredDeviceRef?: string;\n /** Device manufacturer. */\n manufacturer?: string;\n /** Device model. */\n model?: string;\n /** Device operating system. */\n operatingSystem?: string;\n /** Device operating system version. */\n operatingSystemVersion?: string;\n /** Property bag containing the device's unassigned and assigned endpoints. */\n endpoints?: MessagingEndpoints;\n /** A set of key-value pairs that contain custom attributes set by the customer. */\n attributes?: Record<string, any>;\n /** Device status updates. */\n readonly status?: DeviceStatus;\n /** An integer that is incremented each time the resource is modified. */\n readonly version?: number;\n /** A timestamp (in UTC) that is updated each time the resource is modified. */\n readonly lastTransitionTime?: Date;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function namespaceDevicePropertiesSerializer(item: NamespaceDeviceProperties): any {\n return {\n enabled: item[\"enabled\"],\n externalDeviceId: item[\"externalDeviceId\"],\n discoveredDeviceRef: item[\"discoveredDeviceRef\"],\n manufacturer: item[\"manufacturer\"],\n model: item[\"model\"],\n operatingSystem: item[\"operatingSystem\"],\n operatingSystemVersion: item[\"operatingSystemVersion\"],\n endpoints: !item[\"endpoints\"]\n ? item[\"endpoints\"]\n : messagingEndpointsSerializer(item[\"endpoints\"]),\n attributes: item[\"attributes\"],\n };\n}\n\nexport function namespaceDevicePropertiesDeserializer(item: any): NamespaceDeviceProperties {\n return {\n uuid: item[\"uuid\"],\n enabled: item[\"enabled\"],\n externalDeviceId: item[\"externalDeviceId\"],\n discoveredDeviceRef: item[\"discoveredDeviceRef\"],\n manufacturer: item[\"manufacturer\"],\n model: item[\"model\"],\n operatingSystem: item[\"operatingSystem\"],\n operatingSystemVersion: item[\"operatingSystemVersion\"],\n endpoints: !item[\"endpoints\"]\n ? item[\"endpoints\"]\n : messagingEndpointsDeserializer(item[\"endpoints\"]),\n attributes: item[\"attributes\"],\n status: !item[\"status\"] ? item[\"status\"] : deviceStatusDeserializer(item[\"status\"]),\n version: item[\"version\"],\n lastTransitionTime: !item[\"lastTransitionTime\"]\n ? item[\"lastTransitionTime\"]\n : new Date(item[\"lastTransitionTime\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** Connection endpoint URL a device can use to connect to a service. */\nexport interface MessagingEndpoints {\n /** Set of endpoints to connect to the device. */\n inbound?: Record<string, InboundEndpoints>;\n /** Set of endpoints a device can connect to. */\n outbound?: OutboundEndpoints;\n}\n\nexport function messagingEndpointsSerializer(item: MessagingEndpoints): any {\n return {\n inbound: !item[\"inbound\"] ? item[\"inbound\"] : inboundEndpointsRecordSerializer(item[\"inbound\"]),\n outbound: !item[\"outbound\"] ? item[\"outbound\"] : outboundEndpointsSerializer(item[\"outbound\"]),\n };\n}\n\nexport function messagingEndpointsDeserializer(item: any): MessagingEndpoints {\n return {\n inbound: !item[\"inbound\"]\n ? item[\"inbound\"]\n : inboundEndpointsRecordDeserializer(item[\"inbound\"]),\n outbound: !item[\"outbound\"]\n ? item[\"outbound\"]\n : outboundEndpointsDeserializer(item[\"outbound\"]),\n };\n}\n\nexport function inboundEndpointsRecordSerializer(\n item: Record<string, InboundEndpoints>,\n): Record<string, any> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : inboundEndpointsSerializer(item[key]);\n });\n return result;\n}\n\nexport function inboundEndpointsRecordDeserializer(\n item: Record<string, any>,\n): Record<string, InboundEndpoints> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : inboundEndpointsDeserializer(item[key]);\n });\n return result;\n}\n\n/** An endpoint to connect to the device. */\nexport interface InboundEndpoints {\n /** Type of connection endpoint. */\n endpointType: string;\n /** The endpoint address & port. This can be either an IP address (e.g., 192.168.1.1) or a fully qualified domain name (FQDN, e.g., server.example.com). */\n address: string;\n /** Protocol version associated with the endpoint e.g. 1 or 2 for endpointType Microsoft.HTTP, and 3.5 or 5.0 for endpointType Microsoft.Mqtt etc. */\n version?: string;\n /** Defines the client authentication mechanism to the server. */\n authentication?: HostAuthentication;\n /** Defines server trust settings for the endpoint. */\n trustSettings?: TrustSettings;\n /** Stringified JSON that contains configuration to be used by the connector (e.g., OPC UA, ONVIF). */\n additionalConfiguration?: string;\n}\n\nexport function inboundEndpointsSerializer(item: InboundEndpoints): any {\n return {\n endpointType: item[\"endpointType\"],\n address: item[\"address\"],\n version: item[\"version\"],\n authentication: !item[\"authentication\"]\n ? item[\"authentication\"]\n : hostAuthenticationSerializer(item[\"authentication\"]),\n trustSettings: !item[\"trustSettings\"]\n ? item[\"trustSettings\"]\n : trustSettingsSerializer(item[\"trustSettings\"]),\n additionalConfiguration: item[\"additionalConfiguration\"],\n };\n}\n\nexport function inboundEndpointsDeserializer(item: any): InboundEndpoints {\n return {\n endpointType: item[\"endpointType\"],\n address: item[\"address\"],\n version: item[\"version\"],\n authentication: !item[\"authentication\"]\n ? item[\"authentication\"]\n : hostAuthenticationDeserializer(item[\"authentication\"]),\n trustSettings: !item[\"trustSettings\"]\n ? item[\"trustSettings\"]\n : trustSettingsDeserializer(item[\"trustSettings\"]),\n additionalConfiguration: item[\"additionalConfiguration\"],\n };\n}\n\n/** Definition of the client authentication mechanism to the host. */\nexport interface HostAuthentication {\n /** Defines the method to authenticate the user of the client at the server. */\n method: AuthenticationMethod;\n /** Defines the username and password references when UsernamePassword user authentication mode is selected. */\n usernamePasswordCredentials?: UsernamePasswordCredentials;\n /** Defines the certificate reference when Certificate user authentication mode is selected. */\n x509Credentials?: X509CertificateCredentials;\n}\n\nexport function hostAuthenticationSerializer(item: HostAuthentication): any {\n return {\n method: item[\"method\"],\n usernamePasswordCredentials: !item[\"usernamePasswordCredentials\"]\n ? item[\"usernamePasswordCredentials\"]\n : usernamePasswordCredentialsSerializer(item[\"usernamePasswordCredentials\"]),\n x509Credentials: !item[\"x509Credentials\"]\n ? item[\"x509Credentials\"]\n : x509CertificateCredentialsSerializer(item[\"x509Credentials\"]),\n };\n}\n\nexport function hostAuthenticationDeserializer(item: any): HostAuthentication {\n return {\n method: item[\"method\"],\n usernamePasswordCredentials: !item[\"usernamePasswordCredentials\"]\n ? item[\"usernamePasswordCredentials\"]\n : usernamePasswordCredentialsDeserializer(item[\"usernamePasswordCredentials\"]),\n x509Credentials: !item[\"x509Credentials\"]\n ? item[\"x509Credentials\"]\n : x509CertificateCredentialsDeserializer(item[\"x509Credentials\"]),\n };\n}\n\n/** The x509 certificate for authentication mode Certificate. */\nexport interface X509CertificateCredentials {\n /** The name of the secret containing the certificate and private key (e.g. stored as .der/.pem or .der/.pfx). */\n certificateSecretName: string;\n /** The name of the secret containing the certificate private key in PEM or DER format. */\n keySecretName?: string;\n /** The name of the secret containing the combined intermediate certificates in PEM format. */\n intermediateCertificatesSecretName?: string;\n}\n\nexport function x509CertificateCredentialsSerializer(item: X509CertificateCredentials): any {\n return {\n certificateSecretName: item[\"certificateSecretName\"],\n keySecretName: item[\"keySecretName\"],\n intermediateCertificatesSecretName: item[\"intermediateCertificatesSecretName\"],\n };\n}\n\nexport function x509CertificateCredentialsDeserializer(item: any): X509CertificateCredentials {\n return {\n certificateSecretName: item[\"certificateSecretName\"],\n keySecretName: item[\"keySecretName\"],\n intermediateCertificatesSecretName: item[\"intermediateCertificatesSecretName\"],\n };\n}\n\n/** Defines server trust settings for an endpoint. */\nexport interface TrustSettings {\n /** Defines a secret reference for certificates to trust. */\n trustList?: string;\n}\n\nexport function trustSettingsSerializer(item: TrustSettings): any {\n return { trustList: item[\"trustList\"] };\n}\n\nexport function trustSettingsDeserializer(item: any): TrustSettings {\n return {\n trustList: item[\"trustList\"],\n };\n}\n\n/** Property bag contains the device's outbound endpoints */\nexport interface OutboundEndpoints {\n /** Endpoints the device can connect to. */\n assigned: Record<string, DeviceMessagingEndpoint>;\n /** Set of most recently removed endpoints. */\n unassigned?: Record<string, DeviceMessagingEndpoint>;\n}\n\nexport function outboundEndpointsSerializer(item: OutboundEndpoints): any {\n return {\n assigned: deviceMessagingEndpointRecordSerializer(item[\"assigned\"]),\n unassigned: !item[\"unassigned\"]\n ? item[\"unassigned\"]\n : deviceMessagingEndpointRecordSerializer(item[\"unassigned\"]),\n };\n}\n\nexport function outboundEndpointsDeserializer(item: any): OutboundEndpoints {\n return {\n assigned: deviceMessagingEndpointRecordDeserializer(item[\"assigned\"]),\n unassigned: !item[\"unassigned\"]\n ? item[\"unassigned\"]\n : deviceMessagingEndpointRecordDeserializer(item[\"unassigned\"]),\n };\n}\n\nexport function deviceMessagingEndpointRecordSerializer(\n item: Record<string, DeviceMessagingEndpoint>,\n): Record<string, any> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : deviceMessagingEndpointSerializer(item[key]);\n });\n return result;\n}\n\nexport function deviceMessagingEndpointRecordDeserializer(\n item: Record<string, any>,\n): Record<string, DeviceMessagingEndpoint> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : deviceMessagingEndpointDeserializer(item[key]);\n });\n return result;\n}\n\n/** Device messaging endpoint model. */\nexport interface DeviceMessagingEndpoint {\n /** Type of connection used for the messaging endpoint. */\n endpointType?: string;\n /** The endpoint address to connect to. */\n address: string;\n}\n\nexport function deviceMessagingEndpointSerializer(item: DeviceMessagingEndpoint): any {\n return { endpointType: item[\"endpointType\"], address: item[\"address\"] };\n}\n\nexport function deviceMessagingEndpointDeserializer(item: any): DeviceMessagingEndpoint {\n return {\n endpointType: item[\"endpointType\"],\n address: item[\"address\"],\n };\n}\n\n/** Defines the device status properties. */\nexport interface DeviceStatus {\n /** Defines the device status config properties. */\n readonly config?: StatusConfig;\n /** Defines the device status for inbound/outbound endpoints. */\n readonly endpoints?: DeviceStatusEndpoints;\n}\n\nexport function deviceStatusDeserializer(item: any): DeviceStatus {\n return {\n config: !item[\"config\"] ? item[\"config\"] : statusConfigDeserializer(item[\"config\"]),\n endpoints: !item[\"endpoints\"]\n ? item[\"endpoints\"]\n : deviceStatusEndpointsDeserializer(item[\"endpoints\"]),\n };\n}\n\n/** Defines the device status for inbound/outbound endpoints. */\nexport interface DeviceStatusEndpoints {\n /** KeyValue pair representing status of inbound endpoints. */\n readonly inbound?: Record<string, DeviceStatusEndpoint>;\n}\n\nexport function deviceStatusEndpointsDeserializer(item: any): DeviceStatusEndpoints {\n return {\n inbound: !item[\"inbound\"]\n ? item[\"inbound\"]\n : deviceStatusEndpointRecordDeserializer(item[\"inbound\"]),\n };\n}\n\nexport function deviceStatusEndpointRecordDeserializer(\n item: Record<string, any>,\n): Record<string, DeviceStatusEndpoint> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : deviceStatusEndpointDeserializer(item[key]);\n });\n return result;\n}\n\n/** Defines the device status properties. */\nexport interface DeviceStatusEndpoint {\n /** Defines the error related to this endpoint. */\n readonly error?: StatusError;\n}\n\nexport function deviceStatusEndpointDeserializer(item: any): DeviceStatusEndpoint {\n return {\n error: !item[\"error\"] ? item[\"error\"] : statusErrorDeserializer(item[\"error\"]),\n };\n}\n\n/** The type used for update operations of the NamespaceDevice. */\nexport interface NamespaceDeviceUpdate {\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The resource-specific properties for this resource. */\n properties?: NamespaceDeviceUpdateProperties;\n}\n\nexport function namespaceDeviceUpdateSerializer(item: NamespaceDeviceUpdate): any {\n return {\n tags: item[\"tags\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceDeviceUpdatePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** The updatable properties of the NamespaceDevice. */\nexport interface NamespaceDeviceUpdateProperties {\n /** Device operating system version. */\n operatingSystemVersion?: string;\n /** Property bag containing the device's unassigned and assigned endpoints. */\n endpoints?: MessagingEndpoints;\n /** A set of key-value pairs that contain custom attributes set by the customer. */\n attributes?: Record<string, any>;\n /** Indicates if the resource and identity are enabled or not. A disabled device cannot authenticate with Microsoft Entra ID. */\n enabled?: boolean;\n}\n\nexport function namespaceDeviceUpdatePropertiesSerializer(\n item: NamespaceDeviceUpdateProperties,\n): any {\n return {\n operatingSystemVersion: item[\"operatingSystemVersion\"],\n endpoints: !item[\"endpoints\"]\n ? item[\"endpoints\"]\n : messagingEndpointsSerializer(item[\"endpoints\"]),\n attributes: item[\"attributes\"],\n enabled: item[\"enabled\"],\n };\n}\n\n/** The response of a NamespaceDevice list operation. */\nexport interface _NamespaceDeviceListResult {\n /** The NamespaceDevice items on this page */\n value: NamespaceDevice[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _namespaceDeviceListResultDeserializer(item: any): _NamespaceDeviceListResult {\n return {\n value: namespaceDeviceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function namespaceDeviceArraySerializer(result: Array<NamespaceDevice>): any[] {\n return result.map((item) => {\n return namespaceDeviceSerializer(item);\n });\n}\n\nexport function namespaceDeviceArrayDeserializer(result: Array<NamespaceDevice>): any[] {\n return result.map((item) => {\n return namespaceDeviceDeserializer(item);\n });\n}\n\n/** Discovered asset definition. */\nexport interface NamespaceDiscoveredAsset extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: NamespaceDiscoveredAssetProperties;\n /** The extended location. */\n extendedLocation: ExtendedLocation;\n}\n\nexport function namespaceDiscoveredAssetSerializer(item: NamespaceDiscoveredAsset): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceDiscoveredAssetPropertiesSerializer(item[\"properties\"]),\n extendedLocation: extendedLocationSerializer(item[\"extendedLocation\"]),\n };\n}\n\nexport function namespaceDiscoveredAssetDeserializer(item: any): NamespaceDiscoveredAsset {\n return {\n tags: item[\"tags\"],\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceDiscoveredAssetPropertiesDeserializer(item[\"properties\"]),\n extendedLocation: extendedLocationDeserializer(item[\"extendedLocation\"]),\n };\n}\n\n/** Defines the discovered asset properties. */\nexport interface NamespaceDiscoveredAssetProperties {\n /** Reference to the device that provides data for this asset. Must provide device name & endpoint on the device to use. */\n deviceRef: DeviceRef;\n /** Human-readable display name. */\n displayName?: string;\n /** URIs or type definition IDs. */\n assetTypeRefs?: string[];\n /** Human-readable description of the asset. */\n description?: string;\n /** Identifier used to detect changes in the asset. */\n discoveryId: string;\n /** Asset ID provided by the customer. */\n externalAssetId?: string;\n /** An integer that is incremented each time the resource is modified. */\n version: number;\n /** Asset manufacturer. */\n manufacturer?: string;\n /** Asset manufacturer URI. */\n manufacturerUri?: string;\n /** Asset model. */\n model?: string;\n /** Asset product code. */\n productCode?: string;\n /** Asset hardware revision number. */\n hardwareRevision?: string;\n /** Asset software revision number. */\n softwareRevision?: string;\n /** Asset documentation reference. */\n documentationUri?: string;\n /** Asset serial number. */\n serialNumber?: string;\n /** A set of key-value pairs that contain custom attributes. */\n attributes?: Record<string, any>;\n /** Stringified JSON that contains connector-specific default configuration for all datasets. Each dataset can have its own configuration that overrides the default settings here. */\n defaultDatasetsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all events. Each event can have its own configuration that overrides the default settings here. */\n defaultEventsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all streams. Each stream can have its own configuration that overrides the default settings here. */\n defaultStreamsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all management groups. Each management group can have its own configuration that overrides the default settings here. */\n defaultManagementGroupsConfiguration?: string;\n /** Default destinations for a dataset. */\n defaultDatasetsDestinations?: DatasetDestinationUnion[];\n /** Default destinations for an event. */\n defaultEventsDestinations?: EventDestinationUnion[];\n /** Default destinations for a stream. */\n defaultStreamsDestinations?: StreamDestinationUnion[];\n /** Array of datasets that are part of the asset. Each dataset spec describes the data points that make up the set. */\n datasets?: NamespaceDiscoveredDataset[];\n /** Array of event groups that are part of the asset. Each event group can have per-event group configuration. */\n eventGroups?: NamespaceDiscoveredEventGroup[];\n /** Array of streams that are part of the asset. Each stream can have a per-stream configuration. */\n streams?: NamespaceDiscoveredStream[];\n /** Array of management groups that are part of the asset. Each management group can have a per-group configuration. */\n managementGroups?: NamespaceDiscoveredManagementGroup[];\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function namespaceDiscoveredAssetPropertiesSerializer(\n item: NamespaceDiscoveredAssetProperties,\n): any {\n return {\n deviceRef: deviceRefSerializer(item[\"deviceRef\"]),\n displayName: item[\"displayName\"],\n assetTypeRefs: !item[\"assetTypeRefs\"]\n ? item[\"assetTypeRefs\"]\n : item[\"assetTypeRefs\"].map((p: any) => {\n return p;\n }),\n description: item[\"description\"],\n discoveryId: item[\"discoveryId\"],\n externalAssetId: item[\"externalAssetId\"],\n version: item[\"version\"],\n manufacturer: item[\"manufacturer\"],\n manufacturerUri: item[\"manufacturerUri\"],\n model: item[\"model\"],\n productCode: item[\"productCode\"],\n hardwareRevision: item[\"hardwareRevision\"],\n softwareRevision: item[\"softwareRevision\"],\n documentationUri: item[\"documentationUri\"],\n serialNumber: item[\"serialNumber\"],\n attributes: item[\"attributes\"],\n defaultDatasetsConfiguration: item[\"defaultDatasetsConfiguration\"],\n defaultEventsConfiguration: item[\"defaultEventsConfiguration\"],\n defaultStreamsConfiguration: item[\"defaultStreamsConfiguration\"],\n defaultManagementGroupsConfiguration: item[\"defaultManagementGroupsConfiguration\"],\n defaultDatasetsDestinations: !item[\"defaultDatasetsDestinations\"]\n ? item[\"defaultDatasetsDestinations\"]\n : datasetDestinationUnionArraySerializer(item[\"defaultDatasetsDestinations\"]),\n defaultEventsDestinations: !item[\"defaultEventsDestinations\"]\n ? item[\"defaultEventsDestinations\"]\n : eventDestinationUnionArraySerializer(item[\"defaultEventsDestinations\"]),\n defaultStreamsDestinations: !item[\"defaultStreamsDestinations\"]\n ? item[\"defaultStreamsDestinations\"]\n : streamDestinationUnionArraySerializer(item[\"defaultStreamsDestinations\"]),\n datasets: !item[\"datasets\"]\n ? item[\"datasets\"]\n : namespaceDiscoveredDatasetArraySerializer(item[\"datasets\"]),\n eventGroups: !item[\"eventGroups\"]\n ? item[\"eventGroups\"]\n : namespaceDiscoveredEventGroupArraySerializer(item[\"eventGroups\"]),\n streams: !item[\"streams\"]\n ? item[\"streams\"]\n : namespaceDiscoveredStreamArraySerializer(item[\"streams\"]),\n managementGroups: !item[\"managementGroups\"]\n ? item[\"managementGroups\"]\n : namespaceDiscoveredManagementGroupArraySerializer(item[\"managementGroups\"]),\n };\n}\n\nexport function namespaceDiscoveredAssetPropertiesDeserializer(\n item: any,\n): NamespaceDiscoveredAssetProperties {\n return {\n deviceRef: deviceRefDeserializer(item[\"deviceRef\"]),\n displayName: item[\"displayName\"],\n assetTypeRefs: !item[\"assetTypeRefs\"]\n ? item[\"assetTypeRefs\"]\n : item[\"assetTypeRefs\"].map((p: any) => {\n return p;\n }),\n description: item[\"description\"],\n discoveryId: item[\"discoveryId\"],\n externalAssetId: item[\"externalAssetId\"],\n version: item[\"version\"],\n manufacturer: item[\"manufacturer\"],\n manufacturerUri: item[\"manufacturerUri\"],\n model: item[\"model\"],\n productCode: item[\"productCode\"],\n hardwareRevision: item[\"hardwareRevision\"],\n softwareRevision: item[\"softwareRevision\"],\n documentationUri: item[\"documentationUri\"],\n serialNumber: item[\"serialNumber\"],\n attributes: item[\"attributes\"],\n defaultDatasetsConfiguration: item[\"defaultDatasetsConfiguration\"],\n defaultEventsConfiguration: item[\"defaultEventsConfiguration\"],\n defaultStreamsConfiguration: item[\"defaultStreamsConfiguration\"],\n defaultManagementGroupsConfiguration: item[\"defaultManagementGroupsConfiguration\"],\n defaultDatasetsDestinations: !item[\"defaultDatasetsDestinations\"]\n ? item[\"defaultDatasetsDestinations\"]\n : datasetDestinationUnionArrayDeserializer(item[\"defaultDatasetsDestinations\"]),\n defaultEventsDestinations: !item[\"defaultEventsDestinations\"]\n ? item[\"defaultEventsDestinations\"]\n : eventDestinationUnionArrayDeserializer(item[\"defaultEventsDestinations\"]),\n defaultStreamsDestinations: !item[\"defaultStreamsDestinations\"]\n ? item[\"defaultStreamsDestinations\"]\n : streamDestinationUnionArrayDeserializer(item[\"defaultStreamsDestinations\"]),\n datasets: !item[\"datasets\"]\n ? item[\"datasets\"]\n : namespaceDiscoveredDatasetArrayDeserializer(item[\"datasets\"]),\n eventGroups: !item[\"eventGroups\"]\n ? item[\"eventGroups\"]\n : namespaceDiscoveredEventGroupArrayDeserializer(item[\"eventGroups\"]),\n streams: !item[\"streams\"]\n ? item[\"streams\"]\n : namespaceDiscoveredStreamArrayDeserializer(item[\"streams\"]),\n managementGroups: !item[\"managementGroups\"]\n ? item[\"managementGroups\"]\n : namespaceDiscoveredManagementGroupArrayDeserializer(item[\"managementGroups\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\nexport function namespaceDiscoveredDatasetArraySerializer(\n result: Array<NamespaceDiscoveredDataset>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredDatasetSerializer(item);\n });\n}\n\nexport function namespaceDiscoveredDatasetArrayDeserializer(\n result: Array<NamespaceDiscoveredDataset>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredDatasetDeserializer(item);\n });\n}\n\n/** Defines the dataset properties. */\nexport interface NamespaceDiscoveredDataset {\n /** Name of the dataset. */\n name: string;\n /** Reference to a data source for a given dataset. */\n dataSource?: string;\n /** URI or type definition ID. */\n typeRef?: string;\n /** Stringified JSON that contains connector-specific properties that describes configuration for the specific dataset. */\n datasetConfiguration?: string;\n /** Destinations for a dataset. */\n destinations?: DatasetDestinationUnion[];\n /** Array of data points that are part of the dataset. Each data point can have per-data point configuration. */\n dataPoints?: NamespaceDiscoveredDatasetDataPoint[];\n /** Timestamp (in UTC) indicating when the dataset was added or modified. */\n lastUpdatedOn?: Date;\n}\n\nexport function namespaceDiscoveredDatasetSerializer(item: NamespaceDiscoveredDataset): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n typeRef: item[\"typeRef\"],\n datasetConfiguration: item[\"datasetConfiguration\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : datasetDestinationUnionArraySerializer(item[\"destinations\"]),\n dataPoints: !item[\"dataPoints\"]\n ? item[\"dataPoints\"]\n : namespaceDiscoveredDatasetDataPointArraySerializer(item[\"dataPoints\"]),\n lastUpdatedOn: !item[\"lastUpdatedOn\"]\n ? item[\"lastUpdatedOn\"]\n : item[\"lastUpdatedOn\"].toISOString(),\n };\n}\n\nexport function namespaceDiscoveredDatasetDeserializer(item: any): NamespaceDiscoveredDataset {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n typeRef: item[\"typeRef\"],\n datasetConfiguration: item[\"datasetConfiguration\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : datasetDestinationUnionArrayDeserializer(item[\"destinations\"]),\n dataPoints: !item[\"dataPoints\"]\n ? item[\"dataPoints\"]\n : namespaceDiscoveredDatasetDataPointArrayDeserializer(item[\"dataPoints\"]),\n lastUpdatedOn: !item[\"lastUpdatedOn\"] ? item[\"lastUpdatedOn\"] : new Date(item[\"lastUpdatedOn\"]),\n };\n}\n\nexport function namespaceDiscoveredDatasetDataPointArraySerializer(\n result: Array<NamespaceDiscoveredDatasetDataPoint>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredDatasetDataPointSerializer(item);\n });\n}\n\nexport function namespaceDiscoveredDatasetDataPointArrayDeserializer(\n result: Array<NamespaceDiscoveredDatasetDataPoint>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredDatasetDataPointDeserializer(item);\n });\n}\n\n/** Defines the discovered dataset data point properties. */\nexport interface NamespaceDiscoveredDatasetDataPoint {\n /** The name of the data point. */\n name: string;\n /** The address of the source of the data in the asset (e.g. URL) so that a client can access the data source on the asset. */\n dataSource: string;\n /** Stringified JSON that contains connector-specific configuration for the data point. For OPC UA, this could include configuration like, publishingInterval, samplingInterval, and queueSize. */\n dataPointConfiguration?: string;\n /** UTC timestamp indicating when the data point was added or modified. */\n lastUpdatedOn?: Date;\n /** URI or type definition ID. */\n typeRef?: string;\n}\n\nexport function namespaceDiscoveredDatasetDataPointSerializer(\n item: NamespaceDiscoveredDatasetDataPoint,\n): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n dataPointConfiguration: item[\"dataPointConfiguration\"],\n lastUpdatedOn: !item[\"lastUpdatedOn\"]\n ? item[\"lastUpdatedOn\"]\n : item[\"lastUpdatedOn\"].toISOString(),\n typeRef: item[\"typeRef\"],\n };\n}\n\nexport function namespaceDiscoveredDatasetDataPointDeserializer(\n item: any,\n): NamespaceDiscoveredDatasetDataPoint {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n dataPointConfiguration: item[\"dataPointConfiguration\"],\n lastUpdatedOn: !item[\"lastUpdatedOn\"] ? item[\"lastUpdatedOn\"] : new Date(item[\"lastUpdatedOn\"]),\n typeRef: item[\"typeRef\"],\n };\n}\n\nexport function namespaceDiscoveredEventGroupArraySerializer(\n result: Array<NamespaceDiscoveredEventGroup>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredEventGroupSerializer(item);\n });\n}\n\nexport function namespaceDiscoveredEventGroupArrayDeserializer(\n result: Array<NamespaceDiscoveredEventGroup>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredEventGroupDeserializer(item);\n });\n}\n\n/** Defines the discovered event group properties. */\nexport interface NamespaceDiscoveredEventGroup {\n /** The name of the event group. */\n name: string;\n /** The address of the notifier of the event group in the asset (e.g. URL) so that a client can access the event group on the asset. */\n dataSource?: string;\n /** Stringified JSON that contains connector-specific configuration for the event group. For OPC UA, this could include configuration like, publishingInterval, samplingInterval, and queueSize. */\n eventGroupConfiguration?: string;\n /** Destinations for events. Default destinations when destinations is not defined at the event level. */\n defaultDestinations?: EventDestinationUnion[];\n /** URI or type definition ID. */\n typeRef?: string;\n /** Array of events that are part of the event group. */\n events?: NamespaceDiscoveredEvent[];\n}\n\nexport function namespaceDiscoveredEventGroupSerializer(item: NamespaceDiscoveredEventGroup): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n eventGroupConfiguration: item[\"eventGroupConfiguration\"],\n defaultDestinations: !item[\"defaultDestinations\"]\n ? item[\"defaultDestinations\"]\n : eventDestinationUnionArraySerializer(item[\"defaultDestinations\"]),\n typeRef: item[\"typeRef\"],\n events: !item[\"events\"]\n ? item[\"events\"]\n : namespaceDiscoveredEventArraySerializer(item[\"events\"]),\n };\n}\n\nexport function namespaceDiscoveredEventGroupDeserializer(\n item: any,\n): NamespaceDiscoveredEventGroup {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n eventGroupConfiguration: item[\"eventGroupConfiguration\"],\n defaultDestinations: !item[\"defaultDestinations\"]\n ? item[\"defaultDestinations\"]\n : eventDestinationUnionArrayDeserializer(item[\"defaultDestinations\"]),\n typeRef: item[\"typeRef\"],\n events: !item[\"events\"]\n ? item[\"events\"]\n : namespaceDiscoveredEventArrayDeserializer(item[\"events\"]),\n };\n}\n\nexport function namespaceDiscoveredEventArraySerializer(\n result: Array<NamespaceDiscoveredEvent>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredEventSerializer(item);\n });\n}\n\nexport function namespaceDiscoveredEventArrayDeserializer(\n result: Array<NamespaceDiscoveredEvent>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredEventDeserializer(item);\n });\n}\n\n/** Defines the event properties. */\nexport interface NamespaceDiscoveredEvent {\n /** The name of the event. */\n name: string;\n /** Reference to a data source for a given event. */\n dataSource?: string;\n /** Stringified JSON that contains connector-specific configuration for the event. For OPC UA, this could include configuration like, publishingInterval, samplingInterval, and queueSize. */\n eventConfiguration?: string;\n /** Destinations for an event. */\n destinations?: EventDestinationUnion[];\n /** URI or type definition ID. */\n typeRef?: string;\n /** UTC timestamp indicating when the event was added or modified. */\n lastUpdatedOn?: Date;\n}\n\nexport function namespaceDiscoveredEventSerializer(item: NamespaceDiscoveredEvent): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n eventConfiguration: item[\"eventConfiguration\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : eventDestinationUnionArraySerializer(item[\"destinations\"]),\n typeRef: item[\"typeRef\"],\n lastUpdatedOn: !item[\"lastUpdatedOn\"]\n ? item[\"lastUpdatedOn\"]\n : item[\"lastUpdatedOn\"].toISOString(),\n };\n}\n\nexport function namespaceDiscoveredEventDeserializer(item: any): NamespaceDiscoveredEvent {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n eventConfiguration: item[\"eventConfiguration\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : eventDestinationUnionArrayDeserializer(item[\"destinations\"]),\n typeRef: item[\"typeRef\"],\n lastUpdatedOn: !item[\"lastUpdatedOn\"] ? item[\"lastUpdatedOn\"] : new Date(item[\"lastUpdatedOn\"]),\n };\n}\n\nexport function namespaceDiscoveredStreamArraySerializer(\n result: Array<NamespaceDiscoveredStream>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredStreamSerializer(item);\n });\n}\n\nexport function namespaceDiscoveredStreamArrayDeserializer(\n result: Array<NamespaceDiscoveredStream>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredStreamDeserializer(item);\n });\n}\n\n/** Defines the stream properties. */\nexport interface NamespaceDiscoveredStream {\n /** Name of the stream definition. */\n name: string;\n /** Stringified JSON that contains connector-specific configuration for the specific stream. */\n streamConfiguration?: string;\n /** URI or type definition ID. */\n typeRef?: string;\n /** Destinations for a stream. */\n destinations?: StreamDestinationUnion[];\n /** Timestamp (in UTC) indicating when the stream was added or modified. */\n lastUpdatedOn?: Date;\n}\n\nexport function namespaceDiscoveredStreamSerializer(item: NamespaceDiscoveredStream): any {\n return {\n name: item[\"name\"],\n streamConfiguration: item[\"streamConfiguration\"],\n typeRef: item[\"typeRef\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : streamDestinationUnionArraySerializer(item[\"destinations\"]),\n lastUpdatedOn: !item[\"lastUpdatedOn\"]\n ? item[\"lastUpdatedOn\"]\n : item[\"lastUpdatedOn\"].toISOString(),\n };\n}\n\nexport function namespaceDiscoveredStreamDeserializer(item: any): NamespaceDiscoveredStream {\n return {\n name: item[\"name\"],\n streamConfiguration: item[\"streamConfiguration\"],\n typeRef: item[\"typeRef\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : streamDestinationUnionArrayDeserializer(item[\"destinations\"]),\n lastUpdatedOn: !item[\"lastUpdatedOn\"] ? item[\"lastUpdatedOn\"] : new Date(item[\"lastUpdatedOn\"]),\n };\n}\n\nexport function namespaceDiscoveredManagementGroupArraySerializer(\n result: Array<NamespaceDiscoveredManagementGroup>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredManagementGroupSerializer(item);\n });\n}\n\nexport function namespaceDiscoveredManagementGroupArrayDeserializer(\n result: Array<NamespaceDiscoveredManagementGroup>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredManagementGroupDeserializer(item);\n });\n}\n\n/** Defines the management group properties. */\nexport interface NamespaceDiscoveredManagementGroup {\n /** Name of the management group. */\n name: string;\n /** Stringified JSON that contains connector-specific configuration for the management group. */\n managementGroupConfiguration?: string;\n /** URI or type definition ID. */\n typeRef?: string;\n /** Reference to a data source for a given management group. */\n dataSource?: string;\n /** Default MQTT topic path on which a client will receive the request for all actions that are part of the management group. */\n defaultTopic?: string;\n /** Default response timeout for all actions that are part of the management group. */\n defaultTimeoutInSeconds?: number;\n /** Array of actions that are part of the management group. Each action can have an individual configuration. */\n actions?: NamespaceDiscoveredManagementAction[];\n /** Timestamp (in UTC) indicating when the management group was added or modified. */\n lastUpdatedOn?: Date;\n}\n\nexport function namespaceDiscoveredManagementGroupSerializer(\n item: NamespaceDiscoveredManagementGroup,\n): any {\n return {\n name: item[\"name\"],\n managementGroupConfiguration: item[\"managementGroupConfiguration\"],\n typeRef: item[\"typeRef\"],\n dataSource: item[\"dataSource\"],\n defaultTopic: item[\"defaultTopic\"],\n defaultTimeoutInSeconds: item[\"defaultTimeoutInSeconds\"],\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : namespaceDiscoveredManagementActionArraySerializer(item[\"actions\"]),\n lastUpdatedOn: !item[\"lastUpdatedOn\"]\n ? item[\"lastUpdatedOn\"]\n : item[\"lastUpdatedOn\"].toISOString(),\n };\n}\n\nexport function namespaceDiscoveredManagementGroupDeserializer(\n item: any,\n): NamespaceDiscoveredManagementGroup {\n return {\n name: item[\"name\"],\n managementGroupConfiguration: item[\"managementGroupConfiguration\"],\n typeRef: item[\"typeRef\"],\n dataSource: item[\"dataSource\"],\n defaultTopic: item[\"defaultTopic\"],\n defaultTimeoutInSeconds: item[\"defaultTimeoutInSeconds\"],\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : namespaceDiscoveredManagementActionArrayDeserializer(item[\"actions\"]),\n lastUpdatedOn: !item[\"lastUpdatedOn\"] ? item[\"lastUpdatedOn\"] : new Date(item[\"lastUpdatedOn\"]),\n };\n}\n\nexport function namespaceDiscoveredManagementActionArraySerializer(\n result: Array<NamespaceDiscoveredManagementAction>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredManagementActionSerializer(item);\n });\n}\n\nexport function namespaceDiscoveredManagementActionArrayDeserializer(\n result: Array<NamespaceDiscoveredManagementAction>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredManagementActionDeserializer(item);\n });\n}\n\n/** Defines the action properties. */\nexport interface NamespaceDiscoveredManagementAction {\n /** Name of the action. */\n name: string;\n /** Stringified JSON that contains connector-specific configuration for the action. */\n actionConfiguration?: string;\n /** The target URI on which a client can invoke the specific action. */\n targetUri: string;\n /** URI or type definition ID. */\n typeRef?: string;\n /** The MQTT topic path on which a client will receive the request for the action. */\n topic?: string;\n /** The type of the action. */\n actionType?: NamespaceDiscoveredManagementActionType;\n /** Response timeout for the action. */\n timeoutInSeconds?: number;\n /** Timestamp (in UTC) indicating when the management action was added or modified. */\n lastUpdatedOn?: Date;\n}\n\nexport function namespaceDiscoveredManagementActionSerializer(\n item: NamespaceDiscoveredManagementAction,\n): any {\n return {\n name: item[\"name\"],\n actionConfiguration: item[\"actionConfiguration\"],\n targetUri: item[\"targetUri\"],\n typeRef: item[\"typeRef\"],\n topic: item[\"topic\"],\n actionType: item[\"actionType\"],\n timeoutInSeconds: item[\"timeoutInSeconds\"],\n lastUpdatedOn: !item[\"lastUpdatedOn\"]\n ? item[\"lastUpdatedOn\"]\n : item[\"lastUpdatedOn\"].toISOString(),\n };\n}\n\nexport function namespaceDiscoveredManagementActionDeserializer(\n item: any,\n): NamespaceDiscoveredManagementAction {\n return {\n name: item[\"name\"],\n actionConfiguration: item[\"actionConfiguration\"],\n targetUri: item[\"targetUri\"],\n typeRef: item[\"typeRef\"],\n topic: item[\"topic\"],\n actionType: item[\"actionType\"],\n timeoutInSeconds: item[\"timeoutInSeconds\"],\n lastUpdatedOn: !item[\"lastUpdatedOn\"] ? item[\"lastUpdatedOn\"] : new Date(item[\"lastUpdatedOn\"]),\n };\n}\n\n/** Defines the ManagementAction's type. */\nexport enum KnownNamespaceDiscoveredManagementActionType {\n /** Call action type. */\n Call = \"Call\",\n /** Read action type. */\n Read = \"Read\",\n /** Write action type. */\n Write = \"Write\",\n}\n\n/**\n * Defines the ManagementAction's type. \\\n * {@link KnownNamespaceDiscoveredManagementActionType} can be used interchangeably with NamespaceDiscoveredManagementActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Call**: Call action type. \\\n * **Read**: Read action type. \\\n * **Write**: Write action type.\n */\nexport type NamespaceDiscoveredManagementActionType = string;\n\n/** The type used for update operations of the NamespaceDiscoveredAsset. */\nexport interface NamespaceDiscoveredAssetUpdate {\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The resource-specific properties for this resource. */\n properties?: NamespaceDiscoveredAssetUpdateProperties;\n}\n\nexport function namespaceDiscoveredAssetUpdateSerializer(\n item: NamespaceDiscoveredAssetUpdate,\n): any {\n return {\n tags: item[\"tags\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceDiscoveredAssetUpdatePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** The updatable properties of the NamespaceDiscoveredAsset. */\nexport interface NamespaceDiscoveredAssetUpdateProperties {\n /** Reference to the device that provides data for this asset. Must provide device name & endpoint on the device to use. */\n deviceRef?: DeviceRef;\n /** Human-readable display name. */\n displayName?: string;\n /** URIs or type definition IDs. */\n assetTypeRefs?: string[];\n /** Human-readable description of the asset. */\n description?: string;\n /** Identifier used to detect changes in the asset. */\n discoveryId?: string;\n /** An integer that is incremented each time the resource is modified. */\n version?: number;\n /** Asset manufacturer. */\n manufacturer?: string;\n /** Asset manufacturer URI. */\n manufacturerUri?: string;\n /** Asset model. */\n model?: string;\n /** Asset product code. */\n productCode?: string;\n /** Asset hardware revision number. */\n hardwareRevision?: string;\n /** Asset software revision number. */\n softwareRevision?: string;\n /** Asset documentation reference. */\n documentationUri?: string;\n /** Asset serial number. */\n serialNumber?: string;\n /** A set of key-value pairs that contain custom attributes. */\n attributes?: Record<string, any>;\n /** Stringified JSON that contains connector-specific default configuration for all datasets. Each dataset can have its own configuration that overrides the default settings here. */\n defaultDatasetsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all events. Each event can have its own configuration that overrides the default settings here. */\n defaultEventsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all streams. Each stream can have its own configuration that overrides the default settings here. */\n defaultStreamsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all management groups. Each management group can have its own configuration that overrides the default settings here. */\n defaultManagementGroupsConfiguration?: string;\n /** Default destinations for a dataset. */\n defaultDatasetsDestinations?: DatasetDestinationUnion[];\n /** Default destinations for an event. */\n defaultEventsDestinations?: EventDestinationUnion[];\n /** Default destinations for a stream. */\n defaultStreamsDestinations?: StreamDestinationUnion[];\n /** Array of datasets that are part of the asset. Each dataset spec describes the data points that make up the set. */\n datasets?: NamespaceDiscoveredDataset[];\n /** Array of event groups that are part of the asset. Each event group can have per-event group configuration. */\n eventGroups?: NamespaceDiscoveredEventGroup[];\n /** Array of streams that are part of the asset. Each stream can have a per-stream configuration. */\n streams?: NamespaceDiscoveredStream[];\n /** Array of management groups that are part of the asset. Each management group can have a per-group configuration. */\n managementGroups?: NamespaceDiscoveredManagementGroup[];\n}\n\nexport function namespaceDiscoveredAssetUpdatePropertiesSerializer(\n item: NamespaceDiscoveredAssetUpdateProperties,\n): any {\n return {\n deviceRef: !item[\"deviceRef\"] ? item[\"deviceRef\"] : deviceRefSerializer(item[\"deviceRef\"]),\n displayName: item[\"displayName\"],\n assetTypeRefs: !item[\"assetTypeRefs\"]\n ? item[\"assetTypeRefs\"]\n : item[\"assetTypeRefs\"].map((p: any) => {\n return p;\n }),\n description: item[\"description\"],\n discoveryId: item[\"discoveryId\"],\n version: item[\"version\"],\n manufacturer: item[\"manufacturer\"],\n manufacturerUri: item[\"manufacturerUri\"],\n model: item[\"model\"],\n productCode: item[\"productCode\"],\n hardwareRevision: item[\"hardwareRevision\"],\n softwareRevision: item[\"softwareRevision\"],\n documentationUri: item[\"documentationUri\"],\n serialNumber: item[\"serialNumber\"],\n attributes: item[\"attributes\"],\n defaultDatasetsConfiguration: item[\"defaultDatasetsConfiguration\"],\n defaultEventsConfiguration: item[\"defaultEventsConfiguration\"],\n defaultStreamsConfiguration: item[\"defaultStreamsConfiguration\"],\n defaultManagementGroupsConfiguration: item[\"defaultManagementGroupsConfiguration\"],\n defaultDatasetsDestinations: !item[\"defaultDatasetsDestinations\"]\n ? item[\"defaultDatasetsDestinations\"]\n : datasetDestinationUnionArraySerializer(item[\"defaultDatasetsDestinations\"]),\n defaultEventsDestinations: !item[\"defaultEventsDestinations\"]\n ? item[\"defaultEventsDestinations\"]\n : eventDestinationUnionArraySerializer(item[\"defaultEventsDestinations\"]),\n defaultStreamsDestinations: !item[\"defaultStreamsDestinations\"]\n ? item[\"defaultStreamsDestinations\"]\n : streamDestinationUnionArraySerializer(item[\"defaultStreamsDestinations\"]),\n datasets: !item[\"datasets\"]\n ? item[\"datasets\"]\n : namespaceDiscoveredDatasetArraySerializer(item[\"datasets\"]),\n eventGroups: !item[\"eventGroups\"]\n ? item[\"eventGroups\"]\n : namespaceDiscoveredEventGroupArraySerializer(item[\"eventGroups\"]),\n streams: !item[\"streams\"]\n ? item[\"streams\"]\n : namespaceDiscoveredStreamArraySerializer(item[\"streams\"]),\n managementGroups: !item[\"managementGroups\"]\n ? item[\"managementGroups\"]\n : namespaceDiscoveredManagementGroupArraySerializer(item[\"managementGroups\"]),\n };\n}\n\n/** The response of a NamespaceDiscoveredAsset list operation. */\nexport interface _NamespaceDiscoveredAssetListResult {\n /** The NamespaceDiscoveredAsset items on this page */\n value: NamespaceDiscoveredAsset[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _namespaceDiscoveredAssetListResultDeserializer(\n item: any,\n): _NamespaceDiscoveredAssetListResult {\n return {\n value: namespaceDiscoveredAssetArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function namespaceDiscoveredAssetArraySerializer(\n result: Array<NamespaceDiscoveredAsset>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredAssetSerializer(item);\n });\n}\n\nexport function namespaceDiscoveredAssetArrayDeserializer(\n result: Array<NamespaceDiscoveredAsset>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredAssetDeserializer(item);\n });\n}\n\n/** Discovered device definition. */\nexport interface NamespaceDiscoveredDevice extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: NamespaceDiscoveredDeviceProperties;\n /** The extended location. */\n extendedLocation: ExtendedLocation;\n}\n\nexport function namespaceDiscoveredDeviceSerializer(item: NamespaceDiscoveredDevice): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceDiscoveredDevicePropertiesSerializer(item[\"properties\"]),\n extendedLocation: extendedLocationSerializer(item[\"extendedLocation\"]),\n };\n}\n\nexport function namespaceDiscoveredDeviceDeserializer(item: any): NamespaceDiscoveredDevice {\n return {\n tags: item[\"tags\"],\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceDiscoveredDevicePropertiesDeserializer(item[\"properties\"]),\n extendedLocation: extendedLocationDeserializer(item[\"extendedLocation\"]),\n };\n}\n\n/** Defines the discovered device properties. */\nexport interface NamespaceDiscoveredDeviceProperties {\n /** A device ID that represents the device in a system external to Azure. Unique within scope of an Azure tenant. */\n externalDeviceId?: string;\n /** Endpoints for discovered devices. */\n endpoints?: DiscoveredMessagingEndpoints;\n /** Device manufacturer. */\n manufacturer?: string;\n /** Device model. */\n model?: string;\n /** Device operating system name. */\n operatingSystem?: string;\n /** Device operating system version. */\n operatingSystemVersion?: string;\n /** A set of key-value pairs that contain custom attributes. */\n attributes?: Record<string, any>;\n /** Identifier used to detect changes in the discovered device. */\n discoveryId: string;\n /** An integer that is incremented each time the resource is modified. */\n version: number;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function namespaceDiscoveredDevicePropertiesSerializer(\n item: NamespaceDiscoveredDeviceProperties,\n): any {\n return {\n externalDeviceId: item[\"externalDeviceId\"],\n endpoints: !item[\"endpoints\"]\n ? item[\"endpoints\"]\n : discoveredMessagingEndpointsSerializer(item[\"endpoints\"]),\n manufacturer: item[\"manufacturer\"],\n model: item[\"model\"],\n operatingSystem: item[\"operatingSystem\"],\n operatingSystemVersion: item[\"operatingSystemVersion\"],\n attributes: item[\"attributes\"],\n discoveryId: item[\"discoveryId\"],\n version: item[\"version\"],\n };\n}\n\nexport function namespaceDiscoveredDevicePropertiesDeserializer(\n item: any,\n): NamespaceDiscoveredDeviceProperties {\n return {\n externalDeviceId: item[\"externalDeviceId\"],\n endpoints: !item[\"endpoints\"]\n ? item[\"endpoints\"]\n : discoveredMessagingEndpointsDeserializer(item[\"endpoints\"]),\n manufacturer: item[\"manufacturer\"],\n model: item[\"model\"],\n operatingSystem: item[\"operatingSystem\"],\n operatingSystemVersion: item[\"operatingSystemVersion\"],\n attributes: item[\"attributes\"],\n discoveryId: item[\"discoveryId\"],\n version: item[\"version\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** Connection endpoint URL a device can use to connect to a service. */\nexport interface DiscoveredMessagingEndpoints {\n /** Set of endpoints to connect to the device. */\n inbound?: Record<string, DiscoveredInboundEndpoints>;\n /** Set of endpoints a device can connect to. */\n outbound?: DiscoveredOutboundEndpoints;\n}\n\nexport function discoveredMessagingEndpointsSerializer(item: DiscoveredMessagingEndpoints): any {\n return {\n inbound: !item[\"inbound\"]\n ? item[\"inbound\"]\n : discoveredInboundEndpointsRecordSerializer(item[\"inbound\"]),\n outbound: !item[\"outbound\"]\n ? item[\"outbound\"]\n : discoveredOutboundEndpointsSerializer(item[\"outbound\"]),\n };\n}\n\nexport function discoveredMessagingEndpointsDeserializer(item: any): DiscoveredMessagingEndpoints {\n return {\n inbound: !item[\"inbound\"]\n ? item[\"inbound\"]\n : discoveredInboundEndpointsRecordDeserializer(item[\"inbound\"]),\n outbound: !item[\"outbound\"]\n ? item[\"outbound\"]\n : discoveredOutboundEndpointsDeserializer(item[\"outbound\"]),\n };\n}\n\nexport function discoveredInboundEndpointsRecordSerializer(\n item: Record<string, DiscoveredInboundEndpoints>,\n): Record<string, any> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : discoveredInboundEndpointsSerializer(item[key]);\n });\n return result;\n}\n\nexport function discoveredInboundEndpointsRecordDeserializer(\n item: Record<string, any>,\n): Record<string, DiscoveredInboundEndpoints> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : discoveredInboundEndpointsDeserializer(item[key]);\n });\n return result;\n}\n\n/** An endpoint to connect to the device. */\nexport interface DiscoveredInboundEndpoints {\n /** Type of connection endpoint. */\n endpointType: string;\n /** The endpoint address & port. This can be either an IP address (e.g., 192.168.1.1) or a fully qualified domain name (FQDN, e.g., server.example.com). */\n address: string;\n /** Protocol version associated with the endpoint e.g. 1 or 2 for endpointType Microsoft.HTTP, and 3.5 or 5.0 for endpointType Microsoft.Mqtt etc. */\n version?: string;\n /** List of supported authentication methods supported by device for Inbound connections. */\n supportedAuthenticationMethods?: AuthenticationMethod[];\n /** Stringified JSON that contains configuration to be used by the connector (e.g., OPC UA, ONVIF). */\n additionalConfiguration?: string;\n /** The timestamp (in UTC) when the endpoint was discovered. */\n lastUpdatedOn?: Date;\n}\n\nexport function discoveredInboundEndpointsSerializer(item: DiscoveredInboundEndpoints): any {\n return {\n endpointType: item[\"endpointType\"],\n address: item[\"address\"],\n version: item[\"version\"],\n supportedAuthenticationMethods: !item[\"supportedAuthenticationMethods\"]\n ? item[\"supportedAuthenticationMethods\"]\n : item[\"supportedAuthenticationMethods\"].map((p: any) => {\n return p;\n }),\n additionalConfiguration: item[\"additionalConfiguration\"],\n lastUpdatedOn: !item[\"lastUpdatedOn\"]\n ? item[\"lastUpdatedOn\"]\n : item[\"lastUpdatedOn\"].toISOString(),\n };\n}\n\nexport function discoveredInboundEndpointsDeserializer(item: any): DiscoveredInboundEndpoints {\n return {\n endpointType: item[\"endpointType\"],\n address: item[\"address\"],\n version: item[\"version\"],\n supportedAuthenticationMethods: !item[\"supportedAuthenticationMethods\"]\n ? item[\"supportedAuthenticationMethods\"]\n : item[\"supportedAuthenticationMethods\"].map((p: any) => {\n return p;\n }),\n additionalConfiguration: item[\"additionalConfiguration\"],\n lastUpdatedOn: !item[\"lastUpdatedOn\"] ? item[\"lastUpdatedOn\"] : new Date(item[\"lastUpdatedOn\"]),\n };\n}\n\n/** Property bag contains the device's outbound endpoints */\nexport interface DiscoveredOutboundEndpoints {\n /** Endpoints the device can connect to. */\n assigned: Record<string, DeviceMessagingEndpoint>;\n}\n\nexport function discoveredOutboundEndpointsSerializer(item: DiscoveredOutboundEndpoints): any {\n return {\n assigned: deviceMessagingEndpointRecordSerializer(item[\"assigned\"]),\n };\n}\n\nexport function discoveredOutboundEndpointsDeserializer(item: any): DiscoveredOutboundEndpoints {\n return {\n assigned: deviceMessagingEndpointRecordDeserializer(item[\"assigned\"]),\n };\n}\n\n/** The type used for update operations of the NamespaceDiscoveredDevice. */\nexport interface NamespaceDiscoveredDeviceUpdate {\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The resource-specific properties for this resource. */\n properties?: NamespaceDiscoveredDeviceUpdateProperties;\n}\n\nexport function namespaceDiscoveredDeviceUpdateSerializer(\n item: NamespaceDiscoveredDeviceUpdate,\n): any {\n return {\n tags: item[\"tags\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceDiscoveredDeviceUpdatePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** The updatable properties of the NamespaceDiscoveredDevice. */\nexport interface NamespaceDiscoveredDeviceUpdateProperties {\n /** A device ID that represents the device in a system external to Azure. Unique within scope of an Azure tenant. */\n externalDeviceId?: string;\n /** Endpoints for discovered devices. */\n endpoints?: DiscoveredMessagingEndpoints;\n /** Device operating system version. */\n operatingSystemVersion?: string;\n /** A set of key-value pairs that contain custom attributes. */\n attributes?: Record<string, any>;\n /** Identifier used to detect changes in the discovered device. */\n discoveryId?: string;\n /** An integer that is incremented each time the resource is modified. */\n version?: number;\n}\n\nexport function namespaceDiscoveredDeviceUpdatePropertiesSerializer(\n item: NamespaceDiscoveredDeviceUpdateProperties,\n): any {\n return {\n externalDeviceId: item[\"externalDeviceId\"],\n endpoints: !item[\"endpoints\"]\n ? item[\"endpoints\"]\n : discoveredMessagingEndpointsSerializer(item[\"endpoints\"]),\n operatingSystemVersion: item[\"operatingSystemVersion\"],\n attributes: item[\"attributes\"],\n discoveryId: item[\"discoveryId\"],\n version: item[\"version\"],\n };\n}\n\n/** The response of a NamespaceDiscoveredDevice list operation. */\nexport interface _NamespaceDiscoveredDeviceListResult {\n /** The NamespaceDiscoveredDevice items on this page */\n value: NamespaceDiscoveredDevice[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _namespaceDiscoveredDeviceListResultDeserializer(\n item: any,\n): _NamespaceDiscoveredDeviceListResult {\n return {\n value: namespaceDiscoveredDeviceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function namespaceDiscoveredDeviceArraySerializer(\n result: Array<NamespaceDiscoveredDevice>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredDeviceSerializer(item);\n });\n}\n\nexport function namespaceDiscoveredDeviceArrayDeserializer(\n result: Array<NamespaceDiscoveredDevice>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredDeviceDeserializer(item);\n });\n}\n\n/** Schema registry definition. */\nexport interface SchemaRegistry extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: SchemaRegistryProperties;\n /** The managed service identities assigned to this resource. */\n identity?: SystemAssignedServiceIdentity;\n}\n\nexport function schemaRegistrySerializer(item: SchemaRegistry): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : schemaRegistryPropertiesSerializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : systemAssignedServiceIdentitySerializer(item[\"identity\"]),\n };\n}\n\nexport function schemaRegistryDeserializer(item: any): SchemaRegistry {\n return {\n tags: item[\"tags\"],\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : schemaRegistryPropertiesDeserializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : systemAssignedServiceIdentityDeserializer(item[\"identity\"]),\n };\n}\n\n/** Defines the schema registry properties. */\nexport interface SchemaRegistryProperties {\n /** Globally unique, immutable, non-reusable id. */\n readonly uuid?: string;\n /** Schema registry namespace. Uniquely identifies a schema registry within a tenant. */\n namespace: string;\n /** Human-readable display name. */\n displayName?: string;\n /** Human-readable description of the schema registry. */\n description?: string;\n /** The Storage Account's Container URL where schemas will be stored. */\n storageAccountContainerUrl: string;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function schemaRegistryPropertiesSerializer(item: SchemaRegistryProperties): any {\n return {\n namespace: item[\"namespace\"],\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n storageAccountContainerUrl: item[\"storageAccountContainerUrl\"],\n };\n}\n\nexport function schemaRegistryPropertiesDeserializer(item: any): SchemaRegistryProperties {\n return {\n uuid: item[\"uuid\"],\n namespace: item[\"namespace\"],\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n storageAccountContainerUrl: item[\"storageAccountContainerUrl\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The type used for update operations of the SchemaRegistry. */\nexport interface SchemaRegistryUpdate {\n /** The managed service identities assigned to this resource. */\n identity?: SystemAssignedServiceIdentity;\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The resource-specific properties for this resource. */\n properties?: SchemaRegistryUpdateProperties;\n}\n\nexport function schemaRegistryUpdateSerializer(item: SchemaRegistryUpdate): any {\n return {\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : systemAssignedServiceIdentitySerializer(item[\"identity\"]),\n tags: item[\"tags\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : schemaRegistryUpdatePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** The updatable properties of the SchemaRegistry. */\nexport interface SchemaRegistryUpdateProperties {\n /** Human-readable display name. */\n displayName?: string;\n /** Human-readable description of the schema registry. */\n description?: string;\n}\n\nexport function schemaRegistryUpdatePropertiesSerializer(\n item: SchemaRegistryUpdateProperties,\n): any {\n return { displayName: item[\"displayName\"], description: item[\"description\"] };\n}\n\n/** The response of a SchemaRegistry list operation. */\nexport interface _SchemaRegistryListResult {\n /** The SchemaRegistry items on this page */\n value: SchemaRegistry[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _schemaRegistryListResultDeserializer(item: any): _SchemaRegistryListResult {\n return {\n value: schemaRegistryArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function schemaRegistryArraySerializer(result: Array<SchemaRegistry>): any[] {\n return result.map((item) => {\n return schemaRegistrySerializer(item);\n });\n}\n\nexport function schemaRegistryArrayDeserializer(result: Array<SchemaRegistry>): any[] {\n return result.map((item) => {\n return schemaRegistryDeserializer(item);\n });\n}\n\n/** Schema definition. */\nexport interface Schema extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: SchemaProperties;\n}\n\nexport function schemaSerializer(item: Schema): any {\n return {\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : schemaPropertiesSerializer(item[\"properties\"]),\n };\n}\n\nexport function schemaDeserializer(item: any): Schema {\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : schemaPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Defines the schema properties. */\nexport interface SchemaProperties {\n /** Globally unique, immutable, non-reusable id. */\n readonly uuid?: string;\n /** Human-readable display name. */\n displayName?: string;\n /** Human-readable description of the schema. */\n description?: string;\n /** Format of the schema. */\n format: Format;\n /** Type of the schema. */\n schemaType: SchemaType;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Schema tags. */\n tags?: Record<string, string>;\n}\n\nexport function schemaPropertiesSerializer(item: SchemaProperties): any {\n return {\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n format: item[\"format\"],\n schemaType: item[\"schemaType\"],\n tags: item[\"tags\"],\n };\n}\n\nexport function schemaPropertiesDeserializer(item: any): SchemaProperties {\n return {\n uuid: item[\"uuid\"],\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n format: item[\"format\"],\n schemaType: item[\"schemaType\"],\n provisioningState: item[\"provisioningState\"],\n tags: item[\"tags\"],\n };\n}\n\n/** Defines the schema format. */\nexport enum KnownFormat {\n /** JSON Schema version draft 7 format */\n JsonSchemaDraft7 = \"JsonSchema/draft-07\",\n /** Delta format */\n Delta10 = \"Delta/1.0\",\n}\n\n/**\n * Defines the schema format. \\\n * {@link KnownFormat} can be used interchangeably with Format,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **JsonSchema\\/draft-07**: JSON Schema version draft 7 format \\\n * **Delta\\/1.0**: Delta format\n */\nexport type Format = string;\n\n/** Defines the schema type. */\nexport enum KnownSchemaType {\n /** Message Schema schema type */\n MessageSchema = \"MessageSchema\",\n}\n\n/**\n * Defines the schema type. \\\n * {@link KnownSchemaType} can be used interchangeably with SchemaType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **MessageSchema**: Message Schema schema type\n */\nexport type SchemaType = string;\n\n/** The response of a Schema list operation. */\nexport interface _SchemaListResult {\n /** The Schema items on this page */\n value: Schema[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _schemaListResultDeserializer(item: any): _SchemaListResult {\n return {\n value: schemaArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function schemaArraySerializer(result: Array<Schema>): any[] {\n return result.map((item) => {\n return schemaSerializer(item);\n });\n}\n\nexport function schemaArrayDeserializer(result: Array<Schema>): any[] {\n return result.map((item) => {\n return schemaDeserializer(item);\n });\n}\n\n/** Schema version's definition. */\nexport interface SchemaVersion extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: SchemaVersionProperties;\n}\n\nexport function schemaVersionSerializer(item: SchemaVersion): any {\n return {\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : schemaVersionPropertiesSerializer(item[\"properties\"]),\n };\n}\n\nexport function schemaVersionDeserializer(item: any): SchemaVersion {\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : schemaVersionPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Defines the schema version properties. */\nexport interface SchemaVersionProperties {\n /** Globally unique, immutable, non-reusable id. */\n readonly uuid?: string;\n /** Human-readable description of the schema. */\n description?: string;\n /** Schema content. */\n schemaContent: string;\n /** Hash of the schema content. */\n readonly hash?: string;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function schemaVersionPropertiesSerializer(item: SchemaVersionProperties): any {\n return {\n description: item[\"description\"],\n schemaContent: item[\"schemaContent\"],\n };\n}\n\nexport function schemaVersionPropertiesDeserializer(item: any): SchemaVersionProperties {\n return {\n uuid: item[\"uuid\"],\n description: item[\"description\"],\n schemaContent: item[\"schemaContent\"],\n hash: item[\"hash\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The response of a SchemaVersion list operation. */\nexport interface _SchemaVersionListResult {\n /** The SchemaVersion items on this page */\n value: SchemaVersion[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _schemaVersionListResultDeserializer(item: any): _SchemaVersionListResult {\n return {\n value: schemaVersionArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function schemaVersionArraySerializer(result: Array<SchemaVersion>): any[] {\n return result.map((item) => {\n return schemaVersionSerializer(item);\n });\n}\n\nexport function schemaVersionArrayDeserializer(result: Array<SchemaVersion>): any[] {\n return result.map((item) => {\n return schemaVersionDeserializer(item);\n });\n}\n\n/** Microsoft.DeviceRegistry Resource Provider supported API versions. */\nexport enum KnownVersions {\n /** Microsoft.DeviceRegistry Resource Provider management API version 2024-11-01. */\n V20241101 = \"2024-11-01\",\n /** Microsoft.DeviceRegistry Resource Provider management API version 2025-10-01. */\n V20251001 = \"2025-10-01\",\n}\n"]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/models/models.ts"],
4
+ "sourcesContent": ["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\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 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\nexport function operationStatusResultArrayDeserializer(\n result: Array<OperationStatusResult>,\n): any[] {\n return result.map((item) => {\n return operationStatusResultDeserializer(item);\n });\n}\n\n/** Asset definition. */\nexport interface Asset extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: AssetProperties;\n /** The extended location. */\n extendedLocation: ExtendedLocation;\n}\n\nexport function assetSerializer(item: Asset): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : assetPropertiesSerializer(item[\"properties\"]),\n extendedLocation: extendedLocationSerializer(item[\"extendedLocation\"]),\n };\n}\n\nexport function assetDeserializer(item: any): Asset {\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : assetPropertiesDeserializer(item[\"properties\"]),\n extendedLocation: extendedLocationDeserializer(item[\"extendedLocation\"]),\n };\n}\n\n/** Defines the asset properties. */\nexport interface AssetProperties {\n /** Globally unique, immutable, non-reusable id. */\n readonly uuid?: string;\n /** Enabled/Disabled status of the asset. */\n enabled?: boolean;\n /** Asset id provided by the customer. */\n externalAssetId?: string;\n /** Human-readable display name. */\n displayName?: string;\n /** Human-readable description of the asset. */\n description?: string;\n /** A reference to the asset endpoint profile (connection information) used by brokers to connect to an endpoint that provides data points for this asset. Must provide asset endpoint profile name. */\n assetEndpointProfileRef: string;\n /** An integer that is incremented each time the resource is modified. */\n readonly version?: number;\n /** Asset manufacturer name. */\n manufacturer?: string;\n /** Asset manufacturer URI. */\n manufacturerUri?: string;\n /** Asset model name. */\n model?: string;\n /** Asset product code. */\n productCode?: string;\n /** Revision number of the hardware. */\n hardwareRevision?: string;\n /** Revision number of the software. */\n softwareRevision?: string;\n /** Reference to the documentation. */\n documentationUri?: string;\n /** Asset serial number. */\n serialNumber?: string;\n /** A set of key-value pairs that contain custom attributes set by the customer. */\n attributes?: Record<string, any>;\n /** Reference to a list of discovered assets. Populated only if the asset has been created from discovery flow. Discovered asset names must be provided. */\n discoveredAssetRefs?: string[];\n /** Stringified JSON that contains connector-specific default configuration for all datasets. Each dataset can have its own configuration that overrides the default settings here. */\n defaultDatasetsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all events. Each event can have its own configuration that overrides the default settings here. */\n defaultEventsConfiguration?: string;\n /** Object that describes the default topic information for the asset. */\n defaultTopic?: Topic;\n /** Array of datasets that are part of the asset. Each dataset describes the data points that make up the set. */\n datasets?: Dataset[];\n /** Array of events that are part of the asset. Each event can have per-event configuration. */\n events?: Event[];\n /** Read only object to reflect changes that have occurred on the Edge. Similar to Kubernetes status property for custom resources. */\n readonly status?: AssetStatus;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function assetPropertiesSerializer(item: AssetProperties): any {\n return {\n enabled: item[\"enabled\"],\n externalAssetId: item[\"externalAssetId\"],\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n assetEndpointProfileRef: item[\"assetEndpointProfileRef\"],\n manufacturer: item[\"manufacturer\"],\n manufacturerUri: item[\"manufacturerUri\"],\n model: item[\"model\"],\n productCode: item[\"productCode\"],\n hardwareRevision: item[\"hardwareRevision\"],\n softwareRevision: item[\"softwareRevision\"],\n documentationUri: item[\"documentationUri\"],\n serialNumber: item[\"serialNumber\"],\n attributes: item[\"attributes\"],\n discoveredAssetRefs: !item[\"discoveredAssetRefs\"]\n ? item[\"discoveredAssetRefs\"]\n : item[\"discoveredAssetRefs\"].map((p: any) => {\n return p;\n }),\n defaultDatasetsConfiguration: item[\"defaultDatasetsConfiguration\"],\n defaultEventsConfiguration: item[\"defaultEventsConfiguration\"],\n defaultTopic: !item[\"defaultTopic\"]\n ? item[\"defaultTopic\"]\n : topicSerializer(item[\"defaultTopic\"]),\n datasets: !item[\"datasets\"] ? item[\"datasets\"] : datasetArraySerializer(item[\"datasets\"]),\n events: !item[\"events\"] ? item[\"events\"] : eventArraySerializer(item[\"events\"]),\n };\n}\n\nexport function assetPropertiesDeserializer(item: any): AssetProperties {\n return {\n uuid: item[\"uuid\"],\n enabled: item[\"enabled\"],\n externalAssetId: item[\"externalAssetId\"],\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n assetEndpointProfileRef: item[\"assetEndpointProfileRef\"],\n version: item[\"version\"],\n manufacturer: item[\"manufacturer\"],\n manufacturerUri: item[\"manufacturerUri\"],\n model: item[\"model\"],\n productCode: item[\"productCode\"],\n hardwareRevision: item[\"hardwareRevision\"],\n softwareRevision: item[\"softwareRevision\"],\n documentationUri: item[\"documentationUri\"],\n serialNumber: item[\"serialNumber\"],\n attributes: !item[\"attributes\"]\n ? item[\"attributes\"]\n : Object.fromEntries(\n Object.entries(item[\"attributes\"]).map(([k, p]: [string, any]) => [k, p]),\n ),\n discoveredAssetRefs: !item[\"discoveredAssetRefs\"]\n ? item[\"discoveredAssetRefs\"]\n : item[\"discoveredAssetRefs\"].map((p: any) => {\n return p;\n }),\n defaultDatasetsConfiguration: item[\"defaultDatasetsConfiguration\"],\n defaultEventsConfiguration: item[\"defaultEventsConfiguration\"],\n defaultTopic: !item[\"defaultTopic\"]\n ? item[\"defaultTopic\"]\n : topicDeserializer(item[\"defaultTopic\"]),\n datasets: !item[\"datasets\"] ? item[\"datasets\"] : datasetArrayDeserializer(item[\"datasets\"]),\n events: !item[\"events\"] ? item[\"events\"] : eventArrayDeserializer(item[\"events\"]),\n status: !item[\"status\"] ? item[\"status\"] : assetStatusDeserializer(item[\"status\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** Object that describes the topic information. */\nexport interface Topic {\n /** The topic path for messages published to an MQTT broker. */\n path: string;\n /** When set to 'Keep', messages published to an MQTT broker will have the retain flag set. Default: 'Never'. */\n retain?: TopicRetainType;\n}\n\nexport function topicSerializer(item: Topic): any {\n return { path: item[\"path\"], retain: item[\"retain\"] };\n}\n\nexport function topicDeserializer(item: any): Topic {\n return {\n path: item[\"path\"],\n retain: item[\"retain\"],\n };\n}\n\n/** Topic retain types. */\nexport enum KnownTopicRetainType {\n /** Retain the messages. */\n Keep = \"Keep\",\n /** Never retain messages. */\n Never = \"Never\",\n}\n\n/**\n * Topic retain types. \\\n * {@link KnownTopicRetainType} can be used interchangeably with TopicRetainType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Keep**: Retain the messages. \\\n * **Never**: Never retain messages.\n */\nexport type TopicRetainType = string;\n\nexport function datasetArraySerializer(result: Array<Dataset>): any[] {\n return result.map((item) => {\n return datasetSerializer(item);\n });\n}\n\nexport function datasetArrayDeserializer(result: Array<Dataset>): any[] {\n return result.map((item) => {\n return datasetDeserializer(item);\n });\n}\n\n/** Defines the dataset properties. */\nexport interface Dataset {\n /** Name of the dataset. */\n name: string;\n /** Stringified JSON that contains connector-specific JSON string that describes configuration for the specific dataset. */\n datasetConfiguration?: string;\n /** Object that describes the topic information for the specific dataset. */\n topic?: Topic;\n /** Array of data points that are part of the dataset. Each data point can have per-data point configuration. */\n dataPoints?: DataPoint[];\n}\n\nexport function datasetSerializer(item: Dataset): any {\n return {\n name: item[\"name\"],\n datasetConfiguration: item[\"datasetConfiguration\"],\n topic: !item[\"topic\"] ? item[\"topic\"] : topicSerializer(item[\"topic\"]),\n dataPoints: !item[\"dataPoints\"]\n ? item[\"dataPoints\"]\n : dataPointArraySerializer(item[\"dataPoints\"]),\n };\n}\n\nexport function datasetDeserializer(item: any): Dataset {\n return {\n name: item[\"name\"],\n datasetConfiguration: item[\"datasetConfiguration\"],\n topic: !item[\"topic\"] ? item[\"topic\"] : topicDeserializer(item[\"topic\"]),\n dataPoints: !item[\"dataPoints\"]\n ? item[\"dataPoints\"]\n : dataPointArrayDeserializer(item[\"dataPoints\"]),\n };\n}\n\nexport function dataPointArraySerializer(result: Array<DataPoint>): any[] {\n return result.map((item) => {\n return dataPointSerializer(item);\n });\n}\n\nexport function dataPointArrayDeserializer(result: Array<DataPoint>): any[] {\n return result.map((item) => {\n return dataPointDeserializer(item);\n });\n}\n\n/** Defines the data point properties. */\nexport interface DataPoint extends DataPointBase {\n /** An indication of how the data point should be mapped to OpenTelemetry. */\n observabilityMode?: DataPointObservabilityMode;\n}\n\nexport function dataPointSerializer(item: DataPoint): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n dataPointConfiguration: item[\"dataPointConfiguration\"],\n observabilityMode: item[\"observabilityMode\"],\n };\n}\n\nexport function dataPointDeserializer(item: any): DataPoint {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n dataPointConfiguration: item[\"dataPointConfiguration\"],\n observabilityMode: item[\"observabilityMode\"],\n };\n}\n\n/** Defines the data point observability mode. */\nexport enum KnownDataPointObservabilityMode {\n /** No mapping to OpenTelemetry. */\n None = \"None\",\n /** Map as counter to OpenTelemetry. */\n Counter = \"Counter\",\n /** Map as gauge to OpenTelemetry. */\n Gauge = \"Gauge\",\n /** Map as histogram to OpenTelemetry. */\n Histogram = \"Histogram\",\n /** Map as log to OpenTelemetry. */\n Log = \"Log\",\n}\n\n/**\n * Defines the data point observability mode. \\\n * {@link KnownDataPointObservabilityMode} can be used interchangeably with DataPointObservabilityMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **None**: No mapping to OpenTelemetry. \\\n * **Counter**: Map as counter to OpenTelemetry. \\\n * **Gauge**: Map as gauge to OpenTelemetry. \\\n * **Histogram**: Map as histogram to OpenTelemetry. \\\n * **Log**: Map as log to OpenTelemetry.\n */\nexport type DataPointObservabilityMode = string;\n\nexport function eventArraySerializer(result: Array<Event>): any[] {\n return result.map((item) => {\n return eventSerializer(item);\n });\n}\n\nexport function eventArrayDeserializer(result: Array<Event>): any[] {\n return result.map((item) => {\n return eventDeserializer(item);\n });\n}\n\n/** Defines the event properties. */\nexport interface Event extends EventBase {\n /** An indication of how the event should be mapped to OpenTelemetry. */\n observabilityMode?: EventObservabilityMode;\n}\n\nexport function eventSerializer(item: Event): any {\n return {\n name: item[\"name\"],\n eventNotifier: item[\"eventNotifier\"],\n eventConfiguration: item[\"eventConfiguration\"],\n topic: !item[\"topic\"] ? item[\"topic\"] : topicSerializer(item[\"topic\"]),\n observabilityMode: item[\"observabilityMode\"],\n };\n}\n\nexport function eventDeserializer(item: any): Event {\n return {\n name: item[\"name\"],\n eventNotifier: item[\"eventNotifier\"],\n eventConfiguration: item[\"eventConfiguration\"],\n topic: !item[\"topic\"] ? item[\"topic\"] : topicDeserializer(item[\"topic\"]),\n observabilityMode: item[\"observabilityMode\"],\n };\n}\n\n/** Defines the event observability mode. */\nexport enum KnownEventObservabilityMode {\n /** No mapping to OpenTelemetry. */\n None = \"None\",\n /** Map as log to OpenTelemetry. */\n Log = \"Log\",\n}\n\n/**\n * Defines the event observability mode. \\\n * {@link KnownEventObservabilityMode} can be used interchangeably with EventObservabilityMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **None**: No mapping to OpenTelemetry. \\\n * **Log**: Map as log to OpenTelemetry.\n */\nexport type EventObservabilityMode = string;\n\n/** Defines the asset status properties. */\nexport interface AssetStatus {\n /** Array object to transfer and persist errors that originate from the Edge. */\n readonly errors?: AssetStatusError[];\n /** A read only incremental counter indicating the number of times the configuration has been modified from the perspective of the current actual (Edge) state of the Asset. Edge would be the only writer of this value and would sync back up to the cloud. In steady state, this should equal version. */\n readonly version?: number;\n /** Array of dataset statuses that describe the status of each dataset. */\n readonly datasets?: AssetStatusDataset[];\n /** Array of event statuses that describe the status of each event. */\n readonly events?: AssetStatusEvent[];\n}\n\nexport function assetStatusDeserializer(item: any): AssetStatus {\n return {\n errors: !item[\"errors\"] ? item[\"errors\"] : assetStatusErrorArrayDeserializer(item[\"errors\"]),\n version: item[\"version\"],\n datasets: !item[\"datasets\"]\n ? item[\"datasets\"]\n : assetStatusDatasetArrayDeserializer(item[\"datasets\"]),\n events: !item[\"events\"] ? item[\"events\"] : assetStatusEventArrayDeserializer(item[\"events\"]),\n };\n}\n\nexport function assetStatusErrorArrayDeserializer(result: Array<AssetStatusError>): any[] {\n return result.map((item) => {\n return assetStatusErrorDeserializer(item);\n });\n}\n\n/** Defines the asset status error properties. */\nexport interface AssetStatusError {\n /** Error code for classification of errors (ex: 400, 404, 500, etc.). */\n readonly code?: number;\n /** Human readable helpful error message to provide additional context for error (ex: \u201Ccapability Id 'foo' does not exist\u201D). */\n readonly message?: string;\n}\n\nexport function assetStatusErrorDeserializer(item: any): AssetStatusError {\n return {\n code: item[\"code\"],\n message: item[\"message\"],\n };\n}\n\nexport function assetStatusDatasetArrayDeserializer(result: Array<AssetStatusDataset>): any[] {\n return result.map((item) => {\n return assetStatusDatasetDeserializer(item);\n });\n}\n\n/** Defines the asset status dataset properties. */\nexport interface AssetStatusDataset {\n /** The name of the dataset. Must be unique within the status.datasets array. This name is used to correlate between the spec and status dataset information. */\n readonly name: string;\n /** The message schema reference object. */\n readonly messageSchemaReference?: MessageSchemaReference;\n}\n\nexport function assetStatusDatasetDeserializer(item: any): AssetStatusDataset {\n return {\n name: item[\"name\"],\n messageSchemaReference: !item[\"messageSchemaReference\"]\n ? item[\"messageSchemaReference\"]\n : messageSchemaReferenceDeserializer(item[\"messageSchemaReference\"]),\n };\n}\n\n/** Defines the message schema reference properties. */\nexport interface MessageSchemaReference {\n /** The message schema registry namespace. */\n readonly schemaRegistryNamespace: string;\n /** The message schema name. */\n readonly schemaName: string;\n /** The message schema version. */\n readonly schemaVersion: string;\n}\n\nexport function messageSchemaReferenceDeserializer(item: any): MessageSchemaReference {\n return {\n schemaRegistryNamespace: item[\"schemaRegistryNamespace\"],\n schemaName: item[\"schemaName\"],\n schemaVersion: item[\"schemaVersion\"],\n };\n}\n\nexport function assetStatusEventArrayDeserializer(result: Array<AssetStatusEvent>): any[] {\n return result.map((item) => {\n return assetStatusEventDeserializer(item);\n });\n}\n\n/** Defines the asset status event properties. */\nexport interface AssetStatusEvent {\n /** The name of the event. Must be unique within the status.events array. This name is used to correlate between the spec and status event information. */\n readonly name: string;\n /** The message schema reference object. */\n readonly messageSchemaReference?: MessageSchemaReference;\n}\n\nexport function assetStatusEventDeserializer(item: any): AssetStatusEvent {\n return {\n name: item[\"name\"],\n messageSchemaReference: !item[\"messageSchemaReference\"]\n ? item[\"messageSchemaReference\"]\n : messageSchemaReferenceDeserializer(item[\"messageSchemaReference\"]),\n };\n}\n\n/** The provisioning status of the resource. */\nexport enum KnownProvisioningState {\n /** Resource has been created. */\n Succeeded = \"Succeeded\",\n /** Resource creation failed. */\n Failed = \"Failed\",\n /** Resource creation was canceled. */\n Canceled = \"Canceled\",\n /** Resource has been accepted by the server. */\n Accepted = \"Accepted\",\n /** Resource is deleting. */\n Deleting = \"Deleting\",\n}\n\n/**\n * The provisioning status of the resource. \\\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 * **Succeeded**: Resource has been created. \\\n * **Failed**: Resource creation failed. \\\n * **Canceled**: Resource creation was canceled. \\\n * **Accepted**: Resource has been accepted by the server. \\\n * **Deleting**: Resource is deleting.\n */\nexport type ProvisioningState = string;\n\n/** The extended location. */\nexport interface ExtendedLocation {\n /** The extended location type. */\n type: string;\n /** The extended location name. */\n name: string;\n}\n\nexport function extendedLocationSerializer(item: ExtendedLocation): any {\n return { type: item[\"type\"], name: item[\"name\"] };\n}\n\nexport function extendedLocationDeserializer(item: any): ExtendedLocation {\n return {\n type: item[\"type\"],\n name: item[\"name\"],\n };\n}\n\n/** Defines the data point properties. */\nexport interface DataPointBase {\n /** The name of the data point. */\n name: string;\n /** The address of the source of the data in the asset (e.g. URL) so that a client can access the data source on the asset. */\n dataSource: string;\n /** Stringified JSON that contains connector-specific configuration for the data point. For OPC UA, this could include configuration like, publishingInterval, samplingInterval, and queueSize. */\n dataPointConfiguration?: string;\n}\n\nexport function dataPointBaseSerializer(item: DataPointBase): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n dataPointConfiguration: item[\"dataPointConfiguration\"],\n };\n}\n\nexport function dataPointBaseDeserializer(item: any): DataPointBase {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n dataPointConfiguration: item[\"dataPointConfiguration\"],\n };\n}\n\n/** Defines the event properties. */\nexport interface EventBase {\n /** The name of the event. */\n name: string;\n /** The address of the notifier of the event in the asset (e.g. URL) so that a client can access the event on the asset. */\n eventNotifier: string;\n /** Stringified JSON that contains connector-specific configuration for the event. For OPC UA, this could include configuration like, publishingInterval, samplingInterval, and queueSize. */\n eventConfiguration?: string;\n /** Object that describes the topic information for the specific event. */\n topic?: Topic;\n}\n\nexport function eventBaseSerializer(item: EventBase): any {\n return {\n name: item[\"name\"],\n eventNotifier: item[\"eventNotifier\"],\n eventConfiguration: item[\"eventConfiguration\"],\n topic: !item[\"topic\"] ? item[\"topic\"] : topicSerializer(item[\"topic\"]),\n };\n}\n\nexport function eventBaseDeserializer(item: any): EventBase {\n return {\n name: item[\"name\"],\n eventNotifier: item[\"eventNotifier\"],\n eventConfiguration: item[\"eventConfiguration\"],\n topic: !item[\"topic\"] ? item[\"topic\"] : topicDeserializer(item[\"topic\"]),\n };\n}\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 type used for update operations of the Asset. */\nexport interface AssetUpdate {\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The resource-specific properties for this resource. */\n properties?: AssetUpdateProperties;\n}\n\nexport function assetUpdateSerializer(item: AssetUpdate): any {\n return {\n tags: item[\"tags\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : assetUpdatePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** The updatable properties of the Asset. */\nexport interface AssetUpdateProperties {\n /** Enabled/Disabled status of the asset. */\n enabled?: boolean;\n /** Human-readable display name. */\n displayName?: string;\n /** Human-readable description of the asset. */\n description?: string;\n /** Asset manufacturer name. */\n manufacturer?: string;\n /** Asset manufacturer URI. */\n manufacturerUri?: string;\n /** Asset model name. */\n model?: string;\n /** Asset product code. */\n productCode?: string;\n /** Revision number of the hardware. */\n hardwareRevision?: string;\n /** Revision number of the software. */\n softwareRevision?: string;\n /** Reference to the documentation. */\n documentationUri?: string;\n /** Asset serial number. */\n serialNumber?: string;\n /** A set of key-value pairs that contain custom attributes set by the customer. */\n attributes?: Record<string, any>;\n /** Stringified JSON that contains connector-specific default configuration for all datasets. Each dataset can have its own configuration that overrides the default settings here. */\n defaultDatasetsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all events. Each event can have its own configuration that overrides the default settings here. */\n defaultEventsConfiguration?: string;\n /** Object that describes the default topic information for the asset. */\n defaultTopic?: Topic;\n /** Array of datasets that are part of the asset. Each dataset describes the data points that make up the set. */\n datasets?: Dataset[];\n /** Array of events that are part of the asset. Each event can have per-event configuration. */\n events?: Event[];\n}\n\nexport function assetUpdatePropertiesSerializer(item: AssetUpdateProperties): any {\n return {\n enabled: item[\"enabled\"],\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n manufacturer: item[\"manufacturer\"],\n manufacturerUri: item[\"manufacturerUri\"],\n model: item[\"model\"],\n productCode: item[\"productCode\"],\n hardwareRevision: item[\"hardwareRevision\"],\n softwareRevision: item[\"softwareRevision\"],\n documentationUri: item[\"documentationUri\"],\n serialNumber: item[\"serialNumber\"],\n attributes: item[\"attributes\"],\n defaultDatasetsConfiguration: item[\"defaultDatasetsConfiguration\"],\n defaultEventsConfiguration: item[\"defaultEventsConfiguration\"],\n defaultTopic: !item[\"defaultTopic\"]\n ? item[\"defaultTopic\"]\n : topicSerializer(item[\"defaultTopic\"]),\n datasets: !item[\"datasets\"] ? item[\"datasets\"] : datasetArraySerializer(item[\"datasets\"]),\n events: !item[\"events\"] ? item[\"events\"] : eventArraySerializer(item[\"events\"]),\n };\n}\n\n/** The response of a Asset list operation. */\nexport interface _AssetListResult {\n /** The Asset items on this page */\n value: Asset[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _assetListResultDeserializer(item: any): _AssetListResult {\n return {\n value: assetArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function assetArraySerializer(result: Array<Asset>): any[] {\n return result.map((item) => {\n return assetSerializer(item);\n });\n}\n\nexport function assetArrayDeserializer(result: Array<Asset>): any[] {\n return result.map((item) => {\n return assetDeserializer(item);\n });\n}\n\n/** Asset Endpoint Profile definition. */\nexport interface AssetEndpointProfile extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: AssetEndpointProfileProperties;\n /** The extended location. */\n extendedLocation: ExtendedLocation;\n}\n\nexport function assetEndpointProfileSerializer(item: AssetEndpointProfile): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : assetEndpointProfilePropertiesSerializer(item[\"properties\"]),\n extendedLocation: extendedLocationSerializer(item[\"extendedLocation\"]),\n };\n}\n\nexport function assetEndpointProfileDeserializer(item: any): AssetEndpointProfile {\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : assetEndpointProfilePropertiesDeserializer(item[\"properties\"]),\n extendedLocation: extendedLocationDeserializer(item[\"extendedLocation\"]),\n };\n}\n\n/** Defines the Asset Endpoint Profile properties. */\nexport interface AssetEndpointProfileProperties {\n /** Globally unique, immutable, non-reusable id. */\n readonly uuid?: string;\n /** The local valid URI specifying the network address/DNS name of a southbound device. The scheme part of the targetAddress URI specifies the type of the device. The additionalConfiguration field holds further connector type specific configuration. */\n targetAddress: string;\n /** Defines the configuration for the connector type that is being used with the endpoint profile. */\n endpointProfileType: string;\n /** Defines the client authentication mechanism to the server. */\n authentication?: Authentication;\n /** Stringified JSON that contains connectivity type specific further configuration (e.g. OPC UA, Modbus, ONVIF). */\n additionalConfiguration?: string;\n /** Reference to a discovered asset endpoint profile. Populated only if the asset endpoint profile has been created from discovery flow. Discovered asset endpoint profile name must be provided. */\n discoveredAssetEndpointProfileRef?: string;\n /** Read only object to reflect changes that have occurred on the Edge. Similar to Kubernetes status property for custom resources. */\n readonly status?: AssetEndpointProfileStatus;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function assetEndpointProfilePropertiesSerializer(\n item: AssetEndpointProfileProperties,\n): any {\n return {\n targetAddress: item[\"targetAddress\"],\n endpointProfileType: item[\"endpointProfileType\"],\n authentication: !item[\"authentication\"]\n ? item[\"authentication\"]\n : authenticationSerializer(item[\"authentication\"]),\n additionalConfiguration: item[\"additionalConfiguration\"],\n discoveredAssetEndpointProfileRef: item[\"discoveredAssetEndpointProfileRef\"],\n };\n}\n\nexport function assetEndpointProfilePropertiesDeserializer(\n item: any,\n): AssetEndpointProfileProperties {\n return {\n uuid: item[\"uuid\"],\n targetAddress: item[\"targetAddress\"],\n endpointProfileType: item[\"endpointProfileType\"],\n authentication: !item[\"authentication\"]\n ? item[\"authentication\"]\n : authenticationDeserializer(item[\"authentication\"]),\n additionalConfiguration: item[\"additionalConfiguration\"],\n discoveredAssetEndpointProfileRef: item[\"discoveredAssetEndpointProfileRef\"],\n status: !item[\"status\"]\n ? item[\"status\"]\n : assetEndpointProfileStatusDeserializer(item[\"status\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** Definition of the client authentication mechanism to the server. */\nexport interface Authentication {\n /** Defines the method to authenticate the user of the client at the server. */\n method: AuthenticationMethod;\n /** Defines the username and password references when UsernamePassword user authentication mode is selected. */\n usernamePasswordCredentials?: UsernamePasswordCredentials;\n /** Defines the certificate reference when Certificate user authentication mode is selected. */\n x509Credentials?: X509Credentials;\n}\n\nexport function authenticationSerializer(item: Authentication): any {\n return {\n method: item[\"method\"],\n usernamePasswordCredentials: !item[\"usernamePasswordCredentials\"]\n ? item[\"usernamePasswordCredentials\"]\n : usernamePasswordCredentialsSerializer(item[\"usernamePasswordCredentials\"]),\n x509Credentials: !item[\"x509Credentials\"]\n ? item[\"x509Credentials\"]\n : x509CredentialsSerializer(item[\"x509Credentials\"]),\n };\n}\n\nexport function authenticationDeserializer(item: any): Authentication {\n return {\n method: item[\"method\"],\n usernamePasswordCredentials: !item[\"usernamePasswordCredentials\"]\n ? item[\"usernamePasswordCredentials\"]\n : usernamePasswordCredentialsDeserializer(item[\"usernamePasswordCredentials\"]),\n x509Credentials: !item[\"x509Credentials\"]\n ? item[\"x509Credentials\"]\n : x509CredentialsDeserializer(item[\"x509Credentials\"]),\n };\n}\n\n/** The method to authenticate the user of the client at the server. */\nexport enum KnownAuthenticationMethod {\n /** The user authentication method is anonymous. */\n Anonymous = \"Anonymous\",\n /** The user authentication method is an x509 certificate. */\n Certificate = \"Certificate\",\n /** The user authentication method is a username and password. */\n UsernamePassword = \"UsernamePassword\",\n}\n\n/**\n * The method to authenticate the user of the client at the server. \\\n * {@link KnownAuthenticationMethod} can be used interchangeably with AuthenticationMethod,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Anonymous**: The user authentication method is anonymous. \\\n * **Certificate**: The user authentication method is an x509 certificate. \\\n * **UsernamePassword**: The user authentication method is a username and password.\n */\nexport type AuthenticationMethod = string;\n\n/** The credentials for authentication mode UsernamePassword. */\nexport interface UsernamePasswordCredentials {\n /** The name of the secret containing the username. */\n usernameSecretName: string;\n /** The name of the secret containing the password. */\n passwordSecretName: string;\n}\n\nexport function usernamePasswordCredentialsSerializer(item: UsernamePasswordCredentials): any {\n return {\n usernameSecretName: item[\"usernameSecretName\"],\n passwordSecretName: item[\"passwordSecretName\"],\n };\n}\n\nexport function usernamePasswordCredentialsDeserializer(item: any): UsernamePasswordCredentials {\n return {\n usernameSecretName: item[\"usernameSecretName\"],\n passwordSecretName: item[\"passwordSecretName\"],\n };\n}\n\n/** The x509 certificate for authentication mode Certificate. */\nexport interface X509Credentials {\n /** The name of the secret containing the certificate and private key (e.g. stored as .der/.pem or .der/.pfx). */\n certificateSecretName: string;\n}\n\nexport function x509CredentialsSerializer(item: X509Credentials): any {\n return { certificateSecretName: item[\"certificateSecretName\"] };\n}\n\nexport function x509CredentialsDeserializer(item: any): X509Credentials {\n return {\n certificateSecretName: item[\"certificateSecretName\"],\n };\n}\n\n/** Defines the asset endpoint profile status properties. */\nexport interface AssetEndpointProfileStatus {\n /** Array object to transfer and persist errors that originate from the Edge. */\n readonly errors?: AssetEndpointProfileStatusError[];\n}\n\nexport function assetEndpointProfileStatusDeserializer(item: any): AssetEndpointProfileStatus {\n return {\n errors: !item[\"errors\"]\n ? item[\"errors\"]\n : assetEndpointProfileStatusErrorArrayDeserializer(item[\"errors\"]),\n };\n}\n\nexport function assetEndpointProfileStatusErrorArrayDeserializer(\n result: Array<AssetEndpointProfileStatusError>,\n): any[] {\n return result.map((item) => {\n return assetEndpointProfileStatusErrorDeserializer(item);\n });\n}\n\n/** Defines the asset endpoint profile status error properties. */\nexport interface AssetEndpointProfileStatusError {\n /** Error code for classification of errors (ex: 400, 404, 500, etc.). */\n readonly code?: number;\n /** Human readable helpful error message to provide additional context for error (ex: \u201CtargetAddress 'foo' is not a valid url\u201D). */\n readonly message?: string;\n}\n\nexport function assetEndpointProfileStatusErrorDeserializer(\n item: any,\n): AssetEndpointProfileStatusError {\n return {\n code: item[\"code\"],\n message: item[\"message\"],\n };\n}\n\n/** The type used for update operations of the AssetEndpointProfile. */\nexport interface AssetEndpointProfileUpdate {\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The resource-specific properties for this resource. */\n properties?: AssetEndpointProfileUpdateProperties;\n}\n\nexport function assetEndpointProfileUpdateSerializer(item: AssetEndpointProfileUpdate): any {\n return {\n tags: item[\"tags\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : assetEndpointProfileUpdatePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** The updatable properties of the AssetEndpointProfile. */\nexport interface AssetEndpointProfileUpdateProperties {\n /** The local valid URI specifying the network address/DNS name of a southbound device. The scheme part of the targetAddress URI specifies the type of the device. The additionalConfiguration field holds further connector type specific configuration. */\n targetAddress?: string;\n /** Defines the configuration for the connector type that is being used with the endpoint profile. */\n endpointProfileType?: string;\n /** Defines the client authentication mechanism to the server. */\n authentication?: Authentication;\n /** Stringified JSON that contains connectivity type specific further configuration (e.g. OPC UA, Modbus, ONVIF). */\n additionalConfiguration?: string;\n}\n\nexport function assetEndpointProfileUpdatePropertiesSerializer(\n item: AssetEndpointProfileUpdateProperties,\n): any {\n return {\n targetAddress: item[\"targetAddress\"],\n endpointProfileType: item[\"endpointProfileType\"],\n authentication: !item[\"authentication\"]\n ? item[\"authentication\"]\n : authenticationSerializer(item[\"authentication\"]),\n additionalConfiguration: item[\"additionalConfiguration\"],\n };\n}\n\n/** The response of a AssetEndpointProfile list operation. */\nexport interface _AssetEndpointProfileListResult {\n /** The AssetEndpointProfile items on this page */\n value: AssetEndpointProfile[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _assetEndpointProfileListResultDeserializer(\n item: any,\n): _AssetEndpointProfileListResult {\n return {\n value: assetEndpointProfileArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function assetEndpointProfileArraySerializer(result: Array<AssetEndpointProfile>): any[] {\n return result.map((item) => {\n return assetEndpointProfileSerializer(item);\n });\n}\n\nexport function assetEndpointProfileArrayDeserializer(result: Array<AssetEndpointProfile>): any[] {\n return result.map((item) => {\n return assetEndpointProfileDeserializer(item);\n });\n}\n\n/** billingContainer Model as Azure resource whose sole purpose is to keep track of billables resources under a subscription. */\nexport interface BillingContainer extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: BillingContainerProperties;\n /** Resource ETag */\n readonly etag?: string;\n}\n\nexport function billingContainerDeserializer(item: any): BillingContainer {\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : billingContainerPropertiesDeserializer(item[\"properties\"]),\n etag: item[\"etag\"],\n };\n}\n\n/** Defines the billingContainer properties. */\nexport interface BillingContainerProperties {\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function billingContainerPropertiesDeserializer(item: any): BillingContainerProperties {\n return {\n provisioningState: item[\"provisioningState\"],\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 response of a BillingContainer list operation. */\nexport interface _BillingContainerListResult {\n /** The BillingContainer items on this page */\n value: BillingContainer[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _billingContainerListResultDeserializer(item: any): _BillingContainerListResult {\n return {\n value: billingContainerArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function billingContainerArrayDeserializer(result: Array<BillingContainer>): any[] {\n return result.map((item) => {\n return billingContainerDeserializer(item);\n });\n}\n\n/** Namespace definition. */\nexport interface Namespace extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: NamespaceProperties;\n /** The managed service identities assigned to this resource. */\n identity?: SystemAssignedServiceIdentity;\n}\n\nexport function namespaceSerializer(item: Namespace): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespacePropertiesSerializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : systemAssignedServiceIdentitySerializer(item[\"identity\"]),\n };\n}\n\nexport function namespaceDeserializer(item: any): Namespace {\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespacePropertiesDeserializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : systemAssignedServiceIdentityDeserializer(item[\"identity\"]),\n };\n}\n\n/** The namespace properties model. */\nexport interface NamespaceProperties {\n /** Globally unique, immutable, non-reusable ID. */\n readonly uuid?: string;\n /** Assigned and unassigned messaging endpoints. */\n messaging?: Messaging;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function namespacePropertiesSerializer(item: NamespaceProperties): any {\n return {\n messaging: !item[\"messaging\"] ? item[\"messaging\"] : messagingSerializer(item[\"messaging\"]),\n };\n}\n\nexport function namespacePropertiesDeserializer(item: any): NamespaceProperties {\n return {\n uuid: item[\"uuid\"],\n messaging: !item[\"messaging\"] ? item[\"messaging\"] : messagingDeserializer(item[\"messaging\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The namespace messaging endpoints model. */\nexport interface Messaging {\n /** Dictionary of messaging endpoints. */\n endpoints?: Record<string, MessagingEndpoint>;\n}\n\nexport function messagingSerializer(item: Messaging): any {\n return {\n endpoints: !item[\"endpoints\"]\n ? item[\"endpoints\"]\n : messagingEndpointRecordSerializer(item[\"endpoints\"]),\n };\n}\n\nexport function messagingDeserializer(item: any): Messaging {\n return {\n endpoints: !item[\"endpoints\"]\n ? item[\"endpoints\"]\n : messagingEndpointRecordDeserializer(item[\"endpoints\"]),\n };\n}\n\nexport function messagingEndpointRecordSerializer(\n item: Record<string, MessagingEndpoint>,\n): Record<string, any> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : messagingEndpointSerializer(item[key]);\n });\n return result;\n}\n\nexport function messagingEndpointRecordDeserializer(\n item: Record<string, any>,\n): Record<string, MessagingEndpoint> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : messagingEndpointDeserializer(item[key]);\n });\n return result;\n}\n\n/** Namespace messaging endpoint model used by a device to connect to a service. */\nexport interface MessagingEndpoint {\n /** Type of connection used for messaging endpoint. */\n endpointType?: string;\n /** The endpoint address to connect to. */\n address: string;\n /** The messaging endpoint Azure resource Id. */\n resourceId?: string;\n}\n\nexport function messagingEndpointSerializer(item: MessagingEndpoint): any {\n return {\n endpointType: item[\"endpointType\"],\n address: item[\"address\"],\n resourceId: item[\"resourceId\"],\n };\n}\n\nexport function messagingEndpointDeserializer(item: any): MessagingEndpoint {\n return {\n endpointType: item[\"endpointType\"],\n address: item[\"address\"],\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** Managed service identity (either system assigned, or none) */\nexport interface SystemAssignedServiceIdentity {\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: SystemAssignedServiceIdentityType;\n}\n\nexport function systemAssignedServiceIdentitySerializer(item: SystemAssignedServiceIdentity): any {\n return { type: item[\"type\"] };\n}\n\nexport function systemAssignedServiceIdentityDeserializer(\n item: any,\n): SystemAssignedServiceIdentity {\n return {\n principalId: item[\"principalId\"],\n tenantId: item[\"tenantId\"],\n type: item[\"type\"],\n };\n}\n\n/** Type of managed service identity (either system assigned, or none). */\nexport enum KnownSystemAssignedServiceIdentityType {\n /** No managed system identity. */\n None = \"None\",\n /** System assigned managed system identity. */\n SystemAssigned = \"SystemAssigned\",\n}\n\n/**\n * Type of managed service identity (either system assigned, or none). \\\n * {@link KnownSystemAssignedServiceIdentityType} can be used interchangeably with SystemAssignedServiceIdentityType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **None**: No managed system identity. \\\n * **SystemAssigned**: System assigned managed system identity.\n */\nexport type SystemAssignedServiceIdentityType = string;\n\n/** The type used for update operations of the Namespace. */\nexport interface NamespaceUpdate {\n /** The managed service identities assigned to this resource. */\n identity?: SystemAssignedServiceIdentity;\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The resource-specific properties for this resource. */\n properties?: NamespaceUpdateProperties;\n}\n\nexport function namespaceUpdateSerializer(item: NamespaceUpdate): any {\n return {\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : systemAssignedServiceIdentitySerializer(item[\"identity\"]),\n tags: item[\"tags\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceUpdatePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** The updatable properties of the Namespace. */\nexport interface NamespaceUpdateProperties {\n /** Assigned and unassigned messaging endpoints. */\n messaging?: Messaging;\n}\n\nexport function namespaceUpdatePropertiesSerializer(item: NamespaceUpdateProperties): any {\n return {\n messaging: !item[\"messaging\"] ? item[\"messaging\"] : messagingSerializer(item[\"messaging\"]),\n };\n}\n\n/** The response of a Namespace list operation. */\nexport interface _NamespaceListResult {\n /** The Namespace items on this page */\n value: Namespace[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _namespaceListResultDeserializer(item: any): _NamespaceListResult {\n return {\n value: namespaceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function namespaceArraySerializer(result: Array<Namespace>): any[] {\n return result.map((item) => {\n return namespaceSerializer(item);\n });\n}\n\nexport function namespaceArrayDeserializer(result: Array<Namespace>): any[] {\n return result.map((item) => {\n return namespaceDeserializer(item);\n });\n}\n\n/** Request body for the migrate resources operation in to Namespace resource. */\nexport interface NamespaceMigrateRequest {\n /** Scope of the migrate resources operation. */\n scope?: Scope;\n /** List of asset resources to be migrated. */\n resourceIds?: string[];\n}\n\nexport function namespaceMigrateRequestSerializer(item: NamespaceMigrateRequest): any {\n return {\n scope: item[\"scope\"],\n resourceIds: !item[\"resourceIds\"]\n ? item[\"resourceIds\"]\n : item[\"resourceIds\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Scope of the migrate resources operation. */\nexport enum KnownScope {\n /** Scoping the migration to resourceIds provided */\n Resources = \"Resources\",\n}\n\n/**\n * Scope of the migrate resources operation. \\\n * {@link KnownScope} can be used interchangeably with Scope,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Resources**: Scoping the migration to resourceIds provided\n */\nexport type Scope = string;\n\nexport function errorDetailsArrayDeserializer(result: Array<ErrorDetails>): any[] {\n return result.map((item) => {\n return errorDetailsDeserializer(item);\n });\n}\n\n/** Defines the error details properties. */\nexport interface ErrorDetails {\n /** Multi-part error code for classification and root causing of errors (ex: 400.200.100.432). */\n readonly code?: string;\n /** Human-readable helpful error message to provide additional context for error (ex: \u201CAuthentication method not supported\u201D). */\n readonly message?: string;\n /** Human-readable helpful detailed text context for debugging (ex: \u201CThe following mechanisms are supported...\u201D). */\n readonly info?: string;\n /** Unique identifier for the transaction to aid in debugging. */\n readonly correlationId?: string;\n}\n\nexport function errorDetailsDeserializer(item: any): ErrorDetails {\n return {\n code: item[\"code\"],\n message: item[\"message\"],\n info: item[\"info\"],\n correlationId: item[\"correlationId\"],\n };\n}\n\n/** A Credential Resource */\nexport interface Credential extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: CredentialProperties;\n}\n\nexport function credentialSerializer(item: Credential): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : credentialPropertiesSerializer(item[\"properties\"]),\n };\n}\n\nexport function credentialDeserializer(item: any): Credential {\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : credentialPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Details of the Credential Resource. */\nexport interface CredentialProperties {\n /** The status of the last operation. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function credentialPropertiesSerializer(_item: CredentialProperties): any {\n return {};\n}\n\nexport function credentialPropertiesDeserializer(item: any): CredentialProperties {\n return {\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The type used for update operations of the Credential. */\nexport interface CredentialUpdate {\n /** Resource tags. */\n tags?: Record<string, string>;\n}\n\nexport function credentialUpdateSerializer(item: CredentialUpdate): any {\n return { tags: item[\"tags\"] };\n}\n\n/** The response of a Credential list operation. */\nexport interface _CredentialListResult {\n /** The Credential items on this page */\n value: Credential[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _credentialListResultDeserializer(item: any): _CredentialListResult {\n return {\n value: credentialArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function credentialArraySerializer(result: Array<Credential>): any[] {\n return result.map((item) => {\n return credentialSerializer(item);\n });\n}\n\nexport function credentialArrayDeserializer(result: Array<Credential>): any[] {\n return result.map((item) => {\n return credentialDeserializer(item);\n });\n}\n\n/** A Credential Policy */\nexport interface Policy extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: PolicyProperties;\n}\n\nexport function policySerializer(item: Policy): any {\n return {\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : policyPropertiesSerializer(item[\"properties\"]),\n };\n}\n\nexport function policyDeserializer(item: any): Policy {\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : policyPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Details of the Credential Policy. */\nexport interface PolicyProperties {\n /** The status of the last operation. */\n readonly provisioningState?: ProvisioningState;\n /** The certificate configuration. */\n certificate?: CertificateConfiguration;\n}\n\nexport function policyPropertiesSerializer(item: PolicyProperties): any {\n return {\n certificate: !item[\"certificate\"]\n ? item[\"certificate\"]\n : certificateConfigurationSerializer(item[\"certificate\"]),\n };\n}\n\nexport function policyPropertiesDeserializer(item: any): PolicyProperties {\n return {\n provisioningState: item[\"provisioningState\"],\n certificate: !item[\"certificate\"]\n ? item[\"certificate\"]\n : certificateConfigurationDeserializer(item[\"certificate\"]),\n };\n}\n\n/** The certificate configuration. */\nexport interface CertificateConfiguration {\n /** The configuration to set up an ICA. */\n certificateAuthorityConfiguration: CertificateAuthorityConfiguration;\n /** The leaf certificate configuration. */\n leafCertificateConfiguration: LeafCertificateConfiguration;\n}\n\nexport function certificateConfigurationSerializer(item: CertificateConfiguration): any {\n return {\n certificateAuthorityConfiguration: certificateAuthorityConfigurationSerializer(\n item[\"certificateAuthorityConfiguration\"],\n ),\n leafCertificateConfiguration: leafCertificateConfigurationSerializer(\n item[\"leafCertificateConfiguration\"],\n ),\n };\n}\n\nexport function certificateConfigurationDeserializer(item: any): CertificateConfiguration {\n return {\n certificateAuthorityConfiguration: certificateAuthorityConfigurationDeserializer(\n item[\"certificateAuthorityConfiguration\"],\n ),\n leafCertificateConfiguration: leafCertificateConfigurationDeserializer(\n item[\"leafCertificateConfiguration\"],\n ),\n };\n}\n\n/** The configuration to set up an ICA. */\nexport interface CertificateAuthorityConfiguration {\n /** Crypto type: ECC. */\n keyType: SupportedKeyType;\n /** Certificate subject. */\n readonly subject?: string;\n /** Certificate is valid not before this date. Format ISO8601. Generated based on on validity period. */\n readonly validityNotBefore?: Date;\n /** Certificate is valid not after this date. Format ISO8601. Generated based on validity period. */\n readonly validityNotAfter?: Date;\n /** Configuration for Bring Your Own Root. */\n bringYourOwnRoot?: BringYourOwnRoot;\n}\n\nexport function certificateAuthorityConfigurationSerializer(\n item: CertificateAuthorityConfiguration,\n): any {\n return {\n keyType: item[\"keyType\"],\n bringYourOwnRoot: !item[\"bringYourOwnRoot\"]\n ? item[\"bringYourOwnRoot\"]\n : bringYourOwnRootSerializer(item[\"bringYourOwnRoot\"]),\n };\n}\n\nexport function certificateAuthorityConfigurationDeserializer(\n item: any,\n): CertificateAuthorityConfiguration {\n return {\n keyType: item[\"keyType\"],\n subject: item[\"subject\"],\n validityNotBefore: !item[\"validityNotBefore\"]\n ? item[\"validityNotBefore\"]\n : new Date(item[\"validityNotBefore\"]),\n validityNotAfter: !item[\"validityNotAfter\"]\n ? item[\"validityNotAfter\"]\n : new Date(item[\"validityNotAfter\"]),\n bringYourOwnRoot: !item[\"bringYourOwnRoot\"]\n ? item[\"bringYourOwnRoot\"]\n : bringYourOwnRootDeserializer(item[\"bringYourOwnRoot\"]),\n };\n}\n\n/** Supported key types. */\nexport enum KnownSupportedKeyType {\n /** Indicates the ECC key type. */\n ECC = \"ECC\",\n}\n\n/**\n * Supported key types. \\\n * {@link KnownSupportedKeyType} can be used interchangeably with SupportedKeyType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ECC**: Indicates the ECC key type.\n */\nexport type SupportedKeyType = string;\n\n/** Configuration for Bring Your Own Root. When enabled, customers provide their own CA-signed certificates instead of using the service-managed CA. */\nexport interface BringYourOwnRoot {\n /** Indicates whether Bring Your Own Root is enabled. This can only be set at creation time and cannot be changed afterward. */\n enabled: boolean;\n /** Certificate Signing Request (CSR) in PEM format, generated by the service. Sign this CSR with your Certificate Authority and activate via the activateBringYourOwnRoot action. A new CSR is generated at policy creation and when certificates near expiration. */\n readonly certificateSigningRequest?: string;\n /** Thumbprint of the issuing certificate. */\n readonly issuingCertificateThumbprint?: string;\n /** The status of the Bring Your Own Root configuration, indicating the current state of the certificate lifecycle. */\n readonly status?: BringYourOwnRootStatus;\n}\n\nexport function bringYourOwnRootSerializer(item: BringYourOwnRoot): any {\n return { enabled: item[\"enabled\"] };\n}\n\nexport function bringYourOwnRootDeserializer(item: any): BringYourOwnRoot {\n return {\n enabled: item[\"enabled\"],\n certificateSigningRequest: item[\"certificateSigningRequest\"],\n issuingCertificateThumbprint: item[\"issuingCertificateThumbprint\"],\n status: item[\"status\"],\n };\n}\n\n/** Status of the Bring Your Own Root configuration. */\nexport enum KnownBringYourOwnRootStatus {\n /** The CSR has been generated and is waiting for the customer to provide the signed certificate. */\n PendingActivation = \"PendingActivation\",\n /** The signed certificate has been successfully uploaded and validated, and the CA is active. */\n Active = \"Active\",\n /** The certificate is nearing expiration (within renewal window) or has expired. A new CSR has been generated and is waiting for the customer to provide a new signed certificate. */\n ActiveButPendingRenewal = \"ActiveButPendingRenewal\",\n}\n\n/**\n * Status of the Bring Your Own Root configuration. \\\n * {@link KnownBringYourOwnRootStatus} can be used interchangeably with BringYourOwnRootStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **PendingActivation**: The CSR has been generated and is waiting for the customer to provide the signed certificate. \\\n * **Active**: The signed certificate has been successfully uploaded and validated, and the CA is active. \\\n * **ActiveButPendingRenewal**: The certificate is nearing expiration (within renewal window) or has expired. A new CSR has been generated and is waiting for the customer to provide a new signed certificate.\n */\nexport type BringYourOwnRootStatus = string;\n\n/** The leaf certificate configuration. */\nexport interface LeafCertificateConfiguration {\n /** The validity period in days. */\n validityPeriodInDays: number;\n}\n\nexport function leafCertificateConfigurationSerializer(item: LeafCertificateConfiguration): any {\n return { validityPeriodInDays: item[\"validityPeriodInDays\"] };\n}\n\nexport function leafCertificateConfigurationDeserializer(item: any): LeafCertificateConfiguration {\n return {\n validityPeriodInDays: item[\"validityPeriodInDays\"],\n };\n}\n\n/** A Credential Policy */\nexport interface PolicyUpdate {\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The resource-specific properties for this resource. */\n properties?: PolicyUpdateProperties;\n}\n\nexport function policyUpdateSerializer(item: PolicyUpdate): any {\n return {\n tags: item[\"tags\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : policyUpdatePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** Details of the Credential Policy. */\nexport interface PolicyUpdateProperties {\n /** The certificate configuration. */\n certificate?: CertificateConfigurationUpdate;\n}\n\nexport function policyUpdatePropertiesSerializer(item: PolicyUpdateProperties): any {\n return {\n certificate: !item[\"certificate\"]\n ? item[\"certificate\"]\n : certificateConfigurationUpdateSerializer(item[\"certificate\"]),\n };\n}\n\n/** The updatable certificate configuration for Policy. */\nexport interface CertificateConfigurationUpdate {\n /** The configuration to set up an ICA. */\n certificateAuthorityConfiguration?: CertificateAuthorityConfigurationUpdate;\n /** The leaf certificate configuration. */\n leafCertificateConfiguration: LeafCertificateConfigurationUpdate;\n}\n\nexport function certificateConfigurationUpdateSerializer(\n item: CertificateConfigurationUpdate,\n): any {\n return {\n certificateAuthorityConfiguration: !item[\"certificateAuthorityConfiguration\"]\n ? item[\"certificateAuthorityConfiguration\"]\n : certificateAuthorityConfigurationUpdateSerializer(\n item[\"certificateAuthorityConfiguration\"],\n ),\n leafCertificateConfiguration: leafCertificateConfigurationUpdateSerializer(\n item[\"leafCertificateConfiguration\"],\n ),\n };\n}\n\n/** The configuration to set up an ICA. */\nexport interface CertificateAuthorityConfigurationUpdate {\n /** Configuration for Bring Your Own Root. */\n bringYourOwnRoot?: BringYourOwnRootUpdate;\n}\n\nexport function certificateAuthorityConfigurationUpdateSerializer(\n item: CertificateAuthorityConfigurationUpdate,\n): any {\n return {\n bringYourOwnRoot: !item[\"bringYourOwnRoot\"]\n ? item[\"bringYourOwnRoot\"]\n : bringYourOwnRootUpdateSerializer(item[\"bringYourOwnRoot\"]),\n };\n}\n\n/** Configuration for Bring Your Own Root. When enabled, customers provide their own CA-signed certificates instead of using the service-managed CA. */\nexport interface BringYourOwnRootUpdate {}\n\nexport function bringYourOwnRootUpdateSerializer(_item: BringYourOwnRootUpdate): any {\n return {};\n}\n\n/** The updatable leaf certificate configuration for Policy. */\nexport interface LeafCertificateConfigurationUpdate {\n /** The validity period in days. */\n validityPeriodInDays: number;\n}\n\nexport function leafCertificateConfigurationUpdateSerializer(\n item: LeafCertificateConfigurationUpdate,\n): any {\n return { validityPeriodInDays: item[\"validityPeriodInDays\"] };\n}\n\n/** The response of a Policy list operation. */\nexport interface _PolicyListResult {\n /** The Policy items on this page */\n value: Policy[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _policyListResultDeserializer(item: any): _PolicyListResult {\n return {\n value: policyArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function policyArraySerializer(result: Array<Policy>): any[] {\n return result.map((item) => {\n return policySerializer(item);\n });\n}\n\nexport function policyArrayDeserializer(result: Array<Policy>): any[] {\n return result.map((item) => {\n return policyDeserializer(item);\n });\n}\n\n/** Request payload for activating a Bring Your Own Root policy with a customer-provided signed certificate. */\nexport interface ActivateBringYourOwnRootRequest {\n /** Certificate chain in PEM format, including the signed certificate. The first certificate must be the signed certificate (matching the CSR generated by the service), followed by any intermediate CAs, and optionally the root CA. Certificates must be ordered from leaf to root and concatenated in PEM format. */\n certificateChain: string;\n}\n\nexport function activateBringYourOwnRootRequestSerializer(\n item: ActivateBringYourOwnRootRequest,\n): any {\n return { certificateChain: item[\"certificateChain\"] };\n}\n\n/** Asset definition. */\nexport interface NamespaceAsset extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: NamespaceAssetProperties;\n /** The extended location. */\n extendedLocation: ExtendedLocation;\n}\n\nexport function namespaceAssetSerializer(item: NamespaceAsset): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceAssetPropertiesSerializer(item[\"properties\"]),\n extendedLocation: extendedLocationSerializer(item[\"extendedLocation\"]),\n };\n}\n\nexport function namespaceAssetDeserializer(item: any): NamespaceAsset {\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceAssetPropertiesDeserializer(item[\"properties\"]),\n extendedLocation: extendedLocationDeserializer(item[\"extendedLocation\"]),\n };\n}\n\n/** Defines the asset properties. */\nexport interface NamespaceAssetProperties {\n /** Globally unique, immutable, non-reusable ID. */\n readonly uuid?: string;\n /** Enabled/disabled status of the asset. */\n enabled?: boolean;\n /** Asset ID provided by the customer. */\n externalAssetId?: string;\n /** Human-readable display name. */\n displayName?: string;\n /** Human-readable description of the asset. */\n description?: string;\n /** Reference to the device that provides data for this asset. Must provide device name & endpoint on the device to use. */\n deviceRef: DeviceRef;\n /** URIs or type definition IDs. */\n assetTypeRefs?: string[];\n /** An integer that is incremented each time the resource is modified. */\n readonly version?: number;\n /** A timestamp (in UTC) that is updated each time the resource is modified. */\n readonly lastTransitionTime?: Date;\n /** Asset manufacturer. */\n manufacturer?: string;\n /** Asset manufacturer URI. */\n manufacturerUri?: string;\n /** Asset model. */\n model?: string;\n /** Asset product code. */\n productCode?: string;\n /** Asset hardware revision number. */\n hardwareRevision?: string;\n /** Asset software revision number. */\n softwareRevision?: string;\n /** Asset documentation reference. */\n documentationUri?: string;\n /** Asset serial number. */\n serialNumber?: string;\n /** A set of key-value pairs that contain custom attributes set by the customer. */\n attributes?: Record<string, any>;\n /** Reference to a list of discovered assets. Populated only if the asset has been created from discovery flow. Discovered asset names must be provided. */\n discoveredAssetRefs?: string[];\n /** Stringified JSON that contains connector-specific default configuration for all datasets. Each dataset can have its own configuration that overrides the default settings here. */\n defaultDatasetsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all events. Each event can have its own configuration that overrides the default settings here. */\n defaultEventsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all streams. Each stream can have its own configuration that overrides the default settings here. */\n defaultStreamsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all management groups. Each management group can have its own configuration that overrides the default settings here. */\n defaultManagementGroupsConfiguration?: string;\n /** Default destinations for a dataset. */\n defaultDatasetsDestinations?: DatasetDestinationUnion[];\n /** Default destinations for an event. */\n defaultEventsDestinations?: EventDestinationUnion[];\n /** Default destinations for a stream. */\n defaultStreamsDestinations?: StreamDestinationUnion[];\n /** Array of datasets that are part of the asset. Each dataset describes the data points that make up the set. */\n datasets?: NamespaceDataset[];\n /** Array of event groups that are part of the asset. Each event group can have per-event group configuration. */\n eventGroups?: NamespaceEventGroup[];\n /** Array of streams that are part of the asset. Each stream can have a per-stream configuration. */\n streams?: NamespaceStream[];\n /** Array of management groups that are part of the asset. Each management group can have a per-group configuration. */\n managementGroups?: ManagementGroup[];\n /** Read only object to reflect changes that have occurred on the Edge. Similar to Kubernetes status property for custom resources. */\n readonly status?: NamespaceAssetStatus;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function namespaceAssetPropertiesSerializer(item: NamespaceAssetProperties): any {\n return {\n enabled: item[\"enabled\"],\n externalAssetId: item[\"externalAssetId\"],\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n deviceRef: deviceRefSerializer(item[\"deviceRef\"]),\n assetTypeRefs: !item[\"assetTypeRefs\"]\n ? item[\"assetTypeRefs\"]\n : item[\"assetTypeRefs\"].map((p: any) => {\n return p;\n }),\n manufacturer: item[\"manufacturer\"],\n manufacturerUri: item[\"manufacturerUri\"],\n model: item[\"model\"],\n productCode: item[\"productCode\"],\n hardwareRevision: item[\"hardwareRevision\"],\n softwareRevision: item[\"softwareRevision\"],\n documentationUri: item[\"documentationUri\"],\n serialNumber: item[\"serialNumber\"],\n attributes: item[\"attributes\"],\n discoveredAssetRefs: !item[\"discoveredAssetRefs\"]\n ? item[\"discoveredAssetRefs\"]\n : item[\"discoveredAssetRefs\"].map((p: any) => {\n return p;\n }),\n defaultDatasetsConfiguration: item[\"defaultDatasetsConfiguration\"],\n defaultEventsConfiguration: item[\"defaultEventsConfiguration\"],\n defaultStreamsConfiguration: item[\"defaultStreamsConfiguration\"],\n defaultManagementGroupsConfiguration: item[\"defaultManagementGroupsConfiguration\"],\n defaultDatasetsDestinations: !item[\"defaultDatasetsDestinations\"]\n ? item[\"defaultDatasetsDestinations\"]\n : datasetDestinationUnionArraySerializer(item[\"defaultDatasetsDestinations\"]),\n defaultEventsDestinations: !item[\"defaultEventsDestinations\"]\n ? item[\"defaultEventsDestinations\"]\n : eventDestinationUnionArraySerializer(item[\"defaultEventsDestinations\"]),\n defaultStreamsDestinations: !item[\"defaultStreamsDestinations\"]\n ? item[\"defaultStreamsDestinations\"]\n : streamDestinationUnionArraySerializer(item[\"defaultStreamsDestinations\"]),\n datasets: !item[\"datasets\"]\n ? item[\"datasets\"]\n : namespaceDatasetArraySerializer(item[\"datasets\"]),\n eventGroups: !item[\"eventGroups\"]\n ? item[\"eventGroups\"]\n : namespaceEventGroupArraySerializer(item[\"eventGroups\"]),\n streams: !item[\"streams\"] ? item[\"streams\"] : namespaceStreamArraySerializer(item[\"streams\"]),\n managementGroups: !item[\"managementGroups\"]\n ? item[\"managementGroups\"]\n : managementGroupArraySerializer(item[\"managementGroups\"]),\n };\n}\n\nexport function namespaceAssetPropertiesDeserializer(item: any): NamespaceAssetProperties {\n return {\n uuid: item[\"uuid\"],\n enabled: item[\"enabled\"],\n externalAssetId: item[\"externalAssetId\"],\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n deviceRef: deviceRefDeserializer(item[\"deviceRef\"]),\n assetTypeRefs: !item[\"assetTypeRefs\"]\n ? item[\"assetTypeRefs\"]\n : item[\"assetTypeRefs\"].map((p: any) => {\n return p;\n }),\n version: item[\"version\"],\n lastTransitionTime: !item[\"lastTransitionTime\"]\n ? item[\"lastTransitionTime\"]\n : new Date(item[\"lastTransitionTime\"]),\n manufacturer: item[\"manufacturer\"],\n manufacturerUri: item[\"manufacturerUri\"],\n model: item[\"model\"],\n productCode: item[\"productCode\"],\n hardwareRevision: item[\"hardwareRevision\"],\n softwareRevision: item[\"softwareRevision\"],\n documentationUri: item[\"documentationUri\"],\n serialNumber: item[\"serialNumber\"],\n attributes: !item[\"attributes\"]\n ? item[\"attributes\"]\n : Object.fromEntries(\n Object.entries(item[\"attributes\"]).map(([k, p]: [string, any]) => [k, p]),\n ),\n discoveredAssetRefs: !item[\"discoveredAssetRefs\"]\n ? item[\"discoveredAssetRefs\"]\n : item[\"discoveredAssetRefs\"].map((p: any) => {\n return p;\n }),\n defaultDatasetsConfiguration: item[\"defaultDatasetsConfiguration\"],\n defaultEventsConfiguration: item[\"defaultEventsConfiguration\"],\n defaultStreamsConfiguration: item[\"defaultStreamsConfiguration\"],\n defaultManagementGroupsConfiguration: item[\"defaultManagementGroupsConfiguration\"],\n defaultDatasetsDestinations: !item[\"defaultDatasetsDestinations\"]\n ? item[\"defaultDatasetsDestinations\"]\n : datasetDestinationUnionArrayDeserializer(item[\"defaultDatasetsDestinations\"]),\n defaultEventsDestinations: !item[\"defaultEventsDestinations\"]\n ? item[\"defaultEventsDestinations\"]\n : eventDestinationUnionArrayDeserializer(item[\"defaultEventsDestinations\"]),\n defaultStreamsDestinations: !item[\"defaultStreamsDestinations\"]\n ? item[\"defaultStreamsDestinations\"]\n : streamDestinationUnionArrayDeserializer(item[\"defaultStreamsDestinations\"]),\n datasets: !item[\"datasets\"]\n ? item[\"datasets\"]\n : namespaceDatasetArrayDeserializer(item[\"datasets\"]),\n eventGroups: !item[\"eventGroups\"]\n ? item[\"eventGroups\"]\n : namespaceEventGroupArrayDeserializer(item[\"eventGroups\"]),\n streams: !item[\"streams\"] ? item[\"streams\"] : namespaceStreamArrayDeserializer(item[\"streams\"]),\n managementGroups: !item[\"managementGroups\"]\n ? item[\"managementGroups\"]\n : managementGroupArrayDeserializer(item[\"managementGroups\"]),\n status: !item[\"status\"] ? item[\"status\"] : namespaceAssetStatusDeserializer(item[\"status\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** Defines which device and endpoint to use for this asset */\nexport interface DeviceRef {\n /** Name of the device resource */\n deviceName: string;\n /** The name of endpoint to use */\n endpointName: string;\n}\n\nexport function deviceRefSerializer(item: DeviceRef): any {\n return { deviceName: item[\"deviceName\"], endpointName: item[\"endpointName\"] };\n}\n\nexport function deviceRefDeserializer(item: any): DeviceRef {\n return {\n deviceName: item[\"deviceName\"],\n endpointName: item[\"endpointName\"],\n };\n}\n\nexport function datasetDestinationUnionArraySerializer(\n result: Array<DatasetDestinationUnion>,\n): any[] {\n return result.map((item) => {\n return datasetDestinationUnionSerializer(item);\n });\n}\n\nexport function datasetDestinationUnionArrayDeserializer(\n result: Array<DatasetDestinationUnion>,\n): any[] {\n return result.map((item) => {\n return datasetDestinationUnionDeserializer(item);\n });\n}\n\n/** The type of the destination. */\nexport interface DatasetDestination {\n /** Target destination. */\n /** The discriminator possible values: Mqtt, BrokerStateStore, Storage */\n target?: DatasetDestinationTarget;\n}\n\nexport function datasetDestinationSerializer(item: DatasetDestination): any {\n return { target: item[\"target\"] };\n}\n\nexport function datasetDestinationDeserializer(item: any): DatasetDestination {\n return {\n target: item[\"target\"],\n };\n}\n\n/** Alias for DatasetDestinationUnion */\nexport type DatasetDestinationUnion =\n | DatasetMqttDestination\n | DatasetBrokerStateStoreDestination\n | DatasetStorageDestination\n | DatasetDestination;\n\nexport function datasetDestinationUnionSerializer(item: DatasetDestinationUnion): any {\n switch (item.target) {\n case \"Mqtt\":\n return datasetMqttDestinationSerializer(item as DatasetMqttDestination);\n\n case \"BrokerStateStore\":\n return datasetBrokerStateStoreDestinationSerializer(\n item as DatasetBrokerStateStoreDestination,\n );\n\n case \"Storage\":\n return datasetStorageDestinationSerializer(item as DatasetStorageDestination);\n\n default:\n return datasetDestinationSerializer(item);\n }\n}\n\nexport function datasetDestinationUnionDeserializer(item: any): DatasetDestinationUnion {\n switch (item[\"target\"]) {\n case \"Mqtt\":\n return datasetMqttDestinationDeserializer(item as DatasetMqttDestination);\n\n case \"BrokerStateStore\":\n return datasetBrokerStateStoreDestinationDeserializer(\n item as DatasetBrokerStateStoreDestination,\n );\n\n case \"Storage\":\n return datasetStorageDestinationDeserializer(item as DatasetStorageDestination);\n\n default:\n return datasetDestinationDeserializer(item);\n }\n}\n\n/** The set of supported dataset destinations for an asset. */\nexport enum KnownDatasetDestinationTarget {\n /** MQTT target. */\n Mqtt = \"Mqtt\",\n /** Broker State Store target. */\n BrokerStateStore = \"BrokerStateStore\",\n /** Storage target. */\n Storage = \"Storage\",\n}\n\n/**\n * The set of supported dataset destinations for an asset. \\\n * {@link KnownDatasetDestinationTarget} can be used interchangeably with DatasetDestinationTarget,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Mqtt**: MQTT target. \\\n * **BrokerStateStore**: Broker State Store target. \\\n * **Storage**: Storage target.\n */\nexport type DatasetDestinationTarget = string;\n\n/** The type for a MQTT destination. */\nexport interface DatasetMqttDestination extends DatasetDestination {\n /** The MQTT destination type. */\n target: \"Mqtt\";\n /** The MQTT destination configuration. */\n configuration: MqttDestinationConfiguration;\n}\n\nexport function datasetMqttDestinationSerializer(item: DatasetMqttDestination): any {\n return {\n target: item[\"target\"],\n configuration: mqttDestinationConfigurationSerializer(item[\"configuration\"]),\n };\n}\n\nexport function datasetMqttDestinationDeserializer(item: any): DatasetMqttDestination {\n return {\n target: item[\"target\"],\n configuration: mqttDestinationConfigurationDeserializer(item[\"configuration\"]),\n };\n}\n\n/** The configuration for a MQTT destination. */\nexport interface MqttDestinationConfiguration {\n /** The MQTT topic. */\n topic: string;\n /** When set to 'Keep', messages published to an MQTT broker will have the retain flag set. Default: 'Never'. */\n retain?: TopicRetainType;\n /** The MQTT QoS setting. Defaults to QoS 1. */\n qos?: MqttDestinationQos;\n /** The MQTT TTL setting. */\n ttl?: number;\n}\n\nexport function mqttDestinationConfigurationSerializer(item: MqttDestinationConfiguration): any {\n return { topic: item[\"topic\"], retain: item[\"retain\"], qos: item[\"qos\"], ttl: item[\"ttl\"] };\n}\n\nexport function mqttDestinationConfigurationDeserializer(item: any): MqttDestinationConfiguration {\n return {\n topic: item[\"topic\"],\n retain: item[\"retain\"],\n qos: item[\"qos\"],\n ttl: item[\"ttl\"],\n };\n}\n\n/** The set of supported QoS types for a MQTT destination. */\nexport enum KnownMqttDestinationQos {\n /** QoS 0. */\n Qos0 = \"Qos0\",\n /** QoS 1. */\n Qos1 = \"Qos1\",\n}\n\n/**\n * The set of supported QoS types for a MQTT destination. \\\n * {@link KnownMqttDestinationQos} can be used interchangeably with MqttDestinationQos,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Qos0**: QoS 0. \\\n * **Qos1**: QoS 1.\n */\nexport type MqttDestinationQos = string;\n\n/** The type for a MQTT broker state store destination. */\nexport interface DatasetBrokerStateStoreDestination extends DatasetDestination {\n /** The MQTT broker state store destination target. */\n target: \"BrokerStateStore\";\n /** The MQTT broker state store destination configuration. */\n configuration: BrokerStateStoreDestinationConfiguration;\n}\n\nexport function datasetBrokerStateStoreDestinationSerializer(\n item: DatasetBrokerStateStoreDestination,\n): any {\n return {\n target: item[\"target\"],\n configuration: brokerStateStoreDestinationConfigurationSerializer(item[\"configuration\"]),\n };\n}\n\nexport function datasetBrokerStateStoreDestinationDeserializer(\n item: any,\n): DatasetBrokerStateStoreDestination {\n return {\n target: item[\"target\"],\n configuration: brokerStateStoreDestinationConfigurationDeserializer(item[\"configuration\"]),\n };\n}\n\n/** The configuration for a MQTT broker state store destination. */\nexport interface BrokerStateStoreDestinationConfiguration {\n /** The MQTT broker state store destination key. */\n key: string;\n}\n\nexport function brokerStateStoreDestinationConfigurationSerializer(\n item: BrokerStateStoreDestinationConfiguration,\n): any {\n return { key: item[\"key\"] };\n}\n\nexport function brokerStateStoreDestinationConfigurationDeserializer(\n item: any,\n): BrokerStateStoreDestinationConfiguration {\n return {\n key: item[\"key\"],\n };\n}\n\n/** The type for a storage destination. */\nexport interface DatasetStorageDestination extends DatasetDestination {\n /** The storage destination type. */\n target: \"Storage\";\n /** The storage destination configuration. */\n configuration: StorageDestinationConfiguration;\n}\n\nexport function datasetStorageDestinationSerializer(item: DatasetStorageDestination): any {\n return {\n target: item[\"target\"],\n configuration: storageDestinationConfigurationSerializer(item[\"configuration\"]),\n };\n}\n\nexport function datasetStorageDestinationDeserializer(item: any): DatasetStorageDestination {\n return {\n target: item[\"target\"],\n configuration: storageDestinationConfigurationDeserializer(item[\"configuration\"]),\n };\n}\n\n/** The configuration for a storage destination. */\nexport interface StorageDestinationConfiguration {\n /** The storage destination path. */\n path: string;\n}\n\nexport function storageDestinationConfigurationSerializer(\n item: StorageDestinationConfiguration,\n): any {\n return { path: item[\"path\"] };\n}\n\nexport function storageDestinationConfigurationDeserializer(\n item: any,\n): StorageDestinationConfiguration {\n return {\n path: item[\"path\"],\n };\n}\n\nexport function eventDestinationUnionArraySerializer(result: Array<EventDestinationUnion>): any[] {\n return result.map((item) => {\n return eventDestinationUnionSerializer(item);\n });\n}\n\nexport function eventDestinationUnionArrayDeserializer(\n result: Array<EventDestinationUnion>,\n): any[] {\n return result.map((item) => {\n return eventDestinationUnionDeserializer(item);\n });\n}\n\n/** The type of the destination. */\nexport interface EventDestination {\n /** Target destination. */\n /** The discriminator possible values: Mqtt, Storage */\n target?: EventDestinationTarget;\n}\n\nexport function eventDestinationSerializer(item: EventDestination): any {\n return { target: item[\"target\"] };\n}\n\nexport function eventDestinationDeserializer(item: any): EventDestination {\n return {\n target: item[\"target\"],\n };\n}\n\n/** Alias for EventDestinationUnion */\nexport type EventDestinationUnion =\n | EventMqttDestination\n | EventStorageDestination\n | EventDestination;\n\nexport function eventDestinationUnionSerializer(item: EventDestinationUnion): any {\n switch (item.target) {\n case \"Mqtt\":\n return eventMqttDestinationSerializer(item as EventMqttDestination);\n\n case \"Storage\":\n return eventStorageDestinationSerializer(item as EventStorageDestination);\n\n default:\n return eventDestinationSerializer(item);\n }\n}\n\nexport function eventDestinationUnionDeserializer(item: any): EventDestinationUnion {\n switch (item[\"target\"]) {\n case \"Mqtt\":\n return eventMqttDestinationDeserializer(item as EventMqttDestination);\n\n case \"Storage\":\n return eventStorageDestinationDeserializer(item as EventStorageDestination);\n\n default:\n return eventDestinationDeserializer(item);\n }\n}\n\n/** The set of supported event destinations for an asset. */\nexport enum KnownEventDestinationTarget {\n /** MQTT target. */\n Mqtt = \"Mqtt\",\n /** Storage target. */\n Storage = \"Storage\",\n}\n\n/**\n * The set of supported event destinations for an asset. \\\n * {@link KnownEventDestinationTarget} can be used interchangeably with EventDestinationTarget,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Mqtt**: MQTT target. \\\n * **Storage**: Storage target.\n */\nexport type EventDestinationTarget = string;\n\n/** The type for a MQTT destination. */\nexport interface EventMqttDestination extends EventDestination {\n /** The MQTT destination type. */\n target: \"Mqtt\";\n /** The MQTT destination configuration. */\n configuration: MqttDestinationConfiguration;\n}\n\nexport function eventMqttDestinationSerializer(item: EventMqttDestination): any {\n return {\n target: item[\"target\"],\n configuration: mqttDestinationConfigurationSerializer(item[\"configuration\"]),\n };\n}\n\nexport function eventMqttDestinationDeserializer(item: any): EventMqttDestination {\n return {\n target: item[\"target\"],\n configuration: mqttDestinationConfigurationDeserializer(item[\"configuration\"]),\n };\n}\n\n/** The type for a storage destination. */\nexport interface EventStorageDestination extends EventDestination {\n /** The storage destination type. */\n target: \"Storage\";\n /** The storage destination configuration. */\n configuration: StorageDestinationConfiguration;\n}\n\nexport function eventStorageDestinationSerializer(item: EventStorageDestination): any {\n return {\n target: item[\"target\"],\n configuration: storageDestinationConfigurationSerializer(item[\"configuration\"]),\n };\n}\n\nexport function eventStorageDestinationDeserializer(item: any): EventStorageDestination {\n return {\n target: item[\"target\"],\n configuration: storageDestinationConfigurationDeserializer(item[\"configuration\"]),\n };\n}\n\nexport function streamDestinationUnionArraySerializer(\n result: Array<StreamDestinationUnion>,\n): any[] {\n return result.map((item) => {\n return streamDestinationUnionSerializer(item);\n });\n}\n\nexport function streamDestinationUnionArrayDeserializer(\n result: Array<StreamDestinationUnion>,\n): any[] {\n return result.map((item) => {\n return streamDestinationUnionDeserializer(item);\n });\n}\n\n/** The type of the destination. */\nexport interface StreamDestination {\n /** Target destination. */\n /** The discriminator possible values: Mqtt, Storage */\n target?: StreamDestinationTarget;\n}\n\nexport function streamDestinationSerializer(item: StreamDestination): any {\n return { target: item[\"target\"] };\n}\n\nexport function streamDestinationDeserializer(item: any): StreamDestination {\n return {\n target: item[\"target\"],\n };\n}\n\n/** Alias for StreamDestinationUnion */\nexport type StreamDestinationUnion =\n | StreamMqttDestination\n | StreamStorageDestination\n | StreamDestination;\n\nexport function streamDestinationUnionSerializer(item: StreamDestinationUnion): any {\n switch (item.target) {\n case \"Mqtt\":\n return streamMqttDestinationSerializer(item as StreamMqttDestination);\n\n case \"Storage\":\n return streamStorageDestinationSerializer(item as StreamStorageDestination);\n\n default:\n return streamDestinationSerializer(item);\n }\n}\n\nexport function streamDestinationUnionDeserializer(item: any): StreamDestinationUnion {\n switch (item[\"target\"]) {\n case \"Mqtt\":\n return streamMqttDestinationDeserializer(item as StreamMqttDestination);\n\n case \"Storage\":\n return streamStorageDestinationDeserializer(item as StreamStorageDestination);\n\n default:\n return streamDestinationDeserializer(item);\n }\n}\n\n/** The set of supported stream destinations for an asset. */\nexport enum KnownStreamDestinationTarget {\n /** MQTT target. */\n Mqtt = \"Mqtt\",\n /** Storage target. */\n Storage = \"Storage\",\n}\n\n/**\n * The set of supported stream destinations for an asset. \\\n * {@link KnownStreamDestinationTarget} can be used interchangeably with StreamDestinationTarget,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Mqtt**: MQTT target. \\\n * **Storage**: Storage target.\n */\nexport type StreamDestinationTarget = string;\n\n/** The type for a MQTT destination. */\nexport interface StreamMqttDestination extends StreamDestination {\n /** The MQTT destination type. */\n target: \"Mqtt\";\n /** The MQTT destination configuration. */\n configuration: MqttDestinationConfiguration;\n}\n\nexport function streamMqttDestinationSerializer(item: StreamMqttDestination): any {\n return {\n target: item[\"target\"],\n configuration: mqttDestinationConfigurationSerializer(item[\"configuration\"]),\n };\n}\n\nexport function streamMqttDestinationDeserializer(item: any): StreamMqttDestination {\n return {\n target: item[\"target\"],\n configuration: mqttDestinationConfigurationDeserializer(item[\"configuration\"]),\n };\n}\n\n/** The type for a storage destination. */\nexport interface StreamStorageDestination extends StreamDestination {\n /** The storage destination type. */\n target: \"Storage\";\n /** The storage destination configuration. */\n configuration: StorageDestinationConfiguration;\n}\n\nexport function streamStorageDestinationSerializer(item: StreamStorageDestination): any {\n return {\n target: item[\"target\"],\n configuration: storageDestinationConfigurationSerializer(item[\"configuration\"]),\n };\n}\n\nexport function streamStorageDestinationDeserializer(item: any): StreamStorageDestination {\n return {\n target: item[\"target\"],\n configuration: storageDestinationConfigurationDeserializer(item[\"configuration\"]),\n };\n}\n\nexport function namespaceDatasetArraySerializer(result: Array<NamespaceDataset>): any[] {\n return result.map((item) => {\n return namespaceDatasetSerializer(item);\n });\n}\n\nexport function namespaceDatasetArrayDeserializer(result: Array<NamespaceDataset>): any[] {\n return result.map((item) => {\n return namespaceDatasetDeserializer(item);\n });\n}\n\n/** Defines the dataset properties. */\nexport interface NamespaceDataset {\n /** Name of the dataset. */\n name: string;\n /** Reference to a data source for a given dataset. */\n dataSource?: string;\n /** URI or type definition ID. */\n typeRef?: string;\n /** Stringified JSON that contains connector-specific JSON string that describes configuration for the specific dataset. */\n datasetConfiguration?: string;\n /** Destinations for a dataset. */\n destinations?: DatasetDestinationUnion[];\n /** Array of data points that are part of the dataset. Each data point can have per-data point configuration. */\n dataPoints?: NamespaceDatasetDataPoint[];\n}\n\nexport function namespaceDatasetSerializer(item: NamespaceDataset): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n typeRef: item[\"typeRef\"],\n datasetConfiguration: item[\"datasetConfiguration\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : datasetDestinationUnionArraySerializer(item[\"destinations\"]),\n dataPoints: !item[\"dataPoints\"]\n ? item[\"dataPoints\"]\n : namespaceDatasetDataPointArraySerializer(item[\"dataPoints\"]),\n };\n}\n\nexport function namespaceDatasetDeserializer(item: any): NamespaceDataset {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n typeRef: item[\"typeRef\"],\n datasetConfiguration: item[\"datasetConfiguration\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : datasetDestinationUnionArrayDeserializer(item[\"destinations\"]),\n dataPoints: !item[\"dataPoints\"]\n ? item[\"dataPoints\"]\n : namespaceDatasetDataPointArrayDeserializer(item[\"dataPoints\"]),\n };\n}\n\nexport function namespaceDatasetDataPointArraySerializer(\n result: Array<NamespaceDatasetDataPoint>,\n): any[] {\n return result.map((item) => {\n return namespaceDatasetDataPointSerializer(item);\n });\n}\n\nexport function namespaceDatasetDataPointArrayDeserializer(\n result: Array<NamespaceDatasetDataPoint>,\n): any[] {\n return result.map((item) => {\n return namespaceDatasetDataPointDeserializer(item);\n });\n}\n\n/** Defines the dataset data point properties. */\nexport interface NamespaceDatasetDataPoint {\n /** The name of the data point. */\n name: string;\n /** The address of the source of the data in the asset (e.g. URL) so that a client can access the data source on the asset. */\n dataSource: string;\n /** Stringified JSON that contains connector-specific configuration for the data point. For OPC UA, this could include configuration like, publishingInterval, samplingInterval, and queueSize. */\n dataPointConfiguration?: string;\n /** URI or type definition ID. */\n typeRef?: string;\n}\n\nexport function namespaceDatasetDataPointSerializer(item: NamespaceDatasetDataPoint): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n dataPointConfiguration: item[\"dataPointConfiguration\"],\n typeRef: item[\"typeRef\"],\n };\n}\n\nexport function namespaceDatasetDataPointDeserializer(item: any): NamespaceDatasetDataPoint {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n dataPointConfiguration: item[\"dataPointConfiguration\"],\n typeRef: item[\"typeRef\"],\n };\n}\n\nexport function namespaceEventGroupArraySerializer(result: Array<NamespaceEventGroup>): any[] {\n return result.map((item) => {\n return namespaceEventGroupSerializer(item);\n });\n}\n\nexport function namespaceEventGroupArrayDeserializer(result: Array<NamespaceEventGroup>): any[] {\n return result.map((item) => {\n return namespaceEventGroupDeserializer(item);\n });\n}\n\n/** Defines the event group properties. */\nexport interface NamespaceEventGroup {\n /** The name of the event group. */\n name: string;\n /** The address of the notifier of the event group in the asset (e.g. URL) so that a client can access the event group on the asset. */\n dataSource?: string;\n /** Stringified JSON that contains connector-specific configuration for the event group. For OPC UA, this could include configuration like, publishingInterval, samplingInterval, and queueSize. */\n eventGroupConfiguration?: string;\n /** Destinations for events. Default destinations when destinations is not defined at the event level. */\n defaultDestinations?: EventDestinationUnion[];\n /** URI or type definition ID. */\n typeRef?: string;\n /** Array of events that are part of the event group. */\n events?: NamespaceEvent[];\n}\n\nexport function namespaceEventGroupSerializer(item: NamespaceEventGroup): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n eventGroupConfiguration: item[\"eventGroupConfiguration\"],\n defaultDestinations: !item[\"defaultDestinations\"]\n ? item[\"defaultDestinations\"]\n : eventDestinationUnionArraySerializer(item[\"defaultDestinations\"]),\n typeRef: item[\"typeRef\"],\n events: !item[\"events\"] ? item[\"events\"] : namespaceEventArraySerializer(item[\"events\"]),\n };\n}\n\nexport function namespaceEventGroupDeserializer(item: any): NamespaceEventGroup {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n eventGroupConfiguration: item[\"eventGroupConfiguration\"],\n defaultDestinations: !item[\"defaultDestinations\"]\n ? item[\"defaultDestinations\"]\n : eventDestinationUnionArrayDeserializer(item[\"defaultDestinations\"]),\n typeRef: item[\"typeRef\"],\n events: !item[\"events\"] ? item[\"events\"] : namespaceEventArrayDeserializer(item[\"events\"]),\n };\n}\n\nexport function namespaceEventArraySerializer(result: Array<NamespaceEvent>): any[] {\n return result.map((item) => {\n return namespaceEventSerializer(item);\n });\n}\n\nexport function namespaceEventArrayDeserializer(result: Array<NamespaceEvent>): any[] {\n return result.map((item) => {\n return namespaceEventDeserializer(item);\n });\n}\n\n/** Defines the event properties. */\nexport interface NamespaceEvent {\n /** The name of the event. */\n name: string;\n /** Reference to a data source for a given event. */\n dataSource?: string;\n /** Stringified JSON that contains connector-specific configuration for the event. For OPC UA, this could include configuration like, publishingInterval, samplingInterval, and queueSize. */\n eventConfiguration?: string;\n /** Destinations for an event. */\n destinations?: EventDestinationUnion[];\n /** URI or type definition ID. */\n typeRef?: string;\n}\n\nexport function namespaceEventSerializer(item: NamespaceEvent): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n eventConfiguration: item[\"eventConfiguration\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : eventDestinationUnionArraySerializer(item[\"destinations\"]),\n typeRef: item[\"typeRef\"],\n };\n}\n\nexport function namespaceEventDeserializer(item: any): NamespaceEvent {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n eventConfiguration: item[\"eventConfiguration\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : eventDestinationUnionArrayDeserializer(item[\"destinations\"]),\n typeRef: item[\"typeRef\"],\n };\n}\n\nexport function namespaceStreamArraySerializer(result: Array<NamespaceStream>): any[] {\n return result.map((item) => {\n return namespaceStreamSerializer(item);\n });\n}\n\nexport function namespaceStreamArrayDeserializer(result: Array<NamespaceStream>): any[] {\n return result.map((item) => {\n return namespaceStreamDeserializer(item);\n });\n}\n\n/** Defines the stream properties. */\nexport interface NamespaceStream {\n /** Name of the stream definition. */\n name: string;\n /** Stringified JSON that contains connector-specific configuration for the specific stream. */\n streamConfiguration?: string;\n /** URI or type definition ID. */\n typeRef?: string;\n /** Destinations for a stream. */\n destinations?: StreamDestinationUnion[];\n}\n\nexport function namespaceStreamSerializer(item: NamespaceStream): any {\n return {\n name: item[\"name\"],\n streamConfiguration: item[\"streamConfiguration\"],\n typeRef: item[\"typeRef\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : streamDestinationUnionArraySerializer(item[\"destinations\"]),\n };\n}\n\nexport function namespaceStreamDeserializer(item: any): NamespaceStream {\n return {\n name: item[\"name\"],\n streamConfiguration: item[\"streamConfiguration\"],\n typeRef: item[\"typeRef\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : streamDestinationUnionArrayDeserializer(item[\"destinations\"]),\n };\n}\n\nexport function managementGroupArraySerializer(result: Array<ManagementGroup>): any[] {\n return result.map((item) => {\n return managementGroupSerializer(item);\n });\n}\n\nexport function managementGroupArrayDeserializer(result: Array<ManagementGroup>): any[] {\n return result.map((item) => {\n return managementGroupDeserializer(item);\n });\n}\n\n/** Defines the management group properties. */\nexport interface ManagementGroup {\n /** Name of the management group. */\n name: string;\n /** Reference to a data source for a given management group. */\n dataSource?: string;\n /** Stringified JSON that contains connector-specific configuration for the management group. */\n managementGroupConfiguration?: string;\n /** URI or type definition ID. */\n typeRef?: string;\n /** Default MQTT topic path on which a client will receive the request for all actions that are part of the management group. */\n defaultTopic?: string;\n /** Default response timeout for all actions that are part of the management group. */\n defaultTimeoutInSeconds?: number;\n /** Array of actions that are part of the management group. Each action can have an individual configuration. */\n actions?: ManagementAction[];\n}\n\nexport function managementGroupSerializer(item: ManagementGroup): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n managementGroupConfiguration: item[\"managementGroupConfiguration\"],\n typeRef: item[\"typeRef\"],\n defaultTopic: item[\"defaultTopic\"],\n defaultTimeoutInSeconds: item[\"defaultTimeoutInSeconds\"],\n actions: !item[\"actions\"] ? item[\"actions\"] : managementActionArraySerializer(item[\"actions\"]),\n };\n}\n\nexport function managementGroupDeserializer(item: any): ManagementGroup {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n managementGroupConfiguration: item[\"managementGroupConfiguration\"],\n typeRef: item[\"typeRef\"],\n defaultTopic: item[\"defaultTopic\"],\n defaultTimeoutInSeconds: item[\"defaultTimeoutInSeconds\"],\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : managementActionArrayDeserializer(item[\"actions\"]),\n };\n}\n\nexport function managementActionArraySerializer(result: Array<ManagementAction>): any[] {\n return result.map((item) => {\n return managementActionSerializer(item);\n });\n}\n\nexport function managementActionArrayDeserializer(result: Array<ManagementAction>): any[] {\n return result.map((item) => {\n return managementActionDeserializer(item);\n });\n}\n\n/** Defines the action properties. */\nexport interface ManagementAction {\n /** Name of the action. */\n name: string;\n /** Stringified JSON that contains connector-specific configuration for the action. */\n actionConfiguration?: string;\n /** The target URI on which a client can invoke the specific action. */\n targetUri: string;\n /** URI or type definition ID. */\n typeRef?: string;\n /** The MQTT topic path on which a client will receive the request for the action. */\n topic?: string;\n /** The type of the action. */\n actionType?: ManagementActionType;\n /** Response timeout for the action. */\n timeoutInSeconds?: number;\n}\n\nexport function managementActionSerializer(item: ManagementAction): any {\n return {\n name: item[\"name\"],\n actionConfiguration: item[\"actionConfiguration\"],\n targetUri: item[\"targetUri\"],\n typeRef: item[\"typeRef\"],\n topic: item[\"topic\"],\n actionType: item[\"actionType\"],\n timeoutInSeconds: item[\"timeoutInSeconds\"],\n };\n}\n\nexport function managementActionDeserializer(item: any): ManagementAction {\n return {\n name: item[\"name\"],\n actionConfiguration: item[\"actionConfiguration\"],\n targetUri: item[\"targetUri\"],\n typeRef: item[\"typeRef\"],\n topic: item[\"topic\"],\n actionType: item[\"actionType\"],\n timeoutInSeconds: item[\"timeoutInSeconds\"],\n };\n}\n\n/** Defines the ManagementAction's type. */\nexport enum KnownManagementActionType {\n /** Call action type. */\n Call = \"Call\",\n /** Read action type. */\n Read = \"Read\",\n /** Write action type. */\n Write = \"Write\",\n}\n\n/**\n * Defines the ManagementAction's type. \\\n * {@link KnownManagementActionType} can be used interchangeably with ManagementActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Call**: Call action type. \\\n * **Read**: Read action type. \\\n * **Write**: Write action type.\n */\nexport type ManagementActionType = string;\n\n/** Defines the asset status properties. */\nexport interface NamespaceAssetStatus {\n /** Defines the asset status config properties. */\n readonly config?: StatusConfig;\n /** Array of dataset statuses that describe the status of each dataset. */\n readonly datasets?: NamespaceAssetStatusDataset[];\n /** Array of event group statuses that describe the status of each event group. */\n readonly eventGroups?: NamespaceAssetStatusEventGroup[];\n /** Array of stream statuses that describe the status of each stream. */\n readonly streams?: NamespaceAssetStatusStream[];\n /** Array of management group statuses that describe the status of each management group. */\n readonly managementGroups?: NamespaceAssetStatusManagementGroup[];\n}\n\nexport function namespaceAssetStatusDeserializer(item: any): NamespaceAssetStatus {\n return {\n config: !item[\"config\"] ? item[\"config\"] : statusConfigDeserializer(item[\"config\"]),\n datasets: !item[\"datasets\"]\n ? item[\"datasets\"]\n : namespaceAssetStatusDatasetArrayDeserializer(item[\"datasets\"]),\n eventGroups: !item[\"eventGroups\"]\n ? item[\"eventGroups\"]\n : namespaceAssetStatusEventGroupArrayDeserializer(item[\"eventGroups\"]),\n streams: !item[\"streams\"]\n ? item[\"streams\"]\n : namespaceAssetStatusStreamArrayDeserializer(item[\"streams\"]),\n managementGroups: !item[\"managementGroups\"]\n ? item[\"managementGroups\"]\n : namespaceAssetStatusManagementGroupArrayDeserializer(item[\"managementGroups\"]),\n };\n}\n\n/** Defines the status config properties. */\nexport interface StatusConfig {\n /** A read-only incremental counter indicating the number of times the configuration has been modified from the perspective of the current actual (edge) state of the CRD. Edge would be the only writer of this value and would sync back up to the cloud. In steady state, this should equal version. */\n readonly version?: number;\n /** A read-only timestamp indicating the last time the configuration has been modified from the perspective of the current actual (edge) state of the CRD. Edge would be the only writer of this value and would sync back up to the cloud. */\n readonly lastTransitionTime?: Date;\n /** Object to transfer and persist errors that originate from the edge. */\n readonly error?: StatusError;\n}\n\nexport function statusConfigDeserializer(item: any): StatusConfig {\n return {\n version: item[\"version\"],\n lastTransitionTime: !item[\"lastTransitionTime\"]\n ? item[\"lastTransitionTime\"]\n : new Date(item[\"lastTransitionTime\"]),\n error: !item[\"error\"] ? item[\"error\"] : statusErrorDeserializer(item[\"error\"]),\n };\n}\n\n/** Defines the status config error properties. */\nexport interface StatusError {\n /** Error code for classification of errors (ex: '400', '404', '500', etc.). */\n readonly code?: string;\n /** Human-readable helpful error message to provide additional context for error (e.g.,: \u201CCapability ID 'foo' does not exist\u201D). */\n readonly message?: string;\n /** Array of error details that describe the status of each error. */\n readonly details?: ErrorDetails[];\n}\n\nexport function statusErrorDeserializer(item: any): StatusError {\n return {\n code: item[\"code\"],\n message: item[\"message\"],\n details: !item[\"details\"] ? item[\"details\"] : errorDetailsArrayDeserializer(item[\"details\"]),\n };\n}\n\nexport function namespaceAssetStatusDatasetArrayDeserializer(\n result: Array<NamespaceAssetStatusDataset>,\n): any[] {\n return result.map((item) => {\n return namespaceAssetStatusDatasetDeserializer(item);\n });\n}\n\n/** Defines the asset status dataset properties. */\nexport interface NamespaceAssetStatusDataset {\n /** The name of the dataset. Must be unique within the status.datasets array. This name is used to correlate between the spec and status dataset information. */\n readonly name: string;\n /** The message schema reference object. */\n readonly messageSchemaReference?: NamespaceMessageSchemaReference;\n /** Object to transfer and persist errors that originate from the edge. */\n readonly error?: StatusError;\n}\n\nexport function namespaceAssetStatusDatasetDeserializer(item: any): NamespaceAssetStatusDataset {\n return {\n name: item[\"name\"],\n messageSchemaReference: !item[\"messageSchemaReference\"]\n ? item[\"messageSchemaReference\"]\n : namespaceMessageSchemaReferenceDeserializer(item[\"messageSchemaReference\"]),\n error: !item[\"error\"] ? item[\"error\"] : statusErrorDeserializer(item[\"error\"]),\n };\n}\n\n/** Defines the message schema reference properties. */\nexport interface NamespaceMessageSchemaReference {\n /** The message schema registry namespace. */\n readonly schemaRegistryNamespace: string;\n /** The message schema name. */\n readonly schemaName: string;\n /** The message schema version. */\n readonly schemaVersion: string;\n}\n\nexport function namespaceMessageSchemaReferenceDeserializer(\n item: any,\n): NamespaceMessageSchemaReference {\n return {\n schemaRegistryNamespace: item[\"schemaRegistryNamespace\"],\n schemaName: item[\"schemaName\"],\n schemaVersion: item[\"schemaVersion\"],\n };\n}\n\nexport function namespaceAssetStatusEventGroupArrayDeserializer(\n result: Array<NamespaceAssetStatusEventGroup>,\n): any[] {\n return result.map((item) => {\n return namespaceAssetStatusEventGroupDeserializer(item);\n });\n}\n\n/** Defines the asset status event group properties. */\nexport interface NamespaceAssetStatusEventGroup {\n /** The name of the event group. Must be unique within the status.eventGroups array. This name is used to correlate between the spec and status event group information. */\n readonly name: string;\n /** Array of event statuses that describe the status of each event in the event group. */\n readonly events?: NamespaceAssetStatusEvent[];\n}\n\nexport function namespaceAssetStatusEventGroupDeserializer(\n item: any,\n): NamespaceAssetStatusEventGroup {\n return {\n name: item[\"name\"],\n events: !item[\"events\"]\n ? item[\"events\"]\n : namespaceAssetStatusEventArrayDeserializer(item[\"events\"]),\n };\n}\n\nexport function namespaceAssetStatusEventArrayDeserializer(\n result: Array<NamespaceAssetStatusEvent>,\n): any[] {\n return result.map((item) => {\n return namespaceAssetStatusEventDeserializer(item);\n });\n}\n\n/** Defines the asset status event properties. */\nexport interface NamespaceAssetStatusEvent {\n /** The name of the event. Must be unique within the status.events array. This name is used to correlate between the spec and status event information. */\n readonly name: string;\n /** The message schema reference object. */\n readonly messageSchemaReference?: NamespaceMessageSchemaReference;\n /** Object to transfer and persist errors that originate from the edge. */\n readonly error?: StatusError;\n}\n\nexport function namespaceAssetStatusEventDeserializer(item: any): NamespaceAssetStatusEvent {\n return {\n name: item[\"name\"],\n messageSchemaReference: !item[\"messageSchemaReference\"]\n ? item[\"messageSchemaReference\"]\n : namespaceMessageSchemaReferenceDeserializer(item[\"messageSchemaReference\"]),\n error: !item[\"error\"] ? item[\"error\"] : statusErrorDeserializer(item[\"error\"]),\n };\n}\n\nexport function namespaceAssetStatusStreamArrayDeserializer(\n result: Array<NamespaceAssetStatusStream>,\n): any[] {\n return result.map((item) => {\n return namespaceAssetStatusStreamDeserializer(item);\n });\n}\n\n/** Defines the asset status stream properties. */\nexport interface NamespaceAssetStatusStream {\n /** The name of the stream. Must be unique within the status.streams array. This name is used to correlate between the spec and status event information. */\n readonly name: string;\n /** The message schema reference object. */\n readonly messageSchemaReference?: NamespaceMessageSchemaReference;\n /** Object to transfer and persist errors that originate from the edge. */\n readonly error?: StatusError;\n}\n\nexport function namespaceAssetStatusStreamDeserializer(item: any): NamespaceAssetStatusStream {\n return {\n name: item[\"name\"],\n messageSchemaReference: !item[\"messageSchemaReference\"]\n ? item[\"messageSchemaReference\"]\n : namespaceMessageSchemaReferenceDeserializer(item[\"messageSchemaReference\"]),\n error: !item[\"error\"] ? item[\"error\"] : statusErrorDeserializer(item[\"error\"]),\n };\n}\n\nexport function namespaceAssetStatusManagementGroupArrayDeserializer(\n result: Array<NamespaceAssetStatusManagementGroup>,\n): any[] {\n return result.map((item) => {\n return namespaceAssetStatusManagementGroupDeserializer(item);\n });\n}\n\n/** Defines the asset status management group properties. */\nexport interface NamespaceAssetStatusManagementGroup {\n /** The name of the management group. Must be unique within the status.managementGroups array. This name is used to correlate between the spec and status event information. */\n readonly name: string;\n /** Array of action statuses that describe the status of each action. */\n readonly actions?: NamespaceAssetStatusManagementAction[];\n}\n\nexport function namespaceAssetStatusManagementGroupDeserializer(\n item: any,\n): NamespaceAssetStatusManagementGroup {\n return {\n name: item[\"name\"],\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : namespaceAssetStatusManagementActionArrayDeserializer(item[\"actions\"]),\n };\n}\n\nexport function namespaceAssetStatusManagementActionArrayDeserializer(\n result: Array<NamespaceAssetStatusManagementAction>,\n): any[] {\n return result.map((item) => {\n return namespaceAssetStatusManagementActionDeserializer(item);\n });\n}\n\n/** Defines the asset status action properties. */\nexport interface NamespaceAssetStatusManagementAction {\n /** The name of the action. Must be unique within the status.actions array. This name is used to correlate between the spec and status event information. */\n readonly name: string;\n /** The request message schema reference object for the action. */\n readonly requestMessageSchemaReference?: NamespaceMessageSchemaReference;\n /** The response message schema reference object for the action. */\n readonly responseMessageSchemaReference?: NamespaceMessageSchemaReference;\n /** Object to transfer and persist errors that originate from the edge. */\n readonly error?: StatusError;\n}\n\nexport function namespaceAssetStatusManagementActionDeserializer(\n item: any,\n): NamespaceAssetStatusManagementAction {\n return {\n name: item[\"name\"],\n requestMessageSchemaReference: !item[\"requestMessageSchemaReference\"]\n ? item[\"requestMessageSchemaReference\"]\n : namespaceMessageSchemaReferenceDeserializer(item[\"requestMessageSchemaReference\"]),\n responseMessageSchemaReference: !item[\"responseMessageSchemaReference\"]\n ? item[\"responseMessageSchemaReference\"]\n : namespaceMessageSchemaReferenceDeserializer(item[\"responseMessageSchemaReference\"]),\n error: !item[\"error\"] ? item[\"error\"] : statusErrorDeserializer(item[\"error\"]),\n };\n}\n\n/** The type used for update operations of the NamespaceAsset. */\nexport interface NamespaceAssetUpdate {\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The resource-specific properties for this resource. */\n properties?: NamespaceAssetUpdateProperties;\n}\n\nexport function namespaceAssetUpdateSerializer(item: NamespaceAssetUpdate): any {\n return {\n tags: item[\"tags\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceAssetUpdatePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** The updatable properties of the NamespaceAsset. */\nexport interface NamespaceAssetUpdateProperties {\n /** Enabled/disabled status of the asset. */\n enabled?: boolean;\n /** Human-readable display name. */\n displayName?: string;\n /** Human-readable description of the asset. */\n description?: string;\n /** URIs or type definition IDs. */\n assetTypeRefs?: string[];\n /** Asset manufacturer. */\n manufacturer?: string;\n /** Asset manufacturer URI. */\n manufacturerUri?: string;\n /** Asset model. */\n model?: string;\n /** Asset product code. */\n productCode?: string;\n /** Asset hardware revision number. */\n hardwareRevision?: string;\n /** Asset software revision number. */\n softwareRevision?: string;\n /** Asset documentation reference. */\n documentationUri?: string;\n /** Asset serial number. */\n serialNumber?: string;\n /** A set of key-value pairs that contain custom attributes set by the customer. */\n attributes?: Record<string, any>;\n /** Stringified JSON that contains connector-specific default configuration for all datasets. Each dataset can have its own configuration that overrides the default settings here. */\n defaultDatasetsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all events. Each event can have its own configuration that overrides the default settings here. */\n defaultEventsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all streams. Each stream can have its own configuration that overrides the default settings here. */\n defaultStreamsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all management groups. Each management group can have its own configuration that overrides the default settings here. */\n defaultManagementGroupsConfiguration?: string;\n /** Default destinations for a dataset. */\n defaultDatasetsDestinations?: DatasetDestinationUnion[];\n /** Default destinations for an event. */\n defaultEventsDestinations?: EventDestinationUnion[];\n /** Default destinations for a stream. */\n defaultStreamsDestinations?: StreamDestinationUnion[];\n /** Array of datasets that are part of the asset. Each dataset describes the data points that make up the set. */\n datasets?: NamespaceDataset[];\n /** Array of event groups that are part of the asset. Each event group can have per-event group configuration. */\n eventGroups?: NamespaceEventGroup[];\n /** Array of streams that are part of the asset. Each stream can have a per-stream configuration. */\n streams?: NamespaceStream[];\n /** Array of management groups that are part of the asset. Each management group can have a per-group configuration. */\n managementGroups?: ManagementGroup[];\n}\n\nexport function namespaceAssetUpdatePropertiesSerializer(\n item: NamespaceAssetUpdateProperties,\n): any {\n return {\n enabled: item[\"enabled\"],\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n assetTypeRefs: !item[\"assetTypeRefs\"]\n ? item[\"assetTypeRefs\"]\n : item[\"assetTypeRefs\"].map((p: any) => {\n return p;\n }),\n manufacturer: item[\"manufacturer\"],\n manufacturerUri: item[\"manufacturerUri\"],\n model: item[\"model\"],\n productCode: item[\"productCode\"],\n hardwareRevision: item[\"hardwareRevision\"],\n softwareRevision: item[\"softwareRevision\"],\n documentationUri: item[\"documentationUri\"],\n serialNumber: item[\"serialNumber\"],\n attributes: item[\"attributes\"],\n defaultDatasetsConfiguration: item[\"defaultDatasetsConfiguration\"],\n defaultEventsConfiguration: item[\"defaultEventsConfiguration\"],\n defaultStreamsConfiguration: item[\"defaultStreamsConfiguration\"],\n defaultManagementGroupsConfiguration: item[\"defaultManagementGroupsConfiguration\"],\n defaultDatasetsDestinations: !item[\"defaultDatasetsDestinations\"]\n ? item[\"defaultDatasetsDestinations\"]\n : datasetDestinationUnionArraySerializer(item[\"defaultDatasetsDestinations\"]),\n defaultEventsDestinations: !item[\"defaultEventsDestinations\"]\n ? item[\"defaultEventsDestinations\"]\n : eventDestinationUnionArraySerializer(item[\"defaultEventsDestinations\"]),\n defaultStreamsDestinations: !item[\"defaultStreamsDestinations\"]\n ? item[\"defaultStreamsDestinations\"]\n : streamDestinationUnionArraySerializer(item[\"defaultStreamsDestinations\"]),\n datasets: !item[\"datasets\"]\n ? item[\"datasets\"]\n : namespaceDatasetArraySerializer(item[\"datasets\"]),\n eventGroups: !item[\"eventGroups\"]\n ? item[\"eventGroups\"]\n : namespaceEventGroupArraySerializer(item[\"eventGroups\"]),\n streams: !item[\"streams\"] ? item[\"streams\"] : namespaceStreamArraySerializer(item[\"streams\"]),\n managementGroups: !item[\"managementGroups\"]\n ? item[\"managementGroups\"]\n : managementGroupArraySerializer(item[\"managementGroups\"]),\n };\n}\n\n/** The response of a NamespaceAsset list operation. */\nexport interface _NamespaceAssetListResult {\n /** The NamespaceAsset items on this page */\n value: NamespaceAsset[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _namespaceAssetListResultDeserializer(item: any): _NamespaceAssetListResult {\n return {\n value: namespaceAssetArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function namespaceAssetArraySerializer(result: Array<NamespaceAsset>): any[] {\n return result.map((item) => {\n return namespaceAssetSerializer(item);\n });\n}\n\nexport function namespaceAssetArrayDeserializer(result: Array<NamespaceAsset>): any[] {\n return result.map((item) => {\n return namespaceAssetDeserializer(item);\n });\n}\n\n/** Device definition. */\nexport interface NamespaceDevice extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: NamespaceDeviceProperties;\n /** Resource Tag. */\n readonly etag?: string;\n /** The extended location. */\n extendedLocation?: ExtendedLocation;\n}\n\nexport function namespaceDeviceSerializer(item: NamespaceDevice): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceDevicePropertiesSerializer(item[\"properties\"]),\n extendedLocation: !item[\"extendedLocation\"]\n ? item[\"extendedLocation\"]\n : extendedLocationSerializer(item[\"extendedLocation\"]),\n };\n}\n\nexport function namespaceDeviceDeserializer(item: any): NamespaceDevice {\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceDevicePropertiesDeserializer(item[\"properties\"]),\n etag: item[\"etag\"],\n extendedLocation: !item[\"extendedLocation\"]\n ? item[\"extendedLocation\"]\n : extendedLocationDeserializer(item[\"extendedLocation\"]),\n };\n}\n\n/** Defines the device properties. */\nexport interface NamespaceDeviceProperties {\n /** A unique identifier for the device. */\n readonly uuid?: string;\n /** Indicates if the resource is enabled or not. */\n enabled?: boolean;\n /** The Device ID provided by the customer. */\n externalDeviceId?: string;\n /** Reference to a device. Populated only if the device had been created from discovery flow. Discovered device name must be provided. */\n discoveredDeviceRef?: string;\n /** Device manufacturer. */\n manufacturer?: string;\n /** Device model. */\n model?: string;\n /** Device operating system. */\n operatingSystem?: string;\n /** Device operating system version. */\n operatingSystemVersion?: string;\n /** Property bag containing the device's unassigned and assigned endpoints. */\n endpoints?: MessagingEndpoints;\n /** A set of key-value pairs that contain custom attributes set by the customer. */\n attributes?: Record<string, any>;\n /** Device status updates. */\n readonly status?: DeviceStatus;\n /** An integer that is incremented each time the resource is modified. */\n readonly version?: number;\n /** A timestamp (in UTC) that is updated each time the resource is modified. */\n readonly lastTransitionTime?: Date;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Policy used to issue device certificates. */\n policy?: DeviceCredentialPolicy;\n}\n\nexport function namespaceDevicePropertiesSerializer(item: NamespaceDeviceProperties): any {\n return {\n enabled: item[\"enabled\"],\n externalDeviceId: item[\"externalDeviceId\"],\n discoveredDeviceRef: item[\"discoveredDeviceRef\"],\n manufacturer: item[\"manufacturer\"],\n model: item[\"model\"],\n operatingSystem: item[\"operatingSystem\"],\n operatingSystemVersion: item[\"operatingSystemVersion\"],\n endpoints: !item[\"endpoints\"]\n ? item[\"endpoints\"]\n : messagingEndpointsSerializer(item[\"endpoints\"]),\n attributes: item[\"attributes\"],\n policy: !item[\"policy\"] ? item[\"policy\"] : deviceCredentialPolicySerializer(item[\"policy\"]),\n };\n}\n\nexport function namespaceDevicePropertiesDeserializer(item: any): NamespaceDeviceProperties {\n return {\n uuid: item[\"uuid\"],\n enabled: item[\"enabled\"],\n externalDeviceId: item[\"externalDeviceId\"],\n discoveredDeviceRef: item[\"discoveredDeviceRef\"],\n manufacturer: item[\"manufacturer\"],\n model: item[\"model\"],\n operatingSystem: item[\"operatingSystem\"],\n operatingSystemVersion: item[\"operatingSystemVersion\"],\n endpoints: !item[\"endpoints\"]\n ? item[\"endpoints\"]\n : messagingEndpointsDeserializer(item[\"endpoints\"]),\n attributes: !item[\"attributes\"]\n ? item[\"attributes\"]\n : Object.fromEntries(\n Object.entries(item[\"attributes\"]).map(([k, p]: [string, any]) => [k, p]),\n ),\n status: !item[\"status\"] ? item[\"status\"] : deviceStatusDeserializer(item[\"status\"]),\n version: item[\"version\"],\n lastTransitionTime: !item[\"lastTransitionTime\"]\n ? item[\"lastTransitionTime\"]\n : new Date(item[\"lastTransitionTime\"]),\n provisioningState: item[\"provisioningState\"],\n policy: !item[\"policy\"] ? item[\"policy\"] : deviceCredentialPolicyDeserializer(item[\"policy\"]),\n };\n}\n\n/** Connection endpoint URL a device can use to connect to a service. */\nexport interface MessagingEndpoints {\n /** Set of endpoints to connect to the device. */\n inbound?: Record<string, InboundEndpoints>;\n /** Set of endpoints a device can connect to. */\n outbound?: OutboundEndpoints;\n}\n\nexport function messagingEndpointsSerializer(item: MessagingEndpoints): any {\n return {\n inbound: !item[\"inbound\"] ? item[\"inbound\"] : inboundEndpointsRecordSerializer(item[\"inbound\"]),\n outbound: !item[\"outbound\"] ? item[\"outbound\"] : outboundEndpointsSerializer(item[\"outbound\"]),\n };\n}\n\nexport function messagingEndpointsDeserializer(item: any): MessagingEndpoints {\n return {\n inbound: !item[\"inbound\"]\n ? item[\"inbound\"]\n : inboundEndpointsRecordDeserializer(item[\"inbound\"]),\n outbound: !item[\"outbound\"]\n ? item[\"outbound\"]\n : outboundEndpointsDeserializer(item[\"outbound\"]),\n };\n}\n\nexport function inboundEndpointsRecordSerializer(\n item: Record<string, InboundEndpoints>,\n): Record<string, any> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : inboundEndpointsSerializer(item[key]);\n });\n return result;\n}\n\nexport function inboundEndpointsRecordDeserializer(\n item: Record<string, any>,\n): Record<string, InboundEndpoints> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : inboundEndpointsDeserializer(item[key]);\n });\n return result;\n}\n\n/** An endpoint to connect to the device. */\nexport interface InboundEndpoints {\n /** Type of connection endpoint. */\n endpointType: string;\n /** The endpoint address & port. This can be either an IP address (e.g., 192.168.1.1) or a fully qualified domain name (FQDN, e.g., server.example.com). */\n address: string;\n /** Protocol version associated with the endpoint e.g. 1 or 2 for endpointType Microsoft.HTTP, and 3.5 or 5.0 for endpointType Microsoft.Mqtt etc. */\n version?: string;\n /** Defines the client authentication mechanism to the server. */\n authentication?: HostAuthentication;\n /** Defines server trust settings for the endpoint. */\n trustSettings?: TrustSettings;\n /** Stringified JSON that contains configuration to be used by the connector (e.g., OPC UA, ONVIF). */\n additionalConfiguration?: string;\n}\n\nexport function inboundEndpointsSerializer(item: InboundEndpoints): any {\n return {\n endpointType: item[\"endpointType\"],\n address: item[\"address\"],\n version: item[\"version\"],\n authentication: !item[\"authentication\"]\n ? item[\"authentication\"]\n : hostAuthenticationSerializer(item[\"authentication\"]),\n trustSettings: !item[\"trustSettings\"]\n ? item[\"trustSettings\"]\n : trustSettingsSerializer(item[\"trustSettings\"]),\n additionalConfiguration: item[\"additionalConfiguration\"],\n };\n}\n\nexport function inboundEndpointsDeserializer(item: any): InboundEndpoints {\n return {\n endpointType: item[\"endpointType\"],\n address: item[\"address\"],\n version: item[\"version\"],\n authentication: !item[\"authentication\"]\n ? item[\"authentication\"]\n : hostAuthenticationDeserializer(item[\"authentication\"]),\n trustSettings: !item[\"trustSettings\"]\n ? item[\"trustSettings\"]\n : trustSettingsDeserializer(item[\"trustSettings\"]),\n additionalConfiguration: item[\"additionalConfiguration\"],\n };\n}\n\n/** Definition of the client authentication mechanism to the host. */\nexport interface HostAuthentication {\n /** Defines the method to authenticate the user of the client at the server. */\n method: AuthenticationMethod;\n /** Defines the username and password references when UsernamePassword user authentication mode is selected. */\n usernamePasswordCredentials?: UsernamePasswordCredentials;\n /** Defines the certificate reference when Certificate user authentication mode is selected. */\n x509Credentials?: X509CertificateCredentials;\n}\n\nexport function hostAuthenticationSerializer(item: HostAuthentication): any {\n return {\n method: item[\"method\"],\n usernamePasswordCredentials: !item[\"usernamePasswordCredentials\"]\n ? item[\"usernamePasswordCredentials\"]\n : usernamePasswordCredentialsSerializer(item[\"usernamePasswordCredentials\"]),\n x509Credentials: !item[\"x509Credentials\"]\n ? item[\"x509Credentials\"]\n : x509CertificateCredentialsSerializer(item[\"x509Credentials\"]),\n };\n}\n\nexport function hostAuthenticationDeserializer(item: any): HostAuthentication {\n return {\n method: item[\"method\"],\n usernamePasswordCredentials: !item[\"usernamePasswordCredentials\"]\n ? item[\"usernamePasswordCredentials\"]\n : usernamePasswordCredentialsDeserializer(item[\"usernamePasswordCredentials\"]),\n x509Credentials: !item[\"x509Credentials\"]\n ? item[\"x509Credentials\"]\n : x509CertificateCredentialsDeserializer(item[\"x509Credentials\"]),\n };\n}\n\n/** The x509 certificate for authentication mode Certificate. */\nexport interface X509CertificateCredentials {\n /** The name of the secret containing the certificate and private key (e.g. stored as .der/.pem or .der/.pfx). */\n certificateSecretName: string;\n /** The name of the secret containing the certificate private key in PEM or DER format. */\n keySecretName?: string;\n /** The name of the secret containing the combined intermediate certificates in PEM format. */\n intermediateCertificatesSecretName?: string;\n}\n\nexport function x509CertificateCredentialsSerializer(item: X509CertificateCredentials): any {\n return {\n certificateSecretName: item[\"certificateSecretName\"],\n keySecretName: item[\"keySecretName\"],\n intermediateCertificatesSecretName: item[\"intermediateCertificatesSecretName\"],\n };\n}\n\nexport function x509CertificateCredentialsDeserializer(item: any): X509CertificateCredentials {\n return {\n certificateSecretName: item[\"certificateSecretName\"],\n keySecretName: item[\"keySecretName\"],\n intermediateCertificatesSecretName: item[\"intermediateCertificatesSecretName\"],\n };\n}\n\n/** Defines server trust settings for an endpoint. */\nexport interface TrustSettings {\n /** Defines a secret reference for certificates to trust. */\n trustList?: string;\n}\n\nexport function trustSettingsSerializer(item: TrustSettings): any {\n return { trustList: item[\"trustList\"] };\n}\n\nexport function trustSettingsDeserializer(item: any): TrustSettings {\n return {\n trustList: item[\"trustList\"],\n };\n}\n\n/** Property bag contains the device's outbound endpoints */\nexport interface OutboundEndpoints {\n /** Endpoints the device can connect to. */\n assigned: Record<string, DeviceMessagingEndpoint>;\n /** Set of most recently removed endpoints. */\n unassigned?: Record<string, DeviceMessagingEndpoint>;\n}\n\nexport function outboundEndpointsSerializer(item: OutboundEndpoints): any {\n return {\n assigned: deviceMessagingEndpointRecordSerializer(item[\"assigned\"]),\n unassigned: !item[\"unassigned\"]\n ? item[\"unassigned\"]\n : deviceMessagingEndpointRecordSerializer(item[\"unassigned\"]),\n };\n}\n\nexport function outboundEndpointsDeserializer(item: any): OutboundEndpoints {\n return {\n assigned: deviceMessagingEndpointRecordDeserializer(item[\"assigned\"]),\n unassigned: !item[\"unassigned\"]\n ? item[\"unassigned\"]\n : deviceMessagingEndpointRecordDeserializer(item[\"unassigned\"]),\n };\n}\n\nexport function deviceMessagingEndpointRecordSerializer(\n item: Record<string, DeviceMessagingEndpoint>,\n): Record<string, any> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : deviceMessagingEndpointSerializer(item[key]);\n });\n return result;\n}\n\nexport function deviceMessagingEndpointRecordDeserializer(\n item: Record<string, any>,\n): Record<string, DeviceMessagingEndpoint> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : deviceMessagingEndpointDeserializer(item[key]);\n });\n return result;\n}\n\n/** Device messaging endpoint model. */\nexport interface DeviceMessagingEndpoint {\n /** Type of connection used for the messaging endpoint. */\n endpointType?: string;\n /** The endpoint address to connect to. */\n address: string;\n}\n\nexport function deviceMessagingEndpointSerializer(item: DeviceMessagingEndpoint): any {\n return { endpointType: item[\"endpointType\"], address: item[\"address\"] };\n}\n\nexport function deviceMessagingEndpointDeserializer(item: any): DeviceMessagingEndpoint {\n return {\n endpointType: item[\"endpointType\"],\n address: item[\"address\"],\n };\n}\n\n/** Defines the device status properties. */\nexport interface DeviceStatus {\n /** Defines the device status config properties. */\n readonly config?: StatusConfig;\n /** Defines the device status for inbound/outbound endpoints. */\n readonly endpoints?: DeviceStatusEndpoints;\n}\n\nexport function deviceStatusDeserializer(item: any): DeviceStatus {\n return {\n config: !item[\"config\"] ? item[\"config\"] : statusConfigDeserializer(item[\"config\"]),\n endpoints: !item[\"endpoints\"]\n ? item[\"endpoints\"]\n : deviceStatusEndpointsDeserializer(item[\"endpoints\"]),\n };\n}\n\n/** Defines the device status for inbound/outbound endpoints. */\nexport interface DeviceStatusEndpoints {\n /** KeyValue pair representing status of inbound endpoints. */\n readonly inbound?: Record<string, DeviceStatusEndpoint>;\n}\n\nexport function deviceStatusEndpointsDeserializer(item: any): DeviceStatusEndpoints {\n return {\n inbound: !item[\"inbound\"]\n ? item[\"inbound\"]\n : deviceStatusEndpointRecordDeserializer(item[\"inbound\"]),\n };\n}\n\nexport function deviceStatusEndpointRecordDeserializer(\n item: Record<string, any>,\n): Record<string, DeviceStatusEndpoint> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : deviceStatusEndpointDeserializer(item[key]);\n });\n return result;\n}\n\n/** Defines the device status properties. */\nexport interface DeviceStatusEndpoint {\n /** Defines the error related to this endpoint. */\n readonly error?: StatusError;\n}\n\nexport function deviceStatusEndpointDeserializer(item: any): DeviceStatusEndpoint {\n return {\n error: !item[\"error\"] ? item[\"error\"] : statusErrorDeserializer(item[\"error\"]),\n };\n}\n\n/** Defines the Policy used to issue device certificates if any. */\nexport interface DeviceCredentialPolicy {\n /** Resource Id of the Policy. */\n resourceId?: string;\n}\n\nexport function deviceCredentialPolicySerializer(item: DeviceCredentialPolicy): any {\n return { resourceId: item[\"resourceId\"] };\n}\n\nexport function deviceCredentialPolicyDeserializer(item: any): DeviceCredentialPolicy {\n return {\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** The type used for update operations of the NamespaceDevice. */\nexport interface NamespaceDeviceUpdate {\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The resource-specific properties for this resource. */\n properties?: NamespaceDeviceUpdateProperties;\n}\n\nexport function namespaceDeviceUpdateSerializer(item: NamespaceDeviceUpdate): any {\n return {\n tags: item[\"tags\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceDeviceUpdatePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** The updatable properties of the NamespaceDevice. */\nexport interface NamespaceDeviceUpdateProperties {\n /** Device operating system version. */\n operatingSystemVersion?: string;\n /** Property bag containing the device's unassigned and assigned endpoints. */\n endpoints?: MessagingEndpoints;\n /** A set of key-value pairs that contain custom attributes set by the customer. */\n attributes?: Record<string, any>;\n /** Policy used to issue device certificates. */\n policy?: DeviceCredentialPolicy;\n /** Indicates if the resource and identity are enabled or not. A disabled device cannot authenticate with Microsoft Entra ID. */\n enabled?: boolean;\n}\n\nexport function namespaceDeviceUpdatePropertiesSerializer(\n item: NamespaceDeviceUpdateProperties,\n): any {\n return {\n operatingSystemVersion: item[\"operatingSystemVersion\"],\n endpoints: !item[\"endpoints\"]\n ? item[\"endpoints\"]\n : messagingEndpointsSerializer(item[\"endpoints\"]),\n attributes: item[\"attributes\"],\n policy: !item[\"policy\"] ? item[\"policy\"] : deviceCredentialPolicySerializer(item[\"policy\"]),\n enabled: item[\"enabled\"],\n };\n}\n\n/** The response of a NamespaceDevice list operation. */\nexport interface _NamespaceDeviceListResult {\n /** The NamespaceDevice items on this page */\n value: NamespaceDevice[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _namespaceDeviceListResultDeserializer(item: any): _NamespaceDeviceListResult {\n return {\n value: namespaceDeviceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function namespaceDeviceArraySerializer(result: Array<NamespaceDevice>): any[] {\n return result.map((item) => {\n return namespaceDeviceSerializer(item);\n });\n}\n\nexport function namespaceDeviceArrayDeserializer(result: Array<NamespaceDevice>): any[] {\n return result.map((item) => {\n return namespaceDeviceDeserializer(item);\n });\n}\n\n/** Request payload for revoking device credentials. */\nexport interface DeviceCredentialsRevokeRequest {\n /** Indicates whether to disable the device(s) after revoking credentials. Prevents new credentials to be issued. */\n disable?: boolean;\n}\n\nexport function deviceCredentialsRevokeRequestSerializer(\n item: DeviceCredentialsRevokeRequest,\n): any {\n return { disable: item[\"disable\"] };\n}\n\n/** Discovered asset definition. */\nexport interface NamespaceDiscoveredAsset extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: NamespaceDiscoveredAssetProperties;\n /** The extended location. */\n extendedLocation: ExtendedLocation;\n}\n\nexport function namespaceDiscoveredAssetSerializer(item: NamespaceDiscoveredAsset): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceDiscoveredAssetPropertiesSerializer(item[\"properties\"]),\n extendedLocation: extendedLocationSerializer(item[\"extendedLocation\"]),\n };\n}\n\nexport function namespaceDiscoveredAssetDeserializer(item: any): NamespaceDiscoveredAsset {\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceDiscoveredAssetPropertiesDeserializer(item[\"properties\"]),\n extendedLocation: extendedLocationDeserializer(item[\"extendedLocation\"]),\n };\n}\n\n/** Defines the discovered asset properties. */\nexport interface NamespaceDiscoveredAssetProperties {\n /** Reference to the device that provides data for this asset. Must provide device name & endpoint on the device to use. */\n deviceRef: DeviceRef;\n /** Human-readable display name. */\n displayName?: string;\n /** URIs or type definition IDs. */\n assetTypeRefs?: string[];\n /** Human-readable description of the asset. */\n description?: string;\n /** Identifier used to detect changes in the asset. */\n discoveryId: string;\n /** Asset ID provided by the customer. */\n externalAssetId?: string;\n /** An integer that is incremented each time the resource is modified. */\n version: number;\n /** Asset manufacturer. */\n manufacturer?: string;\n /** Asset manufacturer URI. */\n manufacturerUri?: string;\n /** Asset model. */\n model?: string;\n /** Asset product code. */\n productCode?: string;\n /** Asset hardware revision number. */\n hardwareRevision?: string;\n /** Asset software revision number. */\n softwareRevision?: string;\n /** Asset documentation reference. */\n documentationUri?: string;\n /** Asset serial number. */\n serialNumber?: string;\n /** A set of key-value pairs that contain custom attributes. */\n attributes?: Record<string, any>;\n /** Stringified JSON that contains connector-specific default configuration for all datasets. Each dataset can have its own configuration that overrides the default settings here. */\n defaultDatasetsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all events. Each event can have its own configuration that overrides the default settings here. */\n defaultEventsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all streams. Each stream can have its own configuration that overrides the default settings here. */\n defaultStreamsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all management groups. Each management group can have its own configuration that overrides the default settings here. */\n defaultManagementGroupsConfiguration?: string;\n /** Default destinations for a dataset. */\n defaultDatasetsDestinations?: DatasetDestinationUnion[];\n /** Default destinations for an event. */\n defaultEventsDestinations?: EventDestinationUnion[];\n /** Default destinations for a stream. */\n defaultStreamsDestinations?: StreamDestinationUnion[];\n /** Array of datasets that are part of the asset. Each dataset spec describes the data points that make up the set. */\n datasets?: NamespaceDiscoveredDataset[];\n /** Array of event groups that are part of the asset. Each event group can have per-event group configuration. */\n eventGroups?: NamespaceDiscoveredEventGroup[];\n /** Array of streams that are part of the asset. Each stream can have a per-stream configuration. */\n streams?: NamespaceDiscoveredStream[];\n /** Array of management groups that are part of the asset. Each management group can have a per-group configuration. */\n managementGroups?: NamespaceDiscoveredManagementGroup[];\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function namespaceDiscoveredAssetPropertiesSerializer(\n item: NamespaceDiscoveredAssetProperties,\n): any {\n return {\n deviceRef: deviceRefSerializer(item[\"deviceRef\"]),\n displayName: item[\"displayName\"],\n assetTypeRefs: !item[\"assetTypeRefs\"]\n ? item[\"assetTypeRefs\"]\n : item[\"assetTypeRefs\"].map((p: any) => {\n return p;\n }),\n description: item[\"description\"],\n discoveryId: item[\"discoveryId\"],\n externalAssetId: item[\"externalAssetId\"],\n version: item[\"version\"],\n manufacturer: item[\"manufacturer\"],\n manufacturerUri: item[\"manufacturerUri\"],\n model: item[\"model\"],\n productCode: item[\"productCode\"],\n hardwareRevision: item[\"hardwareRevision\"],\n softwareRevision: item[\"softwareRevision\"],\n documentationUri: item[\"documentationUri\"],\n serialNumber: item[\"serialNumber\"],\n attributes: item[\"attributes\"],\n defaultDatasetsConfiguration: item[\"defaultDatasetsConfiguration\"],\n defaultEventsConfiguration: item[\"defaultEventsConfiguration\"],\n defaultStreamsConfiguration: item[\"defaultStreamsConfiguration\"],\n defaultManagementGroupsConfiguration: item[\"defaultManagementGroupsConfiguration\"],\n defaultDatasetsDestinations: !item[\"defaultDatasetsDestinations\"]\n ? item[\"defaultDatasetsDestinations\"]\n : datasetDestinationUnionArraySerializer(item[\"defaultDatasetsDestinations\"]),\n defaultEventsDestinations: !item[\"defaultEventsDestinations\"]\n ? item[\"defaultEventsDestinations\"]\n : eventDestinationUnionArraySerializer(item[\"defaultEventsDestinations\"]),\n defaultStreamsDestinations: !item[\"defaultStreamsDestinations\"]\n ? item[\"defaultStreamsDestinations\"]\n : streamDestinationUnionArraySerializer(item[\"defaultStreamsDestinations\"]),\n datasets: !item[\"datasets\"]\n ? item[\"datasets\"]\n : namespaceDiscoveredDatasetArraySerializer(item[\"datasets\"]),\n eventGroups: !item[\"eventGroups\"]\n ? item[\"eventGroups\"]\n : namespaceDiscoveredEventGroupArraySerializer(item[\"eventGroups\"]),\n streams: !item[\"streams\"]\n ? item[\"streams\"]\n : namespaceDiscoveredStreamArraySerializer(item[\"streams\"]),\n managementGroups: !item[\"managementGroups\"]\n ? item[\"managementGroups\"]\n : namespaceDiscoveredManagementGroupArraySerializer(item[\"managementGroups\"]),\n };\n}\n\nexport function namespaceDiscoveredAssetPropertiesDeserializer(\n item: any,\n): NamespaceDiscoveredAssetProperties {\n return {\n deviceRef: deviceRefDeserializer(item[\"deviceRef\"]),\n displayName: item[\"displayName\"],\n assetTypeRefs: !item[\"assetTypeRefs\"]\n ? item[\"assetTypeRefs\"]\n : item[\"assetTypeRefs\"].map((p: any) => {\n return p;\n }),\n description: item[\"description\"],\n discoveryId: item[\"discoveryId\"],\n externalAssetId: item[\"externalAssetId\"],\n version: item[\"version\"],\n manufacturer: item[\"manufacturer\"],\n manufacturerUri: item[\"manufacturerUri\"],\n model: item[\"model\"],\n productCode: item[\"productCode\"],\n hardwareRevision: item[\"hardwareRevision\"],\n softwareRevision: item[\"softwareRevision\"],\n documentationUri: item[\"documentationUri\"],\n serialNumber: item[\"serialNumber\"],\n attributes: !item[\"attributes\"]\n ? item[\"attributes\"]\n : Object.fromEntries(\n Object.entries(item[\"attributes\"]).map(([k, p]: [string, any]) => [k, p]),\n ),\n defaultDatasetsConfiguration: item[\"defaultDatasetsConfiguration\"],\n defaultEventsConfiguration: item[\"defaultEventsConfiguration\"],\n defaultStreamsConfiguration: item[\"defaultStreamsConfiguration\"],\n defaultManagementGroupsConfiguration: item[\"defaultManagementGroupsConfiguration\"],\n defaultDatasetsDestinations: !item[\"defaultDatasetsDestinations\"]\n ? item[\"defaultDatasetsDestinations\"]\n : datasetDestinationUnionArrayDeserializer(item[\"defaultDatasetsDestinations\"]),\n defaultEventsDestinations: !item[\"defaultEventsDestinations\"]\n ? item[\"defaultEventsDestinations\"]\n : eventDestinationUnionArrayDeserializer(item[\"defaultEventsDestinations\"]),\n defaultStreamsDestinations: !item[\"defaultStreamsDestinations\"]\n ? item[\"defaultStreamsDestinations\"]\n : streamDestinationUnionArrayDeserializer(item[\"defaultStreamsDestinations\"]),\n datasets: !item[\"datasets\"]\n ? item[\"datasets\"]\n : namespaceDiscoveredDatasetArrayDeserializer(item[\"datasets\"]),\n eventGroups: !item[\"eventGroups\"]\n ? item[\"eventGroups\"]\n : namespaceDiscoveredEventGroupArrayDeserializer(item[\"eventGroups\"]),\n streams: !item[\"streams\"]\n ? item[\"streams\"]\n : namespaceDiscoveredStreamArrayDeserializer(item[\"streams\"]),\n managementGroups: !item[\"managementGroups\"]\n ? item[\"managementGroups\"]\n : namespaceDiscoveredManagementGroupArrayDeserializer(item[\"managementGroups\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\nexport function namespaceDiscoveredDatasetArraySerializer(\n result: Array<NamespaceDiscoveredDataset>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredDatasetSerializer(item);\n });\n}\n\nexport function namespaceDiscoveredDatasetArrayDeserializer(\n result: Array<NamespaceDiscoveredDataset>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredDatasetDeserializer(item);\n });\n}\n\n/** Defines the dataset properties. */\nexport interface NamespaceDiscoveredDataset {\n /** Name of the dataset. */\n name: string;\n /** Reference to a data source for a given dataset. */\n dataSource?: string;\n /** URI or type definition ID. */\n typeRef?: string;\n /** Stringified JSON that contains connector-specific properties that describes configuration for the specific dataset. */\n datasetConfiguration?: string;\n /** Destinations for a dataset. */\n destinations?: DatasetDestinationUnion[];\n /** Array of data points that are part of the dataset. Each data point can have per-data point configuration. */\n dataPoints?: NamespaceDiscoveredDatasetDataPoint[];\n /** Timestamp (in UTC) indicating when the dataset was added or modified. */\n lastUpdatedOn?: Date;\n}\n\nexport function namespaceDiscoveredDatasetSerializer(item: NamespaceDiscoveredDataset): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n typeRef: item[\"typeRef\"],\n datasetConfiguration: item[\"datasetConfiguration\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : datasetDestinationUnionArraySerializer(item[\"destinations\"]),\n dataPoints: !item[\"dataPoints\"]\n ? item[\"dataPoints\"]\n : namespaceDiscoveredDatasetDataPointArraySerializer(item[\"dataPoints\"]),\n lastUpdatedOn: !item[\"lastUpdatedOn\"]\n ? item[\"lastUpdatedOn\"]\n : item[\"lastUpdatedOn\"].toISOString(),\n };\n}\n\nexport function namespaceDiscoveredDatasetDeserializer(item: any): NamespaceDiscoveredDataset {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n typeRef: item[\"typeRef\"],\n datasetConfiguration: item[\"datasetConfiguration\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : datasetDestinationUnionArrayDeserializer(item[\"destinations\"]),\n dataPoints: !item[\"dataPoints\"]\n ? item[\"dataPoints\"]\n : namespaceDiscoveredDatasetDataPointArrayDeserializer(item[\"dataPoints\"]),\n lastUpdatedOn: !item[\"lastUpdatedOn\"] ? item[\"lastUpdatedOn\"] : new Date(item[\"lastUpdatedOn\"]),\n };\n}\n\nexport function namespaceDiscoveredDatasetDataPointArraySerializer(\n result: Array<NamespaceDiscoveredDatasetDataPoint>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredDatasetDataPointSerializer(item);\n });\n}\n\nexport function namespaceDiscoveredDatasetDataPointArrayDeserializer(\n result: Array<NamespaceDiscoveredDatasetDataPoint>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredDatasetDataPointDeserializer(item);\n });\n}\n\n/** Defines the discovered dataset data point properties. */\nexport interface NamespaceDiscoveredDatasetDataPoint {\n /** The name of the data point. */\n name: string;\n /** The address of the source of the data in the asset (e.g. URL) so that a client can access the data source on the asset. */\n dataSource: string;\n /** Stringified JSON that contains connector-specific configuration for the data point. For OPC UA, this could include configuration like, publishingInterval, samplingInterval, and queueSize. */\n dataPointConfiguration?: string;\n /** UTC timestamp indicating when the data point was added or modified. */\n lastUpdatedOn?: Date;\n /** URI or type definition ID. */\n typeRef?: string;\n}\n\nexport function namespaceDiscoveredDatasetDataPointSerializer(\n item: NamespaceDiscoveredDatasetDataPoint,\n): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n dataPointConfiguration: item[\"dataPointConfiguration\"],\n lastUpdatedOn: !item[\"lastUpdatedOn\"]\n ? item[\"lastUpdatedOn\"]\n : item[\"lastUpdatedOn\"].toISOString(),\n typeRef: item[\"typeRef\"],\n };\n}\n\nexport function namespaceDiscoveredDatasetDataPointDeserializer(\n item: any,\n): NamespaceDiscoveredDatasetDataPoint {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n dataPointConfiguration: item[\"dataPointConfiguration\"],\n lastUpdatedOn: !item[\"lastUpdatedOn\"] ? item[\"lastUpdatedOn\"] : new Date(item[\"lastUpdatedOn\"]),\n typeRef: item[\"typeRef\"],\n };\n}\n\nexport function namespaceDiscoveredEventGroupArraySerializer(\n result: Array<NamespaceDiscoveredEventGroup>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredEventGroupSerializer(item);\n });\n}\n\nexport function namespaceDiscoveredEventGroupArrayDeserializer(\n result: Array<NamespaceDiscoveredEventGroup>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredEventGroupDeserializer(item);\n });\n}\n\n/** Defines the discovered event group properties. */\nexport interface NamespaceDiscoveredEventGroup {\n /** The name of the event group. */\n name: string;\n /** The address of the notifier of the event group in the asset (e.g. URL) so that a client can access the event group on the asset. */\n dataSource?: string;\n /** Stringified JSON that contains connector-specific configuration for the event group. For OPC UA, this could include configuration like, publishingInterval, samplingInterval, and queueSize. */\n eventGroupConfiguration?: string;\n /** Destinations for events. Default destinations when destinations is not defined at the event level. */\n defaultDestinations?: EventDestinationUnion[];\n /** URI or type definition ID. */\n typeRef?: string;\n /** Array of events that are part of the event group. */\n events?: NamespaceDiscoveredEvent[];\n}\n\nexport function namespaceDiscoveredEventGroupSerializer(item: NamespaceDiscoveredEventGroup): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n eventGroupConfiguration: item[\"eventGroupConfiguration\"],\n defaultDestinations: !item[\"defaultDestinations\"]\n ? item[\"defaultDestinations\"]\n : eventDestinationUnionArraySerializer(item[\"defaultDestinations\"]),\n typeRef: item[\"typeRef\"],\n events: !item[\"events\"]\n ? item[\"events\"]\n : namespaceDiscoveredEventArraySerializer(item[\"events\"]),\n };\n}\n\nexport function namespaceDiscoveredEventGroupDeserializer(\n item: any,\n): NamespaceDiscoveredEventGroup {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n eventGroupConfiguration: item[\"eventGroupConfiguration\"],\n defaultDestinations: !item[\"defaultDestinations\"]\n ? item[\"defaultDestinations\"]\n : eventDestinationUnionArrayDeserializer(item[\"defaultDestinations\"]),\n typeRef: item[\"typeRef\"],\n events: !item[\"events\"]\n ? item[\"events\"]\n : namespaceDiscoveredEventArrayDeserializer(item[\"events\"]),\n };\n}\n\nexport function namespaceDiscoveredEventArraySerializer(\n result: Array<NamespaceDiscoveredEvent>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredEventSerializer(item);\n });\n}\n\nexport function namespaceDiscoveredEventArrayDeserializer(\n result: Array<NamespaceDiscoveredEvent>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredEventDeserializer(item);\n });\n}\n\n/** Defines the event properties. */\nexport interface NamespaceDiscoveredEvent {\n /** The name of the event. */\n name: string;\n /** Reference to a data source for a given event. */\n dataSource?: string;\n /** Stringified JSON that contains connector-specific configuration for the event. For OPC UA, this could include configuration like, publishingInterval, samplingInterval, and queueSize. */\n eventConfiguration?: string;\n /** Destinations for an event. */\n destinations?: EventDestinationUnion[];\n /** URI or type definition ID. */\n typeRef?: string;\n /** UTC timestamp indicating when the event was added or modified. */\n lastUpdatedOn?: Date;\n}\n\nexport function namespaceDiscoveredEventSerializer(item: NamespaceDiscoveredEvent): any {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n eventConfiguration: item[\"eventConfiguration\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : eventDestinationUnionArraySerializer(item[\"destinations\"]),\n typeRef: item[\"typeRef\"],\n lastUpdatedOn: !item[\"lastUpdatedOn\"]\n ? item[\"lastUpdatedOn\"]\n : item[\"lastUpdatedOn\"].toISOString(),\n };\n}\n\nexport function namespaceDiscoveredEventDeserializer(item: any): NamespaceDiscoveredEvent {\n return {\n name: item[\"name\"],\n dataSource: item[\"dataSource\"],\n eventConfiguration: item[\"eventConfiguration\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : eventDestinationUnionArrayDeserializer(item[\"destinations\"]),\n typeRef: item[\"typeRef\"],\n lastUpdatedOn: !item[\"lastUpdatedOn\"] ? item[\"lastUpdatedOn\"] : new Date(item[\"lastUpdatedOn\"]),\n };\n}\n\nexport function namespaceDiscoveredStreamArraySerializer(\n result: Array<NamespaceDiscoveredStream>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredStreamSerializer(item);\n });\n}\n\nexport function namespaceDiscoveredStreamArrayDeserializer(\n result: Array<NamespaceDiscoveredStream>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredStreamDeserializer(item);\n });\n}\n\n/** Defines the stream properties. */\nexport interface NamespaceDiscoveredStream {\n /** Name of the stream definition. */\n name: string;\n /** Stringified JSON that contains connector-specific configuration for the specific stream. */\n streamConfiguration?: string;\n /** URI or type definition ID. */\n typeRef?: string;\n /** Destinations for a stream. */\n destinations?: StreamDestinationUnion[];\n /** Timestamp (in UTC) indicating when the stream was added or modified. */\n lastUpdatedOn?: Date;\n}\n\nexport function namespaceDiscoveredStreamSerializer(item: NamespaceDiscoveredStream): any {\n return {\n name: item[\"name\"],\n streamConfiguration: item[\"streamConfiguration\"],\n typeRef: item[\"typeRef\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : streamDestinationUnionArraySerializer(item[\"destinations\"]),\n lastUpdatedOn: !item[\"lastUpdatedOn\"]\n ? item[\"lastUpdatedOn\"]\n : item[\"lastUpdatedOn\"].toISOString(),\n };\n}\n\nexport function namespaceDiscoveredStreamDeserializer(item: any): NamespaceDiscoveredStream {\n return {\n name: item[\"name\"],\n streamConfiguration: item[\"streamConfiguration\"],\n typeRef: item[\"typeRef\"],\n destinations: !item[\"destinations\"]\n ? item[\"destinations\"]\n : streamDestinationUnionArrayDeserializer(item[\"destinations\"]),\n lastUpdatedOn: !item[\"lastUpdatedOn\"] ? item[\"lastUpdatedOn\"] : new Date(item[\"lastUpdatedOn\"]),\n };\n}\n\nexport function namespaceDiscoveredManagementGroupArraySerializer(\n result: Array<NamespaceDiscoveredManagementGroup>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredManagementGroupSerializer(item);\n });\n}\n\nexport function namespaceDiscoveredManagementGroupArrayDeserializer(\n result: Array<NamespaceDiscoveredManagementGroup>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredManagementGroupDeserializer(item);\n });\n}\n\n/** Defines the management group properties. */\nexport interface NamespaceDiscoveredManagementGroup {\n /** Name of the management group. */\n name: string;\n /** Stringified JSON that contains connector-specific configuration for the management group. */\n managementGroupConfiguration?: string;\n /** URI or type definition ID. */\n typeRef?: string;\n /** Reference to a data source for a given management group. */\n dataSource?: string;\n /** Default MQTT topic path on which a client will receive the request for all actions that are part of the management group. */\n defaultTopic?: string;\n /** Default response timeout for all actions that are part of the management group. */\n defaultTimeoutInSeconds?: number;\n /** Array of actions that are part of the management group. Each action can have an individual configuration. */\n actions?: NamespaceDiscoveredManagementAction[];\n /** Timestamp (in UTC) indicating when the management group was added or modified. */\n lastUpdatedOn?: Date;\n}\n\nexport function namespaceDiscoveredManagementGroupSerializer(\n item: NamespaceDiscoveredManagementGroup,\n): any {\n return {\n name: item[\"name\"],\n managementGroupConfiguration: item[\"managementGroupConfiguration\"],\n typeRef: item[\"typeRef\"],\n dataSource: item[\"dataSource\"],\n defaultTopic: item[\"defaultTopic\"],\n defaultTimeoutInSeconds: item[\"defaultTimeoutInSeconds\"],\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : namespaceDiscoveredManagementActionArraySerializer(item[\"actions\"]),\n lastUpdatedOn: !item[\"lastUpdatedOn\"]\n ? item[\"lastUpdatedOn\"]\n : item[\"lastUpdatedOn\"].toISOString(),\n };\n}\n\nexport function namespaceDiscoveredManagementGroupDeserializer(\n item: any,\n): NamespaceDiscoveredManagementGroup {\n return {\n name: item[\"name\"],\n managementGroupConfiguration: item[\"managementGroupConfiguration\"],\n typeRef: item[\"typeRef\"],\n dataSource: item[\"dataSource\"],\n defaultTopic: item[\"defaultTopic\"],\n defaultTimeoutInSeconds: item[\"defaultTimeoutInSeconds\"],\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : namespaceDiscoveredManagementActionArrayDeserializer(item[\"actions\"]),\n lastUpdatedOn: !item[\"lastUpdatedOn\"] ? item[\"lastUpdatedOn\"] : new Date(item[\"lastUpdatedOn\"]),\n };\n}\n\nexport function namespaceDiscoveredManagementActionArraySerializer(\n result: Array<NamespaceDiscoveredManagementAction>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredManagementActionSerializer(item);\n });\n}\n\nexport function namespaceDiscoveredManagementActionArrayDeserializer(\n result: Array<NamespaceDiscoveredManagementAction>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredManagementActionDeserializer(item);\n });\n}\n\n/** Defines the action properties. */\nexport interface NamespaceDiscoveredManagementAction {\n /** Name of the action. */\n name: string;\n /** Stringified JSON that contains connector-specific configuration for the action. */\n actionConfiguration?: string;\n /** The target URI on which a client can invoke the specific action. */\n targetUri: string;\n /** URI or type definition ID. */\n typeRef?: string;\n /** The MQTT topic path on which a client will receive the request for the action. */\n topic?: string;\n /** The type of the action. */\n actionType?: NamespaceDiscoveredManagementActionType;\n /** Response timeout for the action. */\n timeoutInSeconds?: number;\n /** Timestamp (in UTC) indicating when the management action was added or modified. */\n lastUpdatedOn?: Date;\n}\n\nexport function namespaceDiscoveredManagementActionSerializer(\n item: NamespaceDiscoveredManagementAction,\n): any {\n return {\n name: item[\"name\"],\n actionConfiguration: item[\"actionConfiguration\"],\n targetUri: item[\"targetUri\"],\n typeRef: item[\"typeRef\"],\n topic: item[\"topic\"],\n actionType: item[\"actionType\"],\n timeoutInSeconds: item[\"timeoutInSeconds\"],\n lastUpdatedOn: !item[\"lastUpdatedOn\"]\n ? item[\"lastUpdatedOn\"]\n : item[\"lastUpdatedOn\"].toISOString(),\n };\n}\n\nexport function namespaceDiscoveredManagementActionDeserializer(\n item: any,\n): NamespaceDiscoveredManagementAction {\n return {\n name: item[\"name\"],\n actionConfiguration: item[\"actionConfiguration\"],\n targetUri: item[\"targetUri\"],\n typeRef: item[\"typeRef\"],\n topic: item[\"topic\"],\n actionType: item[\"actionType\"],\n timeoutInSeconds: item[\"timeoutInSeconds\"],\n lastUpdatedOn: !item[\"lastUpdatedOn\"] ? item[\"lastUpdatedOn\"] : new Date(item[\"lastUpdatedOn\"]),\n };\n}\n\n/** Defines the ManagementAction's type. */\nexport enum KnownNamespaceDiscoveredManagementActionType {\n /** Call action type. */\n Call = \"Call\",\n /** Read action type. */\n Read = \"Read\",\n /** Write action type. */\n Write = \"Write\",\n}\n\n/**\n * Defines the ManagementAction's type. \\\n * {@link KnownNamespaceDiscoveredManagementActionType} can be used interchangeably with NamespaceDiscoveredManagementActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Call**: Call action type. \\\n * **Read**: Read action type. \\\n * **Write**: Write action type.\n */\nexport type NamespaceDiscoveredManagementActionType = string;\n\n/** The type used for update operations of the NamespaceDiscoveredAsset. */\nexport interface NamespaceDiscoveredAssetUpdate {\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The resource-specific properties for this resource. */\n properties?: NamespaceDiscoveredAssetUpdateProperties;\n}\n\nexport function namespaceDiscoveredAssetUpdateSerializer(\n item: NamespaceDiscoveredAssetUpdate,\n): any {\n return {\n tags: item[\"tags\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceDiscoveredAssetUpdatePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** The updatable properties of the NamespaceDiscoveredAsset. */\nexport interface NamespaceDiscoveredAssetUpdateProperties {\n /** Reference to the device that provides data for this asset. Must provide device name & endpoint on the device to use. */\n deviceRef?: DeviceRef;\n /** Human-readable display name. */\n displayName?: string;\n /** URIs or type definition IDs. */\n assetTypeRefs?: string[];\n /** Human-readable description of the asset. */\n description?: string;\n /** Identifier used to detect changes in the asset. */\n discoveryId?: string;\n /** An integer that is incremented each time the resource is modified. */\n version?: number;\n /** Asset manufacturer. */\n manufacturer?: string;\n /** Asset manufacturer URI. */\n manufacturerUri?: string;\n /** Asset model. */\n model?: string;\n /** Asset product code. */\n productCode?: string;\n /** Asset hardware revision number. */\n hardwareRevision?: string;\n /** Asset software revision number. */\n softwareRevision?: string;\n /** Asset documentation reference. */\n documentationUri?: string;\n /** Asset serial number. */\n serialNumber?: string;\n /** A set of key-value pairs that contain custom attributes. */\n attributes?: Record<string, any>;\n /** Stringified JSON that contains connector-specific default configuration for all datasets. Each dataset can have its own configuration that overrides the default settings here. */\n defaultDatasetsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all events. Each event can have its own configuration that overrides the default settings here. */\n defaultEventsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all streams. Each stream can have its own configuration that overrides the default settings here. */\n defaultStreamsConfiguration?: string;\n /** Stringified JSON that contains connector-specific default configuration for all management groups. Each management group can have its own configuration that overrides the default settings here. */\n defaultManagementGroupsConfiguration?: string;\n /** Default destinations for a dataset. */\n defaultDatasetsDestinations?: DatasetDestinationUnion[];\n /** Default destinations for an event. */\n defaultEventsDestinations?: EventDestinationUnion[];\n /** Default destinations for a stream. */\n defaultStreamsDestinations?: StreamDestinationUnion[];\n /** Array of datasets that are part of the asset. Each dataset spec describes the data points that make up the set. */\n datasets?: NamespaceDiscoveredDataset[];\n /** Array of event groups that are part of the asset. Each event group can have per-event group configuration. */\n eventGroups?: NamespaceDiscoveredEventGroup[];\n /** Array of streams that are part of the asset. Each stream can have a per-stream configuration. */\n streams?: NamespaceDiscoveredStream[];\n /** Array of management groups that are part of the asset. Each management group can have a per-group configuration. */\n managementGroups?: NamespaceDiscoveredManagementGroup[];\n}\n\nexport function namespaceDiscoveredAssetUpdatePropertiesSerializer(\n item: NamespaceDiscoveredAssetUpdateProperties,\n): any {\n return {\n deviceRef: !item[\"deviceRef\"] ? item[\"deviceRef\"] : deviceRefSerializer(item[\"deviceRef\"]),\n displayName: item[\"displayName\"],\n assetTypeRefs: !item[\"assetTypeRefs\"]\n ? item[\"assetTypeRefs\"]\n : item[\"assetTypeRefs\"].map((p: any) => {\n return p;\n }),\n description: item[\"description\"],\n discoveryId: item[\"discoveryId\"],\n version: item[\"version\"],\n manufacturer: item[\"manufacturer\"],\n manufacturerUri: item[\"manufacturerUri\"],\n model: item[\"model\"],\n productCode: item[\"productCode\"],\n hardwareRevision: item[\"hardwareRevision\"],\n softwareRevision: item[\"softwareRevision\"],\n documentationUri: item[\"documentationUri\"],\n serialNumber: item[\"serialNumber\"],\n attributes: item[\"attributes\"],\n defaultDatasetsConfiguration: item[\"defaultDatasetsConfiguration\"],\n defaultEventsConfiguration: item[\"defaultEventsConfiguration\"],\n defaultStreamsConfiguration: item[\"defaultStreamsConfiguration\"],\n defaultManagementGroupsConfiguration: item[\"defaultManagementGroupsConfiguration\"],\n defaultDatasetsDestinations: !item[\"defaultDatasetsDestinations\"]\n ? item[\"defaultDatasetsDestinations\"]\n : datasetDestinationUnionArraySerializer(item[\"defaultDatasetsDestinations\"]),\n defaultEventsDestinations: !item[\"defaultEventsDestinations\"]\n ? item[\"defaultEventsDestinations\"]\n : eventDestinationUnionArraySerializer(item[\"defaultEventsDestinations\"]),\n defaultStreamsDestinations: !item[\"defaultStreamsDestinations\"]\n ? item[\"defaultStreamsDestinations\"]\n : streamDestinationUnionArraySerializer(item[\"defaultStreamsDestinations\"]),\n datasets: !item[\"datasets\"]\n ? item[\"datasets\"]\n : namespaceDiscoveredDatasetArraySerializer(item[\"datasets\"]),\n eventGroups: !item[\"eventGroups\"]\n ? item[\"eventGroups\"]\n : namespaceDiscoveredEventGroupArraySerializer(item[\"eventGroups\"]),\n streams: !item[\"streams\"]\n ? item[\"streams\"]\n : namespaceDiscoveredStreamArraySerializer(item[\"streams\"]),\n managementGroups: !item[\"managementGroups\"]\n ? item[\"managementGroups\"]\n : namespaceDiscoveredManagementGroupArraySerializer(item[\"managementGroups\"]),\n };\n}\n\n/** The response of a NamespaceDiscoveredAsset list operation. */\nexport interface _NamespaceDiscoveredAssetListResult {\n /** The NamespaceDiscoveredAsset items on this page */\n value: NamespaceDiscoveredAsset[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _namespaceDiscoveredAssetListResultDeserializer(\n item: any,\n): _NamespaceDiscoveredAssetListResult {\n return {\n value: namespaceDiscoveredAssetArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function namespaceDiscoveredAssetArraySerializer(\n result: Array<NamespaceDiscoveredAsset>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredAssetSerializer(item);\n });\n}\n\nexport function namespaceDiscoveredAssetArrayDeserializer(\n result: Array<NamespaceDiscoveredAsset>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredAssetDeserializer(item);\n });\n}\n\n/** Discovered device definition. */\nexport interface NamespaceDiscoveredDevice extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: NamespaceDiscoveredDeviceProperties;\n /** The extended location. */\n extendedLocation: ExtendedLocation;\n}\n\nexport function namespaceDiscoveredDeviceSerializer(item: NamespaceDiscoveredDevice): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceDiscoveredDevicePropertiesSerializer(item[\"properties\"]),\n extendedLocation: extendedLocationSerializer(item[\"extendedLocation\"]),\n };\n}\n\nexport function namespaceDiscoveredDeviceDeserializer(item: any): NamespaceDiscoveredDevice {\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceDiscoveredDevicePropertiesDeserializer(item[\"properties\"]),\n extendedLocation: extendedLocationDeserializer(item[\"extendedLocation\"]),\n };\n}\n\n/** Defines the discovered device properties. */\nexport interface NamespaceDiscoveredDeviceProperties {\n /** A device ID that represents the device in a system external to Azure. Unique within scope of an Azure tenant. */\n externalDeviceId?: string;\n /** Endpoints for discovered devices. */\n endpoints?: DiscoveredMessagingEndpoints;\n /** Device manufacturer. */\n manufacturer?: string;\n /** Device model. */\n model?: string;\n /** Device operating system name. */\n operatingSystem?: string;\n /** Device operating system version. */\n operatingSystemVersion?: string;\n /** A set of key-value pairs that contain custom attributes. */\n attributes?: Record<string, any>;\n /** Identifier used to detect changes in the discovered device. */\n discoveryId: string;\n /** An integer that is incremented each time the resource is modified. */\n version: number;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function namespaceDiscoveredDevicePropertiesSerializer(\n item: NamespaceDiscoveredDeviceProperties,\n): any {\n return {\n externalDeviceId: item[\"externalDeviceId\"],\n endpoints: !item[\"endpoints\"]\n ? item[\"endpoints\"]\n : discoveredMessagingEndpointsSerializer(item[\"endpoints\"]),\n manufacturer: item[\"manufacturer\"],\n model: item[\"model\"],\n operatingSystem: item[\"operatingSystem\"],\n operatingSystemVersion: item[\"operatingSystemVersion\"],\n attributes: item[\"attributes\"],\n discoveryId: item[\"discoveryId\"],\n version: item[\"version\"],\n };\n}\n\nexport function namespaceDiscoveredDevicePropertiesDeserializer(\n item: any,\n): NamespaceDiscoveredDeviceProperties {\n return {\n externalDeviceId: item[\"externalDeviceId\"],\n endpoints: !item[\"endpoints\"]\n ? item[\"endpoints\"]\n : discoveredMessagingEndpointsDeserializer(item[\"endpoints\"]),\n manufacturer: item[\"manufacturer\"],\n model: item[\"model\"],\n operatingSystem: item[\"operatingSystem\"],\n operatingSystemVersion: item[\"operatingSystemVersion\"],\n attributes: !item[\"attributes\"]\n ? item[\"attributes\"]\n : Object.fromEntries(\n Object.entries(item[\"attributes\"]).map(([k, p]: [string, any]) => [k, p]),\n ),\n discoveryId: item[\"discoveryId\"],\n version: item[\"version\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** Connection endpoint URL a device can use to connect to a service. */\nexport interface DiscoveredMessagingEndpoints {\n /** Set of endpoints to connect to the device. */\n inbound?: Record<string, DiscoveredInboundEndpoints>;\n /** Set of endpoints a device can connect to. */\n outbound?: DiscoveredOutboundEndpoints;\n}\n\nexport function discoveredMessagingEndpointsSerializer(item: DiscoveredMessagingEndpoints): any {\n return {\n inbound: !item[\"inbound\"]\n ? item[\"inbound\"]\n : discoveredInboundEndpointsRecordSerializer(item[\"inbound\"]),\n outbound: !item[\"outbound\"]\n ? item[\"outbound\"]\n : discoveredOutboundEndpointsSerializer(item[\"outbound\"]),\n };\n}\n\nexport function discoveredMessagingEndpointsDeserializer(item: any): DiscoveredMessagingEndpoints {\n return {\n inbound: !item[\"inbound\"]\n ? item[\"inbound\"]\n : discoveredInboundEndpointsRecordDeserializer(item[\"inbound\"]),\n outbound: !item[\"outbound\"]\n ? item[\"outbound\"]\n : discoveredOutboundEndpointsDeserializer(item[\"outbound\"]),\n };\n}\n\nexport function discoveredInboundEndpointsRecordSerializer(\n item: Record<string, DiscoveredInboundEndpoints>,\n): Record<string, any> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : discoveredInboundEndpointsSerializer(item[key]);\n });\n return result;\n}\n\nexport function discoveredInboundEndpointsRecordDeserializer(\n item: Record<string, any>,\n): Record<string, DiscoveredInboundEndpoints> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : discoveredInboundEndpointsDeserializer(item[key]);\n });\n return result;\n}\n\n/** An endpoint to connect to the device. */\nexport interface DiscoveredInboundEndpoints {\n /** Type of connection endpoint. */\n endpointType: string;\n /** The endpoint address & port. This can be either an IP address (e.g., 192.168.1.1) or a fully qualified domain name (FQDN, e.g., server.example.com). */\n address: string;\n /** Protocol version associated with the endpoint e.g. 1 or 2 for endpointType Microsoft.HTTP, and 3.5 or 5.0 for endpointType Microsoft.Mqtt etc. */\n version?: string;\n /** List of supported authentication methods supported by device for Inbound connections. */\n supportedAuthenticationMethods?: AuthenticationMethod[];\n /** Stringified JSON that contains configuration to be used by the connector (e.g., OPC UA, ONVIF). */\n additionalConfiguration?: string;\n /** The timestamp (in UTC) when the endpoint was discovered. */\n lastUpdatedOn?: Date;\n}\n\nexport function discoveredInboundEndpointsSerializer(item: DiscoveredInboundEndpoints): any {\n return {\n endpointType: item[\"endpointType\"],\n address: item[\"address\"],\n version: item[\"version\"],\n supportedAuthenticationMethods: !item[\"supportedAuthenticationMethods\"]\n ? item[\"supportedAuthenticationMethods\"]\n : item[\"supportedAuthenticationMethods\"].map((p: any) => {\n return p;\n }),\n additionalConfiguration: item[\"additionalConfiguration\"],\n lastUpdatedOn: !item[\"lastUpdatedOn\"]\n ? item[\"lastUpdatedOn\"]\n : item[\"lastUpdatedOn\"].toISOString(),\n };\n}\n\nexport function discoveredInboundEndpointsDeserializer(item: any): DiscoveredInboundEndpoints {\n return {\n endpointType: item[\"endpointType\"],\n address: item[\"address\"],\n version: item[\"version\"],\n supportedAuthenticationMethods: !item[\"supportedAuthenticationMethods\"]\n ? item[\"supportedAuthenticationMethods\"]\n : item[\"supportedAuthenticationMethods\"].map((p: any) => {\n return p;\n }),\n additionalConfiguration: item[\"additionalConfiguration\"],\n lastUpdatedOn: !item[\"lastUpdatedOn\"] ? item[\"lastUpdatedOn\"] : new Date(item[\"lastUpdatedOn\"]),\n };\n}\n\n/** Property bag contains the device's outbound endpoints */\nexport interface DiscoveredOutboundEndpoints {\n /** Endpoints the device can connect to. */\n assigned: Record<string, DeviceMessagingEndpoint>;\n}\n\nexport function discoveredOutboundEndpointsSerializer(item: DiscoveredOutboundEndpoints): any {\n return { assigned: deviceMessagingEndpointRecordSerializer(item[\"assigned\"]) };\n}\n\nexport function discoveredOutboundEndpointsDeserializer(item: any): DiscoveredOutboundEndpoints {\n return {\n assigned: deviceMessagingEndpointRecordDeserializer(item[\"assigned\"]),\n };\n}\n\n/** The type used for update operations of the NamespaceDiscoveredDevice. */\nexport interface NamespaceDiscoveredDeviceUpdate {\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The resource-specific properties for this resource. */\n properties?: NamespaceDiscoveredDeviceUpdateProperties;\n}\n\nexport function namespaceDiscoveredDeviceUpdateSerializer(\n item: NamespaceDiscoveredDeviceUpdate,\n): any {\n return {\n tags: item[\"tags\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : namespaceDiscoveredDeviceUpdatePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** The updatable properties of the NamespaceDiscoveredDevice. */\nexport interface NamespaceDiscoveredDeviceUpdateProperties {\n /** A device ID that represents the device in a system external to Azure. Unique within scope of an Azure tenant. */\n externalDeviceId?: string;\n /** Endpoints for discovered devices. */\n endpoints?: DiscoveredMessagingEndpoints;\n /** Device operating system version. */\n operatingSystemVersion?: string;\n /** A set of key-value pairs that contain custom attributes. */\n attributes?: Record<string, any>;\n /** Identifier used to detect changes in the discovered device. */\n discoveryId?: string;\n /** An integer that is incremented each time the resource is modified. */\n version?: number;\n}\n\nexport function namespaceDiscoveredDeviceUpdatePropertiesSerializer(\n item: NamespaceDiscoveredDeviceUpdateProperties,\n): any {\n return {\n externalDeviceId: item[\"externalDeviceId\"],\n endpoints: !item[\"endpoints\"]\n ? item[\"endpoints\"]\n : discoveredMessagingEndpointsSerializer(item[\"endpoints\"]),\n operatingSystemVersion: item[\"operatingSystemVersion\"],\n attributes: item[\"attributes\"],\n discoveryId: item[\"discoveryId\"],\n version: item[\"version\"],\n };\n}\n\n/** The response of a NamespaceDiscoveredDevice list operation. */\nexport interface _NamespaceDiscoveredDeviceListResult {\n /** The NamespaceDiscoveredDevice items on this page */\n value: NamespaceDiscoveredDevice[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _namespaceDiscoveredDeviceListResultDeserializer(\n item: any,\n): _NamespaceDiscoveredDeviceListResult {\n return {\n value: namespaceDiscoveredDeviceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function namespaceDiscoveredDeviceArraySerializer(\n result: Array<NamespaceDiscoveredDevice>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredDeviceSerializer(item);\n });\n}\n\nexport function namespaceDiscoveredDeviceArrayDeserializer(\n result: Array<NamespaceDiscoveredDevice>,\n): any[] {\n return result.map((item) => {\n return namespaceDiscoveredDeviceDeserializer(item);\n });\n}\n\n/** Schema registry definition. */\nexport interface SchemaRegistry extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: SchemaRegistryProperties;\n /** The managed service identities assigned to this resource. */\n identity?: SystemAssignedServiceIdentity;\n}\n\nexport function schemaRegistrySerializer(item: SchemaRegistry): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : schemaRegistryPropertiesSerializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : systemAssignedServiceIdentitySerializer(item[\"identity\"]),\n };\n}\n\nexport function schemaRegistryDeserializer(item: any): SchemaRegistry {\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : schemaRegistryPropertiesDeserializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : systemAssignedServiceIdentityDeserializer(item[\"identity\"]),\n };\n}\n\n/** Defines the schema registry properties. */\nexport interface SchemaRegistryProperties {\n /** Globally unique, immutable, non-reusable id. */\n readonly uuid?: string;\n /** Schema registry namespace. Uniquely identifies a schema registry within a tenant. */\n namespace: string;\n /** Human-readable display name. */\n displayName?: string;\n /** Human-readable description of the schema registry. */\n description?: string;\n /** The Storage Account's Container URL where schemas will be stored. */\n storageAccountContainerUrl: string;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function schemaRegistryPropertiesSerializer(item: SchemaRegistryProperties): any {\n return {\n namespace: item[\"namespace\"],\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n storageAccountContainerUrl: item[\"storageAccountContainerUrl\"],\n };\n}\n\nexport function schemaRegistryPropertiesDeserializer(item: any): SchemaRegistryProperties {\n return {\n uuid: item[\"uuid\"],\n namespace: item[\"namespace\"],\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n storageAccountContainerUrl: item[\"storageAccountContainerUrl\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The type used for update operations of the SchemaRegistry. */\nexport interface SchemaRegistryUpdate {\n /** The managed service identities assigned to this resource. */\n identity?: SystemAssignedServiceIdentity;\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The resource-specific properties for this resource. */\n properties?: SchemaRegistryUpdateProperties;\n}\n\nexport function schemaRegistryUpdateSerializer(item: SchemaRegistryUpdate): any {\n return {\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : systemAssignedServiceIdentitySerializer(item[\"identity\"]),\n tags: item[\"tags\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : schemaRegistryUpdatePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** The updatable properties of the SchemaRegistry. */\nexport interface SchemaRegistryUpdateProperties {\n /** Human-readable display name. */\n displayName?: string;\n /** Human-readable description of the schema registry. */\n description?: string;\n}\n\nexport function schemaRegistryUpdatePropertiesSerializer(\n item: SchemaRegistryUpdateProperties,\n): any {\n return { displayName: item[\"displayName\"], description: item[\"description\"] };\n}\n\n/** The response of a SchemaRegistry list operation. */\nexport interface _SchemaRegistryListResult {\n /** The SchemaRegistry items on this page */\n value: SchemaRegistry[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _schemaRegistryListResultDeserializer(item: any): _SchemaRegistryListResult {\n return {\n value: schemaRegistryArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function schemaRegistryArraySerializer(result: Array<SchemaRegistry>): any[] {\n return result.map((item) => {\n return schemaRegistrySerializer(item);\n });\n}\n\nexport function schemaRegistryArrayDeserializer(result: Array<SchemaRegistry>): any[] {\n return result.map((item) => {\n return schemaRegistryDeserializer(item);\n });\n}\n\n/** Schema definition. */\nexport interface Schema extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: SchemaProperties;\n}\n\nexport function schemaSerializer(item: Schema): any {\n return {\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : schemaPropertiesSerializer(item[\"properties\"]),\n };\n}\n\nexport function schemaDeserializer(item: any): Schema {\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : schemaPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Defines the schema properties. */\nexport interface SchemaProperties {\n /** Globally unique, immutable, non-reusable id. */\n readonly uuid?: string;\n /** Human-readable display name. */\n displayName?: string;\n /** Human-readable description of the schema. */\n description?: string;\n /** Format of the schema. */\n format: Format;\n /** Type of the schema. */\n schemaType: SchemaType;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n /** Schema tags. */\n tags?: Record<string, string>;\n}\n\nexport function schemaPropertiesSerializer(item: SchemaProperties): any {\n return {\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n format: item[\"format\"],\n schemaType: item[\"schemaType\"],\n tags: item[\"tags\"],\n };\n}\n\nexport function schemaPropertiesDeserializer(item: any): SchemaProperties {\n return {\n uuid: item[\"uuid\"],\n displayName: item[\"displayName\"],\n description: item[\"description\"],\n format: item[\"format\"],\n schemaType: item[\"schemaType\"],\n provisioningState: item[\"provisioningState\"],\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n };\n}\n\n/** Defines the schema format. */\nexport enum KnownFormat {\n /** JSON Schema version draft 7 format */\n JsonSchemaDraft7 = \"JsonSchema/draft-07\",\n /** Delta format */\n Delta10 = \"Delta/1.0\",\n}\n\n/**\n * Defines the schema format. \\\n * {@link KnownFormat} can be used interchangeably with Format,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **JsonSchema\\/draft-07**: JSON Schema version draft 7 format \\\n * **Delta\\/1.0**: Delta format\n */\nexport type Format = string;\n\n/** Defines the schema type. */\nexport enum KnownSchemaType {\n /** Message Schema schema type */\n MessageSchema = \"MessageSchema\",\n}\n\n/**\n * Defines the schema type. \\\n * {@link KnownSchemaType} can be used interchangeably with SchemaType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **MessageSchema**: Message Schema schema type\n */\nexport type SchemaType = string;\n\n/** The response of a Schema list operation. */\nexport interface _SchemaListResult {\n /** The Schema items on this page */\n value: Schema[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _schemaListResultDeserializer(item: any): _SchemaListResult {\n return {\n value: schemaArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function schemaArraySerializer(result: Array<Schema>): any[] {\n return result.map((item) => {\n return schemaSerializer(item);\n });\n}\n\nexport function schemaArrayDeserializer(result: Array<Schema>): any[] {\n return result.map((item) => {\n return schemaDeserializer(item);\n });\n}\n\n/** Schema version's definition. */\nexport interface SchemaVersion extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: SchemaVersionProperties;\n}\n\nexport function schemaVersionSerializer(item: SchemaVersion): any {\n return {\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : schemaVersionPropertiesSerializer(item[\"properties\"]),\n };\n}\n\nexport function schemaVersionDeserializer(item: any): SchemaVersion {\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 properties: !item[\"properties\"]\n ? item[\"properties\"]\n : schemaVersionPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Defines the schema version properties. */\nexport interface SchemaVersionProperties {\n /** Globally unique, immutable, non-reusable id. */\n readonly uuid?: string;\n /** Human-readable description of the schema. */\n description?: string;\n /** Schema content. */\n schemaContent: string;\n /** Hash of the schema content. */\n readonly hash?: string;\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function schemaVersionPropertiesSerializer(item: SchemaVersionProperties): any {\n return { description: item[\"description\"], schemaContent: item[\"schemaContent\"] };\n}\n\nexport function schemaVersionPropertiesDeserializer(item: any): SchemaVersionProperties {\n return {\n uuid: item[\"uuid\"],\n description: item[\"description\"],\n schemaContent: item[\"schemaContent\"],\n hash: item[\"hash\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The response of a SchemaVersion list operation. */\nexport interface _SchemaVersionListResult {\n /** The SchemaVersion items on this page */\n value: SchemaVersion[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _schemaVersionListResultDeserializer(item: any): _SchemaVersionListResult {\n return {\n value: schemaVersionArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function schemaVersionArraySerializer(result: Array<SchemaVersion>): any[] {\n return result.map((item) => {\n return schemaVersionSerializer(item);\n });\n}\n\nexport function schemaVersionArrayDeserializer(result: Array<SchemaVersion>): any[] {\n return result.map((item) => {\n return schemaVersionDeserializer(item);\n });\n}\n\n/** Microsoft.DeviceRegistry Resource Provider supported API versions. */\nexport enum KnownVersions {\n /** Microsoft.DeviceRegistry Resource Provider management API version 2023-11-01-preview. */\n V20231101Preview = \"2023-11-01-preview\",\n /** Microsoft.DeviceRegistry Resource Provider management API version 2024-09-01-preview. */\n V20240901Preview = \"2024-09-01-preview\",\n /** Microsoft.DeviceRegistry Resource Provider management API version 2024-11-01. */\n V20241101 = \"2024-11-01\",\n /** Microsoft.DeviceRegistry Resource Provider management API version 2025-07-01-preview. */\n V20250701Preview = \"2025-07-01-preview\",\n /** Microsoft.DeviceRegistry Resource Provider management API version 2025-10-01. */\n V20251001 = \"2025-10-01\",\n /** Microsoft.DeviceRegistry Resource Provider management API version 2025-11-01-preview. */\n V20251101Preview = \"2025-11-01-preview\",\n /** Microsoft.DeviceRegistry Resource Provider management API version 2026-03-01-preview. */\n V20260301Preview = \"2026-03-01-preview\",\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;AAA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",
6
+ "names": ["KnownOrigin", "KnownActionType", "KnownTopicRetainType", "KnownDataPointObservabilityMode", "KnownEventObservabilityMode", "KnownProvisioningState", "KnownCreatedByType", "KnownAuthenticationMethod", "KnownSystemAssignedServiceIdentityType", "KnownScope", "KnownSupportedKeyType", "KnownBringYourOwnRootStatus", "KnownDatasetDestinationTarget", "KnownMqttDestinationQos", "KnownEventDestinationTarget", "KnownStreamDestinationTarget", "KnownManagementActionType", "KnownNamespaceDiscoveredManagementActionType", "KnownFormat", "KnownSchemaType", "KnownVersions"]
7
+ }