@azure/arm-databox 5.1.0 → 6.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (479) hide show
  1. package/README.md +12 -10
  2. package/dist/browser/api/dataBoxManagementContext.d.ts +20 -0
  3. package/dist/browser/api/dataBoxManagementContext.js +25 -0
  4. package/dist/browser/api/dataBoxManagementContext.js.map +1 -0
  5. package/dist/browser/api/index.d.ts +5 -0
  6. package/dist/browser/api/index.js +5 -0
  7. package/dist/browser/api/index.js.map +1 -0
  8. package/dist/browser/api/jobs/index.d.ts +3 -0
  9. package/dist/browser/api/jobs/index.js +4 -0
  10. package/dist/browser/api/jobs/index.js.map +1 -0
  11. package/dist/browser/api/jobs/operations.d.ts +47 -0
  12. package/dist/browser/api/jobs/operations.js +309 -0
  13. package/dist/browser/api/jobs/operations.js.map +1 -0
  14. package/dist/browser/api/jobs/options.d.ts +46 -0
  15. package/dist/browser/api/jobs/options.js +4 -0
  16. package/dist/browser/api/jobs/options.js.map +1 -0
  17. package/dist/browser/api/operations/index.d.ts +3 -0
  18. package/dist/browser/api/operations/index.js +4 -0
  19. package/dist/browser/api/operations/index.js.map +1 -0
  20. package/dist/browser/api/operations/operations.d.ts +10 -0
  21. package/dist/browser/api/operations/operations.js +31 -0
  22. package/dist/browser/api/operations/operations.js.map +1 -0
  23. package/dist/browser/api/operations/options.d.ts +5 -0
  24. package/dist/browser/api/operations/options.js +4 -0
  25. package/dist/browser/api/operations/options.js.map +1 -0
  26. package/dist/browser/api/operations.d.ts +9 -0
  27. package/dist/browser/api/operations.js +35 -0
  28. package/dist/browser/api/operations.js.map +1 -0
  29. package/dist/browser/api/options.d.ts +5 -0
  30. package/dist/browser/api/options.js +4 -0
  31. package/dist/browser/api/options.js.map +1 -0
  32. package/dist/browser/api/service/index.d.ts +3 -0
  33. package/dist/browser/api/service/index.js +4 -0
  34. package/dist/browser/api/service/index.js.map +1 -0
  35. package/dist/browser/api/service/operations.d.ts +30 -0
  36. package/dist/browser/api/service/operations.js +183 -0
  37. package/dist/browser/api/service/operations.js.map +1 -0
  38. package/dist/browser/api/service/options.d.ts +20 -0
  39. package/dist/browser/api/service/options.js +4 -0
  40. package/dist/browser/api/service/options.js.map +1 -0
  41. package/dist/browser/classic/index.d.ts +4 -0
  42. package/dist/browser/classic/index.js +4 -0
  43. package/dist/browser/classic/index.js.map +1 -0
  44. package/dist/browser/classic/jobs/index.d.ts +43 -0
  45. package/dist/browser/classic/jobs/index.js +48 -0
  46. package/dist/browser/classic/jobs/index.js.map +1 -0
  47. package/dist/browser/classic/operations/index.d.ts +11 -0
  48. package/dist/browser/classic/operations/index.js +14 -0
  49. package/dist/browser/classic/operations/index.js.map +1 -0
  50. package/dist/browser/classic/service/index.d.ts +21 -0
  51. package/dist/browser/classic/service/index.js +19 -0
  52. package/dist/browser/classic/service/index.js.map +1 -0
  53. package/dist/browser/dataBoxManagementClient.d.ts +22 -28
  54. package/dist/browser/dataBoxManagementClient.js +39 -129
  55. package/dist/browser/dataBoxManagementClient.js.map +1 -1
  56. package/dist/browser/index.d.ts +16 -3
  57. package/dist/browser/index.js +7 -11
  58. package/dist/browser/index.js.map +1 -1
  59. package/dist/browser/logger.d.ts +2 -0
  60. package/dist/browser/logger.js +5 -0
  61. package/dist/browser/logger.js.map +1 -0
  62. package/dist/browser/models/index.d.ts +2 -2653
  63. package/dist/browser/models/index.js +3 -273
  64. package/dist/browser/models/index.js.map +1 -1
  65. package/dist/{react-native/models/index.d.ts → browser/models/models.d.ts} +1755 -2206
  66. package/dist/browser/models/models.js +2705 -0
  67. package/dist/browser/models/models.js.map +1 -0
  68. package/dist/browser/restorePollerHelpers.d.ts +21 -0
  69. package/dist/browser/restorePollerHelpers.js +96 -0
  70. package/dist/browser/restorePollerHelpers.js.map +1 -0
  71. package/dist/browser/static-helpers/cloudSettingHelpers.d.ts +22 -0
  72. package/dist/browser/static-helpers/cloudSettingHelpers.js +38 -0
  73. package/dist/browser/static-helpers/cloudSettingHelpers.js.map +1 -0
  74. package/dist/browser/static-helpers/pagingHelpers.d.ts +74 -0
  75. package/dist/browser/static-helpers/pagingHelpers.js +143 -0
  76. package/dist/browser/static-helpers/pagingHelpers.js.map +1 -0
  77. package/dist/browser/static-helpers/pollingHelpers.d.ts +34 -0
  78. package/dist/browser/static-helpers/pollingHelpers.js +95 -0
  79. package/dist/browser/static-helpers/pollingHelpers.js.map +1 -0
  80. package/dist/browser/static-helpers/serialization/check-prop-undefined.d.ts +8 -0
  81. package/dist/browser/static-helpers/serialization/check-prop-undefined.js +17 -0
  82. package/dist/browser/static-helpers/serialization/check-prop-undefined.js.map +1 -0
  83. package/dist/browser/static-helpers/simplePollerHelpers.d.ts +73 -0
  84. package/dist/browser/static-helpers/simplePollerHelpers.js +44 -0
  85. package/dist/browser/static-helpers/simplePollerHelpers.js.map +1 -0
  86. package/dist/browser/static-helpers/urlTemplate.d.ts +5 -0
  87. package/dist/browser/static-helpers/urlTemplate.js +200 -0
  88. package/dist/browser/static-helpers/urlTemplate.js.map +1 -0
  89. package/dist/commonjs/api/dataBoxManagementContext.d.ts +20 -0
  90. package/dist/commonjs/api/dataBoxManagementContext.js +47 -0
  91. package/dist/commonjs/api/dataBoxManagementContext.js.map +7 -0
  92. package/dist/commonjs/api/index.d.ts +5 -0
  93. package/dist/commonjs/api/index.js +31 -0
  94. package/dist/commonjs/api/index.js.map +7 -0
  95. package/dist/commonjs/api/jobs/index.d.ts +3 -0
  96. package/dist/commonjs/api/jobs/index.js +46 -0
  97. package/dist/commonjs/api/jobs/index.js.map +7 -0
  98. package/dist/commonjs/api/jobs/operations.d.ts +47 -0
  99. package/dist/commonjs/api/jobs/operations.js +457 -0
  100. package/dist/commonjs/api/jobs/operations.js.map +7 -0
  101. package/dist/commonjs/api/jobs/options.d.ts +46 -0
  102. package/dist/commonjs/api/jobs/options.js +16 -0
  103. package/dist/commonjs/api/jobs/options.js.map +7 -0
  104. package/dist/commonjs/api/operations/index.d.ts +3 -0
  105. package/dist/commonjs/api/operations/index.js +28 -0
  106. package/dist/commonjs/api/operations/index.js.map +7 -0
  107. package/dist/commonjs/api/operations/operations.d.ts +10 -0
  108. package/dist/commonjs/api/operations/operations.js +68 -0
  109. package/dist/commonjs/api/operations/operations.js.map +7 -0
  110. package/dist/commonjs/api/operations/options.d.ts +5 -0
  111. package/dist/commonjs/api/operations/options.js +16 -0
  112. package/dist/commonjs/api/operations/options.js.map +7 -0
  113. package/dist/commonjs/api/operations.d.ts +9 -0
  114. package/dist/commonjs/api/operations.js +72 -0
  115. package/dist/commonjs/api/operations.js.map +7 -0
  116. package/dist/commonjs/api/options.d.ts +5 -0
  117. package/dist/commonjs/api/options.js +16 -0
  118. package/dist/commonjs/api/options.js.map +7 -0
  119. package/dist/commonjs/api/service/index.d.ts +3 -0
  120. package/dist/commonjs/api/service/index.js +38 -0
  121. package/dist/commonjs/api/service/index.js.map +7 -0
  122. package/dist/commonjs/api/service/operations.d.ts +30 -0
  123. package/dist/commonjs/api/service/operations.js +288 -0
  124. package/dist/commonjs/api/service/operations.js.map +7 -0
  125. package/dist/commonjs/api/service/options.d.ts +20 -0
  126. package/dist/commonjs/api/service/options.js +16 -0
  127. package/dist/commonjs/api/service/options.js.map +7 -0
  128. package/dist/commonjs/classic/index.d.ts +4 -0
  129. package/dist/commonjs/classic/index.js +16 -0
  130. package/dist/commonjs/classic/index.js.map +7 -0
  131. package/dist/commonjs/classic/jobs/index.d.ts +43 -0
  132. package/dist/commonjs/classic/jobs/index.js +78 -0
  133. package/dist/commonjs/classic/jobs/index.js.map +7 -0
  134. package/dist/commonjs/classic/operations/index.d.ts +11 -0
  135. package/dist/commonjs/classic/operations/index.js +38 -0
  136. package/dist/commonjs/classic/operations/index.js.map +7 -0
  137. package/dist/commonjs/classic/service/index.d.ts +21 -0
  138. package/dist/commonjs/classic/service/index.js +61 -0
  139. package/dist/commonjs/classic/service/index.js.map +7 -0
  140. package/dist/commonjs/dataBoxManagementClient.d.ts +22 -28
  141. package/dist/commonjs/dataBoxManagementClient.js +64 -138
  142. package/dist/commonjs/dataBoxManagementClient.js.map +7 -1
  143. package/dist/commonjs/index.d.ts +16 -3
  144. package/dist/commonjs/index.js +56 -19
  145. package/dist/commonjs/index.js.map +7 -1
  146. package/dist/commonjs/logger.d.ts +2 -0
  147. package/dist/commonjs/logger.js +29 -0
  148. package/dist/commonjs/logger.js.map +7 -0
  149. package/dist/commonjs/models/index.d.ts +2 -2653
  150. package/dist/commonjs/models/index.js +42 -277
  151. package/dist/commonjs/models/index.js.map +7 -1
  152. package/dist/commonjs/models/models.d.ts +2203 -0
  153. package/dist/commonjs/models/models.js +2645 -0
  154. package/dist/commonjs/models/models.js.map +7 -0
  155. package/dist/commonjs/restorePollerHelpers.d.ts +21 -0
  156. package/dist/commonjs/restorePollerHelpers.js +109 -0
  157. package/dist/commonjs/restorePollerHelpers.js.map +7 -0
  158. package/dist/commonjs/static-helpers/cloudSettingHelpers.d.ts +22 -0
  159. package/dist/commonjs/static-helpers/cloudSettingHelpers.js +52 -0
  160. package/dist/commonjs/static-helpers/cloudSettingHelpers.js.map +7 -0
  161. package/dist/commonjs/static-helpers/pagingHelpers.d.ts +74 -0
  162. package/dist/commonjs/static-helpers/pagingHelpers.js +143 -0
  163. package/dist/commonjs/static-helpers/pagingHelpers.js.map +7 -0
  164. package/dist/commonjs/static-helpers/pollingHelpers.d.ts +34 -0
  165. package/dist/commonjs/static-helpers/pollingHelpers.js +101 -0
  166. package/dist/commonjs/static-helpers/pollingHelpers.js.map +7 -0
  167. package/dist/commonjs/static-helpers/serialization/check-prop-undefined.d.ts +8 -0
  168. package/dist/commonjs/static-helpers/serialization/check-prop-undefined.js +35 -0
  169. package/dist/commonjs/static-helpers/serialization/check-prop-undefined.js.map +7 -0
  170. package/dist/commonjs/static-helpers/simplePollerHelpers.d.ts +73 -0
  171. package/dist/commonjs/static-helpers/simplePollerHelpers.js +67 -0
  172. package/dist/commonjs/static-helpers/simplePollerHelpers.js.map +7 -0
  173. package/dist/commonjs/static-helpers/urlTemplate.d.ts +5 -0
  174. package/dist/commonjs/static-helpers/urlTemplate.js +197 -0
  175. package/dist/commonjs/static-helpers/urlTemplate.js.map +7 -0
  176. package/dist/commonjs/tsdoc-metadata.json +11 -11
  177. package/dist/esm/api/dataBoxManagementContext.d.ts +20 -0
  178. package/dist/esm/api/dataBoxManagementContext.js +25 -0
  179. package/dist/esm/api/dataBoxManagementContext.js.map +1 -0
  180. package/dist/esm/api/index.d.ts +5 -0
  181. package/dist/esm/api/index.js +5 -0
  182. package/dist/esm/api/index.js.map +1 -0
  183. package/dist/esm/api/jobs/index.d.ts +3 -0
  184. package/dist/esm/api/jobs/index.js +4 -0
  185. package/dist/esm/api/jobs/index.js.map +1 -0
  186. package/dist/esm/api/jobs/operations.d.ts +47 -0
  187. package/dist/esm/api/jobs/operations.js +309 -0
  188. package/dist/esm/api/jobs/operations.js.map +1 -0
  189. package/dist/esm/api/jobs/options.d.ts +46 -0
  190. package/dist/esm/api/jobs/options.js +4 -0
  191. package/dist/esm/api/jobs/options.js.map +1 -0
  192. package/dist/esm/api/operations/index.d.ts +3 -0
  193. package/dist/esm/api/operations/index.js +4 -0
  194. package/dist/esm/api/operations/index.js.map +1 -0
  195. package/dist/esm/api/operations/operations.d.ts +10 -0
  196. package/dist/esm/api/operations/operations.js +31 -0
  197. package/dist/esm/api/operations/operations.js.map +1 -0
  198. package/dist/esm/api/operations/options.d.ts +5 -0
  199. package/dist/esm/api/operations/options.js +4 -0
  200. package/dist/esm/api/operations/options.js.map +1 -0
  201. package/dist/esm/api/operations.d.ts +9 -0
  202. package/dist/esm/api/operations.js +35 -0
  203. package/dist/esm/api/operations.js.map +1 -0
  204. package/dist/esm/api/options.d.ts +5 -0
  205. package/dist/esm/api/options.js +4 -0
  206. package/dist/esm/api/options.js.map +1 -0
  207. package/dist/esm/api/service/index.d.ts +3 -0
  208. package/dist/esm/api/service/index.js +4 -0
  209. package/dist/esm/api/service/index.js.map +1 -0
  210. package/dist/esm/api/service/operations.d.ts +30 -0
  211. package/dist/esm/api/service/operations.js +183 -0
  212. package/dist/esm/api/service/operations.js.map +1 -0
  213. package/dist/esm/api/service/options.d.ts +20 -0
  214. package/dist/esm/api/service/options.js +4 -0
  215. package/dist/esm/api/service/options.js.map +1 -0
  216. package/dist/esm/classic/index.d.ts +4 -0
  217. package/dist/esm/classic/index.js +4 -0
  218. package/dist/esm/classic/index.js.map +1 -0
  219. package/dist/esm/classic/jobs/index.d.ts +43 -0
  220. package/dist/esm/classic/jobs/index.js +48 -0
  221. package/dist/esm/classic/jobs/index.js.map +1 -0
  222. package/dist/esm/classic/operations/index.d.ts +11 -0
  223. package/dist/esm/classic/operations/index.js +14 -0
  224. package/dist/esm/classic/operations/index.js.map +1 -0
  225. package/dist/esm/classic/service/index.d.ts +21 -0
  226. package/dist/esm/classic/service/index.js +19 -0
  227. package/dist/esm/classic/service/index.js.map +1 -0
  228. package/dist/esm/dataBoxManagementClient.d.ts +22 -28
  229. package/dist/esm/dataBoxManagementClient.js +39 -129
  230. package/dist/esm/dataBoxManagementClient.js.map +1 -1
  231. package/dist/esm/index.d.ts +16 -3
  232. package/dist/esm/index.js +7 -11
  233. package/dist/esm/index.js.map +1 -1
  234. package/dist/esm/logger.d.ts +2 -0
  235. package/dist/esm/logger.js +5 -0
  236. package/dist/esm/logger.js.map +1 -0
  237. package/dist/esm/models/index.d.ts +2 -2653
  238. package/dist/esm/models/index.js +3 -273
  239. package/dist/esm/models/index.js.map +1 -1
  240. package/dist/esm/models/models.d.ts +2203 -0
  241. package/dist/esm/models/models.js +2705 -0
  242. package/dist/esm/models/models.js.map +1 -0
  243. package/dist/esm/restorePollerHelpers.d.ts +21 -0
  244. package/dist/esm/restorePollerHelpers.js +96 -0
  245. package/dist/esm/restorePollerHelpers.js.map +1 -0
  246. package/dist/esm/static-helpers/cloudSettingHelpers.d.ts +22 -0
  247. package/dist/esm/static-helpers/cloudSettingHelpers.js +38 -0
  248. package/dist/esm/static-helpers/cloudSettingHelpers.js.map +1 -0
  249. package/dist/esm/static-helpers/pagingHelpers.d.ts +74 -0
  250. package/dist/esm/static-helpers/pagingHelpers.js +143 -0
  251. package/dist/esm/static-helpers/pagingHelpers.js.map +1 -0
  252. package/dist/esm/static-helpers/pollingHelpers.d.ts +34 -0
  253. package/dist/esm/static-helpers/pollingHelpers.js +95 -0
  254. package/dist/esm/static-helpers/pollingHelpers.js.map +1 -0
  255. package/dist/esm/static-helpers/serialization/check-prop-undefined.d.ts +8 -0
  256. package/dist/esm/static-helpers/serialization/check-prop-undefined.js +17 -0
  257. package/dist/esm/static-helpers/serialization/check-prop-undefined.js.map +1 -0
  258. package/dist/esm/static-helpers/simplePollerHelpers.d.ts +73 -0
  259. package/dist/esm/static-helpers/simplePollerHelpers.js +44 -0
  260. package/dist/esm/static-helpers/simplePollerHelpers.js.map +1 -0
  261. package/dist/esm/static-helpers/urlTemplate.d.ts +5 -0
  262. package/dist/esm/static-helpers/urlTemplate.js +200 -0
  263. package/dist/esm/static-helpers/urlTemplate.js.map +1 -0
  264. package/package.json +165 -108
  265. package/CHANGELOG.md +0 -50
  266. package/dist/browser/dataBoxManagementClient.d.ts.map +0 -1
  267. package/dist/browser/index.d.ts.map +0 -1
  268. package/dist/browser/lroImpl.d.ts +0 -11
  269. package/dist/browser/lroImpl.d.ts.map +0 -1
  270. package/dist/browser/lroImpl.js +0 -21
  271. package/dist/browser/lroImpl.js.map +0 -1
  272. package/dist/browser/models/index.d.ts.map +0 -1
  273. package/dist/browser/models/mappers.d.ts +0 -178
  274. package/dist/browser/models/mappers.d.ts.map +0 -1
  275. package/dist/browser/models/mappers.js +0 -4764
  276. package/dist/browser/models/mappers.js.map +0 -1
  277. package/dist/browser/models/parameters.d.ts +0 -24
  278. package/dist/browser/models/parameters.d.ts.map +0 -1
  279. package/dist/browser/models/parameters.js +0 -176
  280. package/dist/browser/models/parameters.js.map +0 -1
  281. package/dist/browser/operations/index.d.ts +0 -4
  282. package/dist/browser/operations/index.d.ts.map +0 -1
  283. package/dist/browser/operations/index.js +0 -11
  284. package/dist/browser/operations/index.js.map +0 -1
  285. package/dist/browser/operations/jobs.d.ts +0 -161
  286. package/dist/browser/operations/jobs.d.ts.map +0 -1
  287. package/dist/browser/operations/jobs.js +0 -724
  288. package/dist/browser/operations/jobs.js.map +0 -1
  289. package/dist/browser/operations/operations.d.ts +0 -32
  290. package/dist/browser/operations/operations.d.ts.map +0 -1
  291. package/dist/browser/operations/operations.js +0 -133
  292. package/dist/browser/operations/operations.js.map +0 -1
  293. package/dist/browser/operations/service.d.ts +0 -83
  294. package/dist/browser/operations/service.d.ts.map +0 -1
  295. package/dist/browser/operations/service.js +0 -320
  296. package/dist/browser/operations/service.js.map +0 -1
  297. package/dist/browser/operationsInterfaces/index.d.ts +0 -4
  298. package/dist/browser/operationsInterfaces/index.d.ts.map +0 -1
  299. package/dist/browser/operationsInterfaces/index.js +0 -11
  300. package/dist/browser/operationsInterfaces/index.js.map +0 -1
  301. package/dist/browser/operationsInterfaces/jobs.d.ts +0 -115
  302. package/dist/browser/operationsInterfaces/jobs.d.ts.map +0 -1
  303. package/dist/browser/operationsInterfaces/jobs.js +0 -9
  304. package/dist/browser/operationsInterfaces/jobs.js.map +0 -1
  305. package/dist/browser/operationsInterfaces/operations.d.ts +0 -11
  306. package/dist/browser/operationsInterfaces/operations.d.ts.map +0 -1
  307. package/dist/browser/operationsInterfaces/operations.js +0 -9
  308. package/dist/browser/operationsInterfaces/operations.js.map +0 -1
  309. package/dist/browser/operationsInterfaces/service.d.ts +0 -54
  310. package/dist/browser/operationsInterfaces/service.d.ts.map +0 -1
  311. package/dist/browser/operationsInterfaces/service.js +0 -9
  312. package/dist/browser/operationsInterfaces/service.js.map +0 -1
  313. package/dist/browser/pagingHelper.d.ts +0 -13
  314. package/dist/browser/pagingHelper.d.ts.map +0 -1
  315. package/dist/browser/pagingHelper.js +0 -32
  316. package/dist/browser/pagingHelper.js.map +0 -1
  317. package/dist/commonjs/dataBoxManagementClient.d.ts.map +0 -1
  318. package/dist/commonjs/index.d.ts.map +0 -1
  319. package/dist/commonjs/lroImpl.d.ts +0 -11
  320. package/dist/commonjs/lroImpl.d.ts.map +0 -1
  321. package/dist/commonjs/lroImpl.js +0 -24
  322. package/dist/commonjs/lroImpl.js.map +0 -1
  323. package/dist/commonjs/models/index.d.ts.map +0 -1
  324. package/dist/commonjs/models/mappers.d.ts +0 -178
  325. package/dist/commonjs/models/mappers.d.ts.map +0 -1
  326. package/dist/commonjs/models/mappers.js +0 -4769
  327. package/dist/commonjs/models/mappers.js.map +0 -1
  328. package/dist/commonjs/models/parameters.d.ts +0 -24
  329. package/dist/commonjs/models/parameters.d.ts.map +0 -1
  330. package/dist/commonjs/models/parameters.js +0 -179
  331. package/dist/commonjs/models/parameters.js.map +0 -1
  332. package/dist/commonjs/operations/index.d.ts +0 -4
  333. package/dist/commonjs/operations/index.d.ts.map +0 -1
  334. package/dist/commonjs/operations/index.js +0 -14
  335. package/dist/commonjs/operations/index.js.map +0 -1
  336. package/dist/commonjs/operations/jobs.d.ts +0 -161
  337. package/dist/commonjs/operations/jobs.d.ts.map +0 -1
  338. package/dist/commonjs/operations/jobs.js +0 -728
  339. package/dist/commonjs/operations/jobs.js.map +0 -1
  340. package/dist/commonjs/operations/operations.d.ts +0 -32
  341. package/dist/commonjs/operations/operations.d.ts.map +0 -1
  342. package/dist/commonjs/operations/operations.js +0 -137
  343. package/dist/commonjs/operations/operations.js.map +0 -1
  344. package/dist/commonjs/operations/service.d.ts +0 -83
  345. package/dist/commonjs/operations/service.d.ts.map +0 -1
  346. package/dist/commonjs/operations/service.js +0 -324
  347. package/dist/commonjs/operations/service.js.map +0 -1
  348. package/dist/commonjs/operationsInterfaces/index.d.ts +0 -4
  349. package/dist/commonjs/operationsInterfaces/index.d.ts.map +0 -1
  350. package/dist/commonjs/operationsInterfaces/index.js +0 -14
  351. package/dist/commonjs/operationsInterfaces/index.js.map +0 -1
  352. package/dist/commonjs/operationsInterfaces/jobs.d.ts +0 -115
  353. package/dist/commonjs/operationsInterfaces/jobs.d.ts.map +0 -1
  354. package/dist/commonjs/operationsInterfaces/jobs.js +0 -10
  355. package/dist/commonjs/operationsInterfaces/jobs.js.map +0 -1
  356. package/dist/commonjs/operationsInterfaces/operations.d.ts +0 -11
  357. package/dist/commonjs/operationsInterfaces/operations.d.ts.map +0 -1
  358. package/dist/commonjs/operationsInterfaces/operations.js +0 -10
  359. package/dist/commonjs/operationsInterfaces/operations.js.map +0 -1
  360. package/dist/commonjs/operationsInterfaces/service.d.ts +0 -54
  361. package/dist/commonjs/operationsInterfaces/service.d.ts.map +0 -1
  362. package/dist/commonjs/operationsInterfaces/service.js +0 -10
  363. package/dist/commonjs/operationsInterfaces/service.js.map +0 -1
  364. package/dist/commonjs/pagingHelper.d.ts +0 -13
  365. package/dist/commonjs/pagingHelper.d.ts.map +0 -1
  366. package/dist/commonjs/pagingHelper.js +0 -36
  367. package/dist/commonjs/pagingHelper.js.map +0 -1
  368. package/dist/esm/dataBoxManagementClient.d.ts.map +0 -1
  369. package/dist/esm/index.d.ts.map +0 -1
  370. package/dist/esm/lroImpl.d.ts +0 -11
  371. package/dist/esm/lroImpl.d.ts.map +0 -1
  372. package/dist/esm/lroImpl.js +0 -21
  373. package/dist/esm/lroImpl.js.map +0 -1
  374. package/dist/esm/models/index.d.ts.map +0 -1
  375. package/dist/esm/models/mappers.d.ts +0 -178
  376. package/dist/esm/models/mappers.d.ts.map +0 -1
  377. package/dist/esm/models/mappers.js +0 -4764
  378. package/dist/esm/models/mappers.js.map +0 -1
  379. package/dist/esm/models/parameters.d.ts +0 -24
  380. package/dist/esm/models/parameters.d.ts.map +0 -1
  381. package/dist/esm/models/parameters.js +0 -176
  382. package/dist/esm/models/parameters.js.map +0 -1
  383. package/dist/esm/operations/index.d.ts +0 -4
  384. package/dist/esm/operations/index.d.ts.map +0 -1
  385. package/dist/esm/operations/index.js +0 -11
  386. package/dist/esm/operations/index.js.map +0 -1
  387. package/dist/esm/operations/jobs.d.ts +0 -161
  388. package/dist/esm/operations/jobs.d.ts.map +0 -1
  389. package/dist/esm/operations/jobs.js +0 -724
  390. package/dist/esm/operations/jobs.js.map +0 -1
  391. package/dist/esm/operations/operations.d.ts +0 -32
  392. package/dist/esm/operations/operations.d.ts.map +0 -1
  393. package/dist/esm/operations/operations.js +0 -133
  394. package/dist/esm/operations/operations.js.map +0 -1
  395. package/dist/esm/operations/service.d.ts +0 -83
  396. package/dist/esm/operations/service.d.ts.map +0 -1
  397. package/dist/esm/operations/service.js +0 -320
  398. package/dist/esm/operations/service.js.map +0 -1
  399. package/dist/esm/operationsInterfaces/index.d.ts +0 -4
  400. package/dist/esm/operationsInterfaces/index.d.ts.map +0 -1
  401. package/dist/esm/operationsInterfaces/index.js +0 -11
  402. package/dist/esm/operationsInterfaces/index.js.map +0 -1
  403. package/dist/esm/operationsInterfaces/jobs.d.ts +0 -115
  404. package/dist/esm/operationsInterfaces/jobs.d.ts.map +0 -1
  405. package/dist/esm/operationsInterfaces/jobs.js +0 -9
  406. package/dist/esm/operationsInterfaces/jobs.js.map +0 -1
  407. package/dist/esm/operationsInterfaces/operations.d.ts +0 -11
  408. package/dist/esm/operationsInterfaces/operations.d.ts.map +0 -1
  409. package/dist/esm/operationsInterfaces/operations.js +0 -9
  410. package/dist/esm/operationsInterfaces/operations.js.map +0 -1
  411. package/dist/esm/operationsInterfaces/service.d.ts +0 -54
  412. package/dist/esm/operationsInterfaces/service.d.ts.map +0 -1
  413. package/dist/esm/operationsInterfaces/service.js +0 -9
  414. package/dist/esm/operationsInterfaces/service.js.map +0 -1
  415. package/dist/esm/pagingHelper.d.ts +0 -13
  416. package/dist/esm/pagingHelper.d.ts.map +0 -1
  417. package/dist/esm/pagingHelper.js +0 -32
  418. package/dist/esm/pagingHelper.js.map +0 -1
  419. package/dist/react-native/dataBoxManagementClient.d.ts +0 -31
  420. package/dist/react-native/dataBoxManagementClient.d.ts.map +0 -1
  421. package/dist/react-native/dataBoxManagementClient.js +0 -135
  422. package/dist/react-native/dataBoxManagementClient.js.map +0 -1
  423. package/dist/react-native/index.d.ts +0 -5
  424. package/dist/react-native/index.d.ts.map +0 -1
  425. package/dist/react-native/index.js +0 -13
  426. package/dist/react-native/index.js.map +0 -1
  427. package/dist/react-native/lroImpl.d.ts +0 -11
  428. package/dist/react-native/lroImpl.d.ts.map +0 -1
  429. package/dist/react-native/lroImpl.js +0 -21
  430. package/dist/react-native/lroImpl.js.map +0 -1
  431. package/dist/react-native/models/index.d.ts.map +0 -1
  432. package/dist/react-native/models/index.js +0 -274
  433. package/dist/react-native/models/index.js.map +0 -1
  434. package/dist/react-native/models/mappers.d.ts +0 -178
  435. package/dist/react-native/models/mappers.d.ts.map +0 -1
  436. package/dist/react-native/models/mappers.js +0 -4764
  437. package/dist/react-native/models/mappers.js.map +0 -1
  438. package/dist/react-native/models/parameters.d.ts +0 -24
  439. package/dist/react-native/models/parameters.d.ts.map +0 -1
  440. package/dist/react-native/models/parameters.js +0 -176
  441. package/dist/react-native/models/parameters.js.map +0 -1
  442. package/dist/react-native/operations/index.d.ts +0 -4
  443. package/dist/react-native/operations/index.d.ts.map +0 -1
  444. package/dist/react-native/operations/index.js +0 -11
  445. package/dist/react-native/operations/index.js.map +0 -1
  446. package/dist/react-native/operations/jobs.d.ts +0 -161
  447. package/dist/react-native/operations/jobs.d.ts.map +0 -1
  448. package/dist/react-native/operations/jobs.js +0 -724
  449. package/dist/react-native/operations/jobs.js.map +0 -1
  450. package/dist/react-native/operations/operations.d.ts +0 -32
  451. package/dist/react-native/operations/operations.d.ts.map +0 -1
  452. package/dist/react-native/operations/operations.js +0 -133
  453. package/dist/react-native/operations/operations.js.map +0 -1
  454. package/dist/react-native/operations/service.d.ts +0 -83
  455. package/dist/react-native/operations/service.d.ts.map +0 -1
  456. package/dist/react-native/operations/service.js +0 -320
  457. package/dist/react-native/operations/service.js.map +0 -1
  458. package/dist/react-native/operationsInterfaces/index.d.ts +0 -4
  459. package/dist/react-native/operationsInterfaces/index.d.ts.map +0 -1
  460. package/dist/react-native/operationsInterfaces/index.js +0 -11
  461. package/dist/react-native/operationsInterfaces/index.js.map +0 -1
  462. package/dist/react-native/operationsInterfaces/jobs.d.ts +0 -115
  463. package/dist/react-native/operationsInterfaces/jobs.d.ts.map +0 -1
  464. package/dist/react-native/operationsInterfaces/jobs.js +0 -9
  465. package/dist/react-native/operationsInterfaces/jobs.js.map +0 -1
  466. package/dist/react-native/operationsInterfaces/operations.d.ts +0 -11
  467. package/dist/react-native/operationsInterfaces/operations.d.ts.map +0 -1
  468. package/dist/react-native/operationsInterfaces/operations.js +0 -9
  469. package/dist/react-native/operationsInterfaces/operations.js.map +0 -1
  470. package/dist/react-native/operationsInterfaces/service.d.ts +0 -54
  471. package/dist/react-native/operationsInterfaces/service.d.ts.map +0 -1
  472. package/dist/react-native/operationsInterfaces/service.js +0 -9
  473. package/dist/react-native/operationsInterfaces/service.js.map +0 -1
  474. package/dist/react-native/package.json +0 -3
  475. package/dist/react-native/pagingHelper.d.ts +0 -13
  476. package/dist/react-native/pagingHelper.d.ts.map +0 -1
  477. package/dist/react-native/pagingHelper.js +0 -32
  478. package/dist/react-native/pagingHelper.js.map +0 -1
  479. package/review/arm-databox.api.md +0 -1514
@@ -0,0 +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\nimport { areAllPropsUndefined } from \"../static-helpers/serialization/check-prop-undefined.js\";\n\n/**\n * This file contains only generated model types and their (de)serializers.\n * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input.\n */\n/* eslint-disable @typescript-eslint/naming-convention */\n/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n/** The Mitigate Job captured from request body for Mitigate API */\nexport interface MitigateJobRequest {\n /** Resolution code for the job */\n customerResolutionCode?: CustomerResolutionCode;\n /** Serial number and the customer resolution code corresponding to each serial number */\n serialNumberCustomerResolutionMap?: Record<string, CustomerResolutionCode>;\n}\n\nexport function mitigateJobRequestSerializer(item: MitigateJobRequest): any {\n return {\n customerResolutionCode: item[\"customerResolutionCode\"],\n serialNumberCustomerResolutionMap: item[\"serialNumberCustomerResolutionMap\"],\n };\n}\n\n/** Resolution code provided by customer. */\nexport type CustomerResolutionCode =\n | \"None\"\n | \"MoveToCleanUpDevice\"\n | \"Resume\"\n | \"Restart\"\n | \"ReachOutToOperation\";\n\n/** model interface ApiError */\nexport interface ApiError {\n /** The error detail. */\n error: ErrorDetail;\n}\n\nexport function apiErrorDeserializer(item: any): ApiError {\n return {\n error: errorDetailDeserializer(item[\"error\"]),\n };\n}\n\n/** model interface ErrorDetail */\nexport interface ErrorDetail {\n /** Error code. */\n code: string;\n /** Error message. */\n message: string;\n /** Error target. */\n details?: Details[];\n /** Additional error info. */\n target?: string;\n}\n\nexport function errorDetailDeserializer(item: any): ErrorDetail {\n return {\n code: item[\"code\"],\n message: item[\"message\"],\n details: !item[\"details\"] ? item[\"details\"] : detailsArrayDeserializer(item[\"details\"]),\n target: item[\"target\"],\n };\n}\n\nexport function detailsArrayDeserializer(result: Array<Details>): any[] {\n return result.map((item) => {\n return detailsDeserializer(item);\n });\n}\n\n/** model interface Details */\nexport interface Details {\n /** Error code. */\n code: string;\n /** Error message. */\n message: string;\n}\n\nexport function detailsDeserializer(item: any): Details {\n return {\n code: item[\"code\"],\n message: item[\"message\"],\n };\n}\n\n/** The paginated list of connected cluster API operations. */\nexport interface _OperationList {\n /** The list of connected cluster API operations. */\n readonly value?: Operation[];\n /** The link to fetch the next page of connected cluster API operations. */\n nextLink?: string;\n}\n\nexport function _operationListDeserializer(item: any): _OperationList {\n return {\n value: !item[\"value\"] ? item[\"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/** Operation entity. */\nexport interface Operation {\n /** Name of the operation. Format: {resourceProviderNamespace}/{resourceType}/{read|write|delete|action} */\n readonly name?: string;\n /** Operation display values. */\n readonly display?: OperationDisplay;\n /** Operation properties. */\n readonly properties?: Record<string, any>;\n /** Origin of the operation. Can be : user|system|user,system */\n readonly origin?: string;\n /** Indicates whether the operation is a data action */\n isDataAction?: boolean;\n}\n\nexport function operationDeserializer(item: any): Operation {\n return {\n name: item[\"name\"],\n display: !item[\"display\"] ? item[\"display\"] : operationDisplayDeserializer(item[\"display\"]),\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : Object.fromEntries(\n Object.entries(item[\"properties\"]).map(([k, p]: [string, any]) => [k, p]),\n ),\n origin: item[\"origin\"],\n isDataAction: item[\"isDataAction\"],\n };\n}\n\n/** Operation display */\nexport interface OperationDisplay {\n /** Provider name. */\n provider?: string;\n /** Resource name. */\n resource?: string;\n /** Localized name of the operation for display purpose. */\n operation?: string;\n /** Localized description of the operation for display purpose. */\n 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/** Job Resource. */\nexport interface JobResource extends TrackedResource {\n /** The sku type. */\n sku: Sku;\n /** Msi identity of the resource */\n identity?: ResourceIdentity;\n /** Type of the data transfer. */\n transferType: TransferType;\n /** Describes whether the job is cancellable or not. */\n readonly isCancellable?: boolean;\n /** Describes whether the job is deletable or not. */\n readonly isDeletable?: boolean;\n /** Describes whether the shipping address is editable or not. */\n readonly isShippingAddressEditable?: boolean;\n /** The Editable status for Reverse Shipping Address and Contact Info */\n readonly reverseShippingDetailsUpdate?: ReverseShippingDetailsEditStatus;\n /** The Editable status for Reverse Transport preferences */\n readonly reverseTransportPreferenceUpdate?: ReverseTransportPreferenceEditStatus;\n /** Is Prepare To Ship Enabled on this job */\n readonly isPrepareToShipEnabled?: boolean;\n /** Name of the stage which is in progress. */\n readonly status?: StageName;\n /** Name of the stage where delay might be present. */\n readonly delayedStage?: StageName;\n /** Time at which the job was started in UTC ISO 8601 format. */\n readonly startTime?: Date;\n /** Top level error for the job. */\n readonly error?: CloudError;\n /** Details of a job run. This field will only be sent for expand details filter. */\n details?: JobDetailsUnion;\n /** Reason for cancellation. */\n readonly cancellationReason?: string;\n /** Delivery type of Job. */\n deliveryType?: JobDeliveryType;\n /** Delivery Info of Job. */\n deliveryInfo?: JobDeliveryInfo;\n /** Flag to indicate cancellation of scheduled job. */\n readonly isCancellableWithoutFee?: boolean;\n /** Flag to indicate if all devices associated with the job are lost. */\n readonly allDevicesLost?: boolean;\n}\n\nexport function jobResourceSerializer(item: JobResource): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: _jobResourcePropertiesSerializer(item),\n sku: skuSerializer(item[\"sku\"]),\n identity: !item[\"identity\"] ? item[\"identity\"] : resourceIdentitySerializer(item[\"identity\"]),\n };\n}\n\nexport function jobResourceDeserializer(item: any): JobResource {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n ..._jobResourcePropertiesDeserializer(item[\"properties\"]),\n sku: skuDeserializer(item[\"sku\"]),\n identity: !item[\"identity\"] ? item[\"identity\"] : resourceIdentityDeserializer(item[\"identity\"]),\n };\n}\n\n/** Job Properties */\nexport interface JobProperties {\n /** Type of the data transfer. */\n transferType: TransferType;\n /** Describes whether the job is cancellable or not. */\n readonly isCancellable?: boolean;\n /** Describes whether the job is deletable or not. */\n readonly isDeletable?: boolean;\n /** Describes whether the shipping address is editable or not. */\n readonly isShippingAddressEditable?: boolean;\n /** The Editable status for Reverse Shipping Address and Contact Info */\n readonly reverseShippingDetailsUpdate?: ReverseShippingDetailsEditStatus;\n /** The Editable status for Reverse Transport preferences */\n readonly reverseTransportPreferenceUpdate?: ReverseTransportPreferenceEditStatus;\n /** Is Prepare To Ship Enabled on this job */\n readonly isPrepareToShipEnabled?: boolean;\n /** Name of the stage which is in progress. */\n readonly status?: StageName;\n /** Name of the stage where delay might be present. */\n readonly delayedStage?: StageName;\n /** Time at which the job was started in UTC ISO 8601 format. */\n readonly startTime?: Date;\n /** Top level error for the job. */\n readonly error?: CloudError;\n /** Details of a job run. This field will only be sent for expand details filter. */\n details?: JobDetailsUnion;\n /** Reason for cancellation. */\n readonly cancellationReason?: string;\n /** Delivery type of Job. */\n deliveryType?: JobDeliveryType;\n /** Delivery Info of Job. */\n deliveryInfo?: JobDeliveryInfo;\n /** Flag to indicate cancellation of scheduled job. */\n readonly isCancellableWithoutFee?: boolean;\n /** Flag to indicate if all devices associated with the job are lost. */\n readonly allDevicesLost?: boolean;\n}\n\nexport function jobPropertiesSerializer(item: JobProperties): any {\n return {\n transferType: item[\"transferType\"],\n details: !item[\"details\"] ? item[\"details\"] : jobDetailsUnionSerializer(item[\"details\"]),\n deliveryType: item[\"deliveryType\"],\n deliveryInfo: !item[\"deliveryInfo\"]\n ? item[\"deliveryInfo\"]\n : jobDeliveryInfoSerializer(item[\"deliveryInfo\"]),\n };\n}\n\nexport function jobPropertiesDeserializer(item: any): JobProperties {\n return {\n transferType: item[\"transferType\"],\n isCancellable: item[\"isCancellable\"],\n isDeletable: item[\"isDeletable\"],\n isShippingAddressEditable: item[\"isShippingAddressEditable\"],\n reverseShippingDetailsUpdate: item[\"reverseShippingDetailsUpdate\"],\n reverseTransportPreferenceUpdate: item[\"reverseTransportPreferenceUpdate\"],\n isPrepareToShipEnabled: item[\"isPrepareToShipEnabled\"],\n status: item[\"status\"],\n delayedStage: item[\"delayedStage\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n error: !item[\"error\"] ? item[\"error\"] : cloudErrorDeserializer(item[\"error\"]),\n details: !item[\"details\"] ? item[\"details\"] : jobDetailsUnionDeserializer(item[\"details\"]),\n cancellationReason: item[\"cancellationReason\"],\n deliveryType: item[\"deliveryType\"],\n deliveryInfo: !item[\"deliveryInfo\"]\n ? item[\"deliveryInfo\"]\n : jobDeliveryInfoDeserializer(item[\"deliveryInfo\"]),\n isCancellableWithoutFee: item[\"isCancellableWithoutFee\"],\n allDevicesLost: item[\"allDevicesLost\"],\n };\n}\n\n/** Type of the transfer. */\nexport type TransferType = \"ImportToAzure\" | \"ExportFromAzure\";\n/** The Editable status for Reverse Shipping Address and Contact Info */\nexport type ReverseShippingDetailsEditStatus = \"Enabled\" | \"Disabled\" | \"NotSupported\";\n/** The Editable status for Reverse Transport preferences */\nexport type ReverseTransportPreferenceEditStatus = \"Enabled\" | \"Disabled\" | \"NotSupported\";\n\n/** Name of the stage which is in progress. */\nexport enum KnownStageName {\n /** An order has been created. */\n DeviceOrdered = \"DeviceOrdered\",\n /** A device has been prepared for the order. */\n DevicePrepared = \"DevicePrepared\",\n /** Device has been dispatched to the user of the order. */\n Dispatched = \"Dispatched\",\n /** Device has been delivered to the user of the order. */\n Delivered = \"Delivered\",\n /** Device has been picked up from user and in transit to Azure datacenter. */\n PickedUp = \"PickedUp\",\n /** Device has been received at Azure datacenter from the user. */\n AtAzureDC = \"AtAzureDC\",\n /** Data copy from the device at Azure datacenter. */\n DataCopy = \"DataCopy\",\n /** Order has completed. */\n Completed = \"Completed\",\n /** Order has completed with errors. */\n CompletedWithErrors = \"CompletedWithErrors\",\n /** Order has been cancelled. */\n Cancelled = \"Cancelled\",\n /** Order has failed due to issue reported by user. */\n FailedIssueReportedAtCustomer = \"Failed_IssueReportedAtCustomer\",\n /** Order has failed due to issue detected at Azure datacenter. */\n FailedIssueDetectedAtAzureDC = \"Failed_IssueDetectedAtAzureDC\",\n /** Order has been aborted. */\n Aborted = \"Aborted\",\n /** Order has completed with warnings. */\n CompletedWithWarnings = \"CompletedWithWarnings\",\n /** Device is ready to be handed to customer from Azure DC. */\n ReadyToDispatchFromAzureDC = \"ReadyToDispatchFromAzureDC\",\n /** Device can be dropped off at Azure DC. */\n ReadyToReceiveAtAzureDC = \"ReadyToReceiveAtAzureDC\",\n /** Job created by the customer. */\n Created = \"Created\",\n /** User shipped the device to AzureDC. */\n ShippedToAzureDC = \"ShippedToAzureDC\",\n /** Awaiting shipment details of device from customer. */\n AwaitingShipmentDetails = \"AwaitingShipmentDetails\",\n /** Preparing the device to ship to customer. */\n PreparingToShipFromAzureDC = \"PreparingToShipFromAzureDC\",\n /** Shipped the device to customer. */\n ShippedToCustomer = \"ShippedToCustomer\",\n}\n\n/**\n * Name of the stage which is in progress. \\\n * {@link KnownStageName} can be used interchangeably with StageName,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **DeviceOrdered**: An order has been created. \\\n * **DevicePrepared**: A device has been prepared for the order. \\\n * **Dispatched**: Device has been dispatched to the user of the order. \\\n * **Delivered**: Device has been delivered to the user of the order. \\\n * **PickedUp**: Device has been picked up from user and in transit to Azure datacenter. \\\n * **AtAzureDC**: Device has been received at Azure datacenter from the user. \\\n * **DataCopy**: Data copy from the device at Azure datacenter. \\\n * **Completed**: Order has completed. \\\n * **CompletedWithErrors**: Order has completed with errors. \\\n * **Cancelled**: Order has been cancelled. \\\n * **Failed_IssueReportedAtCustomer**: Order has failed due to issue reported by user. \\\n * **Failed_IssueDetectedAtAzureDC**: Order has failed due to issue detected at Azure datacenter. \\\n * **Aborted**: Order has been aborted. \\\n * **CompletedWithWarnings**: Order has completed with warnings. \\\n * **ReadyToDispatchFromAzureDC**: Device is ready to be handed to customer from Azure DC. \\\n * **ReadyToReceiveAtAzureDC**: Device can be dropped off at Azure DC. \\\n * **Created**: Job created by the customer. \\\n * **ShippedToAzureDC**: User shipped the device to AzureDC. \\\n * **AwaitingShipmentDetails**: Awaiting shipment details of device from customer. \\\n * **PreparingToShipFromAzureDC**: Preparing the device to ship to customer. \\\n * **ShippedToCustomer**: Shipped the device to customer.\n */\nexport type StageName = string;\n\n/** Provides additional information about an http error response. */\nexport interface CloudError {\n /** Gets or sets additional error info. */\n readonly additionalInfo?: AdditionalErrorInfo[];\n /** Error code. */\n code?: string;\n /** Gets or sets details for the error. */\n readonly details?: CloudError[];\n /** The error message parsed from the body of the http error response. */\n message?: string;\n /** Gets or sets the target of the error. */\n target?: string;\n}\n\nexport function cloudErrorDeserializer(item: any): CloudError {\n return {\n additionalInfo: !item[\"additionalInfo\"]\n ? item[\"additionalInfo\"]\n : additionalErrorInfoArrayDeserializer(item[\"additionalInfo\"]),\n code: item[\"code\"],\n details: !item[\"details\"] ? item[\"details\"] : cloudErrorArrayDeserializer(item[\"details\"]),\n message: item[\"message\"],\n target: item[\"target\"],\n };\n}\n\nexport function additionalErrorInfoArrayDeserializer(result: Array<AdditionalErrorInfo>): any[] {\n return result.map((item) => {\n return additionalErrorInfoDeserializer(item);\n });\n}\n\n/** This class represents additional info which Resource Providers pass when an error occurs. */\nexport interface AdditionalErrorInfo {\n /** Additional information of the type of error. */\n info?: Record<string, any>;\n /** Type of error (e.g. CustomerIntervention, PolicyViolation, SecurityViolation). */\n type?: string;\n}\n\nexport function additionalErrorInfoDeserializer(item: any): AdditionalErrorInfo {\n return {\n info: !item[\"info\"]\n ? item[\"info\"]\n : Object.fromEntries(Object.entries(item[\"info\"]).map(([k, p]: [string, any]) => [k, p])),\n type: item[\"type\"],\n };\n}\n\nexport function cloudErrorArrayDeserializer(result: Array<CloudError>): any[] {\n return result.map((item) => {\n return cloudErrorDeserializer(item);\n });\n}\n\n/** Job details. */\nexport interface JobDetails {\n /** List of stages that run in the job. */\n readonly jobStages?: JobStages[];\n /** Contact details for notification and shipping. */\n contactDetails: ContactDetails;\n /** Shipping address of the customer. */\n shippingAddress?: ShippingAddress;\n /** Delivery package shipping details. */\n readonly deliveryPackage?: PackageShippingDetails;\n /** Return package shipping details. */\n readonly returnPackage?: PackageShippingDetails;\n /** Details of the data to be imported into azure. */\n dataImportDetails?: DataImportDetails[];\n /** Details of the data to be exported from azure. */\n dataExportDetails?: DataExportDetails[];\n /** Indicates the type of job details. */\n /** The discriminator possible values: DataBoxCustomerDisk, DataBoxDisk, DataBoxHeavy, DataBox */\n jobDetailsType: ClassDiscriminator;\n /** Preferences for the order. */\n preferences?: Preferences;\n /** Optional Reverse Shipping details for order. */\n reverseShippingDetails?: ReverseShippingDetails;\n /** List of copy log details. */\n readonly copyLogDetails?: CopyLogDetailsUnion[];\n /** Shared access key to download the return shipment label */\n readonly reverseShipmentLabelSasKey?: string;\n /** Shared access key to download the chain of custody logs */\n readonly chainOfCustodySasKey?: string;\n /** Holds device data erasure details */\n readonly deviceErasureDetails?: DeviceErasureDetails;\n /** Details about which key encryption type is being used. */\n keyEncryptionKey?: KeyEncryptionKey;\n /** The expected size of the data, which needs to be transferred in this job, in terabytes. */\n expectedDataSizeInTeraBytes?: number;\n /** Available actions on the job. */\n readonly actions?: CustomerResolutionCode[];\n /** Last mitigation action performed on the job. */\n readonly lastMitigationActionOnJob?: LastMitigationActionOnJob;\n /** Datacenter address to ship to, for the given sku and storage location. */\n readonly datacenterAddress?: DatacenterAddressResponseUnion;\n /** DataCenter code. */\n readonly dataCenterCode?: DataCenterCode;\n}\n\nexport function jobDetailsSerializer(item: JobDetails): any {\n return {\n contactDetails: contactDetailsSerializer(item[\"contactDetails\"]),\n shippingAddress: !item[\"shippingAddress\"]\n ? item[\"shippingAddress\"]\n : shippingAddressSerializer(item[\"shippingAddress\"]),\n dataImportDetails: !item[\"dataImportDetails\"]\n ? item[\"dataImportDetails\"]\n : dataImportDetailsArraySerializer(item[\"dataImportDetails\"]),\n dataExportDetails: !item[\"dataExportDetails\"]\n ? item[\"dataExportDetails\"]\n : dataExportDetailsArraySerializer(item[\"dataExportDetails\"]),\n jobDetailsType: item[\"jobDetailsType\"],\n preferences: !item[\"preferences\"]\n ? item[\"preferences\"]\n : preferencesSerializer(item[\"preferences\"]),\n reverseShippingDetails: !item[\"reverseShippingDetails\"]\n ? item[\"reverseShippingDetails\"]\n : reverseShippingDetailsSerializer(item[\"reverseShippingDetails\"]),\n keyEncryptionKey: !item[\"keyEncryptionKey\"]\n ? item[\"keyEncryptionKey\"]\n : keyEncryptionKeySerializer(item[\"keyEncryptionKey\"]),\n expectedDataSizeInTeraBytes: item[\"expectedDataSizeInTeraBytes\"],\n };\n}\n\nexport function jobDetailsDeserializer(item: any): JobDetails {\n return {\n jobStages: !item[\"jobStages\"]\n ? item[\"jobStages\"]\n : jobStagesArrayDeserializer(item[\"jobStages\"]),\n contactDetails: contactDetailsDeserializer(item[\"contactDetails\"]),\n shippingAddress: !item[\"shippingAddress\"]\n ? item[\"shippingAddress\"]\n : shippingAddressDeserializer(item[\"shippingAddress\"]),\n deliveryPackage: !item[\"deliveryPackage\"]\n ? item[\"deliveryPackage\"]\n : packageShippingDetailsDeserializer(item[\"deliveryPackage\"]),\n returnPackage: !item[\"returnPackage\"]\n ? item[\"returnPackage\"]\n : packageShippingDetailsDeserializer(item[\"returnPackage\"]),\n dataImportDetails: !item[\"dataImportDetails\"]\n ? item[\"dataImportDetails\"]\n : dataImportDetailsArrayDeserializer(item[\"dataImportDetails\"]),\n dataExportDetails: !item[\"dataExportDetails\"]\n ? item[\"dataExportDetails\"]\n : dataExportDetailsArrayDeserializer(item[\"dataExportDetails\"]),\n jobDetailsType: item[\"jobDetailsType\"],\n preferences: !item[\"preferences\"]\n ? item[\"preferences\"]\n : preferencesDeserializer(item[\"preferences\"]),\n reverseShippingDetails: !item[\"reverseShippingDetails\"]\n ? item[\"reverseShippingDetails\"]\n : reverseShippingDetailsDeserializer(item[\"reverseShippingDetails\"]),\n copyLogDetails: !item[\"copyLogDetails\"]\n ? item[\"copyLogDetails\"]\n : copyLogDetailsUnionArrayDeserializer(item[\"copyLogDetails\"]),\n reverseShipmentLabelSasKey: item[\"reverseShipmentLabelSasKey\"],\n chainOfCustodySasKey: item[\"chainOfCustodySasKey\"],\n deviceErasureDetails: !item[\"deviceErasureDetails\"]\n ? item[\"deviceErasureDetails\"]\n : deviceErasureDetailsDeserializer(item[\"deviceErasureDetails\"]),\n keyEncryptionKey: !item[\"keyEncryptionKey\"]\n ? item[\"keyEncryptionKey\"]\n : keyEncryptionKeyDeserializer(item[\"keyEncryptionKey\"]),\n expectedDataSizeInTeraBytes: item[\"expectedDataSizeInTeraBytes\"],\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : item[\"actions\"].map((p: any) => {\n return p;\n }),\n lastMitigationActionOnJob: !item[\"lastMitigationActionOnJob\"]\n ? item[\"lastMitigationActionOnJob\"]\n : lastMitigationActionOnJobDeserializer(item[\"lastMitigationActionOnJob\"]),\n datacenterAddress: !item[\"datacenterAddress\"]\n ? item[\"datacenterAddress\"]\n : datacenterAddressResponseUnionDeserializer(item[\"datacenterAddress\"]),\n dataCenterCode: item[\"dataCenterCode\"],\n };\n}\n\n/** Alias for JobDetailsUnion */\nexport type JobDetailsUnion =\n | DataBoxCustomerDiskJobDetails\n | DataBoxDiskJobDetails\n | DataBoxHeavyJobDetails\n | DataBoxJobDetails\n | JobDetails;\n\nexport function jobDetailsUnionSerializer(item: JobDetailsUnion): any {\n switch (item.jobDetailsType) {\n case \"DataBoxCustomerDisk\":\n return dataBoxCustomerDiskJobDetailsSerializer(item as DataBoxCustomerDiskJobDetails);\n\n case \"DataBoxDisk\":\n return dataBoxDiskJobDetailsSerializer(item as DataBoxDiskJobDetails);\n\n case \"DataBoxHeavy\":\n return dataBoxHeavyJobDetailsSerializer(item as DataBoxHeavyJobDetails);\n\n case \"DataBox\":\n return dataBoxJobDetailsSerializer(item as DataBoxJobDetails);\n\n default:\n return jobDetailsSerializer(item);\n }\n}\n\nexport function jobDetailsUnionDeserializer(item: any): JobDetailsUnion {\n switch (item[\"jobDetailsType\"]) {\n case \"DataBoxCustomerDisk\":\n return dataBoxCustomerDiskJobDetailsDeserializer(item as DataBoxCustomerDiskJobDetails);\n\n case \"DataBoxDisk\":\n return dataBoxDiskJobDetailsDeserializer(item as DataBoxDiskJobDetails);\n\n case \"DataBoxHeavy\":\n return dataBoxHeavyJobDetailsDeserializer(item as DataBoxHeavyJobDetails);\n\n case \"DataBox\":\n return dataBoxJobDetailsDeserializer(item as DataBoxJobDetails);\n\n default:\n return jobDetailsDeserializer(item);\n }\n}\n\nexport function jobStagesArrayDeserializer(result: Array<JobStages>): any[] {\n return result.map((item) => {\n return jobStagesDeserializer(item);\n });\n}\n\n/** Job stages. */\nexport interface JobStages {\n /** Name of the job stage. */\n readonly stageName?: StageName;\n /** Display name of the job stage. */\n readonly displayName?: string;\n /** Status of the job stage. */\n readonly stageStatus?: StageStatus;\n /** Time for the job stage in UTC ISO 8601 format. */\n readonly stageTime?: Date;\n /** Job Stage Details */\n readonly jobStageDetails?: any;\n /** Delay information for the job stages. */\n readonly delayInformation?: JobDelayDetails[];\n}\n\nexport function jobStagesDeserializer(item: any): JobStages {\n return {\n stageName: item[\"stageName\"],\n displayName: item[\"displayName\"],\n stageStatus: item[\"stageStatus\"],\n stageTime: !item[\"stageTime\"] ? item[\"stageTime\"] : new Date(item[\"stageTime\"]),\n jobStageDetails: item[\"jobStageDetails\"],\n delayInformation: !item[\"delayInformation\"]\n ? item[\"delayInformation\"]\n : jobDelayDetailsArrayDeserializer(item[\"delayInformation\"]),\n };\n}\n\n/** Holds the device erasure completion status */\nexport type StageStatus =\n | \"None\"\n | \"InProgress\"\n | \"Succeeded\"\n | \"Failed\"\n | \"Cancelled\"\n | \"Cancelling\"\n | \"SucceededWithErrors\"\n | \"WaitingForCustomerAction\"\n | \"SucceededWithWarnings\"\n | \"WaitingForCustomerActionForKek\"\n | \"WaitingForCustomerActionForCleanUp\"\n | \"CustomerActionPerformedForCleanUp\"\n | \"CustomerActionPerformed\";\n\nexport function jobDelayDetailsArrayDeserializer(result: Array<JobDelayDetails>): any[] {\n return result.map((item) => {\n return jobDelayDetailsDeserializer(item);\n });\n}\n\n/** Job Delay Notification details */\nexport interface JobDelayDetails {\n /** Status of notification */\n readonly status?: DelayNotificationStatus;\n /** Delay Error code */\n readonly errorCode?: PortalDelayErrorCode;\n /** Description of the delay. */\n readonly description?: string;\n /** Timestamp when the delay notification was created. */\n readonly startTime?: Date;\n /** Timestamp when the delay notification was resolved. */\n readonly resolutionTime?: Date;\n}\n\nexport function jobDelayDetailsDeserializer(item: any): JobDelayDetails {\n return {\n status: item[\"status\"],\n errorCode: item[\"errorCode\"],\n description: item[\"description\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n resolutionTime: !item[\"resolutionTime\"]\n ? item[\"resolutionTime\"]\n : new Date(item[\"resolutionTime\"]),\n };\n}\n\n/** Status of notification */\nexport enum KnownDelayNotificationStatus {\n /** Delay is still active */\n Active = \"Active\",\n /** Delay has been resolved */\n Resolved = \"Resolved\",\n}\n\n/**\n * Status of notification \\\n * {@link KnownDelayNotificationStatus} can be used interchangeably with DelayNotificationStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Active**: Delay is still active \\\n * **Resolved**: Delay has been resolved\n */\nexport type DelayNotificationStatus = string;\n\n/** Delay Error code */\nexport enum KnownPortalDelayErrorCode {\n /** Delay due to any internal reasons */\n InternalIssueDelay = \"InternalIssueDelay\",\n /** Active Order limit breached. */\n ActiveOrderLimitBreachedDelay = \"ActiveOrderLimitBreachedDelay\",\n /** High demand */\n HighDemandDelay = \"HighDemandDelay\",\n /** Slow copy due to large number of files */\n LargeNumberOfFilesDelay = \"LargeNumberOfFilesDelay\",\n}\n\n/**\n * Delay Error code \\\n * {@link KnownPortalDelayErrorCode} can be used interchangeably with PortalDelayErrorCode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **InternalIssueDelay**: Delay due to any internal reasons \\\n * **ActiveOrderLimitBreachedDelay**: Active Order limit breached. \\\n * **HighDemandDelay**: High demand \\\n * **LargeNumberOfFilesDelay**: Slow copy due to large number of files\n */\nexport type PortalDelayErrorCode = string;\n\n/** Contact Details. */\nexport interface ContactDetails {\n /** Contact name of the person. */\n contactName: string;\n /** Phone number of the contact person. */\n phone: string;\n /** Phone extension number of the contact person. */\n phoneExtension?: string;\n /** Mobile number of the contact person. */\n mobile?: string;\n /** List of Email-ids to be notified about job progress. */\n emailList: string[];\n /** Notification preference for a job stage. */\n notificationPreference?: NotificationPreference[];\n}\n\nexport function contactDetailsSerializer(item: ContactDetails): any {\n return {\n contactName: item[\"contactName\"],\n phone: item[\"phone\"],\n phoneExtension: item[\"phoneExtension\"],\n mobile: item[\"mobile\"],\n emailList: item[\"emailList\"].map((p: any) => {\n return p;\n }),\n notificationPreference: !item[\"notificationPreference\"]\n ? item[\"notificationPreference\"]\n : notificationPreferenceArraySerializer(item[\"notificationPreference\"]),\n };\n}\n\nexport function contactDetailsDeserializer(item: any): ContactDetails {\n return {\n contactName: item[\"contactName\"],\n phone: item[\"phone\"],\n phoneExtension: item[\"phoneExtension\"],\n mobile: item[\"mobile\"],\n emailList: item[\"emailList\"].map((p: any) => {\n return p;\n }),\n notificationPreference: !item[\"notificationPreference\"]\n ? item[\"notificationPreference\"]\n : notificationPreferenceArrayDeserializer(item[\"notificationPreference\"]),\n };\n}\n\nexport function notificationPreferenceArraySerializer(\n result: Array<NotificationPreference>,\n): any[] {\n return result.map((item) => {\n return notificationPreferenceSerializer(item);\n });\n}\n\nexport function notificationPreferenceArrayDeserializer(\n result: Array<NotificationPreference>,\n): any[] {\n return result.map((item) => {\n return notificationPreferenceDeserializer(item);\n });\n}\n\n/** Notification preference for a job stage. */\nexport interface NotificationPreference {\n /** Name of the stage. */\n stageName: NotificationStageName;\n /** Notification is required or not. */\n sendNotification: boolean;\n}\n\nexport function notificationPreferenceSerializer(item: NotificationPreference): any {\n return { stageName: item[\"stageName\"], sendNotification: item[\"sendNotification\"] };\n}\n\nexport function notificationPreferenceDeserializer(item: any): NotificationPreference {\n return {\n stageName: item[\"stageName\"],\n sendNotification: item[\"sendNotification\"],\n };\n}\n\n/** Name of the stage. */\nexport enum KnownNotificationStageName {\n /** Notification at device prepared stage. */\n DevicePrepared = \"DevicePrepared\",\n /** Notification at device dispatched stage. */\n Dispatched = \"Dispatched\",\n /** Notification at device delivered stage. */\n Delivered = \"Delivered\",\n /** Notification at device picked up from user stage. */\n PickedUp = \"PickedUp\",\n /** Notification at device received at Azure datacenter stage. */\n AtAzureDC = \"AtAzureDC\",\n /** Notification at data copy started stage. */\n DataCopy = \"DataCopy\",\n /** Notification at job created stage. */\n Created = \"Created\",\n /** Notification at shipped devices to customer stage. */\n ShippedToCustomer = \"ShippedToCustomer\",\n}\n\n/**\n * Name of the stage. \\\n * {@link KnownNotificationStageName} can be used interchangeably with NotificationStageName,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **DevicePrepared**: Notification at device prepared stage. \\\n * **Dispatched**: Notification at device dispatched stage. \\\n * **Delivered**: Notification at device delivered stage. \\\n * **PickedUp**: Notification at device picked up from user stage. \\\n * **AtAzureDC**: Notification at device received at Azure datacenter stage. \\\n * **DataCopy**: Notification at data copy started stage. \\\n * **Created**: Notification at job created stage. \\\n * **ShippedToCustomer**: Notification at shipped devices to customer stage.\n */\nexport type NotificationStageName = string;\n\n/** Shipping address where customer wishes to receive the device. */\nexport interface ShippingAddress {\n /** Street Address line 1. */\n streetAddress1: string;\n /** Street Address line 2. */\n streetAddress2?: string;\n /** Street Address line 3. */\n streetAddress3?: string;\n /** Name of the City. */\n city?: string;\n /** Name of the State or Province. */\n stateOrProvince?: string;\n /** Name of the Country. */\n country: string;\n /** Postal code. */\n postalCode?: string;\n /** Extended Zip Code. */\n zipExtendedCode?: string;\n /** Name of the company. */\n companyName?: string;\n /** Type of address. */\n addressType?: AddressType;\n /** Flag to indicate if customer has chosen to skip default address validation */\n skipAddressValidation?: boolean;\n /** Tax Identification Number */\n taxIdentificationNumber?: string;\n}\n\nexport function shippingAddressSerializer(item: ShippingAddress): any {\n return {\n streetAddress1: item[\"streetAddress1\"],\n streetAddress2: item[\"streetAddress2\"],\n streetAddress3: item[\"streetAddress3\"],\n city: item[\"city\"],\n stateOrProvince: item[\"stateOrProvince\"],\n country: item[\"country\"],\n postalCode: item[\"postalCode\"],\n zipExtendedCode: item[\"zipExtendedCode\"],\n companyName: item[\"companyName\"],\n addressType: item[\"addressType\"],\n skipAddressValidation: item[\"skipAddressValidation\"],\n taxIdentificationNumber: item[\"taxIdentificationNumber\"],\n };\n}\n\nexport function shippingAddressDeserializer(item: any): ShippingAddress {\n return {\n streetAddress1: item[\"streetAddress1\"],\n streetAddress2: item[\"streetAddress2\"],\n streetAddress3: item[\"streetAddress3\"],\n city: item[\"city\"],\n stateOrProvince: item[\"stateOrProvince\"],\n country: item[\"country\"],\n postalCode: item[\"postalCode\"],\n zipExtendedCode: item[\"zipExtendedCode\"],\n companyName: item[\"companyName\"],\n addressType: item[\"addressType\"],\n skipAddressValidation: item[\"skipAddressValidation\"],\n taxIdentificationNumber: item[\"taxIdentificationNumber\"],\n };\n}\n\n/** Type of address. */\nexport type AddressType = \"None\" | \"Residential\" | \"Commercial\";\n\n/** package shipping details */\nexport interface PackageShippingDetails {\n /** Url where shipment can be tracked. */\n readonly trackingUrl?: string;\n /** Name of the carrier. */\n readonly carrierName?: string;\n /** Tracking Id of shipment. */\n readonly trackingId?: string;\n}\n\nexport function packageShippingDetailsDeserializer(item: any): PackageShippingDetails {\n return {\n trackingUrl: item[\"trackingUrl\"],\n carrierName: item[\"carrierName\"],\n trackingId: item[\"trackingId\"],\n };\n}\n\nexport function dataImportDetailsArraySerializer(result: Array<DataImportDetails>): any[] {\n return result.map((item) => {\n return dataImportDetailsSerializer(item);\n });\n}\n\nexport function dataImportDetailsArrayDeserializer(result: Array<DataImportDetails>): any[] {\n return result.map((item) => {\n return dataImportDetailsDeserializer(item);\n });\n}\n\n/** Details of the data to be used for importing data to azure. */\nexport interface DataImportDetails {\n /** Account details of the data to be transferred */\n accountDetails: DataAccountDetailsUnion;\n /** Level of the logs to be collected. */\n logCollectionLevel?: LogCollectionLevel;\n}\n\nexport function dataImportDetailsSerializer(item: DataImportDetails): any {\n return {\n accountDetails: dataAccountDetailsUnionSerializer(item[\"accountDetails\"]),\n logCollectionLevel: item[\"logCollectionLevel\"],\n };\n}\n\nexport function dataImportDetailsDeserializer(item: any): DataImportDetails {\n return {\n accountDetails: dataAccountDetailsUnionDeserializer(item[\"accountDetails\"]),\n logCollectionLevel: item[\"logCollectionLevel\"],\n };\n}\n\n/** Account details of the data to be transferred */\nexport interface DataAccountDetails {\n /** Account Type of the data to be transferred. */\n /** The discriminator possible values: ManagedDisk, StorageAccount */\n dataAccountType: DataAccountType;\n /** Password for all the shares to be created on the device. Should not be passed for TransferType:ExportFromAzure jobs. If this is not passed, the service will generate password itself. This will not be returned in Get Call. Password Requirements : Password must be minimum of 12 and maximum of 64 characters. Password must have at least one uppercase alphabet, one number and one special character. Password cannot have the following characters : IilLoO0 Password can have only alphabets, numbers and these characters : @#\\-$%^!+=;:_()]+ */\n sharePassword?: string;\n}\n\nexport function dataAccountDetailsSerializer(item: DataAccountDetails): any {\n return { dataAccountType: item[\"dataAccountType\"], sharePassword: item[\"sharePassword\"] };\n}\n\nexport function dataAccountDetailsDeserializer(item: any): DataAccountDetails {\n return {\n dataAccountType: item[\"dataAccountType\"],\n sharePassword: item[\"sharePassword\"],\n };\n}\n\n/** Alias for DataAccountDetailsUnion */\nexport type DataAccountDetailsUnion =\n | ManagedDiskDetails\n | StorageAccountDetails\n | DataAccountDetails;\n\nexport function dataAccountDetailsUnionSerializer(item: DataAccountDetailsUnion): any {\n switch (item.dataAccountType) {\n case \"ManagedDisk\":\n return managedDiskDetailsSerializer(item as ManagedDiskDetails);\n\n case \"StorageAccount\":\n return storageAccountDetailsSerializer(item as StorageAccountDetails);\n\n default:\n return dataAccountDetailsSerializer(item);\n }\n}\n\nexport function dataAccountDetailsUnionDeserializer(item: any): DataAccountDetailsUnion {\n switch (item[\"dataAccountType\"]) {\n case \"ManagedDisk\":\n return managedDiskDetailsDeserializer(item as ManagedDiskDetails);\n\n case \"StorageAccount\":\n return storageAccountDetailsDeserializer(item as StorageAccountDetails);\n\n default:\n return dataAccountDetailsDeserializer(item);\n }\n}\n\n/** Type of the account. */\nexport type DataAccountType = \"StorageAccount\" | \"ManagedDisk\";\n\n/** Details of the managed disks. */\nexport interface ManagedDiskDetails extends DataAccountDetails {\n /** Resource Group Id of the compute disks. */\n resourceGroupId: string;\n /** Resource Id of the storage account that can be used to copy the vhd for staging. */\n stagingStorageAccountId: string;\n /** Account Type of the data to be transferred. */\n dataAccountType: \"ManagedDisk\";\n}\n\nexport function managedDiskDetailsSerializer(item: ManagedDiskDetails): any {\n return {\n dataAccountType: item[\"dataAccountType\"],\n sharePassword: item[\"sharePassword\"],\n resourceGroupId: item[\"resourceGroupId\"],\n stagingStorageAccountId: item[\"stagingStorageAccountId\"],\n };\n}\n\nexport function managedDiskDetailsDeserializer(item: any): ManagedDiskDetails {\n return {\n dataAccountType: item[\"dataAccountType\"],\n sharePassword: item[\"sharePassword\"],\n resourceGroupId: item[\"resourceGroupId\"],\n stagingStorageAccountId: item[\"stagingStorageAccountId\"],\n };\n}\n\n/** Details for the storage account. */\nexport interface StorageAccountDetails extends DataAccountDetails {\n /** Storage Account Resource Id. */\n storageAccountId: string;\n /** Account Type of the data to be transferred. */\n dataAccountType: \"StorageAccount\";\n}\n\nexport function storageAccountDetailsSerializer(item: StorageAccountDetails): any {\n return {\n dataAccountType: item[\"dataAccountType\"],\n sharePassword: item[\"sharePassword\"],\n storageAccountId: item[\"storageAccountId\"],\n };\n}\n\nexport function storageAccountDetailsDeserializer(item: any): StorageAccountDetails {\n return {\n dataAccountType: item[\"dataAccountType\"],\n sharePassword: item[\"sharePassword\"],\n storageAccountId: item[\"storageAccountId\"],\n };\n}\n\n/** Level of the logs to be collected. */\nexport type LogCollectionLevel = \"Error\" | \"Verbose\";\n\nexport function dataExportDetailsArraySerializer(result: Array<DataExportDetails>): any[] {\n return result.map((item) => {\n return dataExportDetailsSerializer(item);\n });\n}\n\nexport function dataExportDetailsArrayDeserializer(result: Array<DataExportDetails>): any[] {\n return result.map((item) => {\n return dataExportDetailsDeserializer(item);\n });\n}\n\n/** Details of the data to be used for exporting data from azure. */\nexport interface DataExportDetails {\n /** Configuration for the data transfer. */\n transferConfiguration: TransferConfiguration;\n /** Level of the logs to be collected. */\n logCollectionLevel?: LogCollectionLevel;\n /** Account details of the data to be transferred */\n accountDetails: DataAccountDetailsUnion;\n}\n\nexport function dataExportDetailsSerializer(item: DataExportDetails): any {\n return {\n transferConfiguration: transferConfigurationSerializer(item[\"transferConfiguration\"]),\n logCollectionLevel: item[\"logCollectionLevel\"],\n accountDetails: dataAccountDetailsUnionSerializer(item[\"accountDetails\"]),\n };\n}\n\nexport function dataExportDetailsDeserializer(item: any): DataExportDetails {\n return {\n transferConfiguration: transferConfigurationDeserializer(item[\"transferConfiguration\"]),\n logCollectionLevel: item[\"logCollectionLevel\"],\n accountDetails: dataAccountDetailsUnionDeserializer(item[\"accountDetails\"]),\n };\n}\n\n/** Configuration for defining the transfer of data. */\nexport interface TransferConfiguration {\n /** Type of the configuration for transfer. */\n transferConfigurationType: TransferConfigurationType;\n /** Map of filter type and the details to filter. This field is required only if the TransferConfigurationType is given as TransferUsingFilter. */\n transferFilterDetails?: TransferConfigurationTransferFilterDetails;\n /** Map of filter type and the details to transfer all data. This field is required only if the TransferConfigurationType is given as TransferAll */\n transferAllDetails?: TransferConfigurationTransferAllDetails;\n}\n\nexport function transferConfigurationSerializer(item: TransferConfiguration): any {\n return {\n transferConfigurationType: item[\"transferConfigurationType\"],\n transferFilterDetails: !item[\"transferFilterDetails\"]\n ? item[\"transferFilterDetails\"]\n : transferConfigurationTransferFilterDetailsSerializer(item[\"transferFilterDetails\"]),\n transferAllDetails: !item[\"transferAllDetails\"]\n ? item[\"transferAllDetails\"]\n : transferConfigurationTransferAllDetailsSerializer(item[\"transferAllDetails\"]),\n };\n}\n\nexport function transferConfigurationDeserializer(item: any): TransferConfiguration {\n return {\n transferConfigurationType: item[\"transferConfigurationType\"],\n transferFilterDetails: !item[\"transferFilterDetails\"]\n ? item[\"transferFilterDetails\"]\n : transferConfigurationTransferFilterDetailsDeserializer(item[\"transferFilterDetails\"]),\n transferAllDetails: !item[\"transferAllDetails\"]\n ? item[\"transferAllDetails\"]\n : transferConfigurationTransferAllDetailsDeserializer(item[\"transferAllDetails\"]),\n };\n}\n\n/** Type of the configuration for transfer. */\nexport type TransferConfigurationType = \"TransferAll\" | \"TransferUsingFilter\";\n\n/** Map of filter type and the details to filter. This field is required only if the TransferConfigurationType is given as TransferUsingFilter. */\nexport interface TransferConfigurationTransferFilterDetails {\n /** Details of the filtering the transfer of data. */\n include?: TransferFilterDetails;\n}\n\nexport function transferConfigurationTransferFilterDetailsSerializer(\n item: TransferConfigurationTransferFilterDetails,\n): any {\n return {\n include: !item[\"include\"] ? item[\"include\"] : transferFilterDetailsSerializer(item[\"include\"]),\n };\n}\n\nexport function transferConfigurationTransferFilterDetailsDeserializer(\n item: any,\n): TransferConfigurationTransferFilterDetails {\n return {\n include: !item[\"include\"]\n ? item[\"include\"]\n : transferFilterDetailsDeserializer(item[\"include\"]),\n };\n}\n\n/** Details of the filtering the transfer of data. */\nexport interface TransferFilterDetails {\n /** Type of the account of data. */\n dataAccountType: DataAccountType;\n /** Filter details to transfer blobs. */\n blobFilterDetails?: BlobFilterDetails;\n /** Filter details to transfer Azure files. */\n azureFileFilterDetails?: AzureFileFilterDetails;\n /** Details of the filter files to be used for data transfer. */\n filterFileDetails?: FilterFileDetails[];\n}\n\nexport function transferFilterDetailsSerializer(item: TransferFilterDetails): any {\n return {\n dataAccountType: item[\"dataAccountType\"],\n blobFilterDetails: !item[\"blobFilterDetails\"]\n ? item[\"blobFilterDetails\"]\n : blobFilterDetailsSerializer(item[\"blobFilterDetails\"]),\n azureFileFilterDetails: !item[\"azureFileFilterDetails\"]\n ? item[\"azureFileFilterDetails\"]\n : azureFileFilterDetailsSerializer(item[\"azureFileFilterDetails\"]),\n filterFileDetails: !item[\"filterFileDetails\"]\n ? item[\"filterFileDetails\"]\n : filterFileDetailsArraySerializer(item[\"filterFileDetails\"]),\n };\n}\n\nexport function transferFilterDetailsDeserializer(item: any): TransferFilterDetails {\n return {\n dataAccountType: item[\"dataAccountType\"],\n blobFilterDetails: !item[\"blobFilterDetails\"]\n ? item[\"blobFilterDetails\"]\n : blobFilterDetailsDeserializer(item[\"blobFilterDetails\"]),\n azureFileFilterDetails: !item[\"azureFileFilterDetails\"]\n ? item[\"azureFileFilterDetails\"]\n : azureFileFilterDetailsDeserializer(item[\"azureFileFilterDetails\"]),\n filterFileDetails: !item[\"filterFileDetails\"]\n ? item[\"filterFileDetails\"]\n : filterFileDetailsArrayDeserializer(item[\"filterFileDetails\"]),\n };\n}\n\n/** Filter details to transfer Azure Blobs */\nexport interface BlobFilterDetails {\n /** Prefix list of the Azure blobs to be transferred. */\n blobPrefixList?: string[];\n /** List of full path of the blobs to be transferred. */\n blobPathList?: string[];\n /** List of blob containers to be transferred. */\n containerList?: string[];\n}\n\nexport function blobFilterDetailsSerializer(item: BlobFilterDetails): any {\n return {\n blobPrefixList: !item[\"blobPrefixList\"]\n ? item[\"blobPrefixList\"]\n : item[\"blobPrefixList\"].map((p: any) => {\n return p;\n }),\n blobPathList: !item[\"blobPathList\"]\n ? item[\"blobPathList\"]\n : item[\"blobPathList\"].map((p: any) => {\n return p;\n }),\n containerList: !item[\"containerList\"]\n ? item[\"containerList\"]\n : item[\"containerList\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function blobFilterDetailsDeserializer(item: any): BlobFilterDetails {\n return {\n blobPrefixList: !item[\"blobPrefixList\"]\n ? item[\"blobPrefixList\"]\n : item[\"blobPrefixList\"].map((p: any) => {\n return p;\n }),\n blobPathList: !item[\"blobPathList\"]\n ? item[\"blobPathList\"]\n : item[\"blobPathList\"].map((p: any) => {\n return p;\n }),\n containerList: !item[\"containerList\"]\n ? item[\"containerList\"]\n : item[\"containerList\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Filter details to transfer Azure files */\nexport interface AzureFileFilterDetails {\n /** Prefix list of the Azure files to be transferred. */\n filePrefixList?: string[];\n /** List of full path of the files to be transferred. */\n filePathList?: string[];\n /** List of file shares to be transferred. */\n fileShareList?: string[];\n}\n\nexport function azureFileFilterDetailsSerializer(item: AzureFileFilterDetails): any {\n return {\n filePrefixList: !item[\"filePrefixList\"]\n ? item[\"filePrefixList\"]\n : item[\"filePrefixList\"].map((p: any) => {\n return p;\n }),\n filePathList: !item[\"filePathList\"]\n ? item[\"filePathList\"]\n : item[\"filePathList\"].map((p: any) => {\n return p;\n }),\n fileShareList: !item[\"fileShareList\"]\n ? item[\"fileShareList\"]\n : item[\"fileShareList\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function azureFileFilterDetailsDeserializer(item: any): AzureFileFilterDetails {\n return {\n filePrefixList: !item[\"filePrefixList\"]\n ? item[\"filePrefixList\"]\n : item[\"filePrefixList\"].map((p: any) => {\n return p;\n }),\n filePathList: !item[\"filePathList\"]\n ? item[\"filePathList\"]\n : item[\"filePathList\"].map((p: any) => {\n return p;\n }),\n fileShareList: !item[\"fileShareList\"]\n ? item[\"fileShareList\"]\n : item[\"fileShareList\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function filterFileDetailsArraySerializer(result: Array<FilterFileDetails>): any[] {\n return result.map((item) => {\n return filterFileDetailsSerializer(item);\n });\n}\n\nexport function filterFileDetailsArrayDeserializer(result: Array<FilterFileDetails>): any[] {\n return result.map((item) => {\n return filterFileDetailsDeserializer(item);\n });\n}\n\n/** Details of the filter files to be used for data transfer. */\nexport interface FilterFileDetails {\n /** Type of the filter file. */\n filterFileType: FilterFileType;\n /** Path of the file that contains the details of all items to transfer. */\n filterFilePath: string;\n}\n\nexport function filterFileDetailsSerializer(item: FilterFileDetails): any {\n return { filterFileType: item[\"filterFileType\"], filterFilePath: item[\"filterFilePath\"] };\n}\n\nexport function filterFileDetailsDeserializer(item: any): FilterFileDetails {\n return {\n filterFileType: item[\"filterFileType\"],\n filterFilePath: item[\"filterFilePath\"],\n };\n}\n\n/** Type of the filter file. */\nexport type FilterFileType = \"AzureBlob\" | \"AzureFile\";\n\n/** Map of filter type and the details to transfer all data. This field is required only if the TransferConfigurationType is given as TransferAll */\nexport interface TransferConfigurationTransferAllDetails {\n /** Details to transfer all data. */\n include?: TransferAllDetails;\n}\n\nexport function transferConfigurationTransferAllDetailsSerializer(\n item: TransferConfigurationTransferAllDetails,\n): any {\n return {\n include: !item[\"include\"] ? item[\"include\"] : transferAllDetailsSerializer(item[\"include\"]),\n };\n}\n\nexport function transferConfigurationTransferAllDetailsDeserializer(\n item: any,\n): TransferConfigurationTransferAllDetails {\n return {\n include: !item[\"include\"] ? item[\"include\"] : transferAllDetailsDeserializer(item[\"include\"]),\n };\n}\n\n/** Details to transfer all data. */\nexport interface TransferAllDetails {\n /** Type of the account of data */\n dataAccountType: DataAccountType;\n /** To indicate if all Azure blobs have to be transferred */\n transferAllBlobs?: boolean;\n /** To indicate if all Azure Files have to be transferred */\n transferAllFiles?: boolean;\n}\n\nexport function transferAllDetailsSerializer(item: TransferAllDetails): any {\n return {\n dataAccountType: item[\"dataAccountType\"],\n transferAllBlobs: item[\"transferAllBlobs\"],\n transferAllFiles: item[\"transferAllFiles\"],\n };\n}\n\nexport function transferAllDetailsDeserializer(item: any): TransferAllDetails {\n return {\n dataAccountType: item[\"dataAccountType\"],\n transferAllBlobs: item[\"transferAllBlobs\"],\n transferAllFiles: item[\"transferAllFiles\"],\n };\n}\n\n/** Indicates the type of job details. */\nexport type ClassDiscriminator = \"DataBox\" | \"DataBoxDisk\" | \"DataBoxHeavy\" | \"DataBoxCustomerDisk\";\n\n/** Preferences related to the order */\nexport interface Preferences {\n /** Preferred data center region. */\n preferredDataCenterRegion?: string[];\n /** Preferences related to the shipment logistics of the sku. */\n transportPreferences?: TransportPreferences;\n /** Optional Preferences related to the reverse shipment logistics of the sku. */\n reverseTransportPreferences?: TransportPreferences;\n /** Preferences related to the Encryption. */\n encryptionPreferences?: EncryptionPreferences;\n /** Preferences related to the Access Tier of storage accounts. */\n storageAccountAccessTierPreferences?: \"Archive\"[];\n}\n\nexport function preferencesSerializer(item: Preferences): any {\n return {\n preferredDataCenterRegion: !item[\"preferredDataCenterRegion\"]\n ? item[\"preferredDataCenterRegion\"]\n : item[\"preferredDataCenterRegion\"].map((p: any) => {\n return p;\n }),\n transportPreferences: !item[\"transportPreferences\"]\n ? item[\"transportPreferences\"]\n : transportPreferencesSerializer(item[\"transportPreferences\"]),\n reverseTransportPreferences: !item[\"reverseTransportPreferences\"]\n ? item[\"reverseTransportPreferences\"]\n : transportPreferencesSerializer(item[\"reverseTransportPreferences\"]),\n encryptionPreferences: !item[\"encryptionPreferences\"]\n ? item[\"encryptionPreferences\"]\n : encryptionPreferencesSerializer(item[\"encryptionPreferences\"]),\n storageAccountAccessTierPreferences: !item[\"storageAccountAccessTierPreferences\"]\n ? item[\"storageAccountAccessTierPreferences\"]\n : item[\"storageAccountAccessTierPreferences\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function preferencesDeserializer(item: any): Preferences {\n return {\n preferredDataCenterRegion: !item[\"preferredDataCenterRegion\"]\n ? item[\"preferredDataCenterRegion\"]\n : item[\"preferredDataCenterRegion\"].map((p: any) => {\n return p;\n }),\n transportPreferences: !item[\"transportPreferences\"]\n ? item[\"transportPreferences\"]\n : transportPreferencesDeserializer(item[\"transportPreferences\"]),\n reverseTransportPreferences: !item[\"reverseTransportPreferences\"]\n ? item[\"reverseTransportPreferences\"]\n : transportPreferencesDeserializer(item[\"reverseTransportPreferences\"]),\n encryptionPreferences: !item[\"encryptionPreferences\"]\n ? item[\"encryptionPreferences\"]\n : encryptionPreferencesDeserializer(item[\"encryptionPreferences\"]),\n storageAccountAccessTierPreferences: !item[\"storageAccountAccessTierPreferences\"]\n ? item[\"storageAccountAccessTierPreferences\"]\n : item[\"storageAccountAccessTierPreferences\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Preferences related to the shipment logistics of the sku */\nexport interface TransportPreferences {\n /** Indicates Shipment Logistics type that the customer preferred. */\n preferredShipmentType: TransportShipmentTypes;\n /** Read only property which indicates whether transport preferences has been updated or not after device is prepared. */\n readonly isUpdated?: boolean;\n}\n\nexport function transportPreferencesSerializer(item: TransportPreferences): any {\n return { preferredShipmentType: item[\"preferredShipmentType\"] };\n}\n\nexport function transportPreferencesDeserializer(item: any): TransportPreferences {\n return {\n preferredShipmentType: item[\"preferredShipmentType\"],\n isUpdated: item[\"isUpdated\"],\n };\n}\n\n/** Transport Shipment Type supported for given region. */\nexport type TransportShipmentTypes = \"CustomerManaged\" | \"MicrosoftManaged\";\n\n/** Preferences related to the Encryption. */\nexport interface EncryptionPreferences {\n /** Defines secondary layer of software-based encryption enablement. */\n doubleEncryption?: DoubleEncryption;\n /** Defines Hardware level encryption (Only for disk) */\n hardwareEncryption?: HardwareEncryption;\n}\n\nexport function encryptionPreferencesSerializer(item: EncryptionPreferences): any {\n return {\n doubleEncryption: item[\"doubleEncryption\"],\n hardwareEncryption: item[\"hardwareEncryption\"],\n };\n}\n\nexport function encryptionPreferencesDeserializer(item: any): EncryptionPreferences {\n return {\n doubleEncryption: item[\"doubleEncryption\"],\n hardwareEncryption: item[\"hardwareEncryption\"],\n };\n}\n\n/** Defines secondary layer of software-based encryption enablement. */\nexport type DoubleEncryption = \"Enabled\" | \"Disabled\";\n/** Hardware encryption support for a given sku for a given region. */\nexport type HardwareEncryption = \"Enabled\" | \"Disabled\";\n\n/** Reverse Shipping Address and contact details for a job. */\nexport interface ReverseShippingDetails {\n /** Contact Info. */\n contactDetails?: ContactInfo;\n /** Shipping address where customer wishes to receive the device. */\n shippingAddress?: ShippingAddress;\n /**\n * A flag to indicate whether Reverse Shipping details are updated or not after device has been prepared.\n * Read only field\n */\n readonly isUpdated?: boolean;\n}\n\nexport function reverseShippingDetailsSerializer(item: ReverseShippingDetails): any {\n return {\n contactDetails: !item[\"contactDetails\"]\n ? item[\"contactDetails\"]\n : contactInfoSerializer(item[\"contactDetails\"]),\n shippingAddress: !item[\"shippingAddress\"]\n ? item[\"shippingAddress\"]\n : shippingAddressSerializer(item[\"shippingAddress\"]),\n };\n}\n\nexport function reverseShippingDetailsDeserializer(item: any): ReverseShippingDetails {\n return {\n contactDetails: !item[\"contactDetails\"]\n ? item[\"contactDetails\"]\n : contactInfoDeserializer(item[\"contactDetails\"]),\n shippingAddress: !item[\"shippingAddress\"]\n ? item[\"shippingAddress\"]\n : shippingAddressDeserializer(item[\"shippingAddress\"]),\n isUpdated: item[\"isUpdated\"],\n };\n}\n\n/** Contact Info. */\nexport interface ContactInfo {\n /** Contact name of the person. */\n contactName: string;\n /** Phone number of the contact person. */\n phone: string;\n /** Phone extension number of the contact person. */\n phoneExtension?: string;\n /** Mobile number of the contact person. */\n mobile?: string;\n}\n\nexport function contactInfoSerializer(item: ContactInfo): any {\n return {\n contactName: item[\"contactName\"],\n phone: item[\"phone\"],\n phoneExtension: item[\"phoneExtension\"],\n mobile: item[\"mobile\"],\n };\n}\n\nexport function contactInfoDeserializer(item: any): ContactInfo {\n return {\n contactName: item[\"contactName\"],\n phone: item[\"phone\"],\n phoneExtension: item[\"phoneExtension\"],\n mobile: item[\"mobile\"],\n };\n}\n\nexport function copyLogDetailsUnionArrayDeserializer(result: Array<CopyLogDetailsUnion>): any[] {\n return result.map((item) => {\n return copyLogDetailsUnionDeserializer(item);\n });\n}\n\n/** Details for log generated during copy. */\nexport interface CopyLogDetails {\n /** Indicates the type of job details. */\n /** The discriminator possible values: DataBox, DataBoxCustomerDisk, DataBoxDisk, DataBoxHeavy */\n copyLogDetailsType: ClassDiscriminator;\n}\n\nexport function copyLogDetailsDeserializer(item: any): CopyLogDetails {\n return {\n copyLogDetailsType: item[\"copyLogDetailsType\"],\n };\n}\n\n/** Alias for CopyLogDetailsUnion */\nexport type CopyLogDetailsUnion =\n | DataBoxAccountCopyLogDetails\n | DataBoxCustomerDiskCopyLogDetails\n | DataBoxDiskCopyLogDetails\n | DataBoxHeavyAccountCopyLogDetails\n | CopyLogDetails;\n\nexport function copyLogDetailsUnionDeserializer(item: any): CopyLogDetailsUnion {\n switch (item[\"copyLogDetailsType\"]) {\n case \"DataBox\":\n return dataBoxAccountCopyLogDetailsDeserializer(item as DataBoxAccountCopyLogDetails);\n\n case \"DataBoxCustomerDisk\":\n return dataBoxCustomerDiskCopyLogDetailsDeserializer(\n item as DataBoxCustomerDiskCopyLogDetails,\n );\n\n case \"DataBoxDisk\":\n return dataBoxDiskCopyLogDetailsDeserializer(item as DataBoxDiskCopyLogDetails);\n\n case \"DataBoxHeavy\":\n return dataBoxHeavyAccountCopyLogDetailsDeserializer(\n item as DataBoxHeavyAccountCopyLogDetails,\n );\n\n default:\n return copyLogDetailsDeserializer(item);\n }\n}\n\n/** Copy log details for a storage account of a DataBox job */\nexport interface DataBoxAccountCopyLogDetails extends CopyLogDetails {\n /** Account name. */\n readonly accountName?: string;\n /** Link for copy logs. */\n readonly copyLogLink?: string;\n /** Link for copy verbose logs. This will be set only when LogCollectionLevel is set to Verbose. */\n readonly copyVerboseLogLink?: string;\n /** Indicates the type of job details. */\n copyLogDetailsType: \"DataBox\";\n}\n\nexport function dataBoxAccountCopyLogDetailsDeserializer(item: any): DataBoxAccountCopyLogDetails {\n return {\n copyLogDetailsType: item[\"copyLogDetailsType\"],\n accountName: item[\"accountName\"],\n copyLogLink: item[\"copyLogLink\"],\n copyVerboseLogLink: item[\"copyVerboseLogLink\"],\n };\n}\n\n/** Copy Log Details for customer disk */\nexport interface DataBoxCustomerDiskCopyLogDetails extends CopyLogDetails {\n /** Disk Serial Number. */\n readonly serialNumber?: string;\n /** Link for copy error logs. */\n readonly errorLogLink?: string;\n /** Link for copy verbose logs. */\n readonly verboseLogLink?: string;\n /** Indicates the type of job details. */\n copyLogDetailsType: \"DataBoxCustomerDisk\";\n}\n\nexport function dataBoxCustomerDiskCopyLogDetailsDeserializer(\n item: any,\n): DataBoxCustomerDiskCopyLogDetails {\n return {\n copyLogDetailsType: item[\"copyLogDetailsType\"],\n serialNumber: item[\"serialNumber\"],\n errorLogLink: item[\"errorLogLink\"],\n verboseLogLink: item[\"verboseLogLink\"],\n };\n}\n\n/** Copy Log Details for a disk */\nexport interface DataBoxDiskCopyLogDetails extends CopyLogDetails {\n /** Disk Serial Number. */\n readonly diskSerialNumber?: string;\n /** Link for copy error logs. */\n readonly errorLogLink?: string;\n /** Link for copy verbose logs. */\n readonly verboseLogLink?: string;\n /** Indicates the type of job details. */\n copyLogDetailsType: \"DataBoxDisk\";\n}\n\nexport function dataBoxDiskCopyLogDetailsDeserializer(item: any): DataBoxDiskCopyLogDetails {\n return {\n copyLogDetailsType: item[\"copyLogDetailsType\"],\n diskSerialNumber: item[\"diskSerialNumber\"],\n errorLogLink: item[\"errorLogLink\"],\n verboseLogLink: item[\"verboseLogLink\"],\n };\n}\n\n/** Copy log details for a storage account for Databox heavy */\nexport interface DataBoxHeavyAccountCopyLogDetails extends CopyLogDetails {\n /** Account name. */\n readonly accountName?: string;\n /** Link for copy logs. */\n readonly copyLogLink?: string[];\n /** Link for copy verbose logs. This will be set only when the LogCollectionLevel is set to verbose. */\n readonly copyVerboseLogLink?: string[];\n /** Indicates the type of job details. */\n copyLogDetailsType: \"DataBoxHeavy\";\n}\n\nexport function dataBoxHeavyAccountCopyLogDetailsDeserializer(\n item: any,\n): DataBoxHeavyAccountCopyLogDetails {\n return {\n copyLogDetailsType: item[\"copyLogDetailsType\"],\n accountName: item[\"accountName\"],\n copyLogLink: !item[\"copyLogLink\"]\n ? item[\"copyLogLink\"]\n : item[\"copyLogLink\"].map((p: any) => {\n return p;\n }),\n copyVerboseLogLink: !item[\"copyVerboseLogLink\"]\n ? item[\"copyVerboseLogLink\"]\n : item[\"copyVerboseLogLink\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Device erasure details with erasure completion status, secure erasure sas key and erasureordestructionlog sas key */\nexport interface DeviceErasureDetails {\n /** Holds the device erasure completion status */\n readonly deviceErasureStatus?: StageStatus;\n /** Shared access key to download cleanup or destruction certificate for device */\n readonly erasureOrDestructionCertificateSasKey?: string;\n /** Shared access key to download secure erasure certificate for the device */\n readonly secureErasureCertificateSasKey?: string;\n}\n\nexport function deviceErasureDetailsDeserializer(item: any): DeviceErasureDetails {\n return {\n deviceErasureStatus: item[\"deviceErasureStatus\"],\n erasureOrDestructionCertificateSasKey: item[\"erasureOrDestructionCertificateSasKey\"],\n secureErasureCertificateSasKey: item[\"secureErasureCertificateSasKey\"],\n };\n}\n\n/** Encryption key containing details about key to encrypt different keys. */\nexport interface KeyEncryptionKey {\n /** Type of encryption key used for key encryption. */\n kekType: KekType;\n /** Managed identity properties used for key encryption. */\n identityProperties?: IdentityProperties;\n /** Key encryption key. It is required in case of Customer managed KekType. */\n kekUrl?: string;\n /** Kek vault resource id. It is required in case of Customer managed KekType. */\n kekVaultResourceID?: string;\n}\n\nexport function keyEncryptionKeySerializer(item: KeyEncryptionKey): any {\n return {\n kekType: item[\"kekType\"],\n identityProperties: !item[\"identityProperties\"]\n ? item[\"identityProperties\"]\n : identityPropertiesSerializer(item[\"identityProperties\"]),\n kekUrl: item[\"kekUrl\"],\n kekVaultResourceID: item[\"kekVaultResourceID\"],\n };\n}\n\nexport function keyEncryptionKeyDeserializer(item: any): KeyEncryptionKey {\n return {\n kekType: item[\"kekType\"],\n identityProperties: !item[\"identityProperties\"]\n ? item[\"identityProperties\"]\n : identityPropertiesDeserializer(item[\"identityProperties\"]),\n kekUrl: item[\"kekUrl\"],\n kekVaultResourceID: item[\"kekVaultResourceID\"],\n };\n}\n\n/** Type of encryption key used for key encryption. */\nexport type KekType = \"MicrosoftManaged\" | \"CustomerManaged\";\n\n/** Managed identity properties. */\nexport interface IdentityProperties {\n /** Managed service identity type. */\n type?: string;\n /** User assigned identity properties. */\n userAssigned?: UserAssignedProperties;\n}\n\nexport function identityPropertiesSerializer(item: IdentityProperties): any {\n return {\n type: item[\"type\"],\n userAssigned: !item[\"userAssigned\"]\n ? item[\"userAssigned\"]\n : userAssignedPropertiesSerializer(item[\"userAssigned\"]),\n };\n}\n\nexport function identityPropertiesDeserializer(item: any): IdentityProperties {\n return {\n type: item[\"type\"],\n userAssigned: !item[\"userAssigned\"]\n ? item[\"userAssigned\"]\n : userAssignedPropertiesDeserializer(item[\"userAssigned\"]),\n };\n}\n\n/** User assigned identity properties. */\nexport interface UserAssignedProperties {\n /** Arm resource id for user assigned identity to be used to fetch MSI token. */\n resourceId?: string;\n}\n\nexport function userAssignedPropertiesSerializer(item: UserAssignedProperties): any {\n return { resourceId: item[\"resourceId\"] };\n}\n\nexport function userAssignedPropertiesDeserializer(item: any): UserAssignedProperties {\n return {\n resourceId: item[\"resourceId\"],\n };\n}\n\n/** Last Mitigation Action Performed On Job */\nexport interface LastMitigationActionOnJob {\n /** Action performed date time */\n actionDateTimeInUtc?: Date;\n /**\n * Action performed by customer,\n * possibility is that mitigation might happen by customer or service or by ops\n */\n isPerformedByCustomer?: boolean;\n /** Resolution code provided by customer */\n customerResolution?: CustomerResolutionCode;\n}\n\nexport function lastMitigationActionOnJobDeserializer(item: any): LastMitigationActionOnJob {\n return {\n actionDateTimeInUtc: !item[\"actionDateTimeInUtc\"]\n ? item[\"actionDateTimeInUtc\"]\n : new Date(item[\"actionDateTimeInUtc\"]),\n isPerformedByCustomer: item[\"isPerformedByCustomer\"],\n customerResolution: item[\"customerResolution\"],\n };\n}\n\n/** Datacenter address for given storage location. */\nexport interface DatacenterAddressResponse {\n /** Data center address type */\n /** The discriminator possible values: DatacenterAddressInstruction, DatacenterAddressLocation */\n datacenterAddressType: DatacenterAddressType;\n /** List of supported carriers for return shipment. */\n readonly supportedCarriersForReturnShipment?: string[];\n /** Azure Location where the Data Center serves primarily. */\n readonly dataCenterAzureLocation?: string;\n}\n\nexport function datacenterAddressResponseDeserializer(item: any): DatacenterAddressResponse {\n return {\n datacenterAddressType: item[\"datacenterAddressType\"],\n supportedCarriersForReturnShipment: !item[\"supportedCarriersForReturnShipment\"]\n ? item[\"supportedCarriersForReturnShipment\"]\n : item[\"supportedCarriersForReturnShipment\"].map((p: any) => {\n return p;\n }),\n dataCenterAzureLocation: item[\"dataCenterAzureLocation\"],\n };\n}\n\n/** Alias for DatacenterAddressResponseUnion */\nexport type DatacenterAddressResponseUnion =\n | DatacenterAddressInstructionResponse\n | DatacenterAddressLocationResponse\n | DatacenterAddressResponse;\n\nexport function datacenterAddressResponseUnionDeserializer(\n item: any,\n): DatacenterAddressResponseUnion {\n switch (item[\"datacenterAddressType\"]) {\n case \"DatacenterAddressInstruction\":\n return datacenterAddressInstructionResponseDeserializer(\n item as DatacenterAddressInstructionResponse,\n );\n\n case \"DatacenterAddressLocation\":\n return datacenterAddressLocationResponseDeserializer(\n item as DatacenterAddressLocationResponse,\n );\n\n default:\n return datacenterAddressResponseDeserializer(item);\n }\n}\n\n/** Data center address type */\nexport type DatacenterAddressType = \"DatacenterAddressLocation\" | \"DatacenterAddressInstruction\";\n\n/** Datacenter instruction for given storage location. */\nexport interface DatacenterAddressInstructionResponse extends DatacenterAddressResponse {\n /** Data center communication instruction */\n readonly communicationInstruction?: string;\n /** Data center address type */\n datacenterAddressType: \"DatacenterAddressInstruction\";\n}\n\nexport function datacenterAddressInstructionResponseDeserializer(\n item: any,\n): DatacenterAddressInstructionResponse {\n return {\n datacenterAddressType: item[\"datacenterAddressType\"],\n supportedCarriersForReturnShipment: !item[\"supportedCarriersForReturnShipment\"]\n ? item[\"supportedCarriersForReturnShipment\"]\n : item[\"supportedCarriersForReturnShipment\"].map((p: any) => {\n return p;\n }),\n dataCenterAzureLocation: item[\"dataCenterAzureLocation\"],\n communicationInstruction: item[\"communicationInstruction\"],\n };\n}\n\n/** Datacenter address for given storage location. */\nexport interface DatacenterAddressLocationResponse extends DatacenterAddressResponse {\n /** Contact person name */\n readonly contactPersonName?: string;\n /** Company name */\n readonly company?: string;\n /** Street address line 1 */\n readonly street1?: string;\n /** Street address line 2 */\n readonly street2?: string;\n /** Street address line 3 */\n readonly street3?: string;\n /** City name */\n readonly city?: string;\n /** name of the state */\n readonly state?: string;\n /** Zip code */\n readonly zip?: string;\n /** name of the country */\n readonly country?: string;\n /** Phone number */\n readonly phone?: string;\n /** Phone extension */\n readonly phoneExtension?: string;\n /** Address type */\n readonly addressType?: string;\n /** Special instruction for shipping */\n readonly additionalShippingInformation?: string;\n /** Data center address type */\n datacenterAddressType: \"DatacenterAddressLocation\";\n}\n\nexport function datacenterAddressLocationResponseDeserializer(\n item: any,\n): DatacenterAddressLocationResponse {\n return {\n datacenterAddressType: item[\"datacenterAddressType\"],\n supportedCarriersForReturnShipment: !item[\"supportedCarriersForReturnShipment\"]\n ? item[\"supportedCarriersForReturnShipment\"]\n : item[\"supportedCarriersForReturnShipment\"].map((p: any) => {\n return p;\n }),\n dataCenterAzureLocation: item[\"dataCenterAzureLocation\"],\n contactPersonName: item[\"contactPersonName\"],\n company: item[\"company\"],\n street1: item[\"street1\"],\n street2: item[\"street2\"],\n street3: item[\"street3\"],\n city: item[\"city\"],\n state: item[\"state\"],\n zip: item[\"zip\"],\n country: item[\"country\"],\n phone: item[\"phone\"],\n phoneExtension: item[\"phoneExtension\"],\n addressType: item[\"addressType\"],\n additionalShippingInformation: item[\"additionalShippingInformation\"],\n };\n}\n\n/** DataCenter code. */\nexport enum KnownDataCenterCode {\n /** Invalid */\n Invalid = \"Invalid\",\n /** BY2 */\n BY2 = \"BY2\",\n /** BY1 */\n BY1 = \"BY1\",\n /** ORK70 */\n ORK70 = \"ORK70\",\n /** AM2 */\n AM2 = \"AM2\",\n /** AMS20 */\n AMS20 = \"AMS20\",\n /** BY21 */\n BY21 = \"BY21\",\n /** BY24 */\n BY24 = \"BY24\",\n /** MWH01 */\n MWH01 = \"MWH01\",\n /** AMS06 */\n AMS06 = \"AMS06\",\n /** SSE90 */\n SSE90 = \"SSE90\",\n /** SYD03 */\n SYD03 = \"SYD03\",\n /** SYD23 */\n SYD23 = \"SYD23\",\n /** CBR20 */\n CBR20 = \"CBR20\",\n /** YTO20 */\n YTO20 = \"YTO20\",\n /** CWL20 */\n CWL20 = \"CWL20\",\n /** LON24 */\n LON24 = \"LON24\",\n /** BOM01 */\n BOM01 = \"BOM01\",\n /** BL20 */\n BL20 = \"BL20\",\n /** BL7 */\n BL7 = \"BL7\",\n /** SEL20 */\n SEL20 = \"SEL20\",\n /** TYO01 */\n TYO01 = \"TYO01\",\n /** BN1 */\n BN1 = \"BN1\",\n /** SN5 */\n SN5 = \"SN5\",\n /** CYS04 */\n CYS04 = \"CYS04\",\n /** TYO22 */\n TYO22 = \"TYO22\",\n /** YTO21 */\n YTO21 = \"YTO21\",\n /** YQB20 */\n YQB20 = \"YQB20\",\n /** FRA22 */\n FRA22 = \"FRA22\",\n /** MAA01 */\n MAA01 = \"MAA01\",\n /** CPQ02 */\n CPQ02 = \"CPQ02\",\n /** CPQ20 */\n CPQ20 = \"CPQ20\",\n /** SIN20 */\n SIN20 = \"SIN20\",\n /** HKG20 */\n HKG20 = \"HKG20\",\n /** SG2 */\n SG2 = \"SG2\",\n /** MEL23 */\n MEL23 = \"MEL23\",\n /** SEL21 */\n SEL21 = \"SEL21\",\n /** OSA20 */\n OSA20 = \"OSA20\",\n /** SHA03 */\n SHA03 = \"SHA03\",\n /** BJB */\n BJB = \"BJB\",\n /** JNB22 */\n JNB22 = \"JNB22\",\n /** JNB21 */\n JNB21 = \"JNB21\",\n /** MNZ21 */\n MNZ21 = \"MNZ21\",\n /** SN8 */\n SN8 = \"SN8\",\n /** AUH20 */\n AUH20 = \"AUH20\",\n /** ZRH20 */\n ZRH20 = \"ZRH20\",\n /** PUS20 */\n PUS20 = \"PUS20\",\n /** AdHoc */\n AdHoc = \"AdHoc\",\n /** CH1 */\n CH1 = \"CH1\",\n /** DSM05 */\n DSM05 = \"DSM05\",\n /** DUB07 */\n DUB07 = \"DUB07\",\n /** PNQ01 */\n PNQ01 = \"PNQ01\",\n /** SVG20 */\n SVG20 = \"SVG20\",\n /** OSA02 */\n OSA02 = \"OSA02\",\n /** OSA22 */\n OSA22 = \"OSA22\",\n /** PAR22 */\n PAR22 = \"PAR22\",\n /** BN7 */\n BN7 = \"BN7\",\n /** SN6 */\n SN6 = \"SN6\",\n /** BJS20 */\n BJS20 = \"BJS20\",\n /** BL24 */\n BL24 = \"BL24\",\n /** IDC5 */\n IDC5 = \"IDC5\",\n /** TYO23 */\n TYO23 = \"TYO23\",\n /** NTG20 */\n NTG20 = \"NTG20\",\n /** DXB23 */\n DXB23 = \"DXB23\",\n /** DSM11 */\n DSM11 = \"DSM11\",\n /** AMS25 */\n AMS25 = \"AMS25\",\n /** CPQ21 */\n CPQ21 = \"CPQ21\",\n /** OSA23 */\n OSA23 = \"OSA23\",\n}\n\n/**\n * DataCenter code. \\\n * {@link KnownDataCenterCode} can be used interchangeably with DataCenterCode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Invalid** \\\n * **BY2** \\\n * **BY1** \\\n * **ORK70** \\\n * **AM2** \\\n * **AMS20** \\\n * **BY21** \\\n * **BY24** \\\n * **MWH01** \\\n * **AMS06** \\\n * **SSE90** \\\n * **SYD03** \\\n * **SYD23** \\\n * **CBR20** \\\n * **YTO20** \\\n * **CWL20** \\\n * **LON24** \\\n * **BOM01** \\\n * **BL20** \\\n * **BL7** \\\n * **SEL20** \\\n * **TYO01** \\\n * **BN1** \\\n * **SN5** \\\n * **CYS04** \\\n * **TYO22** \\\n * **YTO21** \\\n * **YQB20** \\\n * **FRA22** \\\n * **MAA01** \\\n * **CPQ02** \\\n * **CPQ20** \\\n * **SIN20** \\\n * **HKG20** \\\n * **SG2** \\\n * **MEL23** \\\n * **SEL21** \\\n * **OSA20** \\\n * **SHA03** \\\n * **BJB** \\\n * **JNB22** \\\n * **JNB21** \\\n * **MNZ21** \\\n * **SN8** \\\n * **AUH20** \\\n * **ZRH20** \\\n * **PUS20** \\\n * **AdHoc** \\\n * **CH1** \\\n * **DSM05** \\\n * **DUB07** \\\n * **PNQ01** \\\n * **SVG20** \\\n * **OSA02** \\\n * **OSA22** \\\n * **PAR22** \\\n * **BN7** \\\n * **SN6** \\\n * **BJS20** \\\n * **BL24** \\\n * **IDC5** \\\n * **TYO23** \\\n * **NTG20** \\\n * **DXB23** \\\n * **DSM11** \\\n * **AMS25** \\\n * **CPQ21** \\\n * **OSA23**\n */\nexport type DataCenterCode = string;\n\n/** Customer disk job details. */\nexport interface DataBoxCustomerDiskJobDetails extends JobDetails {\n /** Contains the map of disk serial number to the disk details for import jobs. */\n importDiskDetailsCollection?: Record<string, ImportDiskDetails>;\n /** Contains the map of disk serial number to the disk details for export jobs. */\n readonly exportDiskDetailsCollection?: Record<string, ExportDiskDetails>;\n /** Copy progress per disk. */\n readonly copyProgress?: DataBoxCustomerDiskCopyProgress[];\n /** Delivery package shipping details. */\n readonly deliverToDcPackageDetails?: PackageCarrierInfo;\n /** Return package shipping details. */\n returnToCustomerPackageDetails: PackageCarrierDetails;\n /** Flag to indicate if disk manifest should be backed-up in the Storage Account. */\n enableManifestBackup?: boolean;\n /** Indicates the type of job details. */\n jobDetailsType: \"DataBoxCustomerDisk\";\n}\n\nexport function dataBoxCustomerDiskJobDetailsSerializer(item: DataBoxCustomerDiskJobDetails): any {\n return {\n contactDetails: contactDetailsSerializer(item[\"contactDetails\"]),\n shippingAddress: !item[\"shippingAddress\"]\n ? item[\"shippingAddress\"]\n : shippingAddressSerializer(item[\"shippingAddress\"]),\n dataImportDetails: !item[\"dataImportDetails\"]\n ? item[\"dataImportDetails\"]\n : dataImportDetailsArraySerializer(item[\"dataImportDetails\"]),\n dataExportDetails: !item[\"dataExportDetails\"]\n ? item[\"dataExportDetails\"]\n : dataExportDetailsArraySerializer(item[\"dataExportDetails\"]),\n jobDetailsType: item[\"jobDetailsType\"],\n preferences: !item[\"preferences\"]\n ? item[\"preferences\"]\n : preferencesSerializer(item[\"preferences\"]),\n reverseShippingDetails: !item[\"reverseShippingDetails\"]\n ? item[\"reverseShippingDetails\"]\n : reverseShippingDetailsSerializer(item[\"reverseShippingDetails\"]),\n keyEncryptionKey: !item[\"keyEncryptionKey\"]\n ? item[\"keyEncryptionKey\"]\n : keyEncryptionKeySerializer(item[\"keyEncryptionKey\"]),\n expectedDataSizeInTeraBytes: item[\"expectedDataSizeInTeraBytes\"],\n importDiskDetailsCollection: !item[\"importDiskDetailsCollection\"]\n ? item[\"importDiskDetailsCollection\"]\n : importDiskDetailsRecordSerializer(item[\"importDiskDetailsCollection\"]),\n returnToCustomerPackageDetails: packageCarrierDetailsSerializer(\n item[\"returnToCustomerPackageDetails\"],\n ),\n enableManifestBackup: item[\"enableManifestBackup\"],\n };\n}\n\nexport function dataBoxCustomerDiskJobDetailsDeserializer(\n item: any,\n): DataBoxCustomerDiskJobDetails {\n return {\n jobStages: !item[\"jobStages\"]\n ? item[\"jobStages\"]\n : jobStagesArrayDeserializer(item[\"jobStages\"]),\n contactDetails: contactDetailsDeserializer(item[\"contactDetails\"]),\n shippingAddress: !item[\"shippingAddress\"]\n ? item[\"shippingAddress\"]\n : shippingAddressDeserializer(item[\"shippingAddress\"]),\n deliveryPackage: !item[\"deliveryPackage\"]\n ? item[\"deliveryPackage\"]\n : packageShippingDetailsDeserializer(item[\"deliveryPackage\"]),\n returnPackage: !item[\"returnPackage\"]\n ? item[\"returnPackage\"]\n : packageShippingDetailsDeserializer(item[\"returnPackage\"]),\n dataImportDetails: !item[\"dataImportDetails\"]\n ? item[\"dataImportDetails\"]\n : dataImportDetailsArrayDeserializer(item[\"dataImportDetails\"]),\n dataExportDetails: !item[\"dataExportDetails\"]\n ? item[\"dataExportDetails\"]\n : dataExportDetailsArrayDeserializer(item[\"dataExportDetails\"]),\n jobDetailsType: item[\"jobDetailsType\"],\n preferences: !item[\"preferences\"]\n ? item[\"preferences\"]\n : preferencesDeserializer(item[\"preferences\"]),\n reverseShippingDetails: !item[\"reverseShippingDetails\"]\n ? item[\"reverseShippingDetails\"]\n : reverseShippingDetailsDeserializer(item[\"reverseShippingDetails\"]),\n copyLogDetails: !item[\"copyLogDetails\"]\n ? item[\"copyLogDetails\"]\n : copyLogDetailsUnionArrayDeserializer(item[\"copyLogDetails\"]),\n reverseShipmentLabelSasKey: item[\"reverseShipmentLabelSasKey\"],\n chainOfCustodySasKey: item[\"chainOfCustodySasKey\"],\n deviceErasureDetails: !item[\"deviceErasureDetails\"]\n ? item[\"deviceErasureDetails\"]\n : deviceErasureDetailsDeserializer(item[\"deviceErasureDetails\"]),\n keyEncryptionKey: !item[\"keyEncryptionKey\"]\n ? item[\"keyEncryptionKey\"]\n : keyEncryptionKeyDeserializer(item[\"keyEncryptionKey\"]),\n expectedDataSizeInTeraBytes: item[\"expectedDataSizeInTeraBytes\"],\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : item[\"actions\"].map((p: any) => {\n return p;\n }),\n lastMitigationActionOnJob: !item[\"lastMitigationActionOnJob\"]\n ? item[\"lastMitigationActionOnJob\"]\n : lastMitigationActionOnJobDeserializer(item[\"lastMitigationActionOnJob\"]),\n datacenterAddress: !item[\"datacenterAddress\"]\n ? item[\"datacenterAddress\"]\n : datacenterAddressResponseUnionDeserializer(item[\"datacenterAddress\"]),\n dataCenterCode: item[\"dataCenterCode\"],\n importDiskDetailsCollection: !item[\"importDiskDetailsCollection\"]\n ? item[\"importDiskDetailsCollection\"]\n : importDiskDetailsRecordDeserializer(item[\"importDiskDetailsCollection\"]),\n exportDiskDetailsCollection: !item[\"exportDiskDetailsCollection\"]\n ? item[\"exportDiskDetailsCollection\"]\n : exportDiskDetailsRecordDeserializer(item[\"exportDiskDetailsCollection\"]),\n copyProgress: !item[\"copyProgress\"]\n ? item[\"copyProgress\"]\n : dataBoxCustomerDiskCopyProgressArrayDeserializer(item[\"copyProgress\"]),\n deliverToDcPackageDetails: !item[\"deliverToDcPackageDetails\"]\n ? item[\"deliverToDcPackageDetails\"]\n : packageCarrierInfoDeserializer(item[\"deliverToDcPackageDetails\"]),\n returnToCustomerPackageDetails: packageCarrierDetailsDeserializer(\n item[\"returnToCustomerPackageDetails\"],\n ),\n enableManifestBackup: item[\"enableManifestBackup\"],\n };\n}\n\nexport function importDiskDetailsRecordSerializer(\n item: Record<string, ImportDiskDetails>,\n): Record<string, any> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : importDiskDetailsSerializer(item[key]);\n });\n return result;\n}\n\nexport function importDiskDetailsRecordDeserializer(\n item: Record<string, any>,\n): Record<string, ImportDiskDetails> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : importDiskDetailsDeserializer(item[key]);\n });\n return result;\n}\n\n/** Import disk details */\nexport interface ImportDiskDetails {\n /** The relative path of the manifest file on the disk. */\n manifestFile: string;\n /** The Base16-encoded MD5 hash of the manifest file on the disk. */\n manifestHash: string;\n /** BitLocker key used to encrypt the disk. */\n bitLockerKey: string;\n /** Path to backed up manifest, only returned if enableManifestBackup is true. */\n readonly backupManifestCloudPath?: string;\n}\n\nexport function importDiskDetailsSerializer(item: ImportDiskDetails): any {\n return {\n manifestFile: item[\"manifestFile\"],\n manifestHash: item[\"manifestHash\"],\n bitLockerKey: item[\"bitLockerKey\"],\n };\n}\n\nexport function importDiskDetailsDeserializer(item: any): ImportDiskDetails {\n return {\n manifestFile: item[\"manifestFile\"],\n manifestHash: item[\"manifestHash\"],\n bitLockerKey: item[\"bitLockerKey\"],\n backupManifestCloudPath: item[\"backupManifestCloudPath\"],\n };\n}\n\nexport function exportDiskDetailsRecordDeserializer(\n item: Record<string, any>,\n): Record<string, ExportDiskDetails> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : exportDiskDetailsDeserializer(item[key]);\n });\n return result;\n}\n\n/** Export disk details */\nexport interface ExportDiskDetails {\n /** The relative path of the manifest file on the disk. */\n readonly manifestFile?: string;\n /** The Base16-encoded MD5 hash of the manifest file on the disk. */\n readonly manifestHash?: string;\n /** Path to backed up manifest, only returned if enableManifestBackup is true. */\n readonly backupManifestCloudPath?: string;\n}\n\nexport function exportDiskDetailsDeserializer(item: any): ExportDiskDetails {\n return {\n manifestFile: item[\"manifestFile\"],\n manifestHash: item[\"manifestHash\"],\n backupManifestCloudPath: item[\"backupManifestCloudPath\"],\n };\n}\n\nexport function dataBoxCustomerDiskCopyProgressArrayDeserializer(\n result: Array<DataBoxCustomerDiskCopyProgress>,\n): any[] {\n return result.map((item) => {\n return dataBoxCustomerDiskCopyProgressDeserializer(item);\n });\n}\n\n/** DataBox CustomerDisk Copy Progress */\nexport interface DataBoxCustomerDiskCopyProgress extends CopyProgress {\n /** Disk Serial Number. */\n readonly serialNumber?: string;\n /** The Status of the copy */\n readonly copyStatus?: CopyStatus;\n}\n\nexport function dataBoxCustomerDiskCopyProgressDeserializer(\n item: any,\n): DataBoxCustomerDiskCopyProgress {\n return {\n storageAccountName: item[\"storageAccountName\"],\n transferType: item[\"transferType\"],\n dataAccountType: item[\"dataAccountType\"],\n accountId: item[\"accountId\"],\n bytesProcessed: item[\"bytesProcessed\"],\n totalBytesToProcess: item[\"totalBytesToProcess\"],\n filesProcessed: item[\"filesProcessed\"],\n totalFilesToProcess: item[\"totalFilesToProcess\"],\n invalidFilesProcessed: item[\"invalidFilesProcessed\"],\n invalidFileBytesUploaded: item[\"invalidFileBytesUploaded\"],\n renamedContainerCount: item[\"renamedContainerCount\"],\n filesErroredOut: item[\"filesErroredOut\"],\n directoriesErroredOut: item[\"directoriesErroredOut\"],\n invalidDirectoriesProcessed: item[\"invalidDirectoriesProcessed\"],\n isEnumerationInProgress: item[\"isEnumerationInProgress\"],\n error: !item[\"error\"] ? item[\"error\"] : cloudErrorDeserializer(item[\"error\"]),\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : item[\"actions\"].map((p: any) => {\n return p;\n }),\n serialNumber: item[\"serialNumber\"],\n copyStatus: item[\"copyStatus\"],\n };\n}\n\n/** The Status of the copy */\nexport enum KnownCopyStatus {\n /** Data copy hasn't started yet. */\n NotStarted = \"NotStarted\",\n /** Data copy is in progress. */\n InProgress = \"InProgress\",\n /** Data copy completed. */\n Completed = \"Completed\",\n /** Data copy completed with errors. */\n CompletedWithErrors = \"CompletedWithErrors\",\n /** Data copy failed. No data was copied. */\n Failed = \"Failed\",\n /** No copy triggered as device was not returned. */\n NotReturned = \"NotReturned\",\n /** The Device has hit hardware issues. */\n HardwareError = \"HardwareError\",\n /** Data copy failed. The Device was formatted by user. */\n DeviceFormatted = \"DeviceFormatted\",\n /** Data copy failed. Device metadata was modified by user. */\n DeviceMetadataModified = \"DeviceMetadataModified\",\n /** Data copy failed. Storage Account was not accessible during copy. */\n StorageAccountNotAccessible = \"StorageAccountNotAccessible\",\n /** Data copy failed. The Device data content is not supported. */\n UnsupportedData = \"UnsupportedData\",\n /** No copy triggered as device was not received. */\n DriveNotReceived = \"DriveNotReceived\",\n /** No copy triggered as device type is not supported. */\n UnsupportedDrive = \"UnsupportedDrive\",\n /** Copy failed due to service error. */\n OtherServiceError = \"OtherServiceError\",\n /** Copy failed due to user error. */\n OtherUserError = \"OtherUserError\",\n /** Copy failed due to disk detection error. */\n DriveNotDetected = \"DriveNotDetected\",\n /** Copy failed due to corrupted drive. */\n DriveCorrupted = \"DriveCorrupted\",\n /** Copy failed due to modified or removed metadata files. */\n MetadataFilesModifiedOrRemoved = \"MetadataFilesModifiedOrRemoved\",\n}\n\n/**\n * The Status of the copy \\\n * {@link KnownCopyStatus} can be used interchangeably with CopyStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **NotStarted**: Data copy hasn't started yet. \\\n * **InProgress**: Data copy is in progress. \\\n * **Completed**: Data copy completed. \\\n * **CompletedWithErrors**: Data copy completed with errors. \\\n * **Failed**: Data copy failed. No data was copied. \\\n * **NotReturned**: No copy triggered as device was not returned. \\\n * **HardwareError**: The Device has hit hardware issues. \\\n * **DeviceFormatted**: Data copy failed. The Device was formatted by user. \\\n * **DeviceMetadataModified**: Data copy failed. Device metadata was modified by user. \\\n * **StorageAccountNotAccessible**: Data copy failed. Storage Account was not accessible during copy. \\\n * **UnsupportedData**: Data copy failed. The Device data content is not supported. \\\n * **DriveNotReceived**: No copy triggered as device was not received. \\\n * **UnsupportedDrive**: No copy triggered as device type is not supported. \\\n * **OtherServiceError**: Copy failed due to service error. \\\n * **OtherUserError**: Copy failed due to user error. \\\n * **DriveNotDetected**: Copy failed due to disk detection error. \\\n * **DriveCorrupted**: Copy failed due to corrupted drive. \\\n * **MetadataFilesModifiedOrRemoved**: Copy failed due to modified or removed metadata files.\n */\nexport type CopyStatus = string;\n\n/** package carrier info */\nexport interface PackageCarrierInfo {\n /** Name of the carrier. */\n carrierName?: string;\n /** Tracking Id of shipment. */\n trackingId?: string;\n}\n\nexport function packageCarrierInfoSerializer(item: PackageCarrierInfo): any {\n return { carrierName: item[\"carrierName\"], trackingId: item[\"trackingId\"] };\n}\n\nexport function packageCarrierInfoDeserializer(item: any): PackageCarrierInfo {\n return {\n carrierName: item[\"carrierName\"],\n trackingId: item[\"trackingId\"],\n };\n}\n\n/** Package carrier details. */\nexport interface PackageCarrierDetails {\n /** Carrier Account Number of customer for customer disk. */\n carrierAccountNumber?: string;\n /** Name of the carrier. */\n carrierName?: string;\n /** Tracking Id of shipment. */\n trackingId?: string;\n}\n\nexport function packageCarrierDetailsSerializer(item: PackageCarrierDetails): any {\n return {\n carrierAccountNumber: item[\"carrierAccountNumber\"],\n carrierName: item[\"carrierName\"],\n trackingId: item[\"trackingId\"],\n };\n}\n\nexport function packageCarrierDetailsDeserializer(item: any): PackageCarrierDetails {\n return {\n carrierAccountNumber: item[\"carrierAccountNumber\"],\n carrierName: item[\"carrierName\"],\n trackingId: item[\"trackingId\"],\n };\n}\n\n/** DataBox Disk Job Details. */\nexport interface DataBoxDiskJobDetails extends JobDetails {\n /** User preference on what size disks are needed for the job. The map is from the disk size in TB to the count. Eg. {2,5} means 5 disks of 2 TB size. Key is string but will be checked against an int. */\n preferredDisks?: Record<string, number>;\n /** Copy progress per disk. */\n readonly copyProgress?: DataBoxDiskCopyProgress[];\n /** Copy progress per disk. */\n readonly granularCopyProgress?: DataBoxDiskGranularCopyProgress[];\n /** Copy progress per disk. */\n readonly granularCopyLogDetails?: DataBoxDiskGranularCopyLogDetails[];\n /** Contains the map of disk serial number to the disk size being used for the job. Is returned only after the disks are shipped to the customer. */\n readonly disksAndSizeDetails?: Record<string, number>;\n /** User entered passkey for DataBox Disk job. */\n passkey?: string;\n /** Indicates the type of job details. */\n jobDetailsType: \"DataBoxDisk\";\n}\n\nexport function dataBoxDiskJobDetailsSerializer(item: DataBoxDiskJobDetails): any {\n return {\n contactDetails: contactDetailsSerializer(item[\"contactDetails\"]),\n shippingAddress: !item[\"shippingAddress\"]\n ? item[\"shippingAddress\"]\n : shippingAddressSerializer(item[\"shippingAddress\"]),\n dataImportDetails: !item[\"dataImportDetails\"]\n ? item[\"dataImportDetails\"]\n : dataImportDetailsArraySerializer(item[\"dataImportDetails\"]),\n dataExportDetails: !item[\"dataExportDetails\"]\n ? item[\"dataExportDetails\"]\n : dataExportDetailsArraySerializer(item[\"dataExportDetails\"]),\n jobDetailsType: item[\"jobDetailsType\"],\n preferences: !item[\"preferences\"]\n ? item[\"preferences\"]\n : preferencesSerializer(item[\"preferences\"]),\n reverseShippingDetails: !item[\"reverseShippingDetails\"]\n ? item[\"reverseShippingDetails\"]\n : reverseShippingDetailsSerializer(item[\"reverseShippingDetails\"]),\n keyEncryptionKey: !item[\"keyEncryptionKey\"]\n ? item[\"keyEncryptionKey\"]\n : keyEncryptionKeySerializer(item[\"keyEncryptionKey\"]),\n expectedDataSizeInTeraBytes: item[\"expectedDataSizeInTeraBytes\"],\n preferredDisks: item[\"preferredDisks\"],\n passkey: item[\"passkey\"],\n };\n}\n\nexport function dataBoxDiskJobDetailsDeserializer(item: any): DataBoxDiskJobDetails {\n return {\n jobStages: !item[\"jobStages\"]\n ? item[\"jobStages\"]\n : jobStagesArrayDeserializer(item[\"jobStages\"]),\n contactDetails: contactDetailsDeserializer(item[\"contactDetails\"]),\n shippingAddress: !item[\"shippingAddress\"]\n ? item[\"shippingAddress\"]\n : shippingAddressDeserializer(item[\"shippingAddress\"]),\n deliveryPackage: !item[\"deliveryPackage\"]\n ? item[\"deliveryPackage\"]\n : packageShippingDetailsDeserializer(item[\"deliveryPackage\"]),\n returnPackage: !item[\"returnPackage\"]\n ? item[\"returnPackage\"]\n : packageShippingDetailsDeserializer(item[\"returnPackage\"]),\n dataImportDetails: !item[\"dataImportDetails\"]\n ? item[\"dataImportDetails\"]\n : dataImportDetailsArrayDeserializer(item[\"dataImportDetails\"]),\n dataExportDetails: !item[\"dataExportDetails\"]\n ? item[\"dataExportDetails\"]\n : dataExportDetailsArrayDeserializer(item[\"dataExportDetails\"]),\n jobDetailsType: item[\"jobDetailsType\"],\n preferences: !item[\"preferences\"]\n ? item[\"preferences\"]\n : preferencesDeserializer(item[\"preferences\"]),\n reverseShippingDetails: !item[\"reverseShippingDetails\"]\n ? item[\"reverseShippingDetails\"]\n : reverseShippingDetailsDeserializer(item[\"reverseShippingDetails\"]),\n copyLogDetails: !item[\"copyLogDetails\"]\n ? item[\"copyLogDetails\"]\n : copyLogDetailsUnionArrayDeserializer(item[\"copyLogDetails\"]),\n reverseShipmentLabelSasKey: item[\"reverseShipmentLabelSasKey\"],\n chainOfCustodySasKey: item[\"chainOfCustodySasKey\"],\n deviceErasureDetails: !item[\"deviceErasureDetails\"]\n ? item[\"deviceErasureDetails\"]\n : deviceErasureDetailsDeserializer(item[\"deviceErasureDetails\"]),\n keyEncryptionKey: !item[\"keyEncryptionKey\"]\n ? item[\"keyEncryptionKey\"]\n : keyEncryptionKeyDeserializer(item[\"keyEncryptionKey\"]),\n expectedDataSizeInTeraBytes: item[\"expectedDataSizeInTeraBytes\"],\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : item[\"actions\"].map((p: any) => {\n return p;\n }),\n lastMitigationActionOnJob: !item[\"lastMitigationActionOnJob\"]\n ? item[\"lastMitigationActionOnJob\"]\n : lastMitigationActionOnJobDeserializer(item[\"lastMitigationActionOnJob\"]),\n datacenterAddress: !item[\"datacenterAddress\"]\n ? item[\"datacenterAddress\"]\n : datacenterAddressResponseUnionDeserializer(item[\"datacenterAddress\"]),\n dataCenterCode: item[\"dataCenterCode\"],\n preferredDisks: !item[\"preferredDisks\"]\n ? item[\"preferredDisks\"]\n : Object.fromEntries(\n Object.entries(item[\"preferredDisks\"]).map(([k, p]: [string, any]) => [k, p]),\n ),\n copyProgress: !item[\"copyProgress\"]\n ? item[\"copyProgress\"]\n : dataBoxDiskCopyProgressArrayDeserializer(item[\"copyProgress\"]),\n granularCopyProgress: !item[\"granularCopyProgress\"]\n ? item[\"granularCopyProgress\"]\n : dataBoxDiskGranularCopyProgressArrayDeserializer(item[\"granularCopyProgress\"]),\n granularCopyLogDetails: !item[\"granularCopyLogDetails\"]\n ? item[\"granularCopyLogDetails\"]\n : dataBoxDiskGranularCopyLogDetailsArrayDeserializer(item[\"granularCopyLogDetails\"]),\n disksAndSizeDetails: !item[\"disksAndSizeDetails\"]\n ? item[\"disksAndSizeDetails\"]\n : Object.fromEntries(\n Object.entries(item[\"disksAndSizeDetails\"]).map(([k, p]: [string, any]) => [k, p]),\n ),\n passkey: item[\"passkey\"],\n };\n}\n\nexport function dataBoxDiskCopyProgressArrayDeserializer(\n result: Array<DataBoxDiskCopyProgress>,\n): any[] {\n return result.map((item) => {\n return dataBoxDiskCopyProgressDeserializer(item);\n });\n}\n\n/** DataBox Disk Copy Progress */\nexport interface DataBoxDiskCopyProgress {\n /** The serial number of the disk */\n readonly serialNumber?: string;\n /** Bytes copied during the copy of disk. */\n readonly bytesCopied?: number;\n /** Indicates the percentage completed for the copy of the disk. */\n readonly percentComplete?: number;\n /** The Status of the copy */\n readonly status?: CopyStatus;\n /** Error, if any, in the stage */\n readonly error?: CloudError;\n /** Available actions on the job. */\n readonly actions?: CustomerResolutionCode[];\n}\n\nexport function dataBoxDiskCopyProgressDeserializer(item: any): DataBoxDiskCopyProgress {\n return {\n serialNumber: item[\"serialNumber\"],\n bytesCopied: item[\"bytesCopied\"],\n percentComplete: item[\"percentComplete\"],\n status: item[\"status\"],\n error: !item[\"error\"] ? item[\"error\"] : cloudErrorDeserializer(item[\"error\"]),\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : item[\"actions\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function dataBoxDiskGranularCopyProgressArrayDeserializer(\n result: Array<DataBoxDiskGranularCopyProgress>,\n): any[] {\n return result.map((item) => {\n return dataBoxDiskGranularCopyProgressDeserializer(item);\n });\n}\n\n/** DataBox Disk Granular Copy Progress */\nexport interface DataBoxDiskGranularCopyProgress extends GranularCopyProgress {\n /** Disk Serial Number. */\n readonly serialNumber?: string;\n /** The Status of the copy */\n readonly copyStatus?: CopyStatus;\n}\n\nexport function dataBoxDiskGranularCopyProgressDeserializer(\n item: any,\n): DataBoxDiskGranularCopyProgress {\n return {\n storageAccountName: item[\"storageAccountName\"],\n transferType: item[\"transferType\"],\n dataAccountType: item[\"dataAccountType\"],\n accountId: item[\"accountId\"],\n bytesProcessed: item[\"bytesProcessed\"],\n totalBytesToProcess: item[\"totalBytesToProcess\"],\n filesProcessed: item[\"filesProcessed\"],\n totalFilesToProcess: item[\"totalFilesToProcess\"],\n invalidFilesProcessed: item[\"invalidFilesProcessed\"],\n invalidFileBytesUploaded: item[\"invalidFileBytesUploaded\"],\n renamedContainerCount: item[\"renamedContainerCount\"],\n filesErroredOut: item[\"filesErroredOut\"],\n directoriesErroredOut: item[\"directoriesErroredOut\"],\n invalidDirectoriesProcessed: item[\"invalidDirectoriesProcessed\"],\n isEnumerationInProgress: item[\"isEnumerationInProgress\"],\n error: !item[\"error\"] ? item[\"error\"] : cloudErrorDeserializer(item[\"error\"]),\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : item[\"actions\"].map((p: any) => {\n return p;\n }),\n serialNumber: item[\"serialNumber\"],\n copyStatus: item[\"copyStatus\"],\n };\n}\n\nexport function dataBoxDiskGranularCopyLogDetailsArrayDeserializer(\n result: Array<DataBoxDiskGranularCopyLogDetails>,\n): any[] {\n return result.map((item) => {\n return dataBoxDiskGranularCopyLogDetailsDeserializer(item);\n });\n}\n\n/** Granular Copy Log Details for customer disk */\nexport interface DataBoxDiskGranularCopyLogDetails extends GranularCopyLogDetails {\n /** Disk Serial Number. */\n readonly serialNumber?: string;\n /** Account id. */\n readonly accountId?: string;\n /** Link for copy error logs. */\n readonly errorLogLink?: string;\n /** Link for copy verbose logs. */\n readonly verboseLogLink?: string;\n /** Indicates the type of job details. */\n copyLogDetailsType: \"DataBoxCustomerDisk\";\n}\n\nexport function dataBoxDiskGranularCopyLogDetailsDeserializer(\n item: any,\n): DataBoxDiskGranularCopyLogDetails {\n return {\n copyLogDetailsType: item[\"copyLogDetailsType\"],\n serialNumber: item[\"serialNumber\"],\n accountId: item[\"accountId\"],\n errorLogLink: item[\"errorLogLink\"],\n verboseLogLink: item[\"verboseLogLink\"],\n };\n}\n\n/** Databox Heavy Device Job Details */\nexport interface DataBoxHeavyJobDetails extends JobDetails {\n /** Copy progress per account. */\n readonly copyProgress?: CopyProgress[];\n /** Set Device password for unlocking Databox Heavy. Should not be passed for TransferType:ExportFromAzure jobs. If this is not passed, the service will generate password itself. This will not be returned in Get Call. Password Requirements : Password must be minimum of 12 and maximum of 64 characters. Password must have at least one uppercase alphabet, one number and one special character. Password cannot have the following characters : IilLoO0 Password can have only alphabets, numbers and these characters : @#\\-$%^!+=;:_()]+ */\n devicePassword?: string;\n /** Indicates the type of job details. */\n jobDetailsType: \"DataBoxHeavy\";\n}\n\nexport function dataBoxHeavyJobDetailsSerializer(item: DataBoxHeavyJobDetails): any {\n return {\n contactDetails: contactDetailsSerializer(item[\"contactDetails\"]),\n shippingAddress: !item[\"shippingAddress\"]\n ? item[\"shippingAddress\"]\n : shippingAddressSerializer(item[\"shippingAddress\"]),\n dataImportDetails: !item[\"dataImportDetails\"]\n ? item[\"dataImportDetails\"]\n : dataImportDetailsArraySerializer(item[\"dataImportDetails\"]),\n dataExportDetails: !item[\"dataExportDetails\"]\n ? item[\"dataExportDetails\"]\n : dataExportDetailsArraySerializer(item[\"dataExportDetails\"]),\n jobDetailsType: item[\"jobDetailsType\"],\n preferences: !item[\"preferences\"]\n ? item[\"preferences\"]\n : preferencesSerializer(item[\"preferences\"]),\n reverseShippingDetails: !item[\"reverseShippingDetails\"]\n ? item[\"reverseShippingDetails\"]\n : reverseShippingDetailsSerializer(item[\"reverseShippingDetails\"]),\n keyEncryptionKey: !item[\"keyEncryptionKey\"]\n ? item[\"keyEncryptionKey\"]\n : keyEncryptionKeySerializer(item[\"keyEncryptionKey\"]),\n expectedDataSizeInTeraBytes: item[\"expectedDataSizeInTeraBytes\"],\n devicePassword: item[\"devicePassword\"],\n };\n}\n\nexport function dataBoxHeavyJobDetailsDeserializer(item: any): DataBoxHeavyJobDetails {\n return {\n jobStages: !item[\"jobStages\"]\n ? item[\"jobStages\"]\n : jobStagesArrayDeserializer(item[\"jobStages\"]),\n contactDetails: contactDetailsDeserializer(item[\"contactDetails\"]),\n shippingAddress: !item[\"shippingAddress\"]\n ? item[\"shippingAddress\"]\n : shippingAddressDeserializer(item[\"shippingAddress\"]),\n deliveryPackage: !item[\"deliveryPackage\"]\n ? item[\"deliveryPackage\"]\n : packageShippingDetailsDeserializer(item[\"deliveryPackage\"]),\n returnPackage: !item[\"returnPackage\"]\n ? item[\"returnPackage\"]\n : packageShippingDetailsDeserializer(item[\"returnPackage\"]),\n dataImportDetails: !item[\"dataImportDetails\"]\n ? item[\"dataImportDetails\"]\n : dataImportDetailsArrayDeserializer(item[\"dataImportDetails\"]),\n dataExportDetails: !item[\"dataExportDetails\"]\n ? item[\"dataExportDetails\"]\n : dataExportDetailsArrayDeserializer(item[\"dataExportDetails\"]),\n jobDetailsType: item[\"jobDetailsType\"],\n preferences: !item[\"preferences\"]\n ? item[\"preferences\"]\n : preferencesDeserializer(item[\"preferences\"]),\n reverseShippingDetails: !item[\"reverseShippingDetails\"]\n ? item[\"reverseShippingDetails\"]\n : reverseShippingDetailsDeserializer(item[\"reverseShippingDetails\"]),\n copyLogDetails: !item[\"copyLogDetails\"]\n ? item[\"copyLogDetails\"]\n : copyLogDetailsUnionArrayDeserializer(item[\"copyLogDetails\"]),\n reverseShipmentLabelSasKey: item[\"reverseShipmentLabelSasKey\"],\n chainOfCustodySasKey: item[\"chainOfCustodySasKey\"],\n deviceErasureDetails: !item[\"deviceErasureDetails\"]\n ? item[\"deviceErasureDetails\"]\n : deviceErasureDetailsDeserializer(item[\"deviceErasureDetails\"]),\n keyEncryptionKey: !item[\"keyEncryptionKey\"]\n ? item[\"keyEncryptionKey\"]\n : keyEncryptionKeyDeserializer(item[\"keyEncryptionKey\"]),\n expectedDataSizeInTeraBytes: item[\"expectedDataSizeInTeraBytes\"],\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : item[\"actions\"].map((p: any) => {\n return p;\n }),\n lastMitigationActionOnJob: !item[\"lastMitigationActionOnJob\"]\n ? item[\"lastMitigationActionOnJob\"]\n : lastMitigationActionOnJobDeserializer(item[\"lastMitigationActionOnJob\"]),\n datacenterAddress: !item[\"datacenterAddress\"]\n ? item[\"datacenterAddress\"]\n : datacenterAddressResponseUnionDeserializer(item[\"datacenterAddress\"]),\n dataCenterCode: item[\"dataCenterCode\"],\n copyProgress: !item[\"copyProgress\"]\n ? item[\"copyProgress\"]\n : copyProgressArrayDeserializer(item[\"copyProgress\"]),\n devicePassword: item[\"devicePassword\"],\n };\n}\n\nexport function copyProgressArrayDeserializer(result: Array<CopyProgress>): any[] {\n return result.map((item) => {\n return copyProgressDeserializer(item);\n });\n}\n\n/** Copy progress. */\nexport interface CopyProgress {\n /** Name of the storage account. This will be empty for data account types other than storage account. */\n readonly storageAccountName?: string;\n /** Transfer type of data */\n readonly transferType?: TransferType;\n /** Data Account Type. */\n readonly dataAccountType?: DataAccountType;\n /** Id of the account where the data needs to be uploaded. */\n readonly accountId?: string;\n /** To indicate bytes transferred. */\n readonly bytesProcessed?: number;\n /** Total amount of data to be processed by the job. */\n readonly totalBytesToProcess?: number;\n /** Number of files processed */\n readonly filesProcessed?: number;\n /** Total files to process */\n readonly totalFilesToProcess?: number;\n /** Number of files not adhering to azure naming conventions which were processed by automatic renaming */\n readonly invalidFilesProcessed?: number;\n /** Total amount of data not adhering to azure naming conventions which were processed by automatic renaming */\n readonly invalidFileBytesUploaded?: number;\n /** Number of folders not adhering to azure naming conventions which were processed by automatic renaming */\n readonly renamedContainerCount?: number;\n /** Number of files which could not be copied */\n readonly filesErroredOut?: number;\n /** To indicate directories errored out in the job. */\n readonly directoriesErroredOut?: number;\n /** To indicate directories renamed */\n readonly invalidDirectoriesProcessed?: number;\n /**\n * To indicate if enumeration of data is in progress.\n * Until this is true, the TotalBytesToProcess may not be valid.\n */\n readonly isEnumerationInProgress?: boolean;\n /** Error, if any, in the stage */\n readonly error?: CloudError;\n /** Available actions on the job. */\n readonly actions?: CustomerResolutionCode[];\n}\n\nexport function copyProgressDeserializer(item: any): CopyProgress {\n return {\n storageAccountName: item[\"storageAccountName\"],\n transferType: item[\"transferType\"],\n dataAccountType: item[\"dataAccountType\"],\n accountId: item[\"accountId\"],\n bytesProcessed: item[\"bytesProcessed\"],\n totalBytesToProcess: item[\"totalBytesToProcess\"],\n filesProcessed: item[\"filesProcessed\"],\n totalFilesToProcess: item[\"totalFilesToProcess\"],\n invalidFilesProcessed: item[\"invalidFilesProcessed\"],\n invalidFileBytesUploaded: item[\"invalidFileBytesUploaded\"],\n renamedContainerCount: item[\"renamedContainerCount\"],\n filesErroredOut: item[\"filesErroredOut\"],\n directoriesErroredOut: item[\"directoriesErroredOut\"],\n invalidDirectoriesProcessed: item[\"invalidDirectoriesProcessed\"],\n isEnumerationInProgress: item[\"isEnumerationInProgress\"],\n error: !item[\"error\"] ? item[\"error\"] : cloudErrorDeserializer(item[\"error\"]),\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : item[\"actions\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Databox Job Details */\nexport interface DataBoxJobDetails extends JobDetails {\n /** Copy progress per storage account. */\n readonly copyProgress?: CopyProgress[];\n /** Set Device password for unlocking Databox. Should not be passed for TransferType:ExportFromAzure jobs. If this is not passed, the service will generate password itself. This will not be returned in Get Call. Password Requirements : Password must be minimum of 12 and maximum of 64 characters. Password must have at least one uppercase alphabet, one number and one special character. Password cannot have the following characters : IilLoO0 Password can have only alphabets, numbers and these characters : @#\\-$%^!+=;:_()]+ */\n devicePassword?: string;\n /** Indicates the type of job details. */\n jobDetailsType: \"DataBox\";\n}\n\nexport function dataBoxJobDetailsSerializer(item: DataBoxJobDetails): any {\n return {\n contactDetails: contactDetailsSerializer(item[\"contactDetails\"]),\n shippingAddress: !item[\"shippingAddress\"]\n ? item[\"shippingAddress\"]\n : shippingAddressSerializer(item[\"shippingAddress\"]),\n dataImportDetails: !item[\"dataImportDetails\"]\n ? item[\"dataImportDetails\"]\n : dataImportDetailsArraySerializer(item[\"dataImportDetails\"]),\n dataExportDetails: !item[\"dataExportDetails\"]\n ? item[\"dataExportDetails\"]\n : dataExportDetailsArraySerializer(item[\"dataExportDetails\"]),\n jobDetailsType: item[\"jobDetailsType\"],\n preferences: !item[\"preferences\"]\n ? item[\"preferences\"]\n : preferencesSerializer(item[\"preferences\"]),\n reverseShippingDetails: !item[\"reverseShippingDetails\"]\n ? item[\"reverseShippingDetails\"]\n : reverseShippingDetailsSerializer(item[\"reverseShippingDetails\"]),\n keyEncryptionKey: !item[\"keyEncryptionKey\"]\n ? item[\"keyEncryptionKey\"]\n : keyEncryptionKeySerializer(item[\"keyEncryptionKey\"]),\n expectedDataSizeInTeraBytes: item[\"expectedDataSizeInTeraBytes\"],\n devicePassword: item[\"devicePassword\"],\n };\n}\n\nexport function dataBoxJobDetailsDeserializer(item: any): DataBoxJobDetails {\n return {\n jobStages: !item[\"jobStages\"]\n ? item[\"jobStages\"]\n : jobStagesArrayDeserializer(item[\"jobStages\"]),\n contactDetails: contactDetailsDeserializer(item[\"contactDetails\"]),\n shippingAddress: !item[\"shippingAddress\"]\n ? item[\"shippingAddress\"]\n : shippingAddressDeserializer(item[\"shippingAddress\"]),\n deliveryPackage: !item[\"deliveryPackage\"]\n ? item[\"deliveryPackage\"]\n : packageShippingDetailsDeserializer(item[\"deliveryPackage\"]),\n returnPackage: !item[\"returnPackage\"]\n ? item[\"returnPackage\"]\n : packageShippingDetailsDeserializer(item[\"returnPackage\"]),\n dataImportDetails: !item[\"dataImportDetails\"]\n ? item[\"dataImportDetails\"]\n : dataImportDetailsArrayDeserializer(item[\"dataImportDetails\"]),\n dataExportDetails: !item[\"dataExportDetails\"]\n ? item[\"dataExportDetails\"]\n : dataExportDetailsArrayDeserializer(item[\"dataExportDetails\"]),\n jobDetailsType: item[\"jobDetailsType\"],\n preferences: !item[\"preferences\"]\n ? item[\"preferences\"]\n : preferencesDeserializer(item[\"preferences\"]),\n reverseShippingDetails: !item[\"reverseShippingDetails\"]\n ? item[\"reverseShippingDetails\"]\n : reverseShippingDetailsDeserializer(item[\"reverseShippingDetails\"]),\n copyLogDetails: !item[\"copyLogDetails\"]\n ? item[\"copyLogDetails\"]\n : copyLogDetailsUnionArrayDeserializer(item[\"copyLogDetails\"]),\n reverseShipmentLabelSasKey: item[\"reverseShipmentLabelSasKey\"],\n chainOfCustodySasKey: item[\"chainOfCustodySasKey\"],\n deviceErasureDetails: !item[\"deviceErasureDetails\"]\n ? item[\"deviceErasureDetails\"]\n : deviceErasureDetailsDeserializer(item[\"deviceErasureDetails\"]),\n keyEncryptionKey: !item[\"keyEncryptionKey\"]\n ? item[\"keyEncryptionKey\"]\n : keyEncryptionKeyDeserializer(item[\"keyEncryptionKey\"]),\n expectedDataSizeInTeraBytes: item[\"expectedDataSizeInTeraBytes\"],\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : item[\"actions\"].map((p: any) => {\n return p;\n }),\n lastMitigationActionOnJob: !item[\"lastMitigationActionOnJob\"]\n ? item[\"lastMitigationActionOnJob\"]\n : lastMitigationActionOnJobDeserializer(item[\"lastMitigationActionOnJob\"]),\n datacenterAddress: !item[\"datacenterAddress\"]\n ? item[\"datacenterAddress\"]\n : datacenterAddressResponseUnionDeserializer(item[\"datacenterAddress\"]),\n dataCenterCode: item[\"dataCenterCode\"],\n copyProgress: !item[\"copyProgress\"]\n ? item[\"copyProgress\"]\n : copyProgressArrayDeserializer(item[\"copyProgress\"]),\n devicePassword: item[\"devicePassword\"],\n };\n}\n\n/** Delivery type of Job. */\nexport type JobDeliveryType = \"NonScheduled\" | \"Scheduled\";\n\n/** Additional delivery info. */\nexport interface JobDeliveryInfo {\n /** Scheduled date time. */\n scheduledDateTime?: Date;\n}\n\nexport function jobDeliveryInfoSerializer(item: JobDeliveryInfo): any {\n return {\n scheduledDateTime: !item[\"scheduledDateTime\"]\n ? item[\"scheduledDateTime\"]\n : item[\"scheduledDateTime\"].toISOString(),\n };\n}\n\nexport function jobDeliveryInfoDeserializer(item: any): JobDeliveryInfo {\n return {\n scheduledDateTime: !item[\"scheduledDateTime\"]\n ? item[\"scheduledDateTime\"]\n : new Date(item[\"scheduledDateTime\"]),\n };\n}\n\n/** The Sku. */\nexport interface Sku {\n /** The sku name. */\n name: SkuName;\n /** The display name of the sku. */\n displayName?: string;\n /** The sku family. */\n family?: string;\n /** The customer friendly name of the combination of version and capacity of the device. This field is necessary only at the time of ordering the newer generation device i.e. AzureDataBox120 and AzureDataBox525 as of Feb/2025 */\n model?: ModelName;\n}\n\nexport function skuSerializer(item: Sku): any {\n return {\n name: item[\"name\"],\n displayName: item[\"displayName\"],\n family: item[\"family\"],\n model: item[\"model\"],\n };\n}\n\nexport function skuDeserializer(item: any): Sku {\n return {\n name: item[\"name\"],\n displayName: item[\"displayName\"],\n family: item[\"family\"],\n model: item[\"model\"],\n };\n}\n\n/** SKU names. */\nexport type SkuName = \"DataBox\" | \"DataBoxDisk\" | \"DataBoxHeavy\" | \"DataBoxCustomerDisk\";\n/** The customer friendly name of the combination of version and capacity of the device. This field is necessary only at the time of ordering the newer generation device i.e. AzureDataBox120 and AzureDataBox525 as of Feb/2025 */\nexport type ModelName =\n | \"DataBox\"\n | \"DataBoxDisk\"\n | \"DataBoxHeavy\"\n | \"DataBoxCustomerDisk\"\n | \"AzureDataBox120\"\n | \"AzureDataBox525\";\n\n/** Msi identity details of the resource */\nexport interface ResourceIdentity {\n /** Identity type */\n type?: string;\n /** Service Principal Id backing the Msi */\n readonly principalId?: string;\n /** Home Tenant Id */\n readonly tenantId?: string;\n /** User Assigned Identities */\n userAssignedIdentities?: Record<string, UserAssignedIdentity>;\n}\n\nexport function resourceIdentitySerializer(item: ResourceIdentity): any {\n return {\n type: item[\"type\"],\n userAssignedIdentities: !item[\"userAssignedIdentities\"]\n ? item[\"userAssignedIdentities\"]\n : userAssignedIdentityRecordSerializer(item[\"userAssignedIdentities\"]),\n };\n}\n\nexport function resourceIdentityDeserializer(item: any): ResourceIdentity {\n return {\n type: item[\"type\"],\n principalId: item[\"principalId\"],\n tenantId: item[\"tenantId\"],\n userAssignedIdentities: !item[\"userAssignedIdentities\"]\n ? item[\"userAssignedIdentities\"]\n : userAssignedIdentityRecordDeserializer(item[\"userAssignedIdentities\"]),\n };\n}\n\nexport function userAssignedIdentityRecordSerializer(\n item: Record<string, UserAssignedIdentity>,\n): Record<string, any> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : userAssignedIdentitySerializer(item[key]);\n });\n return result;\n}\n\nexport function userAssignedIdentityRecordDeserializer(\n item: Record<string, any>,\n): Record<string, UserAssignedIdentity> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : userAssignedIdentityDeserializer(item[key]);\n });\n return result;\n}\n\n/** User assigned identity properties */\nexport interface UserAssignedIdentity {\n /** The principal ID of the assigned identity. */\n readonly principalId?: string;\n /** The client ID of the assigned identity. */\n readonly clientId?: string;\n}\n\nexport function userAssignedIdentitySerializer(_item: UserAssignedIdentity): any {\n return {};\n}\n\nexport function userAssignedIdentityDeserializer(item: any): UserAssignedIdentity {\n return {\n principalId: item[\"principalId\"],\n clientId: item[\"clientId\"],\n };\n}\n\n/** Granular Copy progress. */\nexport interface GranularCopyProgress {\n /** Name of the storage account. This will be empty for data account types other than storage account. */\n readonly storageAccountName?: string;\n /** Transfer type of data */\n readonly transferType?: TransferType;\n /** Data Account Type. */\n readonly dataAccountType?: DataAccountType;\n /** Id of the account where the data needs to be uploaded. */\n readonly accountId?: string;\n /** To indicate bytes transferred. */\n readonly bytesProcessed?: number;\n /** Total amount of data to be processed by the job. */\n readonly totalBytesToProcess?: number;\n /** Number of files processed */\n readonly filesProcessed?: number;\n /** Total files to process */\n readonly totalFilesToProcess?: number;\n /** Number of files not adhering to azure naming conventions which were processed by automatic renaming */\n readonly invalidFilesProcessed?: number;\n /** Total amount of data not adhering to azure naming conventions which were processed by automatic renaming */\n readonly invalidFileBytesUploaded?: number;\n /** Number of folders not adhering to azure naming conventions which were processed by automatic renaming */\n readonly renamedContainerCount?: number;\n /** Number of files which could not be copied */\n readonly filesErroredOut?: number;\n /** To indicate directories errored out in the job. */\n readonly directoriesErroredOut?: number;\n /** To indicate directories renamed */\n readonly invalidDirectoriesProcessed?: number;\n /**\n * To indicate if enumeration of data is in progress.\n * Until this is true, the TotalBytesToProcess may not be valid.\n */\n readonly isEnumerationInProgress?: boolean;\n /** Error, if any, in the stage */\n readonly error?: CloudError;\n /** Available actions on the job. */\n readonly actions?: CustomerResolutionCode[];\n}\n\nexport function granularCopyProgressDeserializer(item: any): GranularCopyProgress {\n return {\n storageAccountName: item[\"storageAccountName\"],\n transferType: item[\"transferType\"],\n dataAccountType: item[\"dataAccountType\"],\n accountId: item[\"accountId\"],\n bytesProcessed: item[\"bytesProcessed\"],\n totalBytesToProcess: item[\"totalBytesToProcess\"],\n filesProcessed: item[\"filesProcessed\"],\n totalFilesToProcess: item[\"totalFilesToProcess\"],\n invalidFilesProcessed: item[\"invalidFilesProcessed\"],\n invalidFileBytesUploaded: item[\"invalidFileBytesUploaded\"],\n renamedContainerCount: item[\"renamedContainerCount\"],\n filesErroredOut: item[\"filesErroredOut\"],\n directoriesErroredOut: item[\"directoriesErroredOut\"],\n invalidDirectoriesProcessed: item[\"invalidDirectoriesProcessed\"],\n isEnumerationInProgress: item[\"isEnumerationInProgress\"],\n error: !item[\"error\"] ? item[\"error\"] : cloudErrorDeserializer(item[\"error\"]),\n actions: !item[\"actions\"]\n ? item[\"actions\"]\n : item[\"actions\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Granular Details for log generated during copy. */\nexport interface GranularCopyLogDetails {\n /** Indicates the type of job details. */\n /** The discriminator possible values: DataBoxCustomerDisk */\n copyLogDetailsType: ClassDiscriminator;\n}\n\nexport function granularCopyLogDetailsDeserializer(item: any): GranularCopyLogDetails {\n return {\n copyLogDetailsType: item[\"copyLogDetailsType\"],\n };\n}\n\n/** Alias for GranularCopyLogDetailsUnion */\nexport type GranularCopyLogDetailsUnion =\n | DataBoxDiskGranularCopyLogDetails\n | GranularCopyLogDetails;\n\nexport function granularCopyLogDetailsUnionDeserializer(item: any): GranularCopyLogDetailsUnion {\n switch (item[\"copyLogDetailsType\"]) {\n case \"DataBoxCustomerDisk\":\n return dataBoxDiskGranularCopyLogDetailsDeserializer(\n item as DataBoxDiskGranularCopyLogDetails,\n );\n\n default:\n return granularCopyLogDetailsDeserializer(item);\n }\n}\n\n/** The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location' */\nexport interface TrackedResource extends Resource {\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The geo-location where the resource lives */\n location: string;\n}\n\nexport function trackedResourceSerializer(item: TrackedResource): any {\n return { tags: item[\"tags\"], location: item[\"location\"] };\n}\n\nexport function trackedResourceDeserializer(item: any): TrackedResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n };\n}\n\n/** Common fields that are returned in the response for all Azure Resource Manager resources */\nexport interface Resource {\n /** Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} */\n readonly id?: string;\n /** The name of the resource */\n readonly name?: string;\n /** The type of the resource. E.g. \"Microsoft.Compute/virtualMachines\" or \"Microsoft.Storage/storageAccounts\" */\n readonly type?: string;\n /** Azure Resource Manager metadata containing createdBy and modifiedBy information. */\n readonly systemData?: SystemData;\n}\n\nexport function resourceSerializer(_item: Resource): any {\n return {};\n}\n\nexport function resourceDeserializer(item: any): Resource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n };\n}\n\n/** Metadata pertaining to creation and last modification of the resource. */\nexport interface SystemData {\n /** The identity that created the resource. */\n createdBy?: string;\n /** The type of identity that created the resource. */\n createdByType?: CreatedByType;\n /** The timestamp of resource creation (UTC). */\n createdAt?: Date;\n /** The identity that last modified the resource. */\n lastModifiedBy?: string;\n /** The type of identity that last modified the resource. */\n lastModifiedByType?: CreatedByType;\n /** The timestamp of resource last modification (UTC) */\n lastModifiedAt?: Date;\n}\n\nexport function systemDataDeserializer(item: any): SystemData {\n return {\n createdBy: item[\"createdBy\"],\n createdByType: item[\"createdByType\"],\n createdAt: !item[\"createdAt\"] ? item[\"createdAt\"] : new Date(item[\"createdAt\"]),\n lastModifiedBy: item[\"lastModifiedBy\"],\n lastModifiedByType: item[\"lastModifiedByType\"],\n lastModifiedAt: !item[\"lastModifiedAt\"]\n ? item[\"lastModifiedAt\"]\n : new Date(item[\"lastModifiedAt\"]),\n };\n}\n\n/** The kind of entity that created the resource. */\nexport enum KnownCreatedByType {\n /** The entity was created by a user. */\n User = \"User\",\n /** The entity was created by an application. */\n Application = \"Application\",\n /** The entity was created by a managed identity. */\n ManagedIdentity = \"ManagedIdentity\",\n /** The entity was created by a key. */\n Key = \"Key\",\n}\n\n/**\n * The kind of entity that created the resource. \\\n * {@link KnownCreatedByType} can be used interchangeably with CreatedByType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **User**: The entity was created by a user. \\\n * **Application**: The entity was created by an application. \\\n * **ManagedIdentity**: The entity was created by a managed identity. \\\n * **Key**: The entity was created by a key.\n */\nexport type CreatedByType = string;\n\n/** The JobResourceUpdateParameter. */\nexport interface JobResourceUpdateParameter {\n /** The list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). */\n tags?: Record<string, string>;\n /** Msi identity of the resource */\n identity?: ResourceIdentity;\n /** Details of a job to be updated. */\n details?: UpdateJobDetails;\n}\n\nexport function jobResourceUpdateParameterSerializer(item: JobResourceUpdateParameter): any {\n return {\n properties: areAllPropsUndefined(item, [\"details\"])\n ? undefined\n : _jobResourceUpdateParameterPropertiesSerializer(item),\n tags: item[\"tags\"],\n identity: !item[\"identity\"] ? item[\"identity\"] : resourceIdentitySerializer(item[\"identity\"]),\n };\n}\n\n/** Job Properties for update */\nexport interface UpdateJobProperties {\n /** Details of a job to be updated. */\n details?: UpdateJobDetails;\n}\n\nexport function updateJobPropertiesSerializer(item: UpdateJobProperties): any {\n return {\n details: !item[\"details\"] ? item[\"details\"] : updateJobDetailsSerializer(item[\"details\"]),\n };\n}\n\n/** Job details for update. */\nexport interface UpdateJobDetails {\n /** Contact details for notification and shipping. */\n contactDetails?: ContactDetails;\n /** Shipping address of the customer. */\n shippingAddress?: ShippingAddress;\n /** Reverse Shipping Address and contact details for a job. */\n reverseShippingDetails?: ReverseShippingDetails;\n /** Preferences related to the order */\n preferences?: Preferences;\n /** Key encryption key for the job. */\n keyEncryptionKey?: KeyEncryptionKey;\n /** Return package details of job. */\n returnToCustomerPackageDetails?: PackageCarrierDetails;\n}\n\nexport function updateJobDetailsSerializer(item: UpdateJobDetails): any {\n return {\n contactDetails: !item[\"contactDetails\"]\n ? item[\"contactDetails\"]\n : contactDetailsSerializer(item[\"contactDetails\"]),\n shippingAddress: !item[\"shippingAddress\"]\n ? item[\"shippingAddress\"]\n : shippingAddressSerializer(item[\"shippingAddress\"]),\n reverseShippingDetails: !item[\"reverseShippingDetails\"]\n ? item[\"reverseShippingDetails\"]\n : reverseShippingDetailsSerializer(item[\"reverseShippingDetails\"]),\n preferences: !item[\"preferences\"]\n ? item[\"preferences\"]\n : preferencesSerializer(item[\"preferences\"]),\n keyEncryptionKey: !item[\"keyEncryptionKey\"]\n ? item[\"keyEncryptionKey\"]\n : keyEncryptionKeySerializer(item[\"keyEncryptionKey\"]),\n returnToCustomerPackageDetails: !item[\"returnToCustomerPackageDetails\"]\n ? item[\"returnToCustomerPackageDetails\"]\n : packageCarrierDetailsSerializer(item[\"returnToCustomerPackageDetails\"]),\n };\n}\n\n/** Job Resource Collection */\nexport interface _JobResourceList {\n /** The JobResource items on this page */\n value: JobResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _jobResourceListDeserializer(item: any): _JobResourceList {\n return {\n value: jobResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function jobResourceArraySerializer(result: Array<JobResource>): any[] {\n return result.map((item) => {\n return jobResourceSerializer(item);\n });\n}\n\nexport function jobResourceArrayDeserializer(result: Array<JobResource>): any[] {\n return result.map((item) => {\n return jobResourceDeserializer(item);\n });\n}\n\n/** Shipment pick up request details. */\nexport interface ShipmentPickUpRequest {\n /** Minimum date after which the pick up should commence, this must be in local time of pick up area. */\n startTime: Date;\n /** Maximum date before which the pick up should commence, this must be in local time of pick up area. */\n endTime: Date;\n /** Shipment Location in the pickup place. Eg.front desk */\n shipmentLocation: string;\n}\n\nexport function shipmentPickUpRequestSerializer(item: ShipmentPickUpRequest): any {\n return {\n startTime: item[\"startTime\"].toISOString(),\n endTime: item[\"endTime\"].toISOString(),\n shipmentLocation: item[\"shipmentLocation\"],\n };\n}\n\n/** Shipment pick up response. */\nexport interface ShipmentPickUpResponse {\n /** Confirmation number for the pick up request. */\n readonly confirmationNumber?: string;\n /** Time by which shipment should be ready for pick up, this is in local time of pick up area. */\n readonly readyByTime?: Date;\n}\n\nexport function shipmentPickUpResponseDeserializer(item: any): ShipmentPickUpResponse {\n return {\n confirmationNumber: item[\"confirmationNumber\"],\n readyByTime: !item[\"readyByTime\"] ? item[\"readyByTime\"] : new Date(item[\"readyByTime\"]),\n };\n}\n\n/** Reason for cancellation. */\nexport interface CancellationReason {\n /** Reason for cancellation. */\n reason: string;\n}\n\nexport function cancellationReasonSerializer(item: CancellationReason): any {\n return { reason: item[\"reason\"] };\n}\n\n/** List of unencrypted credentials for accessing device. */\nexport interface _UnencryptedCredentialsList {\n /** The UnencryptedCredentials items on this page */\n value: UnencryptedCredentials[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _unencryptedCredentialsListDeserializer(item: any): _UnencryptedCredentialsList {\n return {\n value: unencryptedCredentialsArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function unencryptedCredentialsArrayDeserializer(\n result: Array<UnencryptedCredentials>,\n): any[] {\n return result.map((item) => {\n return unencryptedCredentialsDeserializer(item);\n });\n}\n\n/** Unencrypted credentials for accessing device. */\nexport interface UnencryptedCredentials {\n /** Name of the job. */\n readonly jobName?: string;\n /** Secrets related to this job. */\n readonly jobSecrets?: JobSecretsUnion;\n}\n\nexport function unencryptedCredentialsDeserializer(item: any): UnencryptedCredentials {\n return {\n jobName: item[\"jobName\"],\n jobSecrets: !item[\"jobSecrets\"]\n ? item[\"jobSecrets\"]\n : jobSecretsUnionDeserializer(item[\"jobSecrets\"]),\n };\n}\n\n/** The base class for the secrets */\nexport interface JobSecrets {\n /** Used to indicate what type of job secrets object. */\n /** The discriminator possible values: DataBoxCustomerDisk, DataBoxDisk, DataBoxHeavy, DataBox */\n jobSecretsType: ClassDiscriminator;\n /** Dc Access Security Code for Customer Managed Shipping */\n readonly dcAccessSecurityCode?: DcAccessSecurityCode;\n /** Error while fetching the secrets. */\n readonly error?: CloudError;\n}\n\nexport function jobSecretsDeserializer(item: any): JobSecrets {\n return {\n jobSecretsType: item[\"jobSecretsType\"],\n dcAccessSecurityCode: !item[\"dcAccessSecurityCode\"]\n ? item[\"dcAccessSecurityCode\"]\n : dcAccessSecurityCodeDeserializer(item[\"dcAccessSecurityCode\"]),\n error: !item[\"error\"] ? item[\"error\"] : cloudErrorDeserializer(item[\"error\"]),\n };\n}\n\n/** Alias for JobSecretsUnion */\nexport type JobSecretsUnion =\n | CustomerDiskJobSecrets\n | DataBoxDiskJobSecrets\n | DataBoxHeavyJobSecrets\n | DataboxJobSecrets\n | JobSecrets;\n\nexport function jobSecretsUnionDeserializer(item: any): JobSecretsUnion {\n switch (item[\"jobSecretsType\"]) {\n case \"DataBoxCustomerDisk\":\n return customerDiskJobSecretsDeserializer(item as CustomerDiskJobSecrets);\n\n case \"DataBoxDisk\":\n return dataBoxDiskJobSecretsDeserializer(item as DataBoxDiskJobSecrets);\n\n case \"DataBoxHeavy\":\n return dataBoxHeavyJobSecretsDeserializer(item as DataBoxHeavyJobSecrets);\n\n case \"DataBox\":\n return databoxJobSecretsDeserializer(item as DataboxJobSecrets);\n\n default:\n return jobSecretsDeserializer(item);\n }\n}\n\n/** Dc access security code */\nexport interface DcAccessSecurityCode {\n /** Reverse Dc access security code. */\n reverseDCAccessCode?: string;\n /** Forward Dc access security code. */\n forwardDCAccessCode?: string;\n}\n\nexport function dcAccessSecurityCodeDeserializer(item: any): DcAccessSecurityCode {\n return {\n reverseDCAccessCode: item[\"reverseDCAccessCode\"],\n forwardDCAccessCode: item[\"forwardDCAccessCode\"],\n };\n}\n\n/** The secrets related to customer disk job. */\nexport interface CustomerDiskJobSecrets extends JobSecrets {\n /** Contains the list of secrets object for that device. */\n readonly diskSecrets?: DiskSecret[];\n /** Carrier Account Number of the customer */\n readonly carrierAccountNumber?: string;\n /** Used to indicate what type of job secrets object. */\n jobSecretsType: \"DataBoxCustomerDisk\";\n}\n\nexport function customerDiskJobSecretsDeserializer(item: any): CustomerDiskJobSecrets {\n return {\n jobSecretsType: item[\"jobSecretsType\"],\n dcAccessSecurityCode: !item[\"dcAccessSecurityCode\"]\n ? item[\"dcAccessSecurityCode\"]\n : dcAccessSecurityCodeDeserializer(item[\"dcAccessSecurityCode\"]),\n error: !item[\"error\"] ? item[\"error\"] : cloudErrorDeserializer(item[\"error\"]),\n diskSecrets: !item[\"diskSecrets\"]\n ? item[\"diskSecrets\"]\n : diskSecretArrayDeserializer(item[\"diskSecrets\"]),\n carrierAccountNumber: item[\"carrierAccountNumber\"],\n };\n}\n\nexport function diskSecretArrayDeserializer(result: Array<DiskSecret>): any[] {\n return result.map((item) => {\n return diskSecretDeserializer(item);\n });\n}\n\n/** Contains all the secrets of a Disk. */\nexport interface DiskSecret {\n /** Serial number of the assigned disk. */\n readonly diskSerialNumber?: string;\n /** Bit Locker key of the disk which can be used to unlock the disk to copy data. */\n readonly bitLockerKey?: string;\n}\n\nexport function diskSecretDeserializer(item: any): DiskSecret {\n return {\n diskSerialNumber: item[\"diskSerialNumber\"],\n bitLockerKey: item[\"bitLockerKey\"],\n };\n}\n\n/** The secrets related to disk job. */\nexport interface DataBoxDiskJobSecrets extends JobSecrets {\n /** Contains the list of secrets object for that device. */\n readonly diskSecrets?: DiskSecret[];\n /** PassKey for the disk Job. */\n readonly passKey?: string;\n /** Whether passkey was provided by user. */\n readonly isPasskeyUserDefined?: boolean;\n /** Used to indicate what type of job secrets object. */\n jobSecretsType: \"DataBoxDisk\";\n}\n\nexport function dataBoxDiskJobSecretsDeserializer(item: any): DataBoxDiskJobSecrets {\n return {\n jobSecretsType: item[\"jobSecretsType\"],\n dcAccessSecurityCode: !item[\"dcAccessSecurityCode\"]\n ? item[\"dcAccessSecurityCode\"]\n : dcAccessSecurityCodeDeserializer(item[\"dcAccessSecurityCode\"]),\n error: !item[\"error\"] ? item[\"error\"] : cloudErrorDeserializer(item[\"error\"]),\n diskSecrets: !item[\"diskSecrets\"]\n ? item[\"diskSecrets\"]\n : diskSecretArrayDeserializer(item[\"diskSecrets\"]),\n passKey: item[\"passKey\"],\n isPasskeyUserDefined: item[\"isPasskeyUserDefined\"],\n };\n}\n\n/** The secrets related to a databox heavy job. */\nexport interface DataBoxHeavyJobSecrets extends JobSecrets {\n /** Contains the list of secret objects for a databox heavy job. */\n readonly cabinetPodSecrets?: DataBoxHeavySecret[];\n /** Used to indicate what type of job secrets object. */\n jobSecretsType: \"DataBoxHeavy\";\n}\n\nexport function dataBoxHeavyJobSecretsDeserializer(item: any): DataBoxHeavyJobSecrets {\n return {\n jobSecretsType: item[\"jobSecretsType\"],\n dcAccessSecurityCode: !item[\"dcAccessSecurityCode\"]\n ? item[\"dcAccessSecurityCode\"]\n : dcAccessSecurityCodeDeserializer(item[\"dcAccessSecurityCode\"]),\n error: !item[\"error\"] ? item[\"error\"] : cloudErrorDeserializer(item[\"error\"]),\n cabinetPodSecrets: !item[\"cabinetPodSecrets\"]\n ? item[\"cabinetPodSecrets\"]\n : dataBoxHeavySecretArrayDeserializer(item[\"cabinetPodSecrets\"]),\n };\n}\n\nexport function dataBoxHeavySecretArrayDeserializer(result: Array<DataBoxHeavySecret>): any[] {\n return result.map((item) => {\n return dataBoxHeavySecretDeserializer(item);\n });\n}\n\n/** The secrets related to a databox heavy. */\nexport interface DataBoxHeavySecret {\n /** Serial number of the assigned device. */\n readonly deviceSerialNumber?: string;\n /** Password for out of the box experience on device. */\n readonly devicePassword?: string;\n /** Network configuration of the appliance. */\n readonly networkConfigurations?: ApplianceNetworkConfiguration[];\n /** The base 64 encoded public key to authenticate with the device */\n readonly encodedValidationCertPubKey?: string;\n /** Per account level access credentials. */\n readonly accountCredentialDetails?: AccountCredentialDetails[];\n}\n\nexport function dataBoxHeavySecretDeserializer(item: any): DataBoxHeavySecret {\n return {\n deviceSerialNumber: item[\"deviceSerialNumber\"],\n devicePassword: item[\"devicePassword\"],\n networkConfigurations: !item[\"networkConfigurations\"]\n ? item[\"networkConfigurations\"]\n : applianceNetworkConfigurationArrayDeserializer(item[\"networkConfigurations\"]),\n encodedValidationCertPubKey: item[\"encodedValidationCertPubKey\"],\n accountCredentialDetails: !item[\"accountCredentialDetails\"]\n ? item[\"accountCredentialDetails\"]\n : accountCredentialDetailsArrayDeserializer(item[\"accountCredentialDetails\"]),\n };\n}\n\nexport function applianceNetworkConfigurationArrayDeserializer(\n result: Array<ApplianceNetworkConfiguration>,\n): any[] {\n return result.map((item) => {\n return applianceNetworkConfigurationDeserializer(item);\n });\n}\n\n/** The Network Adapter configuration of a DataBox. */\nexport interface ApplianceNetworkConfiguration {\n /** Name of the network. */\n readonly name?: string;\n /** Mac Address. */\n readonly macAddress?: string;\n}\n\nexport function applianceNetworkConfigurationDeserializer(\n item: any,\n): ApplianceNetworkConfiguration {\n return {\n name: item[\"name\"],\n macAddress: item[\"macAddress\"],\n };\n}\n\nexport function accountCredentialDetailsArrayDeserializer(\n result: Array<AccountCredentialDetails>,\n): any[] {\n return result.map((item) => {\n return accountCredentialDetailsDeserializer(item);\n });\n}\n\n/** Credential details of the account. */\nexport interface AccountCredentialDetails {\n /** Name of the account. */\n readonly accountName?: string;\n /** Type of the account. */\n readonly dataAccountType?: DataAccountType;\n /** Connection string of the account endpoint to use the account as a storage endpoint on the device. */\n readonly accountConnectionString?: string;\n /** Per share level unencrypted access credentials. */\n readonly shareCredentialDetails?: ShareCredentialDetails[];\n}\n\nexport function accountCredentialDetailsDeserializer(item: any): AccountCredentialDetails {\n return {\n accountName: item[\"accountName\"],\n dataAccountType: item[\"dataAccountType\"],\n accountConnectionString: item[\"accountConnectionString\"],\n shareCredentialDetails: !item[\"shareCredentialDetails\"]\n ? item[\"shareCredentialDetails\"]\n : shareCredentialDetailsArrayDeserializer(item[\"shareCredentialDetails\"]),\n };\n}\n\nexport function shareCredentialDetailsArrayDeserializer(\n result: Array<ShareCredentialDetails>,\n): any[] {\n return result.map((item) => {\n return shareCredentialDetailsDeserializer(item);\n });\n}\n\n/** Credential details of the shares in account. */\nexport interface ShareCredentialDetails {\n /** Name of the share. */\n readonly shareName?: string;\n /** Type of the share. */\n readonly shareType?: ShareDestinationFormatType;\n /** User name for the share. */\n readonly userName?: string;\n /** Password for the share. */\n readonly password?: string;\n /** Access protocols supported on the device. */\n readonly supportedAccessProtocols?: AccessProtocol[];\n}\n\nexport function shareCredentialDetailsDeserializer(item: any): ShareCredentialDetails {\n return {\n shareName: item[\"shareName\"],\n shareType: item[\"shareType\"],\n userName: item[\"userName\"],\n password: item[\"password\"],\n supportedAccessProtocols: !item[\"supportedAccessProtocols\"]\n ? item[\"supportedAccessProtocols\"]\n : item[\"supportedAccessProtocols\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Type of the share. */\nexport type ShareDestinationFormatType =\n | \"UnknownType\"\n | \"HCS\"\n | \"BlockBlob\"\n | \"PageBlob\"\n | \"AzureFile\"\n | \"ManagedDisk\";\n/** Access protocols supported on the device. */\nexport type AccessProtocol = \"SMB\" | \"NFS\";\n\n/** The secrets related to a databox job. */\nexport interface DataboxJobSecrets extends JobSecrets {\n /** Contains the list of secret objects for a job. */\n podSecrets?: DataBoxSecret[];\n /** Used to indicate what type of job secrets object. */\n jobSecretsType: \"DataBox\";\n}\n\nexport function databoxJobSecretsDeserializer(item: any): DataboxJobSecrets {\n return {\n jobSecretsType: item[\"jobSecretsType\"],\n dcAccessSecurityCode: !item[\"dcAccessSecurityCode\"]\n ? item[\"dcAccessSecurityCode\"]\n : dcAccessSecurityCodeDeserializer(item[\"dcAccessSecurityCode\"]),\n error: !item[\"error\"] ? item[\"error\"] : cloudErrorDeserializer(item[\"error\"]),\n podSecrets: !item[\"podSecrets\"]\n ? item[\"podSecrets\"]\n : dataBoxSecretArrayDeserializer(item[\"podSecrets\"]),\n };\n}\n\nexport function dataBoxSecretArrayDeserializer(result: Array<DataBoxSecret>): any[] {\n return result.map((item) => {\n return dataBoxSecretDeserializer(item);\n });\n}\n\n/** The secrets related to a DataBox. */\nexport interface DataBoxSecret {\n /** Serial number of the assigned device. */\n readonly deviceSerialNumber?: string;\n /** Password for out of the box experience on device. */\n readonly devicePassword?: string;\n /** Network configuration of the appliance. */\n readonly networkConfigurations?: ApplianceNetworkConfiguration[];\n /** The base 64 encoded public key to authenticate with the device */\n readonly encodedValidationCertPubKey?: string;\n /** Per account level access credentials. */\n readonly accountCredentialDetails?: AccountCredentialDetails[];\n}\n\nexport function dataBoxSecretDeserializer(item: any): DataBoxSecret {\n return {\n deviceSerialNumber: item[\"deviceSerialNumber\"],\n devicePassword: item[\"devicePassword\"],\n networkConfigurations: !item[\"networkConfigurations\"]\n ? item[\"networkConfigurations\"]\n : applianceNetworkConfigurationArrayDeserializer(item[\"networkConfigurations\"]),\n encodedValidationCertPubKey: item[\"encodedValidationCertPubKey\"],\n accountCredentialDetails: !item[\"accountCredentialDetails\"]\n ? item[\"accountCredentialDetails\"]\n : accountCredentialDetailsArrayDeserializer(item[\"accountCredentialDetails\"]),\n };\n}\n\n/** The request body to provide the delivery package details of job */\nexport interface MarkDevicesShippedRequest {\n /** Delivery package details */\n deliverToDcPackageDetails: PackageCarrierInfo;\n}\n\nexport function markDevicesShippedRequestSerializer(item: MarkDevicesShippedRequest): any {\n return {\n deliverToDcPackageDetails: packageCarrierInfoSerializer(item[\"deliverToDcPackageDetails\"]),\n };\n}\n\n/** Request body to get the configuration for the region. */\nexport interface RegionConfigurationRequest {\n /** Request body to get the availability for scheduling orders. */\n scheduleAvailabilityRequest?: ScheduleAvailabilityRequestUnion;\n /** Request body to get the transport availability for given sku. */\n transportAvailabilityRequest?: TransportAvailabilityRequest;\n /** Request body to get the datacenter address for given sku. */\n datacenterAddressRequest?: DatacenterAddressRequest;\n /** Request body to get the device capabilities for a given sku. */\n deviceCapabilityRequest?: DeviceCapabilityRequest;\n}\n\nexport function regionConfigurationRequestSerializer(item: RegionConfigurationRequest): any {\n return {\n scheduleAvailabilityRequest: !item[\"scheduleAvailabilityRequest\"]\n ? item[\"scheduleAvailabilityRequest\"]\n : scheduleAvailabilityRequestUnionSerializer(item[\"scheduleAvailabilityRequest\"]),\n transportAvailabilityRequest: !item[\"transportAvailabilityRequest\"]\n ? item[\"transportAvailabilityRequest\"]\n : transportAvailabilityRequestSerializer(item[\"transportAvailabilityRequest\"]),\n datacenterAddressRequest: !item[\"datacenterAddressRequest\"]\n ? item[\"datacenterAddressRequest\"]\n : datacenterAddressRequestSerializer(item[\"datacenterAddressRequest\"]),\n deviceCapabilityRequest: !item[\"deviceCapabilityRequest\"]\n ? item[\"deviceCapabilityRequest\"]\n : deviceCapabilityRequestSerializer(item[\"deviceCapabilityRequest\"]),\n };\n}\n\n/** Request body to get the availability for scheduling orders. */\nexport interface ScheduleAvailabilityRequest {\n /** Location for data transfer. For locations check: https://management.azure.com/subscriptions/SUBSCRIPTIONID/locations?api-version=2018-01-01 */\n storageLocation: string;\n /** Sku Name for which the order is to be scheduled. */\n /** The discriminator possible values: DataBox, DataBoxDisk, DataBoxHeavy */\n skuName: SkuName;\n /** Country in which storage location should be supported. */\n country?: string;\n /** The customer friendly name of the combination of version and capacity of the device. This field is necessary only at the time of ordering the newer generation device i.e. AzureDataBox120 and AzureDataBox525 as of Feb/2025 */\n model?: ModelName;\n}\n\nexport function scheduleAvailabilityRequestSerializer(item: ScheduleAvailabilityRequest): any {\n return {\n storageLocation: item[\"storageLocation\"],\n skuName: item[\"skuName\"],\n country: item[\"country\"],\n model: item[\"model\"],\n };\n}\n\n/** Alias for ScheduleAvailabilityRequestUnion */\nexport type ScheduleAvailabilityRequestUnion =\n | DataBoxScheduleAvailabilityRequest\n | DiskScheduleAvailabilityRequest\n | HeavyScheduleAvailabilityRequest\n | ScheduleAvailabilityRequest;\n\nexport function scheduleAvailabilityRequestUnionSerializer(\n item: ScheduleAvailabilityRequestUnion,\n): any {\n switch (item.skuName) {\n case \"DataBox\":\n return dataBoxScheduleAvailabilityRequestSerializer(\n item as DataBoxScheduleAvailabilityRequest,\n );\n\n case \"DataBoxDisk\":\n return diskScheduleAvailabilityRequestSerializer(item as DiskScheduleAvailabilityRequest);\n\n case \"DataBoxHeavy\":\n return heavyScheduleAvailabilityRequestSerializer(item as HeavyScheduleAvailabilityRequest);\n\n default:\n return scheduleAvailabilityRequestSerializer(item);\n }\n}\n\n/** Request body to get the availability for scheduling data box orders orders. */\nexport interface DataBoxScheduleAvailabilityRequest extends ScheduleAvailabilityRequest {\n /** Sku Name for which the order is to be scheduled. */\n skuName: \"DataBox\";\n}\n\nexport function dataBoxScheduleAvailabilityRequestSerializer(\n item: DataBoxScheduleAvailabilityRequest,\n): any {\n return {\n storageLocation: item[\"storageLocation\"],\n skuName: item[\"skuName\"],\n country: item[\"country\"],\n model: item[\"model\"],\n };\n}\n\n/** Request body to get the availability for scheduling disk orders. */\nexport interface DiskScheduleAvailabilityRequest extends ScheduleAvailabilityRequest {\n /** The expected size of the data, which needs to be transferred in this job, in terabytes. */\n expectedDataSizeInTeraBytes: number;\n /** Sku Name for which the order is to be scheduled. */\n skuName: \"DataBoxDisk\";\n}\n\nexport function diskScheduleAvailabilityRequestSerializer(\n item: DiskScheduleAvailabilityRequest,\n): any {\n return {\n storageLocation: item[\"storageLocation\"],\n skuName: item[\"skuName\"],\n country: item[\"country\"],\n model: item[\"model\"],\n expectedDataSizeInTeraBytes: item[\"expectedDataSizeInTeraBytes\"],\n };\n}\n\n/** Request body to get the availability for scheduling heavy orders. */\nexport interface HeavyScheduleAvailabilityRequest extends ScheduleAvailabilityRequest {\n /** Sku Name for which the order is to be scheduled. */\n skuName: \"DataBoxHeavy\";\n}\n\nexport function heavyScheduleAvailabilityRequestSerializer(\n item: HeavyScheduleAvailabilityRequest,\n): any {\n return {\n storageLocation: item[\"storageLocation\"],\n skuName: item[\"skuName\"],\n country: item[\"country\"],\n model: item[\"model\"],\n };\n}\n\n/** Request body to get the transport availability for given sku. */\nexport interface TransportAvailabilityRequest {\n /** Type of the device. */\n skuName?: SkuName;\n /** The customer friendly name of the combination of version and capacity of the device. This field is necessary only at the time of ordering the newer generation device i.e. AzureDataBox120 and AzureDataBox525 as of Feb/2025 */\n model?: ModelName;\n}\n\nexport function transportAvailabilityRequestSerializer(item: TransportAvailabilityRequest): any {\n return { skuName: item[\"skuName\"], model: item[\"model\"] };\n}\n\n/** Request body to get the datacenter address. */\nexport interface DatacenterAddressRequest {\n /** Storage location. For locations check: https://management.azure.com/subscriptions/SUBSCRIPTIONID/locations?api-version=2018-01-01 */\n storageLocation: string;\n /** Sku Name for which the data center address requested. */\n skuName: SkuName;\n /** The customer friendly name of the combination of version and capacity of the device. This field is necessary only at the time of ordering the newer generation device i.e. AzureDataBox120 and AzureDataBox525 as of Feb/2025 */\n model?: ModelName;\n}\n\nexport function datacenterAddressRequestSerializer(item: DatacenterAddressRequest): any {\n return {\n storageLocation: item[\"storageLocation\"],\n skuName: item[\"skuName\"],\n model: item[\"model\"],\n };\n}\n\n/** Request body to get the device capabilities for given sku. */\nexport interface DeviceCapabilityRequest {\n /** Type of the device. */\n skuName?: SkuName;\n /** The customer friendly name of the combination of version and capacity of the device. This field is necessary only at the time of ordering the newer generation device i.e. AzureDataBox120 and AzureDataBox525 as of Feb/2025 */\n model?: ModelName;\n}\n\nexport function deviceCapabilityRequestSerializer(item: DeviceCapabilityRequest): any {\n return { skuName: item[\"skuName\"], model: item[\"model\"] };\n}\n\n/** Configuration response specific to a region. */\nexport interface RegionConfigurationResponse {\n /** Schedule availability for given sku in a region. */\n readonly scheduleAvailabilityResponse?: ScheduleAvailabilityResponse;\n /** Transport options available for given sku in a region. */\n readonly transportAvailabilityResponse?: TransportAvailabilityResponse;\n /** Datacenter address for given sku in a region. */\n readonly datacenterAddressResponse?: DatacenterAddressResponseUnion;\n /** Device capabilities available for a given sku in a region. */\n readonly deviceCapabilityResponse?: DeviceCapabilityResponse;\n}\n\nexport function regionConfigurationResponseDeserializer(item: any): RegionConfigurationResponse {\n return {\n scheduleAvailabilityResponse: !item[\"scheduleAvailabilityResponse\"]\n ? item[\"scheduleAvailabilityResponse\"]\n : scheduleAvailabilityResponseDeserializer(item[\"scheduleAvailabilityResponse\"]),\n transportAvailabilityResponse: !item[\"transportAvailabilityResponse\"]\n ? item[\"transportAvailabilityResponse\"]\n : transportAvailabilityResponseDeserializer(item[\"transportAvailabilityResponse\"]),\n datacenterAddressResponse: !item[\"datacenterAddressResponse\"]\n ? item[\"datacenterAddressResponse\"]\n : datacenterAddressResponseUnionDeserializer(item[\"datacenterAddressResponse\"]),\n deviceCapabilityResponse: !item[\"deviceCapabilityResponse\"]\n ? item[\"deviceCapabilityResponse\"]\n : deviceCapabilityResponseDeserializer(item[\"deviceCapabilityResponse\"]),\n };\n}\n\n/** Schedule availability for given sku in a region. */\nexport interface ScheduleAvailabilityResponse {\n /** List of dates available to schedule */\n readonly availableDates?: Date[];\n}\n\nexport function scheduleAvailabilityResponseDeserializer(item: any): ScheduleAvailabilityResponse {\n return {\n availableDates: !item[\"availableDates\"]\n ? item[\"availableDates\"]\n : item[\"availableDates\"].map((p: any) => {\n return new Date(p);\n }),\n };\n}\n\n/** Transport options available for given sku in a region. */\nexport interface TransportAvailabilityResponse {\n /** List of transport availability details for given region */\n readonly transportAvailabilityDetails?: TransportAvailabilityDetails[];\n}\n\nexport function transportAvailabilityResponseDeserializer(\n item: any,\n): TransportAvailabilityResponse {\n return {\n transportAvailabilityDetails: !item[\"transportAvailabilityDetails\"]\n ? item[\"transportAvailabilityDetails\"]\n : transportAvailabilityDetailsArrayDeserializer(item[\"transportAvailabilityDetails\"]),\n };\n}\n\nexport function transportAvailabilityDetailsArrayDeserializer(\n result: Array<TransportAvailabilityDetails>,\n): any[] {\n return result.map((item) => {\n return transportAvailabilityDetailsDeserializer(item);\n });\n}\n\n/** Transport options availability details for given region. */\nexport interface TransportAvailabilityDetails {\n /** Transport Shipment Type supported for given region. */\n readonly shipmentType?: TransportShipmentTypes;\n}\n\nexport function transportAvailabilityDetailsDeserializer(item: any): TransportAvailabilityDetails {\n return {\n shipmentType: item[\"shipmentType\"],\n };\n}\n\n/** Device capabilities for given sku in a region */\nexport interface DeviceCapabilityResponse {\n /** List of device capabilities available for a given region and a given sku */\n readonly deviceCapabilityDetails?: DeviceCapabilityDetails[];\n}\n\nexport function deviceCapabilityResponseDeserializer(item: any): DeviceCapabilityResponse {\n return {\n deviceCapabilityDetails: !item[\"deviceCapabilityDetails\"]\n ? item[\"deviceCapabilityDetails\"]\n : deviceCapabilityDetailsArrayDeserializer(item[\"deviceCapabilityDetails\"]),\n };\n}\n\nexport function deviceCapabilityDetailsArrayDeserializer(\n result: Array<DeviceCapabilityDetails>,\n): any[] {\n return result.map((item) => {\n return deviceCapabilityDetailsDeserializer(item);\n });\n}\n\n/** Device capability details for a given sku for a given region. */\nexport interface DeviceCapabilityDetails {\n /** Hardware encryption support for a given sku for a given region. */\n readonly hardwareEncryption?: HardwareEncryption;\n}\n\nexport function deviceCapabilityDetailsDeserializer(item: any): DeviceCapabilityDetails {\n return {\n hardwareEncryption: item[\"hardwareEncryption\"],\n };\n}\n\n/** The requirements to validate customer address where the device needs to be shipped. */\nexport interface ValidateAddress extends ValidationInputRequest {\n /** Shipping address of the customer. */\n shippingAddress: ShippingAddress;\n /** Device type to be used for the job. */\n deviceType: SkuName;\n /** Preferences related to the shipment logistics of the sku. */\n transportPreferences?: TransportPreferences;\n /** The customer friendly name of the combination of version and capacity of the device. This field is necessary only at the time of ordering the newer generation device i.e. AzureDataBox120 and AzureDataBox525 as of Feb/2025 */\n model?: ModelName;\n /** Identifies the type of validation request. */\n validationType: \"ValidateAddress\";\n}\n\nexport function validateAddressSerializer(item: ValidateAddress): any {\n return {\n validationType: item[\"validationType\"],\n shippingAddress: shippingAddressSerializer(item[\"shippingAddress\"]),\n deviceType: item[\"deviceType\"],\n transportPreferences: !item[\"transportPreferences\"]\n ? item[\"transportPreferences\"]\n : transportPreferencesSerializer(item[\"transportPreferences\"]),\n model: item[\"model\"],\n };\n}\n\n/** Minimum fields that must be present in any type of validation request. */\nexport interface ValidationInputRequest {\n /** Identifies the type of validation request. */\n /** The discriminator possible values: ValidateAddress, ValidateCreateOrderLimit, ValidateDataTransferDetails, ValidatePreferences, ValidateSkuAvailability, ValidateSubscriptionIsAllowedToCreateJob */\n validationType: ValidationInputDiscriminator;\n}\n\nexport function validationInputRequestSerializer(item: ValidationInputRequest): any {\n return { validationType: item[\"validationType\"] };\n}\n\n/** Alias for ValidationInputRequestUnion */\nexport type ValidationInputRequestUnion =\n | ValidateAddress\n | CreateOrderLimitForSubscriptionValidationRequest\n | DataTransferDetailsValidationRequest\n | PreferencesValidationRequest\n | SkuAvailabilityValidationRequest\n | SubscriptionIsAllowedToCreateJobValidationRequest\n | ValidationInputRequest;\n\nexport function validationInputRequestUnionSerializer(item: ValidationInputRequestUnion): any {\n switch (item.validationType) {\n case \"ValidateAddress\":\n return validateAddressSerializer(item as ValidateAddress);\n\n case \"ValidateCreateOrderLimit\":\n return createOrderLimitForSubscriptionValidationRequestSerializer(\n item as CreateOrderLimitForSubscriptionValidationRequest,\n );\n\n case \"ValidateDataTransferDetails\":\n return dataTransferDetailsValidationRequestSerializer(\n item as DataTransferDetailsValidationRequest,\n );\n\n case \"ValidatePreferences\":\n return preferencesValidationRequestSerializer(item as PreferencesValidationRequest);\n\n case \"ValidateSkuAvailability\":\n return skuAvailabilityValidationRequestSerializer(item as SkuAvailabilityValidationRequest);\n\n case \"ValidateSubscriptionIsAllowedToCreateJob\":\n return subscriptionIsAllowedToCreateJobValidationRequestSerializer(\n item as SubscriptionIsAllowedToCreateJobValidationRequest,\n );\n\n default:\n return validationInputRequestSerializer(item);\n }\n}\n\n/** Identifies the type of validation request. */\nexport type ValidationInputDiscriminator =\n | \"ValidateAddress\"\n | \"ValidateSubscriptionIsAllowedToCreateJob\"\n | \"ValidatePreferences\"\n | \"ValidateCreateOrderLimit\"\n | \"ValidateSkuAvailability\"\n | \"ValidateDataTransferDetails\";\n\n/** Request to validate create order limit for current subscription. */\nexport interface CreateOrderLimitForSubscriptionValidationRequest extends ValidationInputRequest {\n /** Device type to be used for the job. */\n deviceType: SkuName;\n /** The customer friendly name of the combination of version and capacity of the device. This field is necessary only at the time of ordering the newer generation device i.e. AzureDataBox120 and AzureDataBox525 as of Feb/2025 */\n model?: ModelName;\n /** Identifies the type of validation request. */\n validationType: \"ValidateCreateOrderLimit\";\n}\n\nexport function createOrderLimitForSubscriptionValidationRequestSerializer(\n item: CreateOrderLimitForSubscriptionValidationRequest,\n): any {\n return {\n validationType: item[\"validationType\"],\n deviceType: item[\"deviceType\"],\n model: item[\"model\"],\n };\n}\n\n/** Request to validate export and import data details. */\nexport interface DataTransferDetailsValidationRequest extends ValidationInputRequest {\n /** List of DataTransfer details to be used to export data from azure. */\n dataExportDetails?: DataExportDetails[];\n /** List of DataTransfer details to be used to import data to azure. */\n dataImportDetails?: DataImportDetails[];\n /** Device type. */\n deviceType: SkuName;\n /** Type of the transfer. */\n transferType: TransferType;\n /** The customer friendly name of the combination of version and capacity of the device. This field is necessary only at the time of ordering the newer generation device i.e. AzureDataBox120 and AzureDataBox525 as of Feb/2025 */\n model?: ModelName;\n /** Identifies the type of validation request. */\n validationType: \"ValidateDataTransferDetails\";\n}\n\nexport function dataTransferDetailsValidationRequestSerializer(\n item: DataTransferDetailsValidationRequest,\n): any {\n return {\n validationType: item[\"validationType\"],\n dataExportDetails: !item[\"dataExportDetails\"]\n ? item[\"dataExportDetails\"]\n : dataExportDetailsArraySerializer(item[\"dataExportDetails\"]),\n dataImportDetails: !item[\"dataImportDetails\"]\n ? item[\"dataImportDetails\"]\n : dataImportDetailsArraySerializer(item[\"dataImportDetails\"]),\n deviceType: item[\"deviceType\"],\n transferType: item[\"transferType\"],\n model: item[\"model\"],\n };\n}\n\n/** Request to validate preference of transport and data center. */\nexport interface PreferencesValidationRequest extends ValidationInputRequest {\n /** Preference of transport and data center. */\n preference?: Preferences;\n /** Device type to be used for the job. */\n deviceType: SkuName;\n /** The customer friendly name of the combination of version and capacity of the device. This field is necessary only at the time of ordering the newer generation device i.e. AzureDataBox120 and AzureDataBox525 as of Feb/2025 */\n model?: ModelName;\n /** Identifies the type of validation request. */\n validationType: \"ValidatePreferences\";\n}\n\nexport function preferencesValidationRequestSerializer(item: PreferencesValidationRequest): any {\n return {\n validationType: item[\"validationType\"],\n preference: !item[\"preference\"]\n ? item[\"preference\"]\n : preferencesSerializer(item[\"preference\"]),\n deviceType: item[\"deviceType\"],\n model: item[\"model\"],\n };\n}\n\n/** Request to validate sku availability. */\nexport interface SkuAvailabilityValidationRequest extends ValidationInputRequest {\n /** Device type to be used for the job. */\n deviceType: SkuName;\n /** Type of the transfer. */\n transferType: TransferType;\n /** ISO country code. Country for hardware shipment. For codes check: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements */\n country: string;\n /** Location for data transfer. For locations check: https://management.azure.com/subscriptions/SUBSCRIPTIONID/locations?api-version=2018-01-01 */\n location: string;\n /** The customer friendly name of the combination of version and capacity of the device. This field is necessary only at the time of ordering the newer generation device i.e. AzureDataBox120 and AzureDataBox525 as of Feb/2025 */\n model?: ModelName;\n /** Identifies the type of validation request. */\n validationType: \"ValidateSkuAvailability\";\n}\n\nexport function skuAvailabilityValidationRequestSerializer(\n item: SkuAvailabilityValidationRequest,\n): any {\n return {\n validationType: item[\"validationType\"],\n deviceType: item[\"deviceType\"],\n transferType: item[\"transferType\"],\n country: item[\"country\"],\n location: item[\"location\"],\n model: item[\"model\"],\n };\n}\n\n/** Request to validate subscription permission to create jobs. */\nexport interface SubscriptionIsAllowedToCreateJobValidationRequest extends ValidationInputRequest {\n /** Identifies the type of validation request. */\n validationType: \"ValidateSubscriptionIsAllowedToCreateJob\";\n}\n\nexport function subscriptionIsAllowedToCreateJobValidationRequestSerializer(\n item: SubscriptionIsAllowedToCreateJobValidationRequest,\n): any {\n return { validationType: item[\"validationType\"] };\n}\n\n/** Output of the address validation api. */\nexport interface AddressValidationOutput {\n /** Identifies the type of validation response. */\n validationType?: \"ValidateAddress\";\n /** Error code and message of validation response. */\n readonly error?: CloudError;\n /** The address validation status. */\n readonly validationStatus?: AddressValidationStatus;\n /** List of alternate addresses. */\n readonly alternateAddresses?: ShippingAddress[];\n}\n\nexport function addressValidationOutputDeserializer(item: any): AddressValidationOutput {\n return {\n ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _addressValidationOutputPropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** The address validation output. */\nexport interface AddressValidationProperties extends ValidationInputResponse {\n /** The address validation status. */\n readonly validationStatus?: AddressValidationStatus;\n /** List of alternate addresses. */\n readonly alternateAddresses?: ShippingAddress[];\n /** Identifies the type of validation response. */\n validationType: \"ValidateAddress\";\n}\n\nexport function addressValidationPropertiesDeserializer(item: any): AddressValidationProperties {\n return {\n validationType: item[\"validationType\"],\n error: !item[\"error\"] ? item[\"error\"] : cloudErrorDeserializer(item[\"error\"]),\n validationStatus: item[\"validationStatus\"],\n alternateAddresses: !item[\"alternateAddresses\"]\n ? item[\"alternateAddresses\"]\n : shippingAddressArrayDeserializer(item[\"alternateAddresses\"]),\n };\n}\n\n/** The address validation status. */\nexport type AddressValidationStatus = \"Valid\" | \"Invalid\" | \"Ambiguous\";\n\nexport function shippingAddressArraySerializer(result: Array<ShippingAddress>): any[] {\n return result.map((item) => {\n return shippingAddressSerializer(item);\n });\n}\n\nexport function shippingAddressArrayDeserializer(result: Array<ShippingAddress>): any[] {\n return result.map((item) => {\n return shippingAddressDeserializer(item);\n });\n}\n\n/** Minimum properties that should be present in each individual validation response. */\nexport interface ValidationInputResponse {\n /** Identifies the type of validation response. */\n /** The discriminator possible values: ValidateAddress, ValidateCreateOrderLimit, ValidateDataTransferDetails, ValidatePreferences, ValidateSkuAvailability, ValidateSubscriptionIsAllowedToCreateJob */\n validationType: ValidationInputDiscriminator;\n /** Error code and message of validation response. */\n readonly error?: CloudError;\n}\n\nexport function validationInputResponseDeserializer(item: any): ValidationInputResponse {\n return {\n validationType: item[\"validationType\"],\n error: !item[\"error\"] ? item[\"error\"] : cloudErrorDeserializer(item[\"error\"]),\n };\n}\n\n/** Alias for ValidationInputResponseUnion */\nexport type ValidationInputResponseUnion =\n | AddressValidationProperties\n | CreateOrderLimitForSubscriptionValidationResponseProperties\n | DataTransferDetailsValidationResponseProperties\n | PreferencesValidationResponseProperties\n | SkuAvailabilityValidationResponseProperties\n | SubscriptionIsAllowedToCreateJobValidationResponseProperties\n | ValidationInputResponse;\n\nexport function validationInputResponseUnionDeserializer(item: any): ValidationInputResponseUnion {\n switch (item[\"validationType\"]) {\n case \"ValidateAddress\":\n return addressValidationPropertiesDeserializer(item as AddressValidationProperties);\n\n case \"ValidateCreateOrderLimit\":\n return createOrderLimitForSubscriptionValidationResponsePropertiesDeserializer(\n item as CreateOrderLimitForSubscriptionValidationResponseProperties,\n );\n\n case \"ValidateDataTransferDetails\":\n return dataTransferDetailsValidationResponsePropertiesDeserializer(\n item as DataTransferDetailsValidationResponseProperties,\n );\n\n case \"ValidatePreferences\":\n return preferencesValidationResponsePropertiesDeserializer(\n item as PreferencesValidationResponseProperties,\n );\n\n case \"ValidateSkuAvailability\":\n return skuAvailabilityValidationResponsePropertiesDeserializer(\n item as SkuAvailabilityValidationResponseProperties,\n );\n\n case \"ValidateSubscriptionIsAllowedToCreateJob\":\n return subscriptionIsAllowedToCreateJobValidationResponsePropertiesDeserializer(\n item as SubscriptionIsAllowedToCreateJobValidationResponseProperties,\n );\n\n default:\n return validationInputResponseDeserializer(item);\n }\n}\n\n/** Properties of create order limit for subscription validation response. */\nexport interface CreateOrderLimitForSubscriptionValidationResponseProperties extends ValidationInputResponse {\n /** Create order limit validation status. */\n readonly status?: ValidationStatus;\n /** Identifies the type of validation response. */\n validationType: \"ValidateCreateOrderLimit\";\n}\n\nexport function createOrderLimitForSubscriptionValidationResponsePropertiesDeserializer(\n item: any,\n): CreateOrderLimitForSubscriptionValidationResponseProperties {\n return {\n validationType: item[\"validationType\"],\n error: !item[\"error\"] ? item[\"error\"] : cloudErrorDeserializer(item[\"error\"]),\n status: item[\"status\"],\n };\n}\n\n/** Create order limit validation status. */\nexport type ValidationStatus = \"Valid\" | \"Invalid\" | \"Skipped\";\n\n/** Properties of data transfer details validation response. */\nexport interface DataTransferDetailsValidationResponseProperties extends ValidationInputResponse {\n /** Data transfer details validation status. */\n readonly status?: ValidationStatus;\n /** Identifies the type of validation response. */\n validationType: \"ValidateDataTransferDetails\";\n}\n\nexport function dataTransferDetailsValidationResponsePropertiesDeserializer(\n item: any,\n): DataTransferDetailsValidationResponseProperties {\n return {\n validationType: item[\"validationType\"],\n error: !item[\"error\"] ? item[\"error\"] : cloudErrorDeserializer(item[\"error\"]),\n status: item[\"status\"],\n };\n}\n\n/** Properties of data center and transport preference validation response. */\nexport interface PreferencesValidationResponseProperties extends ValidationInputResponse {\n /** Validation status of requested data center and transport. */\n readonly status?: ValidationStatus;\n /** Identifies the type of validation response. */\n validationType: \"ValidatePreferences\";\n}\n\nexport function preferencesValidationResponsePropertiesDeserializer(\n item: any,\n): PreferencesValidationResponseProperties {\n return {\n validationType: item[\"validationType\"],\n error: !item[\"error\"] ? item[\"error\"] : cloudErrorDeserializer(item[\"error\"]),\n status: item[\"status\"],\n };\n}\n\n/** Properties of sku availability validation response. */\nexport interface SkuAvailabilityValidationResponseProperties extends ValidationInputResponse {\n /** Sku availability validation status. */\n readonly status?: ValidationStatus;\n /** Identifies the type of validation response. */\n validationType: \"ValidateSkuAvailability\";\n}\n\nexport function skuAvailabilityValidationResponsePropertiesDeserializer(\n item: any,\n): SkuAvailabilityValidationResponseProperties {\n return {\n validationType: item[\"validationType\"],\n error: !item[\"error\"] ? item[\"error\"] : cloudErrorDeserializer(item[\"error\"]),\n status: item[\"status\"],\n };\n}\n\n/** Properties of subscription permission to create job validation response. */\nexport interface SubscriptionIsAllowedToCreateJobValidationResponseProperties extends ValidationInputResponse {\n /** Validation status of subscription permission to create job. */\n readonly status?: ValidationStatus;\n /** Identifies the type of validation response. */\n validationType: \"ValidateSubscriptionIsAllowedToCreateJob\";\n}\n\nexport function subscriptionIsAllowedToCreateJobValidationResponsePropertiesDeserializer(\n item: any,\n): SubscriptionIsAllowedToCreateJobValidationResponseProperties {\n return {\n validationType: item[\"validationType\"],\n error: !item[\"error\"] ? item[\"error\"] : cloudErrorDeserializer(item[\"error\"]),\n status: item[\"status\"],\n };\n}\n\n/** Minimum request requirement of any validation category. */\nexport interface ValidationRequest {\n /** Identify the nature of validation. */\n /** The discriminator possible values: JobCreationValidation */\n validationCategory: \"JobCreationValidation\";\n /** List of request details contain validationType and its request as key and value respectively. */\n individualRequestDetails: ValidationInputRequestUnion[];\n}\n\nexport function validationRequestSerializer(item: ValidationRequest): any {\n return {\n validationCategory: item[\"validationCategory\"],\n individualRequestDetails: validationInputRequestUnionArraySerializer(\n item[\"individualRequestDetails\"],\n ),\n };\n}\n\n/** Alias for ValidationRequestUnion */\nexport type ValidationRequestUnion = CreateJobValidations | ValidationRequest;\n\nexport function validationRequestUnionSerializer(item: ValidationRequestUnion): any {\n switch (item.validationCategory) {\n case \"JobCreationValidation\":\n return createJobValidationsSerializer(item as CreateJobValidations);\n\n default:\n return validationRequestSerializer(item);\n }\n}\n\nexport function validationInputRequestUnionArraySerializer(\n result: Array<ValidationInputRequestUnion>,\n): any[] {\n return result.map((item) => {\n return validationInputRequestUnionSerializer(item);\n });\n}\n\n/** It does all pre-job creation validations. */\nexport interface CreateJobValidations extends ValidationRequest {\n /** Identify the nature of validation. */\n validationCategory: \"JobCreationValidation\";\n}\n\nexport function createJobValidationsSerializer(item: CreateJobValidations): any {\n return {\n validationCategory: item[\"validationCategory\"],\n individualRequestDetails: validationInputRequestUnionArraySerializer(\n item[\"individualRequestDetails\"],\n ),\n };\n}\n\n/** Response of pre job creation validations. */\nexport interface ValidationResponse {\n /** Overall validation status. */\n readonly status?: OverallValidationStatus;\n /** List of response details contain validationType and its response as key and value respectively. */\n readonly individualResponseDetails?: ValidationInputResponseUnion[];\n}\n\nexport function validationResponseDeserializer(item: any): ValidationResponse {\n return {\n ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _validationResponsePropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Properties of pre job creation validation response. */\nexport interface ValidationResponseProperties {\n /** Overall validation status. */\n readonly status?: OverallValidationStatus;\n /** List of response details contain validationType and its response as key and value respectively. */\n readonly individualResponseDetails?: ValidationInputResponseUnion[];\n}\n\nexport function validationResponsePropertiesDeserializer(item: any): ValidationResponseProperties {\n return {\n status: item[\"status\"],\n individualResponseDetails: !item[\"individualResponseDetails\"]\n ? item[\"individualResponseDetails\"]\n : validationInputResponseUnionArrayDeserializer(item[\"individualResponseDetails\"]),\n };\n}\n\n/** Overall validation status. */\nexport type OverallValidationStatus =\n | \"AllValidToProceed\"\n | \"InputsRevisitRequired\"\n | \"CertainInputValidationsSkipped\";\n\nexport function validationInputResponseUnionArrayDeserializer(\n result: Array<ValidationInputResponseUnion>,\n): any[] {\n return result.map((item) => {\n return validationInputResponseUnionDeserializer(item);\n });\n}\n\n/** The filters for showing the available skus. */\nexport interface AvailableSkuRequest {\n /** Type of the transfer. */\n transferType: TransferType;\n /** ISO country code. Country for hardware shipment. For codes check: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements */\n country: string;\n /** Location for data transfer. For locations check: https://management.azure.com/subscriptions/SUBSCRIPTIONID/locations?api-version=2018-01-01 */\n location: string;\n /** Sku Names to filter for available skus */\n skuNames?: SkuName[];\n}\n\nexport function availableSkuRequestSerializer(item: AvailableSkuRequest): any {\n return {\n transferType: item[\"transferType\"],\n country: item[\"country\"],\n location: item[\"location\"],\n skuNames: !item[\"skuNames\"]\n ? item[\"skuNames\"]\n : item[\"skuNames\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** The available skus operation response. */\nexport interface _AvailableSkusResult {\n /** [Placeholder] Description for page model */\n readonly value: SkuInformation[];\n /** [Placeholder] Description for nextLink property */\n nextLink?: string;\n}\n\nexport function _availableSkusResultDeserializer(item: any): _AvailableSkusResult {\n return {\n value: skuInformationArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function skuInformationArrayDeserializer(result: Array<SkuInformation>): any[] {\n return result.map((item) => {\n return skuInformationDeserializer(item);\n });\n}\n\n/** Information of the sku. */\nexport interface SkuInformation {\n /** The Sku. */\n readonly sku?: Sku;\n /** The sku is enabled or not. */\n readonly enabled?: boolean;\n /** The map of data location to service location. */\n readonly dataLocationToServiceLocationMap?: DataLocationToServiceLocationMap[];\n /** Capacity of the Sku. */\n readonly capacity?: SkuCapacity;\n /** Cost of the Sku. */\n readonly costs?: SkuCost[];\n /** Api versions that support this Sku. */\n readonly apiVersions?: string[];\n /** Reason why the Sku is disabled. */\n readonly disabledReason?: SkuDisabledReason;\n /** Message for why the Sku is disabled. */\n readonly disabledReasonMessage?: string;\n /** Required feature to access the sku. */\n readonly requiredFeature?: string;\n /** List of all the Countries in the SKU specific commerce boundary */\n readonly countriesWithinCommerceBoundary?: string[];\n}\n\nexport function skuInformationDeserializer(item: any): SkuInformation {\n return {\n sku: !item[\"sku\"] ? item[\"sku\"] : skuDeserializer(item[\"sku\"]),\n enabled: item[\"enabled\"],\n ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _skuInformationPropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Properties of the sku. */\nexport interface SkuProperties {\n /** The map of data location to service location. */\n readonly dataLocationToServiceLocationMap?: DataLocationToServiceLocationMap[];\n /** Capacity of the Sku. */\n readonly capacity?: SkuCapacity;\n /** Cost of the Sku. */\n readonly costs?: SkuCost[];\n /** Api versions that support this Sku. */\n readonly apiVersions?: string[];\n /** Reason why the Sku is disabled. */\n readonly disabledReason?: SkuDisabledReason;\n /** Message for why the Sku is disabled. */\n readonly disabledReasonMessage?: string;\n /** Required feature to access the sku. */\n readonly requiredFeature?: string;\n /** List of all the Countries in the SKU specific commerce boundary */\n readonly countriesWithinCommerceBoundary?: string[];\n}\n\nexport function skuPropertiesDeserializer(item: any): SkuProperties {\n return {\n dataLocationToServiceLocationMap: !item[\"dataLocationToServiceLocationMap\"]\n ? item[\"dataLocationToServiceLocationMap\"]\n : dataLocationToServiceLocationMapArrayDeserializer(item[\"dataLocationToServiceLocationMap\"]),\n capacity: !item[\"capacity\"] ? item[\"capacity\"] : skuCapacityDeserializer(item[\"capacity\"]),\n costs: !item[\"costs\"] ? item[\"costs\"] : skuCostArrayDeserializer(item[\"costs\"]),\n apiVersions: !item[\"apiVersions\"]\n ? item[\"apiVersions\"]\n : item[\"apiVersions\"].map((p: any) => {\n return p;\n }),\n disabledReason: item[\"disabledReason\"],\n disabledReasonMessage: item[\"disabledReasonMessage\"],\n requiredFeature: item[\"requiredFeature\"],\n countriesWithinCommerceBoundary: !item[\"countriesWithinCommerceBoundary\"]\n ? item[\"countriesWithinCommerceBoundary\"]\n : item[\"countriesWithinCommerceBoundary\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function dataLocationToServiceLocationMapArrayDeserializer(\n result: Array<DataLocationToServiceLocationMap>,\n): any[] {\n return result.map((item) => {\n return dataLocationToServiceLocationMapDeserializer(item);\n });\n}\n\n/** Map of data location to service location */\nexport interface DataLocationToServiceLocationMap {\n /** Location of the data. */\n readonly dataLocation?: string;\n /** Location of the service. */\n readonly serviceLocation?: string;\n}\n\nexport function dataLocationToServiceLocationMapDeserializer(\n item: any,\n): DataLocationToServiceLocationMap {\n return {\n dataLocation: item[\"dataLocation\"],\n serviceLocation: item[\"serviceLocation\"],\n };\n}\n\n/** Capacity of the sku. */\nexport interface SkuCapacity {\n /** Usable capacity in TB. */\n readonly usable?: string;\n /** Maximum capacity in TB. */\n readonly maximum?: string;\n /** Maximum capacity per device in TB. */\n readonly individualSkuUsable?: string;\n}\n\nexport function skuCapacityDeserializer(item: any): SkuCapacity {\n return {\n usable: item[\"usable\"],\n maximum: item[\"maximum\"],\n individualSkuUsable: item[\"individualSkuUsable\"],\n };\n}\n\nexport function skuCostArrayDeserializer(result: Array<SkuCost>): any[] {\n return result.map((item) => {\n return skuCostDeserializer(item);\n });\n}\n\n/** Describes metadata for retrieving price info. */\nexport interface SkuCost {\n /** Meter id of the Sku. */\n readonly meterId?: string;\n /** The type of the meter. */\n readonly meterType?: string;\n /** Multiplier specifies the region specific value to be multiplied with 1$ guid. Eg: Our new regions will be using 1$ shipping guid with appropriate multiplier specific to region. */\n readonly multiplier?: number;\n}\n\nexport function skuCostDeserializer(item: any): SkuCost {\n return {\n meterId: item[\"meterId\"],\n meterType: item[\"meterType\"],\n multiplier: item[\"multiplier\"],\n };\n}\n\n/** Reason why the Sku is disabled. */\nexport type SkuDisabledReason =\n | \"None\"\n | \"Country\"\n | \"Region\"\n | \"Feature\"\n | \"OfferType\"\n | \"NoSubscriptionInfo\";\n\n/** The available API versions. */\nexport enum KnownVersions {\n /** The 2025-07-01 API version. */\n V20250701 = \"2025-07-01\",\n}\n\nexport function _jobResourcePropertiesSerializer(item: JobResource): any {\n return {\n transferType: item[\"transferType\"],\n details: !item[\"details\"] ? item[\"details\"] : jobDetailsUnionSerializer(item[\"details\"]),\n deliveryType: item[\"deliveryType\"],\n deliveryInfo: !item[\"deliveryInfo\"]\n ? item[\"deliveryInfo\"]\n : jobDeliveryInfoSerializer(item[\"deliveryInfo\"]),\n };\n}\n\nexport function _jobResourcePropertiesDeserializer(item: any) {\n return {\n transferType: item[\"transferType\"],\n isCancellable: item[\"isCancellable\"],\n isDeletable: item[\"isDeletable\"],\n isShippingAddressEditable: item[\"isShippingAddressEditable\"],\n reverseShippingDetailsUpdate: item[\"reverseShippingDetailsUpdate\"],\n reverseTransportPreferenceUpdate: item[\"reverseTransportPreferenceUpdate\"],\n isPrepareToShipEnabled: item[\"isPrepareToShipEnabled\"],\n status: item[\"status\"],\n delayedStage: item[\"delayedStage\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n error: !item[\"error\"] ? item[\"error\"] : cloudErrorDeserializer(item[\"error\"]),\n details: !item[\"details\"] ? item[\"details\"] : jobDetailsUnionDeserializer(item[\"details\"]),\n cancellationReason: item[\"cancellationReason\"],\n deliveryType: item[\"deliveryType\"],\n deliveryInfo: !item[\"deliveryInfo\"]\n ? item[\"deliveryInfo\"]\n : jobDeliveryInfoDeserializer(item[\"deliveryInfo\"]),\n isCancellableWithoutFee: item[\"isCancellableWithoutFee\"],\n allDevicesLost: item[\"allDevicesLost\"],\n };\n}\n\nexport function _jobResourceUpdateParameterPropertiesSerializer(\n item: JobResourceUpdateParameter,\n): any {\n return {\n details: !item[\"details\"] ? item[\"details\"] : updateJobDetailsSerializer(item[\"details\"]),\n };\n}\n\nexport function _addressValidationOutputPropertiesDeserializer(item: any) {\n return {\n validationType: item[\"validationType\"],\n error: !item[\"error\"] ? item[\"error\"] : cloudErrorDeserializer(item[\"error\"]),\n validationStatus: item[\"validationStatus\"],\n alternateAddresses: !item[\"alternateAddresses\"]\n ? item[\"alternateAddresses\"]\n : shippingAddressArrayDeserializer(item[\"alternateAddresses\"]),\n };\n}\n\nexport function _validationResponsePropertiesDeserializer(item: any) {\n return {\n status: item[\"status\"],\n individualResponseDetails: !item[\"individualResponseDetails\"]\n ? item[\"individualResponseDetails\"]\n : validationInputResponseUnionArrayDeserializer(item[\"individualResponseDetails\"]),\n };\n}\n\nexport function _skuInformationPropertiesDeserializer(item: any) {\n return {\n dataLocationToServiceLocationMap: !item[\"dataLocationToServiceLocationMap\"]\n ? item[\"dataLocationToServiceLocationMap\"]\n : dataLocationToServiceLocationMapArrayDeserializer(item[\"dataLocationToServiceLocationMap\"]),\n capacity: !item[\"capacity\"] ? item[\"capacity\"] : skuCapacityDeserializer(item[\"capacity\"]),\n costs: !item[\"costs\"] ? item[\"costs\"] : skuCostArrayDeserializer(item[\"costs\"]),\n apiVersions: !item[\"apiVersions\"]\n ? item[\"apiVersions\"]\n : item[\"apiVersions\"].map((p: any) => {\n return p;\n }),\n disabledReason: item[\"disabledReason\"],\n disabledReasonMessage: item[\"disabledReasonMessage\"],\n requiredFeature: item[\"requiredFeature\"],\n countriesWithinCommerceBoundary: !item[\"countriesWithinCommerceBoundary\"]\n ? item[\"countriesWithinCommerceBoundary\"]\n : item[\"countriesWithinCommerceBoundary\"].map((p: any) => {\n return p;\n }),\n };\n}\n"]}