@azure/arm-iotfirmwaredefense 2.0.0-beta.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (530) hide show
  1. package/README.md +1 -1
  2. package/dist/browser/api/binaryHardening/operations.d.ts +1 -1
  3. package/dist/browser/api/binaryHardening/operations.js.map +1 -1
  4. package/dist/browser/api/cryptoCertificates/operations.d.ts +1 -1
  5. package/dist/browser/api/cryptoCertificates/operations.js.map +1 -1
  6. package/dist/browser/api/cryptoKeys/operations.d.ts +1 -1
  7. package/dist/browser/api/cryptoKeys/operations.js.map +1 -1
  8. package/dist/browser/api/cves/operations.d.ts +1 -1
  9. package/dist/browser/api/cves/operations.js +1 -1
  10. package/dist/browser/api/cves/operations.js.map +1 -1
  11. package/dist/browser/api/firmwares/operations.d.ts +1 -1
  12. package/dist/browser/api/firmwares/operations.js +1 -7
  13. package/dist/browser/api/firmwares/operations.js.map +1 -1
  14. package/dist/browser/api/ioTFirmwareDefenseContext.d.ts +3 -0
  15. package/dist/browser/api/ioTFirmwareDefenseContext.js +4 -3
  16. package/dist/browser/api/ioTFirmwareDefenseContext.js.map +1 -1
  17. package/dist/browser/api/operations/operations.d.ts +1 -1
  18. package/dist/browser/api/operations/operations.js.map +1 -1
  19. package/dist/browser/api/passwordHashes/operations.d.ts +1 -1
  20. package/dist/browser/api/passwordHashes/operations.js.map +1 -1
  21. package/dist/browser/api/sbomComponents/operations.d.ts +1 -1
  22. package/dist/browser/api/sbomComponents/operations.js.map +1 -1
  23. package/dist/browser/api/summaries/operations.d.ts +1 -1
  24. package/dist/browser/api/summaries/operations.js.map +1 -1
  25. package/dist/browser/api/usageMetrics/operations.d.ts +1 -1
  26. package/dist/browser/api/usageMetrics/operations.js.map +1 -1
  27. package/dist/browser/api/workspaces/operations.d.ts +3 -2
  28. package/dist/browser/api/workspaces/operations.js +10 -11
  29. package/dist/browser/api/workspaces/operations.js.map +1 -1
  30. package/dist/browser/api/workspaces/options.d.ts +2 -0
  31. package/dist/browser/api/workspaces/options.js.map +1 -1
  32. package/dist/browser/classic/binaryHardening/index.d.ts +1 -1
  33. package/dist/browser/classic/binaryHardening/index.js.map +1 -1
  34. package/dist/browser/classic/cryptoCertificates/index.d.ts +1 -1
  35. package/dist/browser/classic/cryptoCertificates/index.js.map +1 -1
  36. package/dist/browser/classic/cryptoKeys/index.d.ts +1 -1
  37. package/dist/browser/classic/cryptoKeys/index.js.map +1 -1
  38. package/dist/browser/classic/cves/index.d.ts +1 -1
  39. package/dist/browser/classic/cves/index.js.map +1 -1
  40. package/dist/browser/classic/firmwares/index.d.ts +1 -1
  41. package/dist/browser/classic/firmwares/index.js.map +1 -1
  42. package/dist/browser/classic/operations/index.d.ts +1 -1
  43. package/dist/browser/classic/operations/index.js.map +1 -1
  44. package/dist/browser/classic/passwordHashes/index.d.ts +1 -1
  45. package/dist/browser/classic/passwordHashes/index.js.map +1 -1
  46. package/dist/browser/classic/sbomComponents/index.d.ts +1 -1
  47. package/dist/browser/classic/sbomComponents/index.js.map +1 -1
  48. package/dist/browser/classic/summaries/index.d.ts +1 -1
  49. package/dist/browser/classic/summaries/index.js.map +1 -1
  50. package/dist/browser/classic/usageMetrics/index.d.ts +1 -1
  51. package/dist/browser/classic/usageMetrics/index.js.map +1 -1
  52. package/dist/browser/classic/workspaces/index.d.ts +3 -2
  53. package/dist/browser/classic/workspaces/index.js.map +1 -1
  54. package/dist/browser/index.d.ts +4 -1
  55. package/dist/browser/index.js +3 -0
  56. package/dist/browser/index.js.map +1 -1
  57. package/dist/browser/ioTFirmwareDefenseClient.d.ts +9 -9
  58. package/dist/browser/ioTFirmwareDefenseClient.js +8 -8
  59. package/dist/browser/ioTFirmwareDefenseClient.js.map +1 -1
  60. package/dist/browser/models/index.d.ts +1 -1
  61. package/dist/browser/models/index.js.map +1 -1
  62. package/dist/browser/models/models.d.ts +23 -7
  63. package/dist/browser/models/models.js +15 -6
  64. package/dist/browser/models/models.js.map +1 -1
  65. package/dist/browser/restorePollerHelpers.d.ts +21 -0
  66. package/dist/browser/restorePollerHelpers.js +91 -0
  67. package/dist/browser/restorePollerHelpers.js.map +1 -0
  68. package/dist/browser/static-helpers/cloudSettingHelpers.d.ts +13 -0
  69. package/dist/browser/static-helpers/cloudSettingHelpers.js +29 -0
  70. package/dist/browser/static-helpers/cloudSettingHelpers.js.map +1 -0
  71. package/dist/browser/static-helpers/pollingHelpers.d.ts +30 -0
  72. package/dist/browser/static-helpers/pollingHelpers.js +79 -0
  73. package/dist/browser/static-helpers/pollingHelpers.js.map +1 -0
  74. package/dist/browser/static-helpers/urlTemplate.js +2 -1
  75. package/dist/browser/static-helpers/urlTemplate.js.map +1 -1
  76. package/dist/commonjs/api/binaryHardening/operations.d.ts +1 -1
  77. package/dist/commonjs/api/binaryHardening/operations.js.map +1 -1
  78. package/dist/commonjs/api/cryptoCertificates/operations.d.ts +1 -1
  79. package/dist/commonjs/api/cryptoCertificates/operations.js.map +1 -1
  80. package/dist/commonjs/api/cryptoKeys/operations.d.ts +1 -1
  81. package/dist/commonjs/api/cryptoKeys/operations.js.map +1 -1
  82. package/dist/commonjs/api/cves/operations.d.ts +1 -1
  83. package/dist/commonjs/api/cves/operations.js +1 -1
  84. package/dist/commonjs/api/cves/operations.js.map +1 -1
  85. package/dist/commonjs/api/firmwares/operations.d.ts +1 -1
  86. package/dist/commonjs/api/firmwares/operations.js +1 -7
  87. package/dist/commonjs/api/firmwares/operations.js.map +1 -1
  88. package/dist/commonjs/api/ioTFirmwareDefenseContext.d.ts +3 -0
  89. package/dist/commonjs/api/ioTFirmwareDefenseContext.js +4 -3
  90. package/dist/commonjs/api/ioTFirmwareDefenseContext.js.map +1 -1
  91. package/dist/commonjs/api/operations/operations.d.ts +1 -1
  92. package/dist/commonjs/api/operations/operations.js.map +1 -1
  93. package/dist/commonjs/api/passwordHashes/operations.d.ts +1 -1
  94. package/dist/commonjs/api/passwordHashes/operations.js.map +1 -1
  95. package/dist/commonjs/api/sbomComponents/operations.d.ts +1 -1
  96. package/dist/commonjs/api/sbomComponents/operations.js.map +1 -1
  97. package/dist/commonjs/api/summaries/operations.d.ts +1 -1
  98. package/dist/commonjs/api/summaries/operations.js.map +1 -1
  99. package/dist/commonjs/api/usageMetrics/operations.d.ts +1 -1
  100. package/dist/commonjs/api/usageMetrics/operations.js.map +1 -1
  101. package/dist/commonjs/api/workspaces/operations.d.ts +3 -2
  102. package/dist/commonjs/api/workspaces/operations.js +10 -11
  103. package/dist/commonjs/api/workspaces/operations.js.map +1 -1
  104. package/dist/commonjs/api/workspaces/options.d.ts +2 -0
  105. package/dist/commonjs/api/workspaces/options.js.map +1 -1
  106. package/dist/commonjs/classic/binaryHardening/index.d.ts +1 -1
  107. package/dist/commonjs/classic/binaryHardening/index.js.map +1 -1
  108. package/dist/commonjs/classic/cryptoCertificates/index.d.ts +1 -1
  109. package/dist/commonjs/classic/cryptoCertificates/index.js.map +1 -1
  110. package/dist/commonjs/classic/cryptoKeys/index.d.ts +1 -1
  111. package/dist/commonjs/classic/cryptoKeys/index.js.map +1 -1
  112. package/dist/commonjs/classic/cves/index.d.ts +1 -1
  113. package/dist/commonjs/classic/cves/index.js.map +1 -1
  114. package/dist/commonjs/classic/firmwares/index.d.ts +1 -1
  115. package/dist/commonjs/classic/firmwares/index.js.map +1 -1
  116. package/dist/commonjs/classic/operations/index.d.ts +1 -1
  117. package/dist/commonjs/classic/operations/index.js.map +1 -1
  118. package/dist/commonjs/classic/passwordHashes/index.d.ts +1 -1
  119. package/dist/commonjs/classic/passwordHashes/index.js.map +1 -1
  120. package/dist/commonjs/classic/sbomComponents/index.d.ts +1 -1
  121. package/dist/commonjs/classic/sbomComponents/index.js.map +1 -1
  122. package/dist/commonjs/classic/summaries/index.d.ts +1 -1
  123. package/dist/commonjs/classic/summaries/index.js.map +1 -1
  124. package/dist/commonjs/classic/usageMetrics/index.d.ts +1 -1
  125. package/dist/commonjs/classic/usageMetrics/index.js.map +1 -1
  126. package/dist/commonjs/classic/workspaces/index.d.ts +3 -2
  127. package/dist/commonjs/classic/workspaces/index.js.map +1 -1
  128. package/dist/commonjs/index.d.ts +4 -1
  129. package/dist/commonjs/index.js +5 -1
  130. package/dist/commonjs/index.js.map +1 -1
  131. package/dist/commonjs/ioTFirmwareDefenseClient.d.ts +9 -9
  132. package/dist/commonjs/ioTFirmwareDefenseClient.js +22 -22
  133. package/dist/commonjs/ioTFirmwareDefenseClient.js.map +1 -1
  134. package/dist/commonjs/models/index.d.ts +1 -1
  135. package/dist/commonjs/models/index.js.map +1 -1
  136. package/dist/commonjs/models/models.d.ts +23 -7
  137. package/dist/commonjs/models/models.js +16 -7
  138. package/dist/commonjs/models/models.js.map +1 -1
  139. package/dist/commonjs/restorePollerHelpers.d.ts +21 -0
  140. package/dist/commonjs/restorePollerHelpers.js +94 -0
  141. package/dist/commonjs/restorePollerHelpers.js.map +1 -0
  142. package/dist/commonjs/static-helpers/cloudSettingHelpers.d.ts +13 -0
  143. package/dist/commonjs/static-helpers/cloudSettingHelpers.js +33 -0
  144. package/dist/commonjs/static-helpers/cloudSettingHelpers.js.map +1 -0
  145. package/dist/commonjs/static-helpers/pollingHelpers.d.ts +30 -0
  146. package/dist/commonjs/static-helpers/pollingHelpers.js +82 -0
  147. package/dist/commonjs/static-helpers/pollingHelpers.js.map +1 -0
  148. package/dist/commonjs/static-helpers/urlTemplate.js +2 -1
  149. package/dist/commonjs/static-helpers/urlTemplate.js.map +1 -1
  150. package/dist/commonjs/tsdoc-metadata.json +1 -1
  151. package/dist/esm/api/binaryHardening/operations.d.ts +1 -1
  152. package/dist/esm/api/binaryHardening/operations.js.map +1 -1
  153. package/dist/esm/api/cryptoCertificates/operations.d.ts +1 -1
  154. package/dist/esm/api/cryptoCertificates/operations.js.map +1 -1
  155. package/dist/esm/api/cryptoKeys/operations.d.ts +1 -1
  156. package/dist/esm/api/cryptoKeys/operations.js.map +1 -1
  157. package/dist/esm/api/cves/operations.d.ts +1 -1
  158. package/dist/esm/api/cves/operations.js +1 -1
  159. package/dist/esm/api/cves/operations.js.map +1 -1
  160. package/dist/esm/api/firmwares/operations.d.ts +1 -1
  161. package/dist/esm/api/firmwares/operations.js +1 -7
  162. package/dist/esm/api/firmwares/operations.js.map +1 -1
  163. package/dist/esm/api/ioTFirmwareDefenseContext.d.ts +3 -0
  164. package/dist/esm/api/ioTFirmwareDefenseContext.js +4 -3
  165. package/dist/esm/api/ioTFirmwareDefenseContext.js.map +1 -1
  166. package/dist/esm/api/operations/operations.d.ts +1 -1
  167. package/dist/esm/api/operations/operations.js.map +1 -1
  168. package/dist/esm/api/passwordHashes/operations.d.ts +1 -1
  169. package/dist/esm/api/passwordHashes/operations.js.map +1 -1
  170. package/dist/esm/api/sbomComponents/operations.d.ts +1 -1
  171. package/dist/esm/api/sbomComponents/operations.js.map +1 -1
  172. package/dist/esm/api/summaries/operations.d.ts +1 -1
  173. package/dist/esm/api/summaries/operations.js.map +1 -1
  174. package/dist/esm/api/usageMetrics/operations.d.ts +1 -1
  175. package/dist/esm/api/usageMetrics/operations.js.map +1 -1
  176. package/dist/esm/api/workspaces/operations.d.ts +3 -2
  177. package/dist/esm/api/workspaces/operations.js +10 -11
  178. package/dist/esm/api/workspaces/operations.js.map +1 -1
  179. package/dist/esm/api/workspaces/options.d.ts +2 -0
  180. package/dist/esm/api/workspaces/options.js.map +1 -1
  181. package/dist/esm/classic/binaryHardening/index.d.ts +1 -1
  182. package/dist/esm/classic/binaryHardening/index.js.map +1 -1
  183. package/dist/esm/classic/cryptoCertificates/index.d.ts +1 -1
  184. package/dist/esm/classic/cryptoCertificates/index.js.map +1 -1
  185. package/dist/esm/classic/cryptoKeys/index.d.ts +1 -1
  186. package/dist/esm/classic/cryptoKeys/index.js.map +1 -1
  187. package/dist/esm/classic/cves/index.d.ts +1 -1
  188. package/dist/esm/classic/cves/index.js.map +1 -1
  189. package/dist/esm/classic/firmwares/index.d.ts +1 -1
  190. package/dist/esm/classic/firmwares/index.js.map +1 -1
  191. package/dist/esm/classic/operations/index.d.ts +1 -1
  192. package/dist/esm/classic/operations/index.js.map +1 -1
  193. package/dist/esm/classic/passwordHashes/index.d.ts +1 -1
  194. package/dist/esm/classic/passwordHashes/index.js.map +1 -1
  195. package/dist/esm/classic/sbomComponents/index.d.ts +1 -1
  196. package/dist/esm/classic/sbomComponents/index.js.map +1 -1
  197. package/dist/esm/classic/summaries/index.d.ts +1 -1
  198. package/dist/esm/classic/summaries/index.js.map +1 -1
  199. package/dist/esm/classic/usageMetrics/index.d.ts +1 -1
  200. package/dist/esm/classic/usageMetrics/index.js.map +1 -1
  201. package/dist/esm/classic/workspaces/index.d.ts +3 -2
  202. package/dist/esm/classic/workspaces/index.js.map +1 -1
  203. package/dist/esm/index.d.ts +4 -1
  204. package/dist/esm/index.js +3 -0
  205. package/dist/esm/index.js.map +1 -1
  206. package/dist/esm/ioTFirmwareDefenseClient.d.ts +9 -9
  207. package/dist/esm/ioTFirmwareDefenseClient.js +8 -8
  208. package/dist/esm/ioTFirmwareDefenseClient.js.map +1 -1
  209. package/dist/esm/models/index.d.ts +1 -1
  210. package/dist/esm/models/index.js.map +1 -1
  211. package/dist/esm/models/models.d.ts +23 -7
  212. package/dist/esm/models/models.js +15 -6
  213. package/dist/esm/models/models.js.map +1 -1
  214. package/dist/esm/restorePollerHelpers.d.ts +21 -0
  215. package/dist/esm/restorePollerHelpers.js +91 -0
  216. package/dist/esm/restorePollerHelpers.js.map +1 -0
  217. package/dist/esm/static-helpers/cloudSettingHelpers.d.ts +13 -0
  218. package/dist/esm/static-helpers/cloudSettingHelpers.js +29 -0
  219. package/dist/esm/static-helpers/cloudSettingHelpers.js.map +1 -0
  220. package/dist/esm/static-helpers/pollingHelpers.d.ts +30 -0
  221. package/dist/esm/static-helpers/pollingHelpers.js +79 -0
  222. package/dist/esm/static-helpers/pollingHelpers.js.map +1 -0
  223. package/dist/esm/static-helpers/urlTemplate.js +2 -1
  224. package/dist/esm/static-helpers/urlTemplate.js.map +1 -1
  225. package/dist/react-native/api/binaryHardening/operations.d.ts +1 -1
  226. package/dist/react-native/api/binaryHardening/operations.js.map +1 -1
  227. package/dist/react-native/api/cryptoCertificates/operations.d.ts +1 -1
  228. package/dist/react-native/api/cryptoCertificates/operations.js.map +1 -1
  229. package/dist/react-native/api/cryptoKeys/operations.d.ts +1 -1
  230. package/dist/react-native/api/cryptoKeys/operations.js.map +1 -1
  231. package/dist/react-native/api/cves/operations.d.ts +1 -1
  232. package/dist/react-native/api/cves/operations.js +1 -1
  233. package/dist/react-native/api/cves/operations.js.map +1 -1
  234. package/dist/react-native/api/firmwares/operations.d.ts +1 -1
  235. package/dist/react-native/api/firmwares/operations.js +1 -7
  236. package/dist/react-native/api/firmwares/operations.js.map +1 -1
  237. package/dist/react-native/api/ioTFirmwareDefenseContext.d.ts +3 -0
  238. package/dist/react-native/api/ioTFirmwareDefenseContext.js +4 -3
  239. package/dist/react-native/api/ioTFirmwareDefenseContext.js.map +1 -1
  240. package/dist/react-native/api/operations/operations.d.ts +1 -1
  241. package/dist/react-native/api/operations/operations.js.map +1 -1
  242. package/dist/react-native/api/passwordHashes/operations.d.ts +1 -1
  243. package/dist/react-native/api/passwordHashes/operations.js.map +1 -1
  244. package/dist/react-native/api/sbomComponents/operations.d.ts +1 -1
  245. package/dist/react-native/api/sbomComponents/operations.js.map +1 -1
  246. package/dist/react-native/api/summaries/operations.d.ts +1 -1
  247. package/dist/react-native/api/summaries/operations.js.map +1 -1
  248. package/dist/react-native/api/usageMetrics/operations.d.ts +1 -1
  249. package/dist/react-native/api/usageMetrics/operations.js.map +1 -1
  250. package/dist/react-native/api/workspaces/operations.d.ts +3 -2
  251. package/dist/react-native/api/workspaces/operations.js +10 -11
  252. package/dist/react-native/api/workspaces/operations.js.map +1 -1
  253. package/dist/react-native/api/workspaces/options.d.ts +2 -0
  254. package/dist/react-native/api/workspaces/options.js.map +1 -1
  255. package/dist/react-native/classic/binaryHardening/index.d.ts +1 -1
  256. package/dist/react-native/classic/binaryHardening/index.js.map +1 -1
  257. package/dist/react-native/classic/cryptoCertificates/index.d.ts +1 -1
  258. package/dist/react-native/classic/cryptoCertificates/index.js.map +1 -1
  259. package/dist/react-native/classic/cryptoKeys/index.d.ts +1 -1
  260. package/dist/react-native/classic/cryptoKeys/index.js.map +1 -1
  261. package/dist/react-native/classic/cves/index.d.ts +1 -1
  262. package/dist/react-native/classic/cves/index.js.map +1 -1
  263. package/dist/react-native/classic/firmwares/index.d.ts +1 -1
  264. package/dist/react-native/classic/firmwares/index.js.map +1 -1
  265. package/dist/react-native/classic/operations/index.d.ts +1 -1
  266. package/dist/react-native/classic/operations/index.js.map +1 -1
  267. package/dist/react-native/classic/passwordHashes/index.d.ts +1 -1
  268. package/dist/react-native/classic/passwordHashes/index.js.map +1 -1
  269. package/dist/react-native/classic/sbomComponents/index.d.ts +1 -1
  270. package/dist/react-native/classic/sbomComponents/index.js.map +1 -1
  271. package/dist/react-native/classic/summaries/index.d.ts +1 -1
  272. package/dist/react-native/classic/summaries/index.js.map +1 -1
  273. package/dist/react-native/classic/usageMetrics/index.d.ts +1 -1
  274. package/dist/react-native/classic/usageMetrics/index.js.map +1 -1
  275. package/dist/react-native/classic/workspaces/index.d.ts +3 -2
  276. package/dist/react-native/classic/workspaces/index.js.map +1 -1
  277. package/dist/react-native/index.d.ts +4 -1
  278. package/dist/react-native/index.js +3 -0
  279. package/dist/react-native/index.js.map +1 -1
  280. package/dist/react-native/ioTFirmwareDefenseClient.d.ts +9 -9
  281. package/dist/react-native/ioTFirmwareDefenseClient.js +8 -8
  282. package/dist/react-native/ioTFirmwareDefenseClient.js.map +1 -1
  283. package/dist/react-native/models/index.d.ts +1 -1
  284. package/dist/react-native/models/index.js.map +1 -1
  285. package/dist/react-native/models/models.d.ts +23 -7
  286. package/dist/react-native/models/models.js +15 -6
  287. package/dist/react-native/models/models.js.map +1 -1
  288. package/dist/react-native/restorePollerHelpers.d.ts +21 -0
  289. package/dist/react-native/restorePollerHelpers.js +91 -0
  290. package/dist/react-native/restorePollerHelpers.js.map +1 -0
  291. package/dist/react-native/static-helpers/cloudSettingHelpers.d.ts +13 -0
  292. package/dist/react-native/static-helpers/cloudSettingHelpers.js +29 -0
  293. package/dist/react-native/static-helpers/cloudSettingHelpers.js.map +1 -0
  294. package/dist/react-native/static-helpers/pollingHelpers.d.ts +30 -0
  295. package/dist/react-native/static-helpers/pollingHelpers.js +79 -0
  296. package/dist/react-native/static-helpers/pollingHelpers.js.map +1 -0
  297. package/dist/react-native/static-helpers/urlTemplate.js +2 -1
  298. package/dist/react-native/static-helpers/urlTemplate.js.map +1 -1
  299. package/package.json +44 -43
  300. package/CHANGELOG.md +0 -149
  301. package/dist/browser/api/binaryHardening/index.d.ts.map +0 -1
  302. package/dist/browser/api/binaryHardening/operations.d.ts.map +0 -1
  303. package/dist/browser/api/binaryHardening/options.d.ts.map +0 -1
  304. package/dist/browser/api/cryptoCertificates/index.d.ts.map +0 -1
  305. package/dist/browser/api/cryptoCertificates/operations.d.ts.map +0 -1
  306. package/dist/browser/api/cryptoCertificates/options.d.ts.map +0 -1
  307. package/dist/browser/api/cryptoKeys/index.d.ts.map +0 -1
  308. package/dist/browser/api/cryptoKeys/operations.d.ts.map +0 -1
  309. package/dist/browser/api/cryptoKeys/options.d.ts.map +0 -1
  310. package/dist/browser/api/cves/index.d.ts.map +0 -1
  311. package/dist/browser/api/cves/operations.d.ts.map +0 -1
  312. package/dist/browser/api/cves/options.d.ts.map +0 -1
  313. package/dist/browser/api/firmwares/index.d.ts.map +0 -1
  314. package/dist/browser/api/firmwares/operations.d.ts.map +0 -1
  315. package/dist/browser/api/firmwares/options.d.ts.map +0 -1
  316. package/dist/browser/api/index.d.ts.map +0 -1
  317. package/dist/browser/api/ioTFirmwareDefenseContext.d.ts.map +0 -1
  318. package/dist/browser/api/operations/index.d.ts.map +0 -1
  319. package/dist/browser/api/operations/operations.d.ts.map +0 -1
  320. package/dist/browser/api/operations/options.d.ts.map +0 -1
  321. package/dist/browser/api/passwordHashes/index.d.ts.map +0 -1
  322. package/dist/browser/api/passwordHashes/operations.d.ts.map +0 -1
  323. package/dist/browser/api/passwordHashes/options.d.ts.map +0 -1
  324. package/dist/browser/api/sbomComponents/index.d.ts.map +0 -1
  325. package/dist/browser/api/sbomComponents/operations.d.ts.map +0 -1
  326. package/dist/browser/api/sbomComponents/options.d.ts.map +0 -1
  327. package/dist/browser/api/summaries/index.d.ts.map +0 -1
  328. package/dist/browser/api/summaries/operations.d.ts.map +0 -1
  329. package/dist/browser/api/summaries/options.d.ts.map +0 -1
  330. package/dist/browser/api/usageMetrics/index.d.ts.map +0 -1
  331. package/dist/browser/api/usageMetrics/operations.d.ts.map +0 -1
  332. package/dist/browser/api/usageMetrics/options.d.ts.map +0 -1
  333. package/dist/browser/api/workspaces/index.d.ts.map +0 -1
  334. package/dist/browser/api/workspaces/operations.d.ts.map +0 -1
  335. package/dist/browser/api/workspaces/options.d.ts.map +0 -1
  336. package/dist/browser/classic/binaryHardening/index.d.ts.map +0 -1
  337. package/dist/browser/classic/cryptoCertificates/index.d.ts.map +0 -1
  338. package/dist/browser/classic/cryptoKeys/index.d.ts.map +0 -1
  339. package/dist/browser/classic/cves/index.d.ts.map +0 -1
  340. package/dist/browser/classic/firmwares/index.d.ts.map +0 -1
  341. package/dist/browser/classic/index.d.ts.map +0 -1
  342. package/dist/browser/classic/operations/index.d.ts.map +0 -1
  343. package/dist/browser/classic/passwordHashes/index.d.ts.map +0 -1
  344. package/dist/browser/classic/sbomComponents/index.d.ts.map +0 -1
  345. package/dist/browser/classic/summaries/index.d.ts.map +0 -1
  346. package/dist/browser/classic/usageMetrics/index.d.ts.map +0 -1
  347. package/dist/browser/classic/workspaces/index.d.ts.map +0 -1
  348. package/dist/browser/index.d.ts.map +0 -1
  349. package/dist/browser/ioTFirmwareDefenseClient.d.ts.map +0 -1
  350. package/dist/browser/logger.d.ts.map +0 -1
  351. package/dist/browser/models/index.d.ts.map +0 -1
  352. package/dist/browser/models/models.d.ts.map +0 -1
  353. package/dist/browser/static-helpers/pagingHelpers.d.ts.map +0 -1
  354. package/dist/browser/static-helpers/urlTemplate.d.ts.map +0 -1
  355. package/dist/commonjs/api/binaryHardening/index.d.ts.map +0 -1
  356. package/dist/commonjs/api/binaryHardening/operations.d.ts.map +0 -1
  357. package/dist/commonjs/api/binaryHardening/options.d.ts.map +0 -1
  358. package/dist/commonjs/api/cryptoCertificates/index.d.ts.map +0 -1
  359. package/dist/commonjs/api/cryptoCertificates/operations.d.ts.map +0 -1
  360. package/dist/commonjs/api/cryptoCertificates/options.d.ts.map +0 -1
  361. package/dist/commonjs/api/cryptoKeys/index.d.ts.map +0 -1
  362. package/dist/commonjs/api/cryptoKeys/operations.d.ts.map +0 -1
  363. package/dist/commonjs/api/cryptoKeys/options.d.ts.map +0 -1
  364. package/dist/commonjs/api/cves/index.d.ts.map +0 -1
  365. package/dist/commonjs/api/cves/operations.d.ts.map +0 -1
  366. package/dist/commonjs/api/cves/options.d.ts.map +0 -1
  367. package/dist/commonjs/api/firmwares/index.d.ts.map +0 -1
  368. package/dist/commonjs/api/firmwares/operations.d.ts.map +0 -1
  369. package/dist/commonjs/api/firmwares/options.d.ts.map +0 -1
  370. package/dist/commonjs/api/index.d.ts.map +0 -1
  371. package/dist/commonjs/api/ioTFirmwareDefenseContext.d.ts.map +0 -1
  372. package/dist/commonjs/api/operations/index.d.ts.map +0 -1
  373. package/dist/commonjs/api/operations/operations.d.ts.map +0 -1
  374. package/dist/commonjs/api/operations/options.d.ts.map +0 -1
  375. package/dist/commonjs/api/passwordHashes/index.d.ts.map +0 -1
  376. package/dist/commonjs/api/passwordHashes/operations.d.ts.map +0 -1
  377. package/dist/commonjs/api/passwordHashes/options.d.ts.map +0 -1
  378. package/dist/commonjs/api/sbomComponents/index.d.ts.map +0 -1
  379. package/dist/commonjs/api/sbomComponents/operations.d.ts.map +0 -1
  380. package/dist/commonjs/api/sbomComponents/options.d.ts.map +0 -1
  381. package/dist/commonjs/api/summaries/index.d.ts.map +0 -1
  382. package/dist/commonjs/api/summaries/operations.d.ts.map +0 -1
  383. package/dist/commonjs/api/summaries/options.d.ts.map +0 -1
  384. package/dist/commonjs/api/usageMetrics/index.d.ts.map +0 -1
  385. package/dist/commonjs/api/usageMetrics/operations.d.ts.map +0 -1
  386. package/dist/commonjs/api/usageMetrics/options.d.ts.map +0 -1
  387. package/dist/commonjs/api/workspaces/index.d.ts.map +0 -1
  388. package/dist/commonjs/api/workspaces/operations.d.ts.map +0 -1
  389. package/dist/commonjs/api/workspaces/options.d.ts.map +0 -1
  390. package/dist/commonjs/classic/binaryHardening/index.d.ts.map +0 -1
  391. package/dist/commonjs/classic/cryptoCertificates/index.d.ts.map +0 -1
  392. package/dist/commonjs/classic/cryptoKeys/index.d.ts.map +0 -1
  393. package/dist/commonjs/classic/cves/index.d.ts.map +0 -1
  394. package/dist/commonjs/classic/firmwares/index.d.ts.map +0 -1
  395. package/dist/commonjs/classic/index.d.ts.map +0 -1
  396. package/dist/commonjs/classic/operations/index.d.ts.map +0 -1
  397. package/dist/commonjs/classic/passwordHashes/index.d.ts.map +0 -1
  398. package/dist/commonjs/classic/sbomComponents/index.d.ts.map +0 -1
  399. package/dist/commonjs/classic/summaries/index.d.ts.map +0 -1
  400. package/dist/commonjs/classic/usageMetrics/index.d.ts.map +0 -1
  401. package/dist/commonjs/classic/workspaces/index.d.ts.map +0 -1
  402. package/dist/commonjs/index.d.ts.map +0 -1
  403. package/dist/commonjs/ioTFirmwareDefenseClient.d.ts.map +0 -1
  404. package/dist/commonjs/logger.d.ts.map +0 -1
  405. package/dist/commonjs/models/index.d.ts.map +0 -1
  406. package/dist/commonjs/models/models.d.ts.map +0 -1
  407. package/dist/commonjs/static-helpers/pagingHelpers.d.ts.map +0 -1
  408. package/dist/commonjs/static-helpers/urlTemplate.d.ts.map +0 -1
  409. package/dist/esm/api/binaryHardening/index.d.ts.map +0 -1
  410. package/dist/esm/api/binaryHardening/operations.d.ts.map +0 -1
  411. package/dist/esm/api/binaryHardening/options.d.ts.map +0 -1
  412. package/dist/esm/api/cryptoCertificates/index.d.ts.map +0 -1
  413. package/dist/esm/api/cryptoCertificates/operations.d.ts.map +0 -1
  414. package/dist/esm/api/cryptoCertificates/options.d.ts.map +0 -1
  415. package/dist/esm/api/cryptoKeys/index.d.ts.map +0 -1
  416. package/dist/esm/api/cryptoKeys/operations.d.ts.map +0 -1
  417. package/dist/esm/api/cryptoKeys/options.d.ts.map +0 -1
  418. package/dist/esm/api/cves/index.d.ts.map +0 -1
  419. package/dist/esm/api/cves/operations.d.ts.map +0 -1
  420. package/dist/esm/api/cves/options.d.ts.map +0 -1
  421. package/dist/esm/api/firmwares/index.d.ts.map +0 -1
  422. package/dist/esm/api/firmwares/operations.d.ts.map +0 -1
  423. package/dist/esm/api/firmwares/options.d.ts.map +0 -1
  424. package/dist/esm/api/index.d.ts.map +0 -1
  425. package/dist/esm/api/ioTFirmwareDefenseContext.d.ts.map +0 -1
  426. package/dist/esm/api/operations/index.d.ts.map +0 -1
  427. package/dist/esm/api/operations/operations.d.ts.map +0 -1
  428. package/dist/esm/api/operations/options.d.ts.map +0 -1
  429. package/dist/esm/api/passwordHashes/index.d.ts.map +0 -1
  430. package/dist/esm/api/passwordHashes/operations.d.ts.map +0 -1
  431. package/dist/esm/api/passwordHashes/options.d.ts.map +0 -1
  432. package/dist/esm/api/sbomComponents/index.d.ts.map +0 -1
  433. package/dist/esm/api/sbomComponents/operations.d.ts.map +0 -1
  434. package/dist/esm/api/sbomComponents/options.d.ts.map +0 -1
  435. package/dist/esm/api/summaries/index.d.ts.map +0 -1
  436. package/dist/esm/api/summaries/operations.d.ts.map +0 -1
  437. package/dist/esm/api/summaries/options.d.ts.map +0 -1
  438. package/dist/esm/api/usageMetrics/index.d.ts.map +0 -1
  439. package/dist/esm/api/usageMetrics/operations.d.ts.map +0 -1
  440. package/dist/esm/api/usageMetrics/options.d.ts.map +0 -1
  441. package/dist/esm/api/workspaces/index.d.ts.map +0 -1
  442. package/dist/esm/api/workspaces/operations.d.ts.map +0 -1
  443. package/dist/esm/api/workspaces/options.d.ts.map +0 -1
  444. package/dist/esm/classic/binaryHardening/index.d.ts.map +0 -1
  445. package/dist/esm/classic/cryptoCertificates/index.d.ts.map +0 -1
  446. package/dist/esm/classic/cryptoKeys/index.d.ts.map +0 -1
  447. package/dist/esm/classic/cves/index.d.ts.map +0 -1
  448. package/dist/esm/classic/firmwares/index.d.ts.map +0 -1
  449. package/dist/esm/classic/index.d.ts.map +0 -1
  450. package/dist/esm/classic/operations/index.d.ts.map +0 -1
  451. package/dist/esm/classic/passwordHashes/index.d.ts.map +0 -1
  452. package/dist/esm/classic/sbomComponents/index.d.ts.map +0 -1
  453. package/dist/esm/classic/summaries/index.d.ts.map +0 -1
  454. package/dist/esm/classic/usageMetrics/index.d.ts.map +0 -1
  455. package/dist/esm/classic/workspaces/index.d.ts.map +0 -1
  456. package/dist/esm/index.d.ts.map +0 -1
  457. package/dist/esm/ioTFirmwareDefenseClient.d.ts.map +0 -1
  458. package/dist/esm/logger.d.ts.map +0 -1
  459. package/dist/esm/models/index.d.ts.map +0 -1
  460. package/dist/esm/models/models.d.ts.map +0 -1
  461. package/dist/esm/static-helpers/pagingHelpers.d.ts.map +0 -1
  462. package/dist/esm/static-helpers/urlTemplate.d.ts.map +0 -1
  463. package/dist/react-native/api/binaryHardening/index.d.ts.map +0 -1
  464. package/dist/react-native/api/binaryHardening/operations.d.ts.map +0 -1
  465. package/dist/react-native/api/binaryHardening/options.d.ts.map +0 -1
  466. package/dist/react-native/api/cryptoCertificates/index.d.ts.map +0 -1
  467. package/dist/react-native/api/cryptoCertificates/operations.d.ts.map +0 -1
  468. package/dist/react-native/api/cryptoCertificates/options.d.ts.map +0 -1
  469. package/dist/react-native/api/cryptoKeys/index.d.ts.map +0 -1
  470. package/dist/react-native/api/cryptoKeys/operations.d.ts.map +0 -1
  471. package/dist/react-native/api/cryptoKeys/options.d.ts.map +0 -1
  472. package/dist/react-native/api/cves/index.d.ts.map +0 -1
  473. package/dist/react-native/api/cves/operations.d.ts.map +0 -1
  474. package/dist/react-native/api/cves/options.d.ts.map +0 -1
  475. package/dist/react-native/api/firmwares/index.d.ts.map +0 -1
  476. package/dist/react-native/api/firmwares/operations.d.ts.map +0 -1
  477. package/dist/react-native/api/firmwares/options.d.ts.map +0 -1
  478. package/dist/react-native/api/index.d.ts.map +0 -1
  479. package/dist/react-native/api/ioTFirmwareDefenseContext.d.ts.map +0 -1
  480. package/dist/react-native/api/operations/index.d.ts.map +0 -1
  481. package/dist/react-native/api/operations/operations.d.ts.map +0 -1
  482. package/dist/react-native/api/operations/options.d.ts.map +0 -1
  483. package/dist/react-native/api/passwordHashes/index.d.ts.map +0 -1
  484. package/dist/react-native/api/passwordHashes/operations.d.ts.map +0 -1
  485. package/dist/react-native/api/passwordHashes/options.d.ts.map +0 -1
  486. package/dist/react-native/api/sbomComponents/index.d.ts.map +0 -1
  487. package/dist/react-native/api/sbomComponents/operations.d.ts.map +0 -1
  488. package/dist/react-native/api/sbomComponents/options.d.ts.map +0 -1
  489. package/dist/react-native/api/summaries/index.d.ts.map +0 -1
  490. package/dist/react-native/api/summaries/operations.d.ts.map +0 -1
  491. package/dist/react-native/api/summaries/options.d.ts.map +0 -1
  492. package/dist/react-native/api/usageMetrics/index.d.ts.map +0 -1
  493. package/dist/react-native/api/usageMetrics/operations.d.ts.map +0 -1
  494. package/dist/react-native/api/usageMetrics/options.d.ts.map +0 -1
  495. package/dist/react-native/api/workspaces/index.d.ts.map +0 -1
  496. package/dist/react-native/api/workspaces/operations.d.ts.map +0 -1
  497. package/dist/react-native/api/workspaces/options.d.ts.map +0 -1
  498. package/dist/react-native/classic/binaryHardening/index.d.ts.map +0 -1
  499. package/dist/react-native/classic/cryptoCertificates/index.d.ts.map +0 -1
  500. package/dist/react-native/classic/cryptoKeys/index.d.ts.map +0 -1
  501. package/dist/react-native/classic/cves/index.d.ts.map +0 -1
  502. package/dist/react-native/classic/firmwares/index.d.ts.map +0 -1
  503. package/dist/react-native/classic/index.d.ts.map +0 -1
  504. package/dist/react-native/classic/operations/index.d.ts.map +0 -1
  505. package/dist/react-native/classic/passwordHashes/index.d.ts.map +0 -1
  506. package/dist/react-native/classic/sbomComponents/index.d.ts.map +0 -1
  507. package/dist/react-native/classic/summaries/index.d.ts.map +0 -1
  508. package/dist/react-native/classic/usageMetrics/index.d.ts.map +0 -1
  509. package/dist/react-native/classic/workspaces/index.d.ts.map +0 -1
  510. package/dist/react-native/index.d.ts.map +0 -1
  511. package/dist/react-native/ioTFirmwareDefenseClient.d.ts.map +0 -1
  512. package/dist/react-native/logger.d.ts.map +0 -1
  513. package/dist/react-native/models/index.d.ts.map +0 -1
  514. package/dist/react-native/models/models.d.ts.map +0 -1
  515. package/dist/react-native/static-helpers/pagingHelpers.d.ts.map +0 -1
  516. package/dist/react-native/static-helpers/urlTemplate.d.ts.map +0 -1
  517. package/review/arm-iotfirmwaredefense-api-binaryHardening-node.api.md +0 -19
  518. package/review/arm-iotfirmwaredefense-api-cryptoCertificates-node.api.md +0 -19
  519. package/review/arm-iotfirmwaredefense-api-cryptoKeys-node.api.md +0 -19
  520. package/review/arm-iotfirmwaredefense-api-cves-node.api.md +0 -19
  521. package/review/arm-iotfirmwaredefense-api-firmwares-node.api.md +0 -47
  522. package/review/arm-iotfirmwaredefense-api-node.api.md +0 -27
  523. package/review/arm-iotfirmwaredefense-api-operations-node.api.md +0 -19
  524. package/review/arm-iotfirmwaredefense-api-passwordHashes-node.api.md +0 -19
  525. package/review/arm-iotfirmwaredefense-api-sbomComponents-node.api.md +0 -19
  526. package/review/arm-iotfirmwaredefense-api-summaries-node.api.md +0 -26
  527. package/review/arm-iotfirmwaredefense-api-usageMetrics-node.api.md +0 -26
  528. package/review/arm-iotfirmwaredefense-api-workspaces-node.api.md +0 -61
  529. package/review/arm-iotfirmwaredefense-models-node.api.md +0 -489
  530. package/review/arm-iotfirmwaredefense-node.api.md +0 -692
@@ -1 +1 @@
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?: Record<string, any>;\n}\n\nexport function errorAdditionalInfoDeserializer(item: any): ErrorAdditionalInfo {\n return {\n type: item[\"type\"],\n info: !item[\"info\"] ? item[\"info\"] : _errorAdditionalInfoInfoDeserializer(item[\"info\"]),\n };\n}\n\n/** model interface _ErrorAdditionalInfoInfo */\nexport interface _ErrorAdditionalInfoInfo {}\n\nexport function _errorAdditionalInfoInfoDeserializer(item: any): _ErrorAdditionalInfoInfo {\n return item;\n}\n\n/** Firmware definition */\nexport interface Firmware extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: FirmwareProperties;\n}\n\nexport function firmwareSerializer(item: Firmware): any {\n return {\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : firmwarePropertiesSerializer(item[\"properties\"]),\n };\n}\n\nexport function firmwareDeserializer(item: any): Firmware {\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 : firmwarePropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Firmware properties. */\nexport interface FirmwareProperties {\n /** File name for a firmware that user uploaded. */\n fileName?: string;\n /** Firmware vendor. */\n vendor?: string;\n /** Firmware model. */\n model?: string;\n /** Firmware version. */\n version?: string;\n /** User-specified description of the firmware. */\n description?: string;\n /** File size of the uploaded firmware image. */\n fileSize?: number;\n /** The status of firmware scan. */\n status?: Status;\n /** A list of errors or other messages generated during firmware analysis */\n statusMessages?: StatusMessage[];\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function firmwarePropertiesSerializer(item: FirmwareProperties): any {\n return {\n fileName: item[\"fileName\"],\n vendor: item[\"vendor\"],\n model: item[\"model\"],\n version: item[\"version\"],\n description: item[\"description\"],\n fileSize: item[\"fileSize\"],\n status: item[\"status\"],\n statusMessages: !item[\"statusMessages\"]\n ? item[\"statusMessages\"]\n : statusMessageArraySerializer(item[\"statusMessages\"]),\n };\n}\n\nexport function firmwarePropertiesDeserializer(item: any): FirmwareProperties {\n return {\n fileName: item[\"fileName\"],\n vendor: item[\"vendor\"],\n model: item[\"model\"],\n version: item[\"version\"],\n description: item[\"description\"],\n fileSize: item[\"fileSize\"],\n status: item[\"status\"],\n statusMessages: !item[\"statusMessages\"]\n ? item[\"statusMessages\"]\n : statusMessageArrayDeserializer(item[\"statusMessages\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The status of a firmware analysis job. */\nexport enum KnownStatus {\n /** The analysis job is queued */\n Pending = \"Pending\",\n /** The firmware is currently being extracted */\n Extracting = \"Extracting\",\n /** Analysis is being run on the firmware */\n Analyzing = \"Analyzing\",\n /** Analysis job results are ready */\n Ready = \"Ready\",\n /** An error occurred while running firmware analysis */\n Error = \"Error\",\n}\n\n/**\n * The status of a firmware analysis job. \\\n * {@link KnownStatus} can be used interchangeably with Status,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Pending**: The analysis job is queued \\\n * **Extracting**: The firmware is currently being extracted \\\n * **Analyzing**: Analysis is being run on the firmware \\\n * **Ready**: Analysis job results are ready \\\n * **Error**: An error occurred while running firmware analysis\n */\nexport type Status = string;\n\nexport function statusMessageArraySerializer(result: Array<StatusMessage>): any[] {\n return result.map((item) => {\n return statusMessageSerializer(item);\n });\n}\n\nexport function statusMessageArrayDeserializer(result: Array<StatusMessage>): any[] {\n return result.map((item) => {\n return statusMessageDeserializer(item);\n });\n}\n\n/** Error and status message */\nexport interface StatusMessage {\n /** The error code */\n errorCode?: number;\n /** The error or status message */\n message?: string;\n}\n\nexport function statusMessageSerializer(item: StatusMessage): any {\n return { errorCode: item[\"errorCode\"], message: item[\"message\"] };\n}\n\nexport function statusMessageDeserializer(item: any): StatusMessage {\n return {\n errorCode: item[\"errorCode\"],\n message: item[\"message\"],\n };\n}\n\n/** The status of a firmware analysis job. */\nexport enum KnownProvisioningState {\n /** The request has successfully completed. */\n Succeeded = \"Succeeded\",\n /** There was an error during the request. */\n Failed = \"Failed\",\n /** The request was canceled. */\n Canceled = \"Canceled\",\n /** The request is queued and awaiting execution */\n Pending = \"Pending\",\n /** The Firmware is currently being extracted. */\n Extracting = \"Extracting\",\n /** Analysis is being run on the firmware */\n Analyzing = \"Analyzing\",\n}\n\n/**\n * The status of a firmware analysis job. \\\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**: The request has successfully completed. \\\n * **Failed**: There was an error during the request. \\\n * **Canceled**: The request was canceled. \\\n * **Pending**: The request is queued and awaiting execution \\\n * **Extracting**: The Firmware is currently being extracted. \\\n * **Analyzing**: Analysis is being run on the firmware\n */\nexport type ProvisioningState = string;\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/** 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/** Firmware definition */\nexport interface FirmwareUpdateDefinition {\n /** The editable properties of a firmware */\n properties?: FirmwareProperties;\n}\n\nexport function firmwareUpdateDefinitionSerializer(item: FirmwareUpdateDefinition): any {\n return {\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : firmwarePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** The response of a Firmware list operation. */\nexport interface _FirmwareListResult {\n /** The Firmware items on this page */\n value: Firmware[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _firmwareListResultDeserializer(item: any): _FirmwareListResult {\n return {\n value: firmwareArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function firmwareArraySerializer(result: Array<Firmware>): any[] {\n return result.map((item) => {\n return firmwareSerializer(item);\n });\n}\n\nexport function firmwareArrayDeserializer(result: Array<Firmware>): any[] {\n return result.map((item) => {\n return firmwareDeserializer(item);\n });\n}\n\n/** Firmware analysis workspace. */\nexport interface Workspace extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: WorkspaceProperties;\n /** The SKU (Stock Keeping Unit) assigned to this resource. */\n sku?: Sku;\n}\n\nexport function workspaceSerializer(item: Workspace): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : workspacePropertiesSerializer(item[\"properties\"]),\n sku: !item[\"sku\"] ? item[\"sku\"] : skuSerializer(item[\"sku\"]),\n };\n}\n\nexport function workspaceDeserializer(item: any): Workspace {\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 : workspacePropertiesDeserializer(item[\"properties\"]),\n sku: !item[\"sku\"] ? item[\"sku\"] : skuDeserializer(item[\"sku\"]),\n };\n}\n\n/** Workspace properties. */\nexport interface WorkspaceProperties {\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function workspacePropertiesSerializer(item: WorkspaceProperties): any {\n return item;\n}\n\nexport function workspacePropertiesDeserializer(item: any): WorkspaceProperties {\n return {\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The resource model definition representing SKU */\nexport interface Sku {\n /** The name of the SKU. Ex - P3. It is typically a letter+number code */\n name: string;\n /** This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT. */\n tier?: SkuTier;\n /** The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. */\n size?: string;\n /** If the service has different generations of hardware, for the same SKU, then that can be captured here. */\n family?: string;\n /** If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted. */\n capacity?: number;\n}\n\nexport function skuSerializer(item: Sku): any {\n return {\n name: item[\"name\"],\n tier: item[\"tier\"],\n size: item[\"size\"],\n family: item[\"family\"],\n capacity: item[\"capacity\"],\n };\n}\n\nexport function skuDeserializer(item: any): Sku {\n return {\n name: item[\"name\"],\n tier: item[\"tier\"],\n size: item[\"size\"],\n family: item[\"family\"],\n capacity: item[\"capacity\"],\n };\n}\n\n/** This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT. */\nexport type SkuTier = \"Free\" | \"Basic\" | \"Standard\" | \"Premium\";\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/** The type used for update operations of the Workspace. */\nexport interface WorkspaceUpdate {\n /** The SKU (Stock Keeping Unit) assigned to this resource. */\n sku?: Sku;\n /** Resource tags. */\n tags?: Record<string, string>;\n}\n\nexport function workspaceUpdateSerializer(item: WorkspaceUpdate): any {\n return {\n sku: !item[\"sku\"] ? item[\"sku\"] : skuSerializer(item[\"sku\"]),\n tags: item[\"tags\"],\n };\n}\n\n/** The response of a Workspace list operation. */\nexport interface _WorkspaceListResult {\n /** The Workspace items on this page */\n value: Workspace[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _workspaceListResultDeserializer(item: any): _WorkspaceListResult {\n return {\n value: workspaceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function workspaceArraySerializer(result: Array<Workspace>): any[] {\n return result.map((item) => {\n return workspaceSerializer(item);\n });\n}\n\nexport function workspaceArrayDeserializer(result: Array<Workspace>): any[] {\n return result.map((item) => {\n return workspaceDeserializer(item);\n });\n}\n\n/** Properties for generating an upload URL */\nexport interface GenerateUploadUrlRequest {\n /** A unique ID for the firmware to be uploaded. */\n firmwareId?: string;\n}\n\nexport function generateUploadUrlRequestSerializer(item: GenerateUploadUrlRequest): any {\n return { firmwareId: item[\"firmwareId\"] };\n}\n\n/** Url data for creating or accessing a blob file. */\nexport interface UrlToken {\n /** SAS URL for creating or accessing a blob file. */\n readonly url?: string;\n}\n\nexport function urlTokenDeserializer(item: any): UrlToken {\n return {\n url: item[\"url\"],\n };\n}\n\n/** The response of a BinaryHardeningResource list operation. */\nexport interface _BinaryHardeningResourceListResult {\n /** The BinaryHardeningResource items on this page */\n value: BinaryHardeningResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _binaryHardeningResourceListResultDeserializer(\n item: any,\n): _BinaryHardeningResourceListResult {\n return {\n value: binaryHardeningResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function binaryHardeningResourceArrayDeserializer(\n result: Array<BinaryHardeningResource>,\n): any[] {\n return result.map((item) => {\n return binaryHardeningResourceDeserializer(item);\n });\n}\n\n/** The object representing a firmware analysis binary hardening result resource */\nexport interface BinaryHardeningResource extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: BinaryHardeningResult;\n}\n\nexport function binaryHardeningResourceDeserializer(item: any): BinaryHardeningResource {\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 : binaryHardeningResultDeserializer(item[\"properties\"]),\n };\n}\n\n/** Binary hardening of a firmware. */\nexport interface BinaryHardeningResult {\n /** ID for the binary hardening result. */\n binaryHardeningId?: string;\n /** The security hardening features of the binary. */\n securityHardeningFeatures?: BinaryHardeningFeatures;\n /** The architecture of the binary being reported on. */\n executableArchitecture?: string;\n /** The path to the binary in the firmware. */\n filePath?: string;\n /** The executable class to indicate 32 or 64 bit. */\n executableClass?: ExecutableClass;\n /** The runpath property of the uploaded binary, which is a method of specifying additional paths to load objects at runtime. */\n runpath?: string;\n /** The rpath property of the uploaded binary, which is a deprecated method of specifying additional paths to load objects at runtime. */\n rpath?: string;\n /** The status of the last operation. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function binaryHardeningResultDeserializer(item: any): BinaryHardeningResult {\n return {\n binaryHardeningId: item[\"binaryHardeningId\"],\n securityHardeningFeatures: !item[\"securityHardeningFeatures\"]\n ? item[\"securityHardeningFeatures\"]\n : binaryHardeningFeaturesDeserializer(item[\"securityHardeningFeatures\"]),\n executableArchitecture: item[\"executableArchitecture\"],\n filePath: item[\"filePath\"],\n executableClass: item[\"executableClass\"],\n runpath: item[\"runpath\"],\n rpath: item[\"rpath\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** Binary hardening features. */\nexport interface BinaryHardeningFeatures {\n /** Flag indicating the binary's stack is set to NX (no-execute). */\n noExecute?: boolean;\n /** Flag indicating the binary was compiled to be a position independent executable. */\n positionIndependentExecutable?: boolean;\n /** Flag indicating the binary has enabled relocation read-only protections. */\n relocationReadOnly?: boolean;\n /** Flag indicating if the binary was compiled with stack canaries enabled. */\n canary?: boolean;\n /** Flag indicating if debug symbols have been stripped from the binary. */\n stripped?: boolean;\n}\n\nexport function binaryHardeningFeaturesDeserializer(item: any): BinaryHardeningFeatures {\n return {\n noExecute: item[\"noExecute\"],\n positionIndependentExecutable: item[\"positionIndependentExecutable\"],\n relocationReadOnly: item[\"relocationReadOnly\"],\n canary: item[\"canary\"],\n stripped: item[\"stripped\"],\n };\n}\n\n/** String to indicate if the executable is 32 or 64 bit. */\nexport enum KnownExecutableClass {\n /** The binary is 32-bit. */\n X86 = \"x86\",\n /** The binary is 64-bit. */\n X64 = \"x64\",\n}\n\n/**\n * String to indicate if the executable is 32 or 64 bit. \\\n * {@link KnownExecutableClass} can be used interchangeably with ExecutableClass,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **x86**: The binary is 32-bit. \\\n * **x64**: The binary is 64-bit.\n */\nexport type ExecutableClass = string;\n\n/** The response of a CryptoCertificateResource list operation. */\nexport interface _CryptoCertificateResourceListResult {\n /** The CryptoCertificateResource items on this page */\n value: CryptoCertificateResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _cryptoCertificateResourceListResultDeserializer(\n item: any,\n): _CryptoCertificateResourceListResult {\n return {\n value: cryptoCertificateResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function cryptoCertificateResourceArrayDeserializer(\n result: Array<CryptoCertificateResource>,\n): any[] {\n return result.map((item) => {\n return cryptoCertificateResourceDeserializer(item);\n });\n}\n\n/** The object representing a firmware analysis crypto certificate resource */\nexport interface CryptoCertificateResource extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: CryptoCertificate;\n}\n\nexport function cryptoCertificateResourceDeserializer(item: any): CryptoCertificateResource {\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 : cryptoCertificateDeserializer(item[\"properties\"]),\n };\n}\n\n/** Crypto certificate properties */\nexport interface CryptoCertificate {\n /** ID for the certificate result. */\n cryptoCertId?: string;\n /** Name of the certificate. */\n certificateName?: string;\n /** Subject information of the certificate. */\n subject?: CryptoCertificateEntity;\n /** Issuer information of the certificate. */\n issuer?: CryptoCertificateEntity;\n /** Issue date for the certificate. */\n issuedDate?: Date;\n /** Expiration date for the certificate. */\n expirationDate?: Date;\n /** Role of the certificate (Root CA, etc) */\n certificateRole?: string;\n /** The signature algorithm used in the certificate. */\n signatureAlgorithm?: string;\n /** Size of the certificate's key in bits */\n certificateKeySize?: number;\n /** Key algorithm used in the certificate. */\n certificateKeyAlgorithm?: string;\n /** Encoding used for the certificate. */\n encoding?: string;\n /** Serial number of the certificate. */\n serialNumber?: string;\n /** Fingerprint of the certificate. */\n fingerprint?: string;\n /** List of functions the certificate can fulfill. */\n certificateUsage?: CertificateUsage[];\n /** List of files where this certificate was found. */\n readonly filePaths?: string[];\n /** A matching paired private key. */\n pairedKey?: PairedKey;\n /** Indicates if the certificate is expired. */\n isExpired?: boolean;\n /** Indicates if the certificate is self-signed. */\n isSelfSigned?: boolean;\n /** Indicates the signature algorithm used is insecure according to NIST guidance. */\n isWeakSignature?: boolean;\n /** Indicates the certificate's key size is considered too small to be secure for the key algorithm according to NIST guidance. */\n isShortKeySize?: boolean;\n /** The status of the last operation. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function cryptoCertificateDeserializer(item: any): CryptoCertificate {\n return {\n cryptoCertId: item[\"cryptoCertId\"],\n certificateName: item[\"certificateName\"],\n subject: !item[\"subject\"]\n ? item[\"subject\"]\n : cryptoCertificateEntityDeserializer(item[\"subject\"]),\n issuer: !item[\"issuer\"] ? item[\"issuer\"] : cryptoCertificateEntityDeserializer(item[\"issuer\"]),\n issuedDate: !item[\"issuedDate\"] ? item[\"issuedDate\"] : new Date(item[\"issuedDate\"]),\n expirationDate: !item[\"expirationDate\"]\n ? item[\"expirationDate\"]\n : new Date(item[\"expirationDate\"]),\n certificateRole: item[\"certificateRole\"],\n signatureAlgorithm: item[\"signatureAlgorithm\"],\n certificateKeySize: item[\"certificateKeySize\"],\n certificateKeyAlgorithm: item[\"certificateKeyAlgorithm\"],\n encoding: item[\"encoding\"],\n serialNumber: item[\"serialNumber\"],\n fingerprint: item[\"fingerprint\"],\n certificateUsage: !item[\"certificateUsage\"]\n ? item[\"certificateUsage\"]\n : item[\"certificateUsage\"].map((p: any) => {\n return p;\n }),\n filePaths: !item[\"filePaths\"]\n ? item[\"filePaths\"]\n : item[\"filePaths\"].map((p: any) => {\n return p;\n }),\n pairedKey: !item[\"pairedKey\"] ? item[\"pairedKey\"] : pairedKeyDeserializer(item[\"pairedKey\"]),\n isExpired: item[\"isExpired\"],\n isSelfSigned: item[\"isSelfSigned\"],\n isWeakSignature: item[\"isWeakSignature\"],\n isShortKeySize: item[\"isShortKeySize\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** Information on an entity (distinguished name) in a cryptographic certificate. */\nexport interface CryptoCertificateEntity {\n /** Common name of the certificate entity. */\n commonName?: string;\n /** Organization of the certificate entity. */\n organization?: string;\n /** The organizational unit of the certificate entity. */\n organizationalUnit?: string;\n /** Geographical state or province of the certificate entity. */\n state?: string;\n /** Country code of the certificate entity. */\n country?: string;\n}\n\nexport function cryptoCertificateEntityDeserializer(item: any): CryptoCertificateEntity {\n return {\n commonName: item[\"commonName\"],\n organization: item[\"organization\"],\n organizationalUnit: item[\"organizationalUnit\"],\n state: item[\"state\"],\n country: item[\"country\"],\n };\n}\n\n/** Activities for which the cryptographic certificate can be used. */\nexport enum KnownCertificateUsage {\n /** This certificate can be used to add a signature to a message */\n DigitalSignature = \"digitalSignature\",\n /** This certificates provides a non-repudiation service that protects against false denial of a message */\n NonRepudiation = \"nonRepudiation\",\n /** A synonym for NonRepudiation used in newer x509 certificates */\n ContentCommitment = \"contentCommitment\",\n /** This certificate can be used to encrypt a private or secret key */\n KeyEncipherment = \"keyEncipherment\",\n /** This certificate can be used to decrypt a private or secret key */\n DataEncipherment = \"dataEncipherment\",\n /** This certificate can be used to perform a key agreement, such as with a Diffie-Hellman key exchange */\n KeyAgreement = \"keyAgreement\",\n /** This certificate can be used to verify a other public keys */\n KeyCertSign = \"keyCertSign\",\n /** This certificate can be used to verify a certificate revocation list */\n CRLSign = \"crlSign\",\n /** This certificate can be only be used to encrypt data */\n EncipherOnly = \"encipherOnly\",\n /** This certificate can only be used to decrypt data */\n DecipherOnly = \"decipherOnly\",\n /** This certificate can be used to authenticate a server in a TLS/SSL connection */\n ServerAuthentication = \"serverAuth\",\n /** This certificate can be used to authenticate a client in a TLS/SSL connection */\n ClientAuthentication = \"clientAuth\",\n /** This certificate can be used to authenticate a code object */\n CodeSigning = \"codeSigning\",\n /** This certificate can be used to authenticate an email address */\n EmailProtection = \"emailProtection\",\n /** This certificate binds the hash of an object to a time */\n TimeStamping = \"timeStamping\",\n /** This certificate can be used to sign OCSP responses */\n OcspSigning = \"ocspSigning\",\n}\n\n/**\n * Activities for which the cryptographic certificate can be used. \\\n * {@link KnownCertificateUsage} can be used interchangeably with CertificateUsage,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **digitalSignature**: This certificate can be used to add a signature to a message \\\n * **nonRepudiation**: This certificates provides a non-repudiation service that protects against false denial of a message \\\n * **contentCommitment**: A synonym for NonRepudiation used in newer x509 certificates \\\n * **keyEncipherment**: This certificate can be used to encrypt a private or secret key \\\n * **dataEncipherment**: This certificate can be used to decrypt a private or secret key \\\n * **keyAgreement**: This certificate can be used to perform a key agreement, such as with a Diffie-Hellman key exchange \\\n * **keyCertSign**: This certificate can be used to verify a other public keys \\\n * **crlSign**: This certificate can be used to verify a certificate revocation list \\\n * **encipherOnly**: This certificate can be only be used to encrypt data \\\n * **decipherOnly**: This certificate can only be used to decrypt data \\\n * **serverAuth**: This certificate can be used to authenticate a server in a TLS\\/SSL connection \\\n * **clientAuth**: This certificate can be used to authenticate a client in a TLS\\/SSL connection \\\n * **codeSigning**: This certificate can be used to authenticate a code object \\\n * **emailProtection**: This certificate can be used to authenticate an email address \\\n * **timeStamping**: This certificate binds the hash of an object to a time \\\n * **ocspSigning**: This certificate can be used to sign OCSP responses\n */\nexport type CertificateUsage = string;\n\n/** Details of a matching paired key or certificate. */\nexport interface PairedKey {\n /** ID of the paired key or certificate. */\n pairedKeyId?: string;\n /** The type indicating whether the paired object is a key or certificate. */\n type?: string;\n}\n\nexport function pairedKeyDeserializer(item: any): PairedKey {\n return {\n pairedKeyId: item[\"pairedKeyId\"],\n type: item[\"type\"],\n };\n}\n\n/** The response of a CryptoKeyResource list operation. */\nexport interface _CryptoKeyResourceListResult {\n /** The CryptoKeyResource items on this page */\n value: CryptoKeyResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _cryptoKeyResourceListResultDeserializer(item: any): _CryptoKeyResourceListResult {\n return {\n value: cryptoKeyResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function cryptoKeyResourceArrayDeserializer(result: Array<CryptoKeyResource>): any[] {\n return result.map((item) => {\n return cryptoKeyResourceDeserializer(item);\n });\n}\n\n/** The object representing a firmware analysis crypto key resource */\nexport interface CryptoKeyResource extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: CryptoKey;\n}\n\nexport function cryptoKeyResourceDeserializer(item: any): CryptoKeyResource {\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 : cryptoKeyDeserializer(item[\"properties\"]),\n };\n}\n\n/** Crypto key properties */\nexport interface CryptoKey {\n /** ID for the key result. */\n cryptoKeyId?: string;\n /** Type of the key (public or private). */\n keyType?: CryptoKeyType;\n /** Size of the key in bits. */\n cryptoKeySize?: number;\n /** Key algorithm name. */\n keyAlgorithm?: string;\n /** Functions the key can fulfill. */\n usage?: string[];\n /** List of files where this key was found. */\n readonly filePaths?: string[];\n /** A matching paired key or certificate. */\n pairedKey?: PairedKey;\n /** Indicates the key size is considered too small to be secure for the algorithm according to NIST guidance. */\n isShortKeySize?: boolean;\n /** The status of the last operation. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function cryptoKeyDeserializer(item: any): CryptoKey {\n return {\n cryptoKeyId: item[\"cryptoKeyId\"],\n keyType: item[\"keyType\"],\n cryptoKeySize: item[\"cryptoKeySize\"],\n keyAlgorithm: item[\"keyAlgorithm\"],\n usage: !item[\"usage\"]\n ? item[\"usage\"]\n : item[\"usage\"].map((p: any) => {\n return p;\n }),\n filePaths: !item[\"filePaths\"]\n ? item[\"filePaths\"]\n : item[\"filePaths\"].map((p: any) => {\n return p;\n }),\n pairedKey: !item[\"pairedKey\"] ? item[\"pairedKey\"] : pairedKeyDeserializer(item[\"pairedKey\"]),\n isShortKeySize: item[\"isShortKeySize\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** Different types of cryptographic keys. */\nexport enum KnownCryptoKeyType {\n /** The key is an asymmetric public key. */\n Public = \"Public\",\n /** The key is an asymmetric private key. */\n Private = \"Private\",\n}\n\n/**\n * Different types of cryptographic keys. \\\n * {@link KnownCryptoKeyType} can be used interchangeably with CryptoKeyType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Public**: The key is an asymmetric public key. \\\n * **Private**: The key is an asymmetric private key.\n */\nexport type CryptoKeyType = string;\n\n/** The response of a CveResource list operation. */\nexport interface _CveResourceListResult {\n /** The CveResource items on this page */\n value: CveResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _cveResourceListResultDeserializer(item: any): _CveResourceListResult {\n return {\n value: cveResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function cveResourceArrayDeserializer(result: Array<CveResource>): any[] {\n return result.map((item) => {\n return cveResourceDeserializer(item);\n });\n}\n\n/** The object representing a firmware analysis CVE result resource */\nexport interface CveResource extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: CveResult;\n}\n\nexport function cveResourceDeserializer(item: any): CveResource {\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 : cveResultDeserializer(item[\"properties\"]),\n };\n}\n\n/** Details of a CVE detected in firmware. */\nexport interface CveResult {\n /** ID of the CVE result. */\n cveId?: string;\n /** ID of the affected SBOM component. */\n componentId?: string;\n /** Name of the affected SBOM component. */\n componentName?: string;\n /** Version of the affected SBOM component. */\n componentVersion?: string;\n /** Severity of the CVE. */\n severity?: string;\n /** Name of the CVE. */\n cveName?: string;\n /** The most recent CVSS score of the CVE. */\n effectiveCvssScore?: number;\n /** The version of the effectiveCvssScore property. */\n effectiveCvssVersion?: number;\n /** All known CVSS scores for the CVE. */\n cvssScores?: CvssScore[];\n /** The list of reference links for the CVE. */\n readonly links?: CveLink[];\n /** The CVE description. */\n description?: string;\n /** The status of the last operation. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function cveResultDeserializer(item: any): CveResult {\n return {\n cveId: item[\"cveId\"],\n componentId: item[\"componentId\"],\n componentName: item[\"componentName\"],\n componentVersion: item[\"componentVersion\"],\n severity: item[\"severity\"],\n cveName: item[\"cveName\"],\n effectiveCvssScore: item[\"effectiveCvssScore\"],\n effectiveCvssVersion: item[\"effectiveCvssVersion\"],\n cvssScores: !item[\"cvssScores\"]\n ? item[\"cvssScores\"]\n : cvssScoreArrayDeserializer(item[\"cvssScores\"]),\n links: !item[\"links\"] ? item[\"links\"] : cveLinkArrayDeserializer(item[\"links\"]),\n description: item[\"description\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\nexport function cvssScoreArrayDeserializer(result: Array<CvssScore>): any[] {\n return result.map((item) => {\n return cvssScoreDeserializer(item);\n });\n}\n\n/** Common Vulnerability Scoring System values. */\nexport interface CvssScore {\n /** The version of the Common Vulnerability Scoring System (CVSS). */\n version: number;\n /** The score of the CVE according to the CVSS specified. */\n score?: number;\n}\n\nexport function cvssScoreDeserializer(item: any): CvssScore {\n return {\n version: item[\"version\"],\n score: item[\"score\"],\n };\n}\n\nexport function cveLinkArrayDeserializer(result: Array<CveLink>): any[] {\n return result.map((item) => {\n return cveLinkDeserializer(item);\n });\n}\n\n/** Properties of a reference link for a CVE. */\nexport interface CveLink {\n /** The destination of the reference link. */\n href?: string;\n /** The label of the reference link. */\n label?: string;\n}\n\nexport function cveLinkDeserializer(item: any): CveLink {\n return {\n href: item[\"href\"],\n label: item[\"label\"],\n };\n}\n\n/** The response of a PasswordHashResource list operation. */\nexport interface _PasswordHashResourceListResult {\n /** The PasswordHashResource items on this page */\n value: PasswordHashResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _passwordHashResourceListResultDeserializer(\n item: any,\n): _PasswordHashResourceListResult {\n return {\n value: passwordHashResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function passwordHashResourceArrayDeserializer(result: Array<PasswordHashResource>): any[] {\n return result.map((item) => {\n return passwordHashResourceDeserializer(item);\n });\n}\n\n/** The object representing a firmware analysis password hash result resource */\nexport interface PasswordHashResource extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: PasswordHash;\n}\n\nexport function passwordHashResourceDeserializer(item: any): PasswordHashResource {\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 : passwordHashDeserializer(item[\"properties\"]),\n };\n}\n\n/** Password hash properties */\nexport interface PasswordHash {\n /** ID for password hash */\n passwordHashId?: string;\n /** File path of the password hash */\n filePath?: string;\n /** Salt of the password hash */\n salt?: string;\n /** Hash of the password */\n hash?: string;\n /** Context of password hash */\n context?: string;\n /** User name of password hash */\n username?: string;\n /** Algorithm of the password hash */\n algorithm?: string;\n /** The status of the last operation. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function passwordHashDeserializer(item: any): PasswordHash {\n return {\n passwordHashId: item[\"passwordHashId\"],\n filePath: item[\"filePath\"],\n salt: item[\"salt\"],\n hash: item[\"hash\"],\n context: item[\"context\"],\n username: item[\"username\"],\n algorithm: item[\"algorithm\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The response of a SbomComponentResource list operation. */\nexport interface _SbomComponentResourceListResult {\n /** The SbomComponentResource items on this page */\n value: SbomComponentResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _sbomComponentResourceListResultDeserializer(\n item: any,\n): _SbomComponentResourceListResult {\n return {\n value: sbomComponentResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function sbomComponentResourceArrayDeserializer(\n result: Array<SbomComponentResource>,\n): any[] {\n return result.map((item) => {\n return sbomComponentResourceDeserializer(item);\n });\n}\n\n/** The object representing a firmware analysis SBOM component result resource */\nexport interface SbomComponentResource extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: SbomComponent;\n}\n\nexport function sbomComponentResourceDeserializer(item: any): SbomComponentResource {\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 : sbomComponentDeserializer(item[\"properties\"]),\n };\n}\n\n/** SBOM component of a firmware. */\nexport interface SbomComponent {\n /** ID for the component. */\n componentId?: string;\n /** Name for the component. */\n componentName?: string;\n /** Version for the component. */\n version?: string;\n /** License for the component. */\n license?: string;\n /** File paths related to the component. Note, relatedFiles should be used instead of this property. */\n filePaths?: string[];\n /** The status of the last operation. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function sbomComponentDeserializer(item: any): SbomComponent {\n return {\n componentId: item[\"componentId\"],\n componentName: item[\"componentName\"],\n version: item[\"version\"],\n license: item[\"license\"],\n filePaths: !item[\"filePaths\"]\n ? item[\"filePaths\"]\n : item[\"filePaths\"].map((p: any) => {\n return p;\n }),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The object representing a firmware analysis summary resource. */\nexport interface SummaryResource extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: SummaryResourcePropertiesUnion;\n}\n\nexport function summaryResourceDeserializer(item: any): SummaryResource {\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 : summaryResourcePropertiesUnionDeserializer(item[\"properties\"]),\n };\n}\n\n/** Properties of an analysis summary. */\nexport interface SummaryResourceProperties {\n /** The type of summary. */\n /** The discriminator possible values: Firmware, CommonVulnerabilitiesAndExposures, BinaryHardening, CryptoCertificate, CryptoKey */\n summaryType: SummaryType;\n /** The status of the last operation. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function summaryResourcePropertiesDeserializer(item: any): SummaryResourceProperties {\n return {\n summaryType: item[\"summaryType\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** Alias for SummaryResourcePropertiesUnion */\nexport type SummaryResourcePropertiesUnion =\n | FirmwareSummary\n | CveSummary\n | BinaryHardeningSummaryResource\n | CryptoCertificateSummaryResource\n | CryptoKeySummaryResource\n | SummaryResourceProperties;\n\nexport function summaryResourcePropertiesUnionDeserializer(\n item: any,\n): SummaryResourcePropertiesUnion {\n switch (item.summaryType) {\n case \"Firmware\":\n return firmwareSummaryDeserializer(item as FirmwareSummary);\n\n case \"CommonVulnerabilitiesAndExposures\":\n return cveSummaryDeserializer(item as CveSummary);\n\n case \"BinaryHardening\":\n return binaryHardeningSummaryResourceDeserializer(item as BinaryHardeningSummaryResource);\n\n case \"CryptoCertificate\":\n return cryptoCertificateSummaryResourceDeserializer(item as CryptoCertificateSummaryResource);\n\n case \"CryptoKey\":\n return cryptoKeySummaryResourceDeserializer(item as CryptoKeySummaryResource);\n\n default:\n return summaryResourcePropertiesDeserializer(item);\n }\n}\n\n/** Describes the type of summary. */\nexport enum KnownSummaryType {\n /** The summary contains information about the submitted firmware */\n Firmware = \"Firmware\",\n /** The summary contains information about the Common Vulnerabilities and Exposures analysis results */\n CommonVulnerabilitiesAndExposures = \"CommonVulnerabilitiesAndExposures\",\n /** The summary contains information about the binary hardening analysis results */\n BinaryHardening = \"BinaryHardening\",\n /** The summary contains information about the cryptographic certificate analysis results */\n CryptoCertificate = \"CryptoCertificate\",\n /** The summary contains information about the cryptographic key analysis results */\n CryptoKey = \"CryptoKey\",\n}\n\n/**\n * Describes the type of summary. \\\n * {@link KnownSummaryType} can be used interchangeably with SummaryType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Firmware**: The summary contains information about the submitted firmware \\\n * **CommonVulnerabilitiesAndExposures**: The summary contains information about the Common Vulnerabilities and Exposures analysis results \\\n * **BinaryHardening**: The summary contains information about the binary hardening analysis results \\\n * **CryptoCertificate**: The summary contains information about the cryptographic certificate analysis results \\\n * **CryptoKey**: The summary contains information about the cryptographic key analysis results\n */\nexport type SummaryType = string;\n\n/** Properties for high level summary of firmware analysis results. */\nexport interface FirmwareSummary extends SummaryResourceProperties {\n /** Total extracted size of the firmware in bytes. */\n extractedSize?: number;\n /** Firmware file size in bytes. */\n fileSize?: number;\n /** Extracted file count. */\n extractedFileCount?: number;\n /** Components count. */\n componentCount?: number;\n /** Binary count */\n binaryCount?: number;\n /** Time used for analysis */\n analysisTimeSeconds?: number;\n /** The number of root file systems found. */\n rootFileSystems?: number;\n /** Describes the type of summary. */\n summaryType: \"Firmware\";\n}\n\nexport function firmwareSummaryDeserializer(item: any): FirmwareSummary {\n return {\n summaryType: item[\"summaryType\"],\n provisioningState: item[\"provisioningState\"],\n extractedSize: item[\"extractedSize\"],\n fileSize: item[\"fileSize\"],\n extractedFileCount: item[\"extractedFileCount\"],\n componentCount: item[\"componentCount\"],\n binaryCount: item[\"binaryCount\"],\n analysisTimeSeconds: item[\"analysisTimeSeconds\"],\n rootFileSystems: item[\"rootFileSystems\"],\n };\n}\n\n/** Properties for a CVE analysis summary. */\nexport interface CveSummary extends SummaryResourceProperties {\n /** The total number of critical severity CVEs detected */\n criticalCveCount?: number;\n /** The total number of high severity CVEs detected */\n highCveCount?: number;\n /** The total number of medium severity CVEs detected */\n mediumCveCount?: number;\n /** The total number of low severity CVEs detected */\n lowCveCount?: number;\n /** The total number of unknown severity CVEs detected */\n unknownCveCount?: number;\n /** Describes the type of summary object. */\n summaryType: \"CommonVulnerabilitiesAndExposures\";\n}\n\nexport function cveSummaryDeserializer(item: any): CveSummary {\n return {\n summaryType: item[\"summaryType\"],\n provisioningState: item[\"provisioningState\"],\n criticalCveCount: item[\"criticalCveCount\"],\n highCveCount: item[\"highCveCount\"],\n mediumCveCount: item[\"mediumCveCount\"],\n lowCveCount: item[\"lowCveCount\"],\n unknownCveCount: item[\"unknownCveCount\"],\n };\n}\n\n/** Properties for a binary hardening analysis summary. */\nexport interface BinaryHardeningSummaryResource extends SummaryResourceProperties {\n /** Total number of binaries that were analyzed */\n totalFiles?: number;\n /** Total number of analyzed files that were found to have a nonexecutable stack */\n notExecutableStackCount?: number;\n /** Total number of analyzed files that were compiled to be a position independent executable */\n positionIndependentExecutableCount?: number;\n /** Total number of analyzed files that have enabled relocation read-only protections */\n relocationReadOnlyCount?: number;\n /** Total number of analyzed files that have stack canaries enabled */\n stackCanaryCount?: number;\n /** Total number of analyzed files that have debug symbols stripped */\n strippedBinaryCount?: number;\n /** Describes the type of summary object. */\n summaryType: \"BinaryHardening\";\n}\n\nexport function binaryHardeningSummaryResourceDeserializer(\n item: any,\n): BinaryHardeningSummaryResource {\n return {\n summaryType: item[\"summaryType\"],\n provisioningState: item[\"provisioningState\"],\n totalFiles: item[\"totalFiles\"],\n notExecutableStackCount: item[\"notExecutableStackCount\"],\n positionIndependentExecutableCount: item[\"positionIndependentExecutableCount\"],\n relocationReadOnlyCount: item[\"relocationReadOnlyCount\"],\n stackCanaryCount: item[\"stackCanaryCount\"],\n strippedBinaryCount: item[\"strippedBinaryCount\"],\n };\n}\n\n/** Properties for cryptographic certificate summary. */\nexport interface CryptoCertificateSummaryResource extends SummaryResourceProperties {\n /** Total number of certificates found. */\n totalCertificateCount?: number;\n /** Total number of paired private keys found for the certificates. */\n pairedKeyCount?: number;\n /** Total number of expired certificates found. */\n expiredCertificateCount?: number;\n /** Total number of nearly expired certificates found. */\n expiringSoonCertificateCount?: number;\n /** Total number of certificates found using a weak signature algorithm. */\n weakSignatureCount?: number;\n /** Total number of certificates found that are self-signed. */\n selfSignedCertificateCount?: number;\n /** Total number of certificates found that have an insecure key size for the key algorithm. */\n shortKeySizeCount?: number;\n /** Describes the type of summary. */\n summaryType: \"CryptoCertificate\";\n}\n\nexport function cryptoCertificateSummaryResourceDeserializer(\n item: any,\n): CryptoCertificateSummaryResource {\n return {\n summaryType: item[\"summaryType\"],\n provisioningState: item[\"provisioningState\"],\n totalCertificateCount: item[\"totalCertificateCount\"],\n pairedKeyCount: item[\"pairedKeyCount\"],\n expiredCertificateCount: item[\"expiredCertificateCount\"],\n expiringSoonCertificateCount: item[\"expiringSoonCertificateCount\"],\n weakSignatureCount: item[\"weakSignatureCount\"],\n selfSignedCertificateCount: item[\"selfSignedCertificateCount\"],\n shortKeySizeCount: item[\"shortKeySizeCount\"],\n };\n}\n\n/** Properties for cryptographic key summary. */\nexport interface CryptoKeySummaryResource extends SummaryResourceProperties {\n /** Total number of cryptographic keys found. */\n totalKeyCount?: number;\n /** Total number of (non-certificate) public keys found. */\n publicKeyCount?: number;\n /** Total number of private keys found. */\n privateKeyCount?: number;\n /** Total number of keys found that have a matching paired key or certificate. */\n pairedKeyCount?: number;\n /** Total number of keys found that have an insecure key size for the algorithm. */\n shortKeySizeCount?: number;\n /** Describes the type of summary. */\n summaryType: \"CryptoKey\";\n}\n\nexport function cryptoKeySummaryResourceDeserializer(item: any): CryptoKeySummaryResource {\n return {\n summaryType: item[\"summaryType\"],\n provisioningState: item[\"provisioningState\"],\n totalKeyCount: item[\"totalKeyCount\"],\n publicKeyCount: item[\"publicKeyCount\"],\n privateKeyCount: item[\"privateKeyCount\"],\n pairedKeyCount: item[\"pairedKeyCount\"],\n shortKeySizeCount: item[\"shortKeySizeCount\"],\n };\n}\n\n/** The response of a SummaryResource list operation. */\nexport interface _SummaryResourceListResult {\n /** The SummaryResource items on this page */\n value: SummaryResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _summaryResourceListResultDeserializer(item: any): _SummaryResourceListResult {\n return {\n value: summaryResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function summaryResourceArrayDeserializer(result: Array<SummaryResource>): any[] {\n return result.map((item) => {\n return summaryResourceDeserializer(item);\n });\n}\n\n/** The object representing how many firmwares the user has uploaded to the workspace. */\nexport interface UsageMetric extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: UsageMetricProperties;\n}\n\nexport function usageMetricDeserializer(item: any): UsageMetric {\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 : usageMetricPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Properties of a workspaces usage metrics. */\nexport interface UsageMetricProperties {\n /** The number of firmware analysis jobs that have been submitted in the current month. */\n readonly monthlyFirmwareUploadCount: number;\n /** The total number of firmwares that are in the workspace. */\n readonly totalFirmwareCount: number;\n /** The status of the last operation. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function usageMetricPropertiesDeserializer(item: any): UsageMetricProperties {\n return {\n monthlyFirmwareUploadCount: item[\"monthlyFirmwareUploadCount\"],\n totalFirmwareCount: item[\"totalFirmwareCount\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The response of a UsageMetric list operation. */\nexport interface _UsageMetricListResult {\n /** The UsageMetric items on this page */\n value: UsageMetric[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _usageMetricListResultDeserializer(item: any): _UsageMetricListResult {\n return {\n value: usageMetricArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function usageMetricArrayDeserializer(result: Array<UsageMetric>): any[] {\n return result.map((item) => {\n return usageMetricDeserializer(item);\n });\n}\n\n/** The available API versions. */\nexport enum KnownVersions {\n /** The 2025-04-01 API version. */\n V20250401Preview = \"2025-04-01-preview\",\n}\n"]}
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/** Firmware definition */\nexport interface Firmware extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: FirmwareProperties;\n}\n\nexport function firmwareSerializer(item: Firmware): any {\n return {\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : firmwarePropertiesSerializer(item[\"properties\"]),\n };\n}\n\nexport function firmwareDeserializer(item: any): Firmware {\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 : firmwarePropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Firmware properties. */\nexport interface FirmwareProperties {\n /** File name for a firmware that user uploaded. */\n fileName?: string;\n /** Firmware vendor. */\n vendor?: string;\n /** Firmware model. */\n model?: string;\n /** Firmware version. */\n version?: string;\n /** User-specified description of the firmware. */\n description?: string;\n /** File size of the uploaded firmware image. */\n fileSize?: number;\n /** The status of firmware scan. */\n status?: Status;\n /** A list of errors or other messages generated during firmware analysis */\n statusMessages?: StatusMessage[];\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function firmwarePropertiesSerializer(item: FirmwareProperties): any {\n return {\n fileName: item[\"fileName\"],\n vendor: item[\"vendor\"],\n model: item[\"model\"],\n version: item[\"version\"],\n description: item[\"description\"],\n fileSize: item[\"fileSize\"],\n status: item[\"status\"],\n statusMessages: !item[\"statusMessages\"]\n ? item[\"statusMessages\"]\n : statusMessageArraySerializer(item[\"statusMessages\"]),\n };\n}\n\nexport function firmwarePropertiesDeserializer(item: any): FirmwareProperties {\n return {\n fileName: item[\"fileName\"],\n vendor: item[\"vendor\"],\n model: item[\"model\"],\n version: item[\"version\"],\n description: item[\"description\"],\n fileSize: item[\"fileSize\"],\n status: item[\"status\"],\n statusMessages: !item[\"statusMessages\"]\n ? item[\"statusMessages\"]\n : statusMessageArrayDeserializer(item[\"statusMessages\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The status of a firmware analysis job. */\nexport enum KnownStatus {\n /** The analysis job is queued */\n Pending = \"Pending\",\n /** The firmware is currently being extracted */\n Extracting = \"Extracting\",\n /** Analysis is being run on the firmware */\n Analyzing = \"Analyzing\",\n /** Analysis job results are ready */\n Ready = \"Ready\",\n /** An error occurred while running firmware analysis */\n Error = \"Error\",\n}\n\n/**\n * The status of a firmware analysis job. \\\n * {@link KnownStatus} can be used interchangeably with Status,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Pending**: The analysis job is queued \\\n * **Extracting**: The firmware is currently being extracted \\\n * **Analyzing**: Analysis is being run on the firmware \\\n * **Ready**: Analysis job results are ready \\\n * **Error**: An error occurred while running firmware analysis\n */\nexport type Status = string;\n\nexport function statusMessageArraySerializer(result: Array<StatusMessage>): any[] {\n return result.map((item) => {\n return statusMessageSerializer(item);\n });\n}\n\nexport function statusMessageArrayDeserializer(result: Array<StatusMessage>): any[] {\n return result.map((item) => {\n return statusMessageDeserializer(item);\n });\n}\n\n/** Error and status message */\nexport interface StatusMessage {\n /** The error code */\n errorCode?: number;\n /** The error or status message */\n message?: string;\n}\n\nexport function statusMessageSerializer(item: StatusMessage): any {\n return { errorCode: item[\"errorCode\"], message: item[\"message\"] };\n}\n\nexport function statusMessageDeserializer(item: any): StatusMessage {\n return {\n errorCode: item[\"errorCode\"],\n message: item[\"message\"],\n };\n}\n\n/** The status of a firmware analysis job. */\nexport enum KnownProvisioningState {\n /** The request has successfully completed. */\n Succeeded = \"Succeeded\",\n /** There was an error during the request. */\n Failed = \"Failed\",\n /** The request was canceled. */\n Canceled = \"Canceled\",\n /** The request is queued and awaiting execution */\n Pending = \"Pending\",\n /** The Firmware is currently being extracted. */\n Extracting = \"Extracting\",\n /** Analysis is being run on the firmware */\n Analyzing = \"Analyzing\",\n}\n\n/**\n * The status of a firmware analysis job. \\\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**: The request has successfully completed. \\\n * **Failed**: There was an error during the request. \\\n * **Canceled**: The request was canceled. \\\n * **Pending**: The request is queued and awaiting execution \\\n * **Extracting**: The Firmware is currently being extracted. \\\n * **Analyzing**: Analysis is being run on the firmware\n */\nexport type ProvisioningState = string;\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/** 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/** Firmware definition */\nexport interface FirmwareUpdateDefinition {\n /** The editable properties of a firmware */\n properties?: FirmwareProperties;\n}\n\nexport function firmwareUpdateDefinitionSerializer(item: FirmwareUpdateDefinition): any {\n return {\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : firmwarePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** The response of a Firmware list operation. */\nexport interface _FirmwareListResult {\n /** The Firmware items on this page */\n value: Firmware[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _firmwareListResultDeserializer(item: any): _FirmwareListResult {\n return {\n value: firmwareArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function firmwareArraySerializer(result: Array<Firmware>): any[] {\n return result.map((item) => {\n return firmwareSerializer(item);\n });\n}\n\nexport function firmwareArrayDeserializer(result: Array<Firmware>): any[] {\n return result.map((item) => {\n return firmwareDeserializer(item);\n });\n}\n\n/** Firmware analysis workspace. */\nexport interface Workspace extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: WorkspaceProperties;\n /** The SKU (Stock Keeping Unit) assigned to this resource. */\n sku?: Sku;\n}\n\nexport function workspaceSerializer(item: Workspace): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : workspacePropertiesSerializer(item[\"properties\"]),\n sku: !item[\"sku\"] ? item[\"sku\"] : skuSerializer(item[\"sku\"]),\n };\n}\n\nexport function workspaceDeserializer(item: any): Workspace {\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 : workspacePropertiesDeserializer(item[\"properties\"]),\n sku: !item[\"sku\"] ? item[\"sku\"] : skuDeserializer(item[\"sku\"]),\n };\n}\n\n/** Workspace properties. */\nexport interface WorkspaceProperties {\n /** Provisioning state of the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function workspacePropertiesSerializer(item: WorkspaceProperties): any {\n return item;\n}\n\nexport function workspacePropertiesDeserializer(item: any): WorkspaceProperties {\n return {\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The resource model definition representing SKU */\nexport interface Sku {\n /** The name of the SKU. Ex - P3. It is typically a letter+number code */\n name: string;\n /** This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT. */\n tier?: SkuTier;\n /** The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. */\n size?: string;\n /** If the service has different generations of hardware, for the same SKU, then that can be captured here. */\n family?: string;\n /** If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted. */\n capacity?: number;\n}\n\nexport function skuSerializer(item: Sku): any {\n return {\n name: item[\"name\"],\n tier: item[\"tier\"],\n size: item[\"size\"],\n family: item[\"family\"],\n capacity: item[\"capacity\"],\n };\n}\n\nexport function skuDeserializer(item: any): Sku {\n return {\n name: item[\"name\"],\n tier: item[\"tier\"],\n size: item[\"size\"],\n family: item[\"family\"],\n capacity: item[\"capacity\"],\n };\n}\n\n/** This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT. */\nexport type SkuTier = \"Free\" | \"Basic\" | \"Standard\" | \"Premium\";\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/** The type used for update operations of the Workspace. */\nexport interface WorkspaceUpdate {\n /** The SKU (Stock Keeping Unit) assigned to this resource. */\n sku?: Sku;\n /** Resource tags. */\n tags?: Record<string, string>;\n}\n\nexport function workspaceUpdateSerializer(item: WorkspaceUpdate): any {\n return {\n sku: !item[\"sku\"] ? item[\"sku\"] : skuSerializer(item[\"sku\"]),\n tags: item[\"tags\"],\n };\n}\n\n/** The response of a Workspace list operation. */\nexport interface _WorkspaceListResult {\n /** The Workspace items on this page */\n value: Workspace[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _workspaceListResultDeserializer(item: any): _WorkspaceListResult {\n return {\n value: workspaceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function workspaceArraySerializer(result: Array<Workspace>): any[] {\n return result.map((item) => {\n return workspaceSerializer(item);\n });\n}\n\nexport function workspaceArrayDeserializer(result: Array<Workspace>): any[] {\n return result.map((item) => {\n return workspaceDeserializer(item);\n });\n}\n\n/** Properties for generating an upload URL */\nexport interface GenerateUploadUrlRequest {\n /** A unique ID for the firmware to be uploaded. */\n firmwareId?: string;\n}\n\nexport function generateUploadUrlRequestSerializer(item: GenerateUploadUrlRequest): any {\n return { firmwareId: item[\"firmwareId\"] };\n}\n\n/** Url data for creating or accessing a blob file. */\nexport interface UrlToken {\n /** SAS URL for creating or accessing a blob file. */\n readonly url?: string;\n}\n\nexport function urlTokenDeserializer(item: any): UrlToken {\n return {\n url: item[\"url\"],\n };\n}\n\n/** The response of a BinaryHardeningResource list operation. */\nexport interface _BinaryHardeningResourceListResult {\n /** The BinaryHardeningResource items on this page */\n value: BinaryHardeningResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _binaryHardeningResourceListResultDeserializer(\n item: any,\n): _BinaryHardeningResourceListResult {\n return {\n value: binaryHardeningResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function binaryHardeningResourceArrayDeserializer(\n result: Array<BinaryHardeningResource>,\n): any[] {\n return result.map((item) => {\n return binaryHardeningResourceDeserializer(item);\n });\n}\n\n/** The object representing a firmware analysis binary hardening result resource */\nexport interface BinaryHardeningResource extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: BinaryHardeningResult;\n}\n\nexport function binaryHardeningResourceDeserializer(item: any): BinaryHardeningResource {\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 : binaryHardeningResultDeserializer(item[\"properties\"]),\n };\n}\n\n/** Binary hardening of a firmware. */\nexport interface BinaryHardeningResult {\n /** ID for the binary hardening result. */\n binaryHardeningId?: string;\n /** The security hardening features of the binary. */\n securityHardeningFeatures?: BinaryHardeningFeatures;\n /** The architecture of the binary being reported on. */\n executableArchitecture?: string;\n /** The path to the binary in the firmware. */\n filePath?: string;\n /** The executable class to indicate 32 or 64 bit. */\n executableClass?: ExecutableClass;\n /** The runpath property of the uploaded binary, which is a method of specifying additional paths to load objects at runtime. */\n runpath?: string;\n /** The rpath property of the uploaded binary, which is a deprecated method of specifying additional paths to load objects at runtime. */\n rpath?: string;\n /** The status of the last operation. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function binaryHardeningResultDeserializer(item: any): BinaryHardeningResult {\n return {\n binaryHardeningId: item[\"binaryHardeningId\"],\n securityHardeningFeatures: !item[\"securityHardeningFeatures\"]\n ? item[\"securityHardeningFeatures\"]\n : binaryHardeningFeaturesDeserializer(item[\"securityHardeningFeatures\"]),\n executableArchitecture: item[\"executableArchitecture\"],\n filePath: item[\"filePath\"],\n executableClass: item[\"executableClass\"],\n runpath: item[\"runpath\"],\n rpath: item[\"rpath\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** Binary hardening features. */\nexport interface BinaryHardeningFeatures {\n /** Flag indicating the binary's stack is set to NX (no-execute). */\n noExecute?: boolean;\n /** Flag indicating the binary was compiled to be a position independent executable. */\n positionIndependentExecutable?: boolean;\n /** Flag indicating the binary has enabled relocation read-only protections. */\n relocationReadOnly?: boolean;\n /** Flag indicating if the binary was compiled with stack canaries enabled. */\n canary?: boolean;\n /** Flag indicating if debug symbols have been stripped from the binary. */\n stripped?: boolean;\n}\n\nexport function binaryHardeningFeaturesDeserializer(item: any): BinaryHardeningFeatures {\n return {\n noExecute: item[\"noExecute\"],\n positionIndependentExecutable: item[\"positionIndependentExecutable\"],\n relocationReadOnly: item[\"relocationReadOnly\"],\n canary: item[\"canary\"],\n stripped: item[\"stripped\"],\n };\n}\n\n/** String to indicate if the executable is 32 or 64 bit. */\nexport enum KnownExecutableClass {\n /** The binary is 32-bit. */\n X86 = \"x86\",\n /** The binary is 64-bit. */\n X64 = \"x64\",\n}\n\n/**\n * String to indicate if the executable is 32 or 64 bit. \\\n * {@link KnownExecutableClass} can be used interchangeably with ExecutableClass,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **x86**: The binary is 32-bit. \\\n * **x64**: The binary is 64-bit.\n */\nexport type ExecutableClass = string;\n\n/** The response of a CryptoCertificateResource list operation. */\nexport interface _CryptoCertificateResourceListResult {\n /** The CryptoCertificateResource items on this page */\n value: CryptoCertificateResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _cryptoCertificateResourceListResultDeserializer(\n item: any,\n): _CryptoCertificateResourceListResult {\n return {\n value: cryptoCertificateResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function cryptoCertificateResourceArrayDeserializer(\n result: Array<CryptoCertificateResource>,\n): any[] {\n return result.map((item) => {\n return cryptoCertificateResourceDeserializer(item);\n });\n}\n\n/** The object representing a firmware analysis crypto certificate resource */\nexport interface CryptoCertificateResource extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: CryptoCertificate;\n}\n\nexport function cryptoCertificateResourceDeserializer(item: any): CryptoCertificateResource {\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 : cryptoCertificateDeserializer(item[\"properties\"]),\n };\n}\n\n/** Crypto certificate properties */\nexport interface CryptoCertificate {\n /** ID for the certificate result. */\n cryptoCertId?: string;\n /** Name of the certificate. */\n certificateName?: string;\n /** Subject information of the certificate. */\n subject?: CryptoCertificateEntity;\n /** Issuer information of the certificate. */\n issuer?: CryptoCertificateEntity;\n /** Issue date for the certificate. */\n issuedDate?: Date;\n /** Expiration date for the certificate. */\n expirationDate?: Date;\n /** Role of the certificate (Root CA, etc) */\n certificateRole?: string;\n /** The signature algorithm used in the certificate. */\n signatureAlgorithm?: string;\n /** Size of the certificate's key in bits */\n certificateKeySize?: number;\n /** Key algorithm used in the certificate. */\n certificateKeyAlgorithm?: string;\n /** Encoding used for the certificate. */\n encoding?: string;\n /** Serial number of the certificate. */\n serialNumber?: string;\n /** Fingerprint of the certificate. */\n fingerprint?: string;\n /** List of functions the certificate can fulfill. */\n certificateUsage?: CertificateUsage[];\n /** List of files where this certificate was found. */\n readonly filePaths?: string[];\n /** A matching paired private key. */\n pairedKey?: PairedKey;\n /** Indicates if the certificate is expired. */\n isExpired?: boolean;\n /** Indicates if the certificate is self-signed. */\n isSelfSigned?: boolean;\n /** Indicates the signature algorithm used is insecure according to NIST guidance. */\n isWeakSignature?: boolean;\n /** Indicates the certificate's key size is considered too small to be secure for the key algorithm according to NIST guidance. */\n isShortKeySize?: boolean;\n /** The status of the last operation. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function cryptoCertificateDeserializer(item: any): CryptoCertificate {\n return {\n cryptoCertId: item[\"cryptoCertId\"],\n certificateName: item[\"certificateName\"],\n subject: !item[\"subject\"]\n ? item[\"subject\"]\n : cryptoCertificateEntityDeserializer(item[\"subject\"]),\n issuer: !item[\"issuer\"] ? item[\"issuer\"] : cryptoCertificateEntityDeserializer(item[\"issuer\"]),\n issuedDate: !item[\"issuedDate\"] ? item[\"issuedDate\"] : new Date(item[\"issuedDate\"]),\n expirationDate: !item[\"expirationDate\"]\n ? item[\"expirationDate\"]\n : new Date(item[\"expirationDate\"]),\n certificateRole: item[\"certificateRole\"],\n signatureAlgorithm: item[\"signatureAlgorithm\"],\n certificateKeySize: item[\"certificateKeySize\"],\n certificateKeyAlgorithm: item[\"certificateKeyAlgorithm\"],\n encoding: item[\"encoding\"],\n serialNumber: item[\"serialNumber\"],\n fingerprint: item[\"fingerprint\"],\n certificateUsage: !item[\"certificateUsage\"]\n ? item[\"certificateUsage\"]\n : item[\"certificateUsage\"].map((p: any) => {\n return p;\n }),\n filePaths: !item[\"filePaths\"]\n ? item[\"filePaths\"]\n : item[\"filePaths\"].map((p: any) => {\n return p;\n }),\n pairedKey: !item[\"pairedKey\"] ? item[\"pairedKey\"] : pairedKeyDeserializer(item[\"pairedKey\"]),\n isExpired: item[\"isExpired\"],\n isSelfSigned: item[\"isSelfSigned\"],\n isWeakSignature: item[\"isWeakSignature\"],\n isShortKeySize: item[\"isShortKeySize\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** Information on an entity (distinguished name) in a cryptographic certificate. */\nexport interface CryptoCertificateEntity {\n /** Common name of the certificate entity. */\n commonName?: string;\n /** Organization of the certificate entity. */\n organization?: string;\n /** The organizational unit of the certificate entity. */\n organizationalUnit?: string;\n /** Geographical state or province of the certificate entity. */\n state?: string;\n /** Country code of the certificate entity. */\n country?: string;\n}\n\nexport function cryptoCertificateEntityDeserializer(item: any): CryptoCertificateEntity {\n return {\n commonName: item[\"commonName\"],\n organization: item[\"organization\"],\n organizationalUnit: item[\"organizationalUnit\"],\n state: item[\"state\"],\n country: item[\"country\"],\n };\n}\n\n/** Activities for which the cryptographic certificate can be used. */\nexport enum KnownCertificateUsage {\n /** This certificate can be used to add a signature to a message */\n DigitalSignature = \"digitalSignature\",\n /** This certificates provides a non-repudiation service that protects against false denial of a message */\n NonRepudiation = \"nonRepudiation\",\n /** A synonym for NonRepudiation used in newer x509 certificates */\n ContentCommitment = \"contentCommitment\",\n /** This certificate can be used to encrypt a private or secret key */\n KeyEncipherment = \"keyEncipherment\",\n /** This certificate can be used to decrypt a private or secret key */\n DataEncipherment = \"dataEncipherment\",\n /** This certificate can be used to perform a key agreement, such as with a Diffie-Hellman key exchange */\n KeyAgreement = \"keyAgreement\",\n /** This certificate can be used to verify a other public keys */\n KeyCertSign = \"keyCertSign\",\n /** This certificate can be used to verify a certificate revocation list */\n CRLSign = \"crlSign\",\n /** This certificate can be only be used to encrypt data */\n EncipherOnly = \"encipherOnly\",\n /** This certificate can only be used to decrypt data */\n DecipherOnly = \"decipherOnly\",\n /** This certificate can be used to authenticate a server in a TLS/SSL connection */\n ServerAuthentication = \"serverAuth\",\n /** This certificate can be used to authenticate a client in a TLS/SSL connection */\n ClientAuthentication = \"clientAuth\",\n /** This certificate can be used to authenticate a code object */\n CodeSigning = \"codeSigning\",\n /** This certificate can be used to authenticate an email address */\n EmailProtection = \"emailProtection\",\n /** This certificate binds the hash of an object to a time */\n TimeStamping = \"timeStamping\",\n /** This certificate can be used to sign OCSP responses */\n OcspSigning = \"ocspSigning\",\n}\n\n/**\n * Activities for which the cryptographic certificate can be used. \\\n * {@link KnownCertificateUsage} can be used interchangeably with CertificateUsage,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **digitalSignature**: This certificate can be used to add a signature to a message \\\n * **nonRepudiation**: This certificates provides a non-repudiation service that protects against false denial of a message \\\n * **contentCommitment**: A synonym for NonRepudiation used in newer x509 certificates \\\n * **keyEncipherment**: This certificate can be used to encrypt a private or secret key \\\n * **dataEncipherment**: This certificate can be used to decrypt a private or secret key \\\n * **keyAgreement**: This certificate can be used to perform a key agreement, such as with a Diffie-Hellman key exchange \\\n * **keyCertSign**: This certificate can be used to verify a other public keys \\\n * **crlSign**: This certificate can be used to verify a certificate revocation list \\\n * **encipherOnly**: This certificate can be only be used to encrypt data \\\n * **decipherOnly**: This certificate can only be used to decrypt data \\\n * **serverAuth**: This certificate can be used to authenticate a server in a TLS\\/SSL connection \\\n * **clientAuth**: This certificate can be used to authenticate a client in a TLS\\/SSL connection \\\n * **codeSigning**: This certificate can be used to authenticate a code object \\\n * **emailProtection**: This certificate can be used to authenticate an email address \\\n * **timeStamping**: This certificate binds the hash of an object to a time \\\n * **ocspSigning**: This certificate can be used to sign OCSP responses\n */\nexport type CertificateUsage = string;\n\n/** Details of a matching paired key or certificate. */\nexport interface PairedKey {\n /** ID of the paired key or certificate. */\n pairedKeyId?: string;\n /** The type indicating whether the paired object is a key or certificate. */\n type?: string;\n}\n\nexport function pairedKeyDeserializer(item: any): PairedKey {\n return {\n pairedKeyId: item[\"pairedKeyId\"],\n type: item[\"type\"],\n };\n}\n\n/** The response of a CryptoKeyResource list operation. */\nexport interface _CryptoKeyResourceListResult {\n /** The CryptoKeyResource items on this page */\n value: CryptoKeyResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _cryptoKeyResourceListResultDeserializer(item: any): _CryptoKeyResourceListResult {\n return {\n value: cryptoKeyResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function cryptoKeyResourceArrayDeserializer(result: Array<CryptoKeyResource>): any[] {\n return result.map((item) => {\n return cryptoKeyResourceDeserializer(item);\n });\n}\n\n/** The object representing a firmware analysis crypto key resource */\nexport interface CryptoKeyResource extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: CryptoKey;\n}\n\nexport function cryptoKeyResourceDeserializer(item: any): CryptoKeyResource {\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 : cryptoKeyDeserializer(item[\"properties\"]),\n };\n}\n\n/** Crypto key properties */\nexport interface CryptoKey {\n /** ID for the key result. */\n cryptoKeyId?: string;\n /** Type of the key (public or private). */\n keyType?: CryptoKeyType;\n /** Size of the key in bits. */\n cryptoKeySize?: number;\n /** Key algorithm name. */\n keyAlgorithm?: string;\n /** Functions the key can fulfill. */\n usage?: string[];\n /** List of files where this key was found. */\n readonly filePaths?: string[];\n /** A matching paired key or certificate. */\n pairedKey?: PairedKey;\n /** Indicates the key size is considered too small to be secure for the algorithm according to NIST guidance. */\n isShortKeySize?: boolean;\n /** The status of the last operation. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function cryptoKeyDeserializer(item: any): CryptoKey {\n return {\n cryptoKeyId: item[\"cryptoKeyId\"],\n keyType: item[\"keyType\"],\n cryptoKeySize: item[\"cryptoKeySize\"],\n keyAlgorithm: item[\"keyAlgorithm\"],\n usage: !item[\"usage\"]\n ? item[\"usage\"]\n : item[\"usage\"].map((p: any) => {\n return p;\n }),\n filePaths: !item[\"filePaths\"]\n ? item[\"filePaths\"]\n : item[\"filePaths\"].map((p: any) => {\n return p;\n }),\n pairedKey: !item[\"pairedKey\"] ? item[\"pairedKey\"] : pairedKeyDeserializer(item[\"pairedKey\"]),\n isShortKeySize: item[\"isShortKeySize\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** Different types of cryptographic keys. */\nexport enum KnownCryptoKeyType {\n /** The key is an asymmetric public key. */\n Public = \"Public\",\n /** The key is an asymmetric private key. */\n Private = \"Private\",\n}\n\n/**\n * Different types of cryptographic keys. \\\n * {@link KnownCryptoKeyType} can be used interchangeably with CryptoKeyType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Public**: The key is an asymmetric public key. \\\n * **Private**: The key is an asymmetric private key.\n */\nexport type CryptoKeyType = string;\n\n/** The response of a CveResource list operation. */\nexport interface _CveResourceListResult {\n /** The CveResource items on this page */\n value: CveResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _cveResourceListResultDeserializer(item: any): _CveResourceListResult {\n return {\n value: cveResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function cveResourceArrayDeserializer(result: Array<CveResource>): any[] {\n return result.map((item) => {\n return cveResourceDeserializer(item);\n });\n}\n\n/** The object representing a firmware analysis CVE result resource */\nexport interface CveResource extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: CveResult;\n}\n\nexport function cveResourceDeserializer(item: any): CveResource {\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 : cveResultDeserializer(item[\"properties\"]),\n };\n}\n\n/** Details of a CVE detected in firmware. */\nexport interface CveResult {\n /** ID of the CVE result. */\n cveId?: string;\n /** ID of the affected SBOM component. */\n componentId?: string;\n /** Name of the affected SBOM component. */\n componentName?: string;\n /** Version of the affected SBOM component. */\n componentVersion?: string;\n /** Severity of the CVE. */\n severity?: string;\n /** Name of the CVE. */\n cveName?: string;\n /** Legacy property for what is now componentName */\n component?: CveComponent;\n /** Legacy property for the effective CVE score. */\n cvssScore?: string;\n /** Legacy property for the CVE CVSS version 2 score, if one existed. */\n cvssV2Score?: string;\n /** Legacy property for the CVE CVSS version 3 score, if one existed. */\n cvssV3Score?: string;\n /** Legacy property for the what CVSS version score was stored in the cvssScore property */\n cvssVersion?: string;\n /** The most recent CVSS score of the CVE. */\n effectiveCvssScore?: number;\n /** The version of the effectiveCvssScore property. */\n effectiveCvssVersion?: number;\n /** All known CVSS scores for the CVE. */\n cvssScores?: CvssScore[];\n /** The list of reference links for the CVE. */\n readonly links?: CveLink[];\n /** The CVE description. */\n description?: string;\n /** The status of the last operation. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function cveResultDeserializer(item: any): CveResult {\n return {\n cveId: item[\"cveId\"],\n componentId: item[\"componentId\"],\n componentName: item[\"componentName\"],\n componentVersion: item[\"componentVersion\"],\n severity: item[\"severity\"],\n cveName: item[\"cveName\"],\n component: !item[\"component\"] ? item[\"component\"] : cveComponentDeserializer(item[\"component\"]),\n cvssScore: item[\"cvssScore\"],\n cvssV2Score: item[\"cvssV2Score\"],\n cvssV3Score: item[\"cvssV3Score\"],\n cvssVersion: item[\"cvssVersion\"],\n effectiveCvssScore: item[\"effectiveCvssScore\"],\n effectiveCvssVersion: item[\"effectiveCvssVersion\"],\n cvssScores: !item[\"cvssScores\"]\n ? item[\"cvssScores\"]\n : cvssScoreArrayDeserializer(item[\"cvssScores\"]),\n links: !item[\"links\"] ? item[\"links\"] : cveLinkArrayDeserializer(item[\"links\"]),\n description: item[\"description\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** Legacy component of a CVE result. */\nexport interface CveComponent {\n /** ID of the SBOM component. */\n componentId?: string;\n /** Name of the SBOM component. */\n name?: string;\n /** Version of the SBOM component. */\n version?: string;\n}\n\nexport function cveComponentDeserializer(item: any): CveComponent {\n return {\n componentId: item[\"componentId\"],\n name: item[\"name\"],\n version: item[\"version\"],\n };\n}\n\nexport function cvssScoreArrayDeserializer(result: Array<CvssScore>): any[] {\n return result.map((item) => {\n return cvssScoreDeserializer(item);\n });\n}\n\n/** Common Vulnerability Scoring System values. */\nexport interface CvssScore {\n /** The version of the Common Vulnerability Scoring System (CVSS). */\n version: number;\n /** The score of the CVE according to the CVSS specified. */\n score?: number;\n}\n\nexport function cvssScoreDeserializer(item: any): CvssScore {\n return {\n version: item[\"version\"],\n score: item[\"score\"],\n };\n}\n\nexport function cveLinkArrayDeserializer(result: Array<CveLink>): any[] {\n return result.map((item) => {\n return cveLinkDeserializer(item);\n });\n}\n\n/** Properties of a reference link for a CVE. */\nexport interface CveLink {\n /** The destination of the reference link. */\n href?: string;\n /** The label of the reference link. */\n label?: string;\n}\n\nexport function cveLinkDeserializer(item: any): CveLink {\n return {\n href: item[\"href\"],\n label: item[\"label\"],\n };\n}\n\n/** The response of a PasswordHashResource list operation. */\nexport interface _PasswordHashResourceListResult {\n /** The PasswordHashResource items on this page */\n value: PasswordHashResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _passwordHashResourceListResultDeserializer(\n item: any,\n): _PasswordHashResourceListResult {\n return {\n value: passwordHashResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function passwordHashResourceArrayDeserializer(result: Array<PasswordHashResource>): any[] {\n return result.map((item) => {\n return passwordHashResourceDeserializer(item);\n });\n}\n\n/** The object representing a firmware analysis password hash result resource */\nexport interface PasswordHashResource extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: PasswordHash;\n}\n\nexport function passwordHashResourceDeserializer(item: any): PasswordHashResource {\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 : passwordHashDeserializer(item[\"properties\"]),\n };\n}\n\n/** Password hash properties */\nexport interface PasswordHash {\n /** ID for password hash */\n passwordHashId?: string;\n /** File path of the password hash */\n filePath?: string;\n /** Salt of the password hash */\n salt?: string;\n /** Hash of the password */\n hash?: string;\n /** Context of password hash */\n context?: string;\n /** User name of password hash */\n username?: string;\n /** Algorithm of the password hash */\n algorithm?: string;\n /** The status of the last operation. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function passwordHashDeserializer(item: any): PasswordHash {\n return {\n passwordHashId: item[\"passwordHashId\"],\n filePath: item[\"filePath\"],\n salt: item[\"salt\"],\n hash: item[\"hash\"],\n context: item[\"context\"],\n username: item[\"username\"],\n algorithm: item[\"algorithm\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The response of a SbomComponentResource list operation. */\nexport interface _SbomComponentResourceListResult {\n /** The SbomComponentResource items on this page */\n value: SbomComponentResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _sbomComponentResourceListResultDeserializer(\n item: any,\n): _SbomComponentResourceListResult {\n return {\n value: sbomComponentResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function sbomComponentResourceArrayDeserializer(\n result: Array<SbomComponentResource>,\n): any[] {\n return result.map((item) => {\n return sbomComponentResourceDeserializer(item);\n });\n}\n\n/** The object representing a firmware analysis SBOM component result resource */\nexport interface SbomComponentResource extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: SbomComponent;\n}\n\nexport function sbomComponentResourceDeserializer(item: any): SbomComponentResource {\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 : sbomComponentDeserializer(item[\"properties\"]),\n };\n}\n\n/** SBOM component of a firmware. */\nexport interface SbomComponent {\n /** ID for the component. */\n componentId?: string;\n /** Name for the component. */\n componentName?: string;\n /** Version for the component. */\n version?: string;\n /** License for the component. */\n license?: string;\n /** File paths related to the component. Note, relatedFiles should be used instead of this property. */\n filePaths?: string[];\n /** The status of the last operation. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function sbomComponentDeserializer(item: any): SbomComponent {\n return {\n componentId: item[\"componentId\"],\n componentName: item[\"componentName\"],\n version: item[\"version\"],\n license: item[\"license\"],\n filePaths: !item[\"filePaths\"]\n ? item[\"filePaths\"]\n : item[\"filePaths\"].map((p: any) => {\n return p;\n }),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The object representing a firmware analysis summary resource. */\nexport interface SummaryResource extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: SummaryResourcePropertiesUnion;\n}\n\nexport function summaryResourceDeserializer(item: any): SummaryResource {\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 : summaryResourcePropertiesUnionDeserializer(item[\"properties\"]),\n };\n}\n\n/** Properties of an analysis summary. */\nexport interface SummaryResourceProperties {\n /** The type of summary. */\n /** The discriminator possible values: Firmware, CommonVulnerabilitiesAndExposures, BinaryHardening, CryptoCertificate, CryptoKey */\n summaryType: SummaryType;\n /** The status of the last operation. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function summaryResourcePropertiesDeserializer(item: any): SummaryResourceProperties {\n return {\n summaryType: item[\"summaryType\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** Alias for SummaryResourcePropertiesUnion */\nexport type SummaryResourcePropertiesUnion =\n | FirmwareSummary\n | CveSummary\n | BinaryHardeningSummaryResource\n | CryptoCertificateSummaryResource\n | CryptoKeySummaryResource\n | SummaryResourceProperties;\n\nexport function summaryResourcePropertiesUnionDeserializer(\n item: any,\n): SummaryResourcePropertiesUnion {\n switch (item.summaryType) {\n case \"Firmware\":\n return firmwareSummaryDeserializer(item as FirmwareSummary);\n\n case \"CommonVulnerabilitiesAndExposures\":\n return cveSummaryDeserializer(item as CveSummary);\n\n case \"BinaryHardening\":\n return binaryHardeningSummaryResourceDeserializer(item as BinaryHardeningSummaryResource);\n\n case \"CryptoCertificate\":\n return cryptoCertificateSummaryResourceDeserializer(item as CryptoCertificateSummaryResource);\n\n case \"CryptoKey\":\n return cryptoKeySummaryResourceDeserializer(item as CryptoKeySummaryResource);\n\n default:\n return summaryResourcePropertiesDeserializer(item);\n }\n}\n\n/** Describes the type of summary. */\nexport enum KnownSummaryType {\n /** The summary contains information about the submitted firmware */\n Firmware = \"Firmware\",\n /** The summary contains information about the Common Vulnerabilities and Exposures analysis results */\n CommonVulnerabilitiesAndExposures = \"CommonVulnerabilitiesAndExposures\",\n /** The summary contains information about the binary hardening analysis results */\n BinaryHardening = \"BinaryHardening\",\n /** The summary contains information about the cryptographic certificate analysis results */\n CryptoCertificate = \"CryptoCertificate\",\n /** The summary contains information about the cryptographic key analysis results */\n CryptoKey = \"CryptoKey\",\n}\n\n/**\n * Describes the type of summary. \\\n * {@link KnownSummaryType} can be used interchangeably with SummaryType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Firmware**: The summary contains information about the submitted firmware \\\n * **CommonVulnerabilitiesAndExposures**: The summary contains information about the Common Vulnerabilities and Exposures analysis results \\\n * **BinaryHardening**: The summary contains information about the binary hardening analysis results \\\n * **CryptoCertificate**: The summary contains information about the cryptographic certificate analysis results \\\n * **CryptoKey**: The summary contains information about the cryptographic key analysis results\n */\nexport type SummaryType = string;\n\n/** Properties for high level summary of firmware analysis results. */\nexport interface FirmwareSummary extends SummaryResourceProperties {\n /** Total extracted size of the firmware in bytes. */\n extractedSize?: number;\n /** Firmware file size in bytes. */\n fileSize?: number;\n /** Extracted file count. */\n extractedFileCount?: number;\n /** Components count. */\n componentCount?: number;\n /** Binary count */\n binaryCount?: number;\n /** Time used for analysis */\n analysisTimeSeconds?: number;\n /** The number of root file systems found. */\n rootFileSystems?: number;\n /** Describes the type of summary. */\n summaryType: \"Firmware\";\n}\n\nexport function firmwareSummaryDeserializer(item: any): FirmwareSummary {\n return {\n summaryType: item[\"summaryType\"],\n provisioningState: item[\"provisioningState\"],\n extractedSize: item[\"extractedSize\"],\n fileSize: item[\"fileSize\"],\n extractedFileCount: item[\"extractedFileCount\"],\n componentCount: item[\"componentCount\"],\n binaryCount: item[\"binaryCount\"],\n analysisTimeSeconds: item[\"analysisTimeSeconds\"],\n rootFileSystems: item[\"rootFileSystems\"],\n };\n}\n\n/** Properties for a CVE analysis summary. */\nexport interface CveSummary extends SummaryResourceProperties {\n /** The total number of critical severity CVEs detected */\n criticalCveCount?: number;\n /** The total number of high severity CVEs detected */\n highCveCount?: number;\n /** The total number of medium severity CVEs detected */\n mediumCveCount?: number;\n /** The total number of low severity CVEs detected */\n lowCveCount?: number;\n /** The total number of unknown severity CVEs detected */\n unknownCveCount?: number;\n /** Describes the type of summary object. */\n summaryType: \"CommonVulnerabilitiesAndExposures\";\n}\n\nexport function cveSummaryDeserializer(item: any): CveSummary {\n return {\n summaryType: item[\"summaryType\"],\n provisioningState: item[\"provisioningState\"],\n criticalCveCount: item[\"criticalCveCount\"],\n highCveCount: item[\"highCveCount\"],\n mediumCveCount: item[\"mediumCveCount\"],\n lowCveCount: item[\"lowCveCount\"],\n unknownCveCount: item[\"unknownCveCount\"],\n };\n}\n\n/** Properties for a binary hardening analysis summary. */\nexport interface BinaryHardeningSummaryResource extends SummaryResourceProperties {\n /** Total number of binaries that were analyzed */\n totalFiles?: number;\n /** Total number of analyzed files that were found to have a nonexecutable stack */\n notExecutableStackCount?: number;\n /** Total number of analyzed files that were compiled to be a position independent executable */\n positionIndependentExecutableCount?: number;\n /** Total number of analyzed files that have enabled relocation read-only protections */\n relocationReadOnlyCount?: number;\n /** Total number of analyzed files that have stack canaries enabled */\n stackCanaryCount?: number;\n /** Total number of analyzed files that have debug symbols stripped */\n strippedBinaryCount?: number;\n /** Describes the type of summary object. */\n summaryType: \"BinaryHardening\";\n}\n\nexport function binaryHardeningSummaryResourceDeserializer(\n item: any,\n): BinaryHardeningSummaryResource {\n return {\n summaryType: item[\"summaryType\"],\n provisioningState: item[\"provisioningState\"],\n totalFiles: item[\"totalFiles\"],\n notExecutableStackCount: item[\"notExecutableStackCount\"],\n positionIndependentExecutableCount: item[\"positionIndependentExecutableCount\"],\n relocationReadOnlyCount: item[\"relocationReadOnlyCount\"],\n stackCanaryCount: item[\"stackCanaryCount\"],\n strippedBinaryCount: item[\"strippedBinaryCount\"],\n };\n}\n\n/** Properties for cryptographic certificate summary. */\nexport interface CryptoCertificateSummaryResource extends SummaryResourceProperties {\n /** Total number of certificates found. */\n totalCertificateCount?: number;\n /** Total number of paired private keys found for the certificates. */\n pairedKeyCount?: number;\n /** Total number of expired certificates found. */\n expiredCertificateCount?: number;\n /** Total number of nearly expired certificates found. */\n expiringSoonCertificateCount?: number;\n /** Total number of certificates found using a weak signature algorithm. */\n weakSignatureCount?: number;\n /** Total number of certificates found that are self-signed. */\n selfSignedCertificateCount?: number;\n /** Total number of certificates found that have an insecure key size for the key algorithm. */\n shortKeySizeCount?: number;\n /** Describes the type of summary. */\n summaryType: \"CryptoCertificate\";\n}\n\nexport function cryptoCertificateSummaryResourceDeserializer(\n item: any,\n): CryptoCertificateSummaryResource {\n return {\n summaryType: item[\"summaryType\"],\n provisioningState: item[\"provisioningState\"],\n totalCertificateCount: item[\"totalCertificateCount\"],\n pairedKeyCount: item[\"pairedKeyCount\"],\n expiredCertificateCount: item[\"expiredCertificateCount\"],\n expiringSoonCertificateCount: item[\"expiringSoonCertificateCount\"],\n weakSignatureCount: item[\"weakSignatureCount\"],\n selfSignedCertificateCount: item[\"selfSignedCertificateCount\"],\n shortKeySizeCount: item[\"shortKeySizeCount\"],\n };\n}\n\n/** Properties for cryptographic key summary. */\nexport interface CryptoKeySummaryResource extends SummaryResourceProperties {\n /** Total number of cryptographic keys found. */\n totalKeyCount?: number;\n /** Total number of (non-certificate) public keys found. */\n publicKeyCount?: number;\n /** Total number of private keys found. */\n privateKeyCount?: number;\n /** Total number of keys found that have a matching paired key or certificate. */\n pairedKeyCount?: number;\n /** Total number of keys found that have an insecure key size for the algorithm. */\n shortKeySizeCount?: number;\n /** Describes the type of summary. */\n summaryType: \"CryptoKey\";\n}\n\nexport function cryptoKeySummaryResourceDeserializer(item: any): CryptoKeySummaryResource {\n return {\n summaryType: item[\"summaryType\"],\n provisioningState: item[\"provisioningState\"],\n totalKeyCount: item[\"totalKeyCount\"],\n publicKeyCount: item[\"publicKeyCount\"],\n privateKeyCount: item[\"privateKeyCount\"],\n pairedKeyCount: item[\"pairedKeyCount\"],\n shortKeySizeCount: item[\"shortKeySizeCount\"],\n };\n}\n\n/** The response of a SummaryResource list operation. */\nexport interface _SummaryResourceListResult {\n /** The SummaryResource items on this page */\n value: SummaryResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _summaryResourceListResultDeserializer(item: any): _SummaryResourceListResult {\n return {\n value: summaryResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function summaryResourceArrayDeserializer(result: Array<SummaryResource>): any[] {\n return result.map((item) => {\n return summaryResourceDeserializer(item);\n });\n}\n\n/** The object representing how many firmwares the user has uploaded to the workspace. */\nexport interface UsageMetric extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: UsageMetricProperties;\n}\n\nexport function usageMetricDeserializer(item: any): UsageMetric {\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 : usageMetricPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Properties of a workspaces usage metrics. */\nexport interface UsageMetricProperties {\n /** The number of firmware analysis jobs that have been submitted in the current month. */\n readonly monthlyFirmwareUploadCount: number;\n /** The total number of firmwares that are in the workspace. */\n readonly totalFirmwareCount: number;\n /** The status of the last operation. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function usageMetricPropertiesDeserializer(item: any): UsageMetricProperties {\n return {\n monthlyFirmwareUploadCount: item[\"monthlyFirmwareUploadCount\"],\n totalFirmwareCount: item[\"totalFirmwareCount\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The response of a UsageMetric list operation. */\nexport interface _UsageMetricListResult {\n /** The UsageMetric items on this page */\n value: UsageMetric[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _usageMetricListResultDeserializer(item: any): _UsageMetricListResult {\n return {\n value: usageMetricArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function usageMetricArrayDeserializer(result: Array<UsageMetric>): any[] {\n return result.map((item) => {\n return usageMetricDeserializer(item);\n });\n}\n\n/** The available API versions. */\nexport enum KnownVersions {\n /** The 2025-08-02 API version. */\n V20250802 = \"2025-08-02\",\n}\n"]}
@@ -0,0 +1,21 @@
1
+ import { IoTFirmwareDefenseClient } from "./ioTFirmwareDefenseClient.js";
2
+ import { OperationOptions, PathUncheckedResponse } from "@azure-rest/core-client";
3
+ import { AbortSignalLike } from "@azure/abort-controller";
4
+ import { PollerLike, OperationState } from "@azure/core-lro";
5
+ export interface RestorePollerOptions<TResult, TResponse extends PathUncheckedResponse = PathUncheckedResponse> extends OperationOptions {
6
+ /** Delay to wait until next poll, in milliseconds. */
7
+ updateIntervalInMs?: number;
8
+ /**
9
+ * The signal which can be used to abort requests.
10
+ */
11
+ abortSignal?: AbortSignalLike;
12
+ /** Deserialization function for raw response body */
13
+ processResponseBody?: (result: TResponse) => Promise<TResult>;
14
+ }
15
+ /**
16
+ * Creates a poller from the serialized state of another poller. This can be
17
+ * useful when you want to create pollers on a different host or a poller
18
+ * needs to be constructed after the original one is not in scope.
19
+ */
20
+ export declare function restorePoller<TResponse extends PathUncheckedResponse, TResult>(client: IoTFirmwareDefenseClient, serializedState: string, sourceOperation: (...args: any[]) => PollerLike<OperationState<TResult>, TResult>, options?: RestorePollerOptions<TResult>): PollerLike<OperationState<TResult>, TResult>;
21
+ //# sourceMappingURL=restorePollerHelpers.d.ts.map
@@ -0,0 +1,91 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT License.
3
+ import { _$deleteDeserialize } from "./api/workspaces/operations.js";
4
+ import { getLongRunningPoller } from "./static-helpers/pollingHelpers.js";
5
+ import { deserializeState, } from "@azure/core-lro";
6
+ /**
7
+ * Creates a poller from the serialized state of another poller. This can be
8
+ * useful when you want to create pollers on a different host or a poller
9
+ * needs to be constructed after the original one is not in scope.
10
+ */
11
+ export function restorePoller(client, serializedState, sourceOperation, options) {
12
+ const pollerConfig = deserializeState(serializedState).config;
13
+ const { initialRequestUrl, requestMethod, metadata } = pollerConfig;
14
+ if (!initialRequestUrl || !requestMethod) {
15
+ throw new Error(`Invalid serialized state: ${serializedState} for sourceOperation ${sourceOperation?.name}`);
16
+ }
17
+ const resourceLocationConfig = metadata?.["resourceLocationConfig"];
18
+ const { deserializer, expectedStatuses = [] } = getDeserializationHelper(initialRequestUrl, requestMethod) ?? {};
19
+ const deserializeHelper = options?.processResponseBody ?? deserializer;
20
+ if (!deserializeHelper) {
21
+ throw new Error(`Please ensure the operation is in this client! We can't find its deserializeHelper for ${sourceOperation?.name}.`);
22
+ }
23
+ return getLongRunningPoller(client["_client"] ?? client, deserializeHelper, expectedStatuses, {
24
+ updateIntervalInMs: options?.updateIntervalInMs,
25
+ abortSignal: options?.abortSignal,
26
+ resourceLocationConfig,
27
+ restoreFrom: serializedState,
28
+ initialRequestUrl,
29
+ });
30
+ }
31
+ const deserializeMap = {
32
+ "DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.IoTFirmwareDefense/workspaces/{workspaceName}": {
33
+ deserializer: _$deleteDeserialize,
34
+ expectedStatuses: ["202", "204", "200"],
35
+ },
36
+ };
37
+ function getDeserializationHelper(urlStr, method) {
38
+ const path = new URL(urlStr).pathname;
39
+ const pathParts = path.split("/");
40
+ // Traverse list to match the longest candidate
41
+ // matchedLen: the length of candidate path
42
+ // matchedValue: the matched status code array
43
+ let matchedLen = -1, matchedValue;
44
+ // Iterate the responseMap to find a match
45
+ for (const [key, value] of Object.entries(deserializeMap)) {
46
+ // Extracting the path from the map key which is in format
47
+ // GET /path/foo
48
+ if (!key.startsWith(method)) {
49
+ continue;
50
+ }
51
+ const candidatePath = getPathFromMapKey(key);
52
+ // Get each part of the url path
53
+ const candidateParts = candidatePath.split("/");
54
+ // track if we have found a match to return the values found.
55
+ let found = true;
56
+ for (let i = candidateParts.length - 1, j = pathParts.length - 1; i >= 1 && j >= 1; i--, j--) {
57
+ if (candidateParts[i]?.startsWith("{") && candidateParts[i]?.indexOf("}") !== -1) {
58
+ const start = candidateParts[i].indexOf("}") + 1, end = candidateParts[i]?.length;
59
+ // If the current part of the candidate is a "template" part
60
+ // Try to use the suffix of pattern to match the path
61
+ // {guid} ==> $
62
+ // {guid}:export ==> :export$
63
+ const isMatched = new RegExp(`${candidateParts[i]?.slice(start, end)}`).test(pathParts[j] || "");
64
+ if (!isMatched) {
65
+ found = false;
66
+ break;
67
+ }
68
+ continue;
69
+ }
70
+ // If the candidate part is not a template and
71
+ // the parts don't match mark the candidate as not found
72
+ // to move on with the next candidate path.
73
+ if (candidateParts[i] !== pathParts[j]) {
74
+ found = false;
75
+ break;
76
+ }
77
+ }
78
+ // We finished evaluating the current candidate parts
79
+ // Update the matched value if and only if we found the longer pattern
80
+ if (found && candidatePath.length > matchedLen) {
81
+ matchedLen = candidatePath.length;
82
+ matchedValue = value;
83
+ }
84
+ }
85
+ return matchedValue;
86
+ }
87
+ function getPathFromMapKey(mapKey) {
88
+ const pathStart = mapKey.indexOf("/");
89
+ return mapKey.slice(pathStart);
90
+ }
91
+ //# sourceMappingURL=restorePollerHelpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"restorePollerHelpers.js","sourceRoot":"","sources":["../../src/restorePollerHelpers.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { IoTFirmwareDefenseClient } from \"./ioTFirmwareDefenseClient.js\";\nimport { _$deleteDeserialize } from \"./api/workspaces/operations.js\";\nimport { getLongRunningPoller } from \"./static-helpers/pollingHelpers.js\";\nimport { OperationOptions, PathUncheckedResponse } from \"@azure-rest/core-client\";\nimport { AbortSignalLike } from \"@azure/abort-controller\";\nimport {\n PollerLike,\n OperationState,\n deserializeState,\n ResourceLocationConfig,\n} from \"@azure/core-lro\";\n\nexport interface RestorePollerOptions<\n TResult,\n TResponse extends PathUncheckedResponse = PathUncheckedResponse,\n> extends OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /**\n * The signal which can be used to abort requests.\n */\n abortSignal?: AbortSignalLike;\n /** Deserialization function for raw response body */\n processResponseBody?: (result: TResponse) => Promise<TResult>;\n}\n\n/**\n * Creates a poller from the serialized state of another poller. This can be\n * useful when you want to create pollers on a different host or a poller\n * needs to be constructed after the original one is not in scope.\n */\nexport function restorePoller<TResponse extends PathUncheckedResponse, TResult>(\n client: IoTFirmwareDefenseClient,\n serializedState: string,\n sourceOperation: (...args: any[]) => PollerLike<OperationState<TResult>, TResult>,\n options?: RestorePollerOptions<TResult>,\n): PollerLike<OperationState<TResult>, TResult> {\n const pollerConfig = deserializeState(serializedState).config;\n const { initialRequestUrl, requestMethod, metadata } = pollerConfig;\n if (!initialRequestUrl || !requestMethod) {\n throw new Error(\n `Invalid serialized state: ${serializedState} for sourceOperation ${sourceOperation?.name}`,\n );\n }\n const resourceLocationConfig = metadata?.[\"resourceLocationConfig\"] as\n | ResourceLocationConfig\n | undefined;\n const { deserializer, expectedStatuses = [] } =\n getDeserializationHelper(initialRequestUrl, requestMethod) ?? {};\n const deserializeHelper = options?.processResponseBody ?? deserializer;\n if (!deserializeHelper) {\n throw new Error(\n `Please ensure the operation is in this client! We can't find its deserializeHelper for ${sourceOperation?.name}.`,\n );\n }\n return getLongRunningPoller(\n (client as any)[\"_client\"] ?? client,\n deserializeHelper as (result: TResponse) => Promise<TResult>,\n expectedStatuses,\n {\n updateIntervalInMs: options?.updateIntervalInMs,\n abortSignal: options?.abortSignal,\n resourceLocationConfig,\n restoreFrom: serializedState,\n initialRequestUrl,\n },\n );\n}\n\ninterface DeserializationHelper {\n deserializer: Function;\n expectedStatuses: string[];\n}\n\nconst deserializeMap: Record<string, DeserializationHelper> = {\n \"DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.IoTFirmwareDefense/workspaces/{workspaceName}\":\n {\n deserializer: _$deleteDeserialize,\n expectedStatuses: [\"202\", \"204\", \"200\"],\n },\n};\n\nfunction getDeserializationHelper(\n urlStr: string,\n method: string,\n): DeserializationHelper | undefined {\n const path = new URL(urlStr).pathname;\n const pathParts = path.split(\"/\");\n\n // Traverse list to match the longest candidate\n // matchedLen: the length of candidate path\n // matchedValue: the matched status code array\n let matchedLen = -1,\n matchedValue: DeserializationHelper | undefined;\n\n // Iterate the responseMap to find a match\n for (const [key, value] of Object.entries(deserializeMap)) {\n // Extracting the path from the map key which is in format\n // GET /path/foo\n if (!key.startsWith(method)) {\n continue;\n }\n const candidatePath = getPathFromMapKey(key);\n // Get each part of the url path\n const candidateParts = candidatePath.split(\"/\");\n\n // track if we have found a match to return the values found.\n let found = true;\n for (let i = candidateParts.length - 1, j = pathParts.length - 1; i >= 1 && j >= 1; i--, j--) {\n if (candidateParts[i]?.startsWith(\"{\") && candidateParts[i]?.indexOf(\"}\") !== -1) {\n const start = candidateParts[i]!.indexOf(\"}\") + 1,\n end = candidateParts[i]?.length;\n // If the current part of the candidate is a \"template\" part\n // Try to use the suffix of pattern to match the path\n // {guid} ==> $\n // {guid}:export ==> :export$\n const isMatched = new RegExp(`${candidateParts[i]?.slice(start, end)}`).test(\n pathParts[j] || \"\",\n );\n\n if (!isMatched) {\n found = false;\n break;\n }\n continue;\n }\n\n // If the candidate part is not a template and\n // the parts don't match mark the candidate as not found\n // to move on with the next candidate path.\n if (candidateParts[i] !== pathParts[j]) {\n found = false;\n break;\n }\n }\n\n // We finished evaluating the current candidate parts\n // Update the matched value if and only if we found the longer pattern\n if (found && candidatePath.length > matchedLen) {\n matchedLen = candidatePath.length;\n matchedValue = value;\n }\n }\n\n return matchedValue;\n}\n\nfunction getPathFromMapKey(mapKey: string): string {\n const pathStart = mapKey.indexOf(\"/\");\n return mapKey.slice(pathStart);\n}\n"]}
@@ -0,0 +1,13 @@
1
+ /** An enum to describe Azure Cloud. */
2
+ export declare enum AzureClouds {
3
+ /** Azure public cloud, which is the default cloud for Azure SDKs. */
4
+ AZURE_PUBLIC_CLOUD = "AZURE_PUBLIC_CLOUD",
5
+ /** Azure China cloud */
6
+ AZURE_CHINA_CLOUD = "AZURE_CHINA_CLOUD",
7
+ /** Azure US government cloud */
8
+ AZURE_US_GOVERNMENT = "AZURE_US_GOVERNMENT"
9
+ }
10
+ /** The supported values for cloud setting as a string literal type */
11
+ export type AzureSupportedClouds = `${AzureClouds}`;
12
+ export declare function getArmEndpoint(cloudSetting?: AzureSupportedClouds): string | undefined;
13
+ //# sourceMappingURL=cloudSettingHelpers.d.ts.map