@azure/arm-dataprotection 4.0.0 → 5.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 (695) hide show
  1. package/README.md +1 -1
  2. package/dist/browser/api/backupInstances/index.d.ts +1 -1
  3. package/dist/browser/api/backupInstances/index.js.map +1 -1
  4. package/dist/browser/api/backupInstances/operations.d.ts +1 -1
  5. package/dist/browser/api/backupInstances/operations.js +91 -146
  6. package/dist/browser/api/backupInstances/operations.js.map +1 -1
  7. package/dist/browser/api/backupInstances/options.js.map +1 -1
  8. package/dist/browser/api/backupInstancesExtensionRouting/index.d.ts +1 -1
  9. package/dist/browser/api/backupInstancesExtensionRouting/index.js.map +1 -1
  10. package/dist/browser/api/backupInstancesExtensionRouting/operations.js +5 -12
  11. package/dist/browser/api/backupInstancesExtensionRouting/operations.js.map +1 -1
  12. package/dist/browser/api/backupPolicies/index.d.ts +1 -1
  13. package/dist/browser/api/backupPolicies/index.js.map +1 -1
  14. package/dist/browser/api/backupPolicies/operations.js +8 -17
  15. package/dist/browser/api/backupPolicies/operations.js.map +1 -1
  16. package/dist/browser/api/backupVaultOperationResults/index.d.ts +1 -1
  17. package/dist/browser/api/backupVaultOperationResults/index.js.map +1 -1
  18. package/dist/browser/api/backupVaultOperationResults/operations.d.ts +1 -1
  19. package/dist/browser/api/backupVaultOperationResults/operations.js +4 -11
  20. package/dist/browser/api/backupVaultOperationResults/operations.js.map +1 -1
  21. package/dist/browser/api/backupVaults/index.d.ts +1 -1
  22. package/dist/browser/api/backupVaults/index.js.map +1 -1
  23. package/dist/browser/api/backupVaults/operations.js +29 -51
  24. package/dist/browser/api/backupVaults/operations.js.map +1 -1
  25. package/dist/browser/api/backupVaults/options.d.ts +2 -0
  26. package/dist/browser/api/backupVaults/options.js.map +1 -1
  27. package/dist/browser/api/dataProtection/index.d.ts +1 -1
  28. package/dist/browser/api/dataProtection/index.js.map +1 -1
  29. package/dist/browser/api/dataProtection/operations.js +4 -11
  30. package/dist/browser/api/dataProtection/operations.js.map +1 -1
  31. package/dist/browser/api/dataProtectionContext.d.ts +3 -3
  32. package/dist/browser/api/dataProtectionContext.js +4 -23
  33. package/dist/browser/api/dataProtectionContext.js.map +1 -1
  34. package/dist/browser/api/dataProtectionOperations/index.d.ts +1 -1
  35. package/dist/browser/api/dataProtectionOperations/index.js.map +1 -1
  36. package/dist/browser/api/dataProtectionOperations/operations.js +3 -6
  37. package/dist/browser/api/dataProtectionOperations/operations.js.map +1 -1
  38. package/dist/browser/api/deletedBackupInstances/index.d.ts +1 -1
  39. package/dist/browser/api/deletedBackupInstances/index.js.map +1 -1
  40. package/dist/browser/api/deletedBackupInstances/operations.js +11 -20
  41. package/dist/browser/api/deletedBackupInstances/operations.js.map +1 -1
  42. package/dist/browser/api/deletedBackupVaults/index.d.ts +3 -0
  43. package/dist/browser/api/deletedBackupVaults/index.js +4 -0
  44. package/dist/browser/api/deletedBackupVaults/index.js.map +1 -0
  45. package/dist/browser/api/deletedBackupVaults/operations.d.ts +14 -0
  46. package/dist/browser/api/deletedBackupVaults/operations.js +61 -0
  47. package/dist/browser/api/deletedBackupVaults/operations.js.map +1 -0
  48. package/dist/browser/api/deletedBackupVaults/options.d.ts +8 -0
  49. package/dist/browser/api/deletedBackupVaults/options.js +4 -0
  50. package/dist/browser/api/deletedBackupVaults/options.js.map +1 -0
  51. package/dist/browser/api/dppResourceGuardProxy/index.d.ts +1 -1
  52. package/dist/browser/api/dppResourceGuardProxy/index.js.map +1 -1
  53. package/dist/browser/api/dppResourceGuardProxy/operations.js +14 -33
  54. package/dist/browser/api/dppResourceGuardProxy/operations.js.map +1 -1
  55. package/dist/browser/api/exportJobs/index.d.ts +1 -1
  56. package/dist/browser/api/exportJobs/index.js.map +1 -1
  57. package/dist/browser/api/exportJobs/operations.js +4 -3
  58. package/dist/browser/api/exportJobs/operations.js.map +1 -1
  59. package/dist/browser/api/exportJobsOperationResult/index.d.ts +1 -1
  60. package/dist/browser/api/exportJobsOperationResult/index.js.map +1 -1
  61. package/dist/browser/api/exportJobsOperationResult/operations.d.ts +1 -1
  62. package/dist/browser/api/exportJobsOperationResult/operations.js +2 -5
  63. package/dist/browser/api/exportJobsOperationResult/operations.js.map +1 -1
  64. package/dist/browser/api/fetchCrossRegionRestoreJob/index.d.ts +1 -1
  65. package/dist/browser/api/fetchCrossRegionRestoreJob/index.js.map +1 -1
  66. package/dist/browser/api/fetchCrossRegionRestoreJob/operations.js +2 -5
  67. package/dist/browser/api/fetchCrossRegionRestoreJob/operations.js.map +1 -1
  68. package/dist/browser/api/fetchCrossRegionRestoreJobs/index.d.ts +1 -1
  69. package/dist/browser/api/fetchCrossRegionRestoreJobs/index.js.map +1 -1
  70. package/dist/browser/api/fetchCrossRegionRestoreJobs/operations.js +5 -12
  71. package/dist/browser/api/fetchCrossRegionRestoreJobs/operations.js.map +1 -1
  72. package/dist/browser/api/fetchSecondaryRecoveryPoints/index.d.ts +1 -1
  73. package/dist/browser/api/fetchSecondaryRecoveryPoints/index.js.map +1 -1
  74. package/dist/browser/api/fetchSecondaryRecoveryPoints/operations.js +5 -12
  75. package/dist/browser/api/fetchSecondaryRecoveryPoints/operations.js.map +1 -1
  76. package/dist/browser/api/index.d.ts +2 -1
  77. package/dist/browser/api/index.js +1 -1
  78. package/dist/browser/api/index.js.map +1 -1
  79. package/dist/browser/api/jobs/index.d.ts +1 -1
  80. package/dist/browser/api/jobs/index.js.map +1 -1
  81. package/dist/browser/api/jobs/operations.js +5 -11
  82. package/dist/browser/api/jobs/operations.js.map +1 -1
  83. package/dist/browser/api/operationResult/index.d.ts +1 -1
  84. package/dist/browser/api/operationResult/index.js.map +1 -1
  85. package/dist/browser/api/operationResult/operations.d.ts +1 -1
  86. package/dist/browser/api/operationResult/operations.js +2 -5
  87. package/dist/browser/api/operationResult/operations.js.map +1 -1
  88. package/dist/browser/api/operationStatus/index.d.ts +1 -1
  89. package/dist/browser/api/operationStatus/index.js.map +1 -1
  90. package/dist/browser/api/operationStatus/operations.js +2 -5
  91. package/dist/browser/api/operationStatus/operations.js.map +1 -1
  92. package/dist/browser/api/operationStatusBackupVaultContext/index.d.ts +1 -1
  93. package/dist/browser/api/operationStatusBackupVaultContext/index.js.map +1 -1
  94. package/dist/browser/api/operationStatusBackupVaultContext/operations.js +4 -11
  95. package/dist/browser/api/operationStatusBackupVaultContext/operations.js.map +1 -1
  96. package/dist/browser/api/operationStatusResourceGroupContext/index.d.ts +1 -1
  97. package/dist/browser/api/operationStatusResourceGroupContext/index.js.map +1 -1
  98. package/dist/browser/api/operationStatusResourceGroupContext/operations.js +4 -11
  99. package/dist/browser/api/operationStatusResourceGroupContext/operations.js.map +1 -1
  100. package/dist/browser/api/recoveryPoints/index.d.ts +1 -1
  101. package/dist/browser/api/recoveryPoints/index.js.map +1 -1
  102. package/dist/browser/api/recoveryPoints/operations.js +5 -11
  103. package/dist/browser/api/recoveryPoints/operations.js.map +1 -1
  104. package/dist/browser/api/resourceGuards/index.d.ts +1 -1
  105. package/dist/browser/api/resourceGuards/index.js.map +1 -1
  106. package/dist/browser/api/resourceGuards/operations.js +47 -106
  107. package/dist/browser/api/resourceGuards/operations.js.map +1 -1
  108. package/dist/browser/api/resourceGuards/options.js.map +1 -1
  109. package/dist/browser/api/restorableTimeRanges/index.d.ts +1 -1
  110. package/dist/browser/api/restorableTimeRanges/index.js.map +1 -1
  111. package/dist/browser/api/restorableTimeRanges/operations.js +2 -5
  112. package/dist/browser/api/restorableTimeRanges/operations.js.map +1 -1
  113. package/dist/browser/classic/backupInstances/index.d.ts +1 -1
  114. package/dist/browser/classic/backupInstances/index.js.map +1 -1
  115. package/dist/browser/classic/backupVaultOperationResults/index.d.ts +1 -1
  116. package/dist/browser/classic/backupVaultOperationResults/index.js.map +1 -1
  117. package/dist/browser/classic/deletedBackupVaults/index.d.ts +13 -0
  118. package/dist/browser/classic/deletedBackupVaults/index.js +15 -0
  119. package/dist/browser/classic/deletedBackupVaults/index.js.map +1 -0
  120. package/dist/browser/classic/exportJobsOperationResult/index.d.ts +1 -1
  121. package/dist/browser/classic/exportJobsOperationResult/index.js.map +1 -1
  122. package/dist/browser/classic/index.d.ts +23 -22
  123. package/dist/browser/classic/index.js.map +1 -1
  124. package/dist/browser/classic/operationResult/index.d.ts +1 -1
  125. package/dist/browser/classic/operationResult/index.js.map +1 -1
  126. package/dist/browser/dataProtectionClient.d.ts +5 -2
  127. package/dist/browser/dataProtectionClient.js +14 -2
  128. package/dist/browser/dataProtectionClient.js.map +1 -1
  129. package/dist/browser/index.d.ts +35 -30
  130. package/dist/browser/index.js +1 -1
  131. package/dist/browser/index.js.map +1 -1
  132. package/dist/browser/models/index.d.ts +2 -1
  133. package/dist/browser/models/index.js +1 -1
  134. package/dist/browser/models/index.js.map +1 -1
  135. package/dist/browser/models/models.d.ts +193 -7
  136. package/dist/browser/models/models.js +240 -52
  137. package/dist/browser/models/models.js.map +1 -1
  138. package/dist/browser/restorePollerHelpers.js +26 -62
  139. package/dist/browser/restorePollerHelpers.js.map +1 -1
  140. package/dist/browser/static-helpers/pagingHelpers.d.ts +2 -0
  141. package/dist/browser/static-helpers/pagingHelpers.js +28 -3
  142. package/dist/browser/static-helpers/pagingHelpers.js.map +1 -1
  143. package/dist/browser/static-helpers/pollingHelpers.d.ts +4 -0
  144. package/dist/browser/static-helpers/pollingHelpers.js +18 -2
  145. package/dist/browser/static-helpers/pollingHelpers.js.map +1 -1
  146. package/dist/browser/static-helpers/urlTemplate.js +20 -5
  147. package/dist/browser/static-helpers/urlTemplate.js.map +1 -1
  148. package/dist/commonjs/api/backupInstances/index.d.ts +1 -1
  149. package/dist/commonjs/api/backupInstances/index.js +62 -25
  150. package/dist/commonjs/api/backupInstances/index.js.map +7 -1
  151. package/dist/commonjs/api/backupInstances/operations.d.ts +1 -1
  152. package/dist/commonjs/api/backupInstances/operations.js +814 -691
  153. package/dist/commonjs/api/backupInstances/operations.js.map +7 -1
  154. package/dist/commonjs/api/backupInstances/options.js +16 -5
  155. package/dist/commonjs/api/backupInstances/options.js.map +7 -1
  156. package/dist/commonjs/api/backupInstancesExtensionRouting/index.d.ts +1 -1
  157. package/dist/commonjs/api/backupInstancesExtensionRouting/index.js +28 -8
  158. package/dist/commonjs/api/backupInstancesExtensionRouting/index.js.map +7 -1
  159. package/dist/commonjs/api/backupInstancesExtensionRouting/operations.js +65 -40
  160. package/dist/commonjs/api/backupInstancesExtensionRouting/operations.js.map +7 -1
  161. package/dist/commonjs/api/backupInstancesExtensionRouting/options.js +16 -5
  162. package/dist/commonjs/api/backupInstancesExtensionRouting/options.js.map +7 -1
  163. package/dist/commonjs/api/backupPolicies/index.d.ts +1 -1
  164. package/dist/commonjs/api/backupPolicies/index.js +34 -11
  165. package/dist/commonjs/api/backupPolicies/index.js.map +7 -1
  166. package/dist/commonjs/api/backupPolicies/operations.js +173 -124
  167. package/dist/commonjs/api/backupPolicies/operations.js.map +7 -1
  168. package/dist/commonjs/api/backupPolicies/options.js +16 -5
  169. package/dist/commonjs/api/backupPolicies/options.js.map +7 -1
  170. package/dist/commonjs/api/backupVaultOperationResults/index.d.ts +1 -1
  171. package/dist/commonjs/api/backupVaultOperationResults/index.js +28 -8
  172. package/dist/commonjs/api/backupVaultOperationResults/index.js.map +7 -1
  173. package/dist/commonjs/api/backupVaultOperationResults/operations.d.ts +1 -1
  174. package/dist/commonjs/api/backupVaultOperationResults/operations.js +62 -43
  175. package/dist/commonjs/api/backupVaultOperationResults/operations.js.map +7 -1
  176. package/dist/commonjs/api/backupVaultOperationResults/options.js +16 -5
  177. package/dist/commonjs/api/backupVaultOperationResults/options.js.map +7 -1
  178. package/dist/commonjs/api/backupVaults/index.d.ts +1 -1
  179. package/dist/commonjs/api/backupVaults/index.js +40 -14
  180. package/dist/commonjs/api/backupVaults/index.js.map +7 -1
  181. package/dist/commonjs/api/backupVaults/operations.js +293 -246
  182. package/dist/commonjs/api/backupVaults/operations.js.map +7 -1
  183. package/dist/commonjs/api/backupVaults/options.d.ts +2 -0
  184. package/dist/commonjs/api/backupVaults/options.js +16 -5
  185. package/dist/commonjs/api/backupVaults/options.js.map +7 -1
  186. package/dist/commonjs/api/dataProtection/index.d.ts +1 -1
  187. package/dist/commonjs/api/dataProtection/index.js +28 -8
  188. package/dist/commonjs/api/dataProtection/index.js.map +7 -1
  189. package/dist/commonjs/api/dataProtection/operations.js +62 -43
  190. package/dist/commonjs/api/dataProtection/operations.js.map +7 -1
  191. package/dist/commonjs/api/dataProtection/options.js +16 -5
  192. package/dist/commonjs/api/dataProtection/options.js.map +7 -1
  193. package/dist/commonjs/api/dataProtectionContext.d.ts +3 -3
  194. package/dist/commonjs/api/dataProtectionContext.js +43 -44
  195. package/dist/commonjs/api/dataProtectionContext.js.map +7 -1
  196. package/dist/commonjs/api/dataProtectionOperations/index.d.ts +1 -1
  197. package/dist/commonjs/api/dataProtectionOperations/index.js +28 -8
  198. package/dist/commonjs/api/dataProtectionOperations/index.js.map +7 -1
  199. package/dist/commonjs/api/dataProtectionOperations/operations.js +62 -33
  200. package/dist/commonjs/api/dataProtectionOperations/operations.js.map +7 -1
  201. package/dist/commonjs/api/dataProtectionOperations/options.js +16 -5
  202. package/dist/commonjs/api/dataProtectionOperations/options.js.map +7 -1
  203. package/dist/commonjs/api/deletedBackupInstances/index.d.ts +1 -1
  204. package/dist/commonjs/api/deletedBackupInstances/index.js +32 -10
  205. package/dist/commonjs/api/deletedBackupInstances/index.js.map +7 -1
  206. package/dist/commonjs/api/deletedBackupInstances/operations.js +134 -99
  207. package/dist/commonjs/api/deletedBackupInstances/operations.js.map +7 -1
  208. package/dist/commonjs/api/deletedBackupInstances/options.js +16 -5
  209. package/dist/commonjs/api/deletedBackupInstances/options.js.map +7 -1
  210. package/dist/commonjs/api/deletedBackupVaults/index.d.ts +3 -0
  211. package/dist/commonjs/api/deletedBackupVaults/index.js +30 -0
  212. package/dist/commonjs/api/deletedBackupVaults/index.js.map +7 -0
  213. package/dist/commonjs/api/deletedBackupVaults/operations.d.ts +14 -0
  214. package/dist/commonjs/api/deletedBackupVaults/operations.js +107 -0
  215. package/dist/commonjs/api/deletedBackupVaults/operations.js.map +7 -0
  216. package/dist/commonjs/api/deletedBackupVaults/options.d.ts +8 -0
  217. package/dist/commonjs/api/deletedBackupVaults/options.js +16 -0
  218. package/dist/commonjs/api/deletedBackupVaults/options.js.map +7 -0
  219. package/dist/commonjs/api/dppResourceGuardProxy/index.d.ts +1 -1
  220. package/dist/commonjs/api/dppResourceGuardProxy/index.js +36 -12
  221. package/dist/commonjs/api/dppResourceGuardProxy/index.js.map +7 -1
  222. package/dist/commonjs/api/dppResourceGuardProxy/operations.js +228 -172
  223. package/dist/commonjs/api/dppResourceGuardProxy/operations.js.map +7 -1
  224. package/dist/commonjs/api/dppResourceGuardProxy/options.js +16 -5
  225. package/dist/commonjs/api/dppResourceGuardProxy/options.js.map +7 -1
  226. package/dist/commonjs/api/exportJobs/index.d.ts +1 -1
  227. package/dist/commonjs/api/exportJobs/index.js +28 -8
  228. package/dist/commonjs/api/exportJobs/index.js.map +7 -1
  229. package/dist/commonjs/api/exportJobs/operations.js +62 -35
  230. package/dist/commonjs/api/exportJobs/operations.js.map +7 -1
  231. package/dist/commonjs/api/exportJobs/options.js +16 -5
  232. package/dist/commonjs/api/exportJobs/options.js.map +7 -1
  233. package/dist/commonjs/api/exportJobsOperationResult/index.d.ts +1 -1
  234. package/dist/commonjs/api/exportJobsOperationResult/index.js +28 -8
  235. package/dist/commonjs/api/exportJobsOperationResult/index.js.map +7 -1
  236. package/dist/commonjs/api/exportJobsOperationResult/operations.d.ts +1 -1
  237. package/dist/commonjs/api/exportJobsOperationResult/operations.js +60 -37
  238. package/dist/commonjs/api/exportJobsOperationResult/operations.js.map +7 -1
  239. package/dist/commonjs/api/exportJobsOperationResult/options.js +16 -5
  240. package/dist/commonjs/api/exportJobsOperationResult/options.js.map +7 -1
  241. package/dist/commonjs/api/fetchCrossRegionRestoreJob/index.d.ts +1 -1
  242. package/dist/commonjs/api/fetchCrossRegionRestoreJob/index.js +28 -8
  243. package/dist/commonjs/api/fetchCrossRegionRestoreJob/index.js.map +7 -1
  244. package/dist/commonjs/api/fetchCrossRegionRestoreJob/operations.js +61 -38
  245. package/dist/commonjs/api/fetchCrossRegionRestoreJob/operations.js.map +7 -1
  246. package/dist/commonjs/api/fetchCrossRegionRestoreJob/options.js +16 -5
  247. package/dist/commonjs/api/fetchCrossRegionRestoreJob/options.js.map +7 -1
  248. package/dist/commonjs/api/fetchCrossRegionRestoreJobs/index.d.ts +1 -1
  249. package/dist/commonjs/api/fetchCrossRegionRestoreJobs/index.js +28 -8
  250. package/dist/commonjs/api/fetchCrossRegionRestoreJobs/index.js.map +7 -1
  251. package/dist/commonjs/api/fetchCrossRegionRestoreJobs/operations.js +70 -45
  252. package/dist/commonjs/api/fetchCrossRegionRestoreJobs/operations.js.map +7 -1
  253. package/dist/commonjs/api/fetchCrossRegionRestoreJobs/options.js +16 -5
  254. package/dist/commonjs/api/fetchCrossRegionRestoreJobs/options.js.map +7 -1
  255. package/dist/commonjs/api/fetchSecondaryRecoveryPoints/index.d.ts +1 -1
  256. package/dist/commonjs/api/fetchSecondaryRecoveryPoints/index.js +28 -8
  257. package/dist/commonjs/api/fetchSecondaryRecoveryPoints/index.js.map +7 -1
  258. package/dist/commonjs/api/fetchSecondaryRecoveryPoints/operations.js +71 -46
  259. package/dist/commonjs/api/fetchSecondaryRecoveryPoints/operations.js.map +7 -1
  260. package/dist/commonjs/api/fetchSecondaryRecoveryPoints/options.js +16 -5
  261. package/dist/commonjs/api/fetchSecondaryRecoveryPoints/options.js.map +7 -1
  262. package/dist/commonjs/api/index.d.ts +2 -1
  263. package/dist/commonjs/api/index.js +28 -8
  264. package/dist/commonjs/api/index.js.map +7 -1
  265. package/dist/commonjs/api/jobs/index.d.ts +1 -1
  266. package/dist/commonjs/api/jobs/index.js +30 -9
  267. package/dist/commonjs/api/jobs/index.js.map +7 -1
  268. package/dist/commonjs/api/jobs/operations.js +97 -65
  269. package/dist/commonjs/api/jobs/operations.js.map +7 -1
  270. package/dist/commonjs/api/jobs/options.js +16 -5
  271. package/dist/commonjs/api/jobs/options.js.map +7 -1
  272. package/dist/commonjs/api/operationResult/index.d.ts +1 -1
  273. package/dist/commonjs/api/operationResult/index.js +28 -8
  274. package/dist/commonjs/api/operationResult/index.js.map +7 -1
  275. package/dist/commonjs/api/operationResult/operations.d.ts +1 -1
  276. package/dist/commonjs/api/operationResult/operations.js +59 -36
  277. package/dist/commonjs/api/operationResult/operations.js.map +7 -1
  278. package/dist/commonjs/api/operationResult/options.js +16 -5
  279. package/dist/commonjs/api/operationResult/options.js.map +7 -1
  280. package/dist/commonjs/api/operationStatus/index.d.ts +1 -1
  281. package/dist/commonjs/api/operationStatus/index.js +28 -8
  282. package/dist/commonjs/api/operationStatus/index.js.map +7 -1
  283. package/dist/commonjs/api/operationStatus/operations.js +59 -36
  284. package/dist/commonjs/api/operationStatus/operations.js.map +7 -1
  285. package/dist/commonjs/api/operationStatus/options.js +16 -5
  286. package/dist/commonjs/api/operationStatus/options.js.map +7 -1
  287. package/dist/commonjs/api/operationStatusBackupVaultContext/index.d.ts +1 -1
  288. package/dist/commonjs/api/operationStatusBackupVaultContext/index.js +28 -8
  289. package/dist/commonjs/api/operationStatusBackupVaultContext/index.js.map +7 -1
  290. package/dist/commonjs/api/operationStatusBackupVaultContext/operations.js +62 -43
  291. package/dist/commonjs/api/operationStatusBackupVaultContext/operations.js.map +7 -1
  292. package/dist/commonjs/api/operationStatusBackupVaultContext/options.js +16 -5
  293. package/dist/commonjs/api/operationStatusBackupVaultContext/options.js.map +7 -1
  294. package/dist/commonjs/api/operationStatusResourceGroupContext/index.d.ts +1 -1
  295. package/dist/commonjs/api/operationStatusResourceGroupContext/index.js +28 -8
  296. package/dist/commonjs/api/operationStatusResourceGroupContext/index.js.map +7 -1
  297. package/dist/commonjs/api/operationStatusResourceGroupContext/operations.js +61 -42
  298. package/dist/commonjs/api/operationStatusResourceGroupContext/operations.js.map +7 -1
  299. package/dist/commonjs/api/operationStatusResourceGroupContext/options.js +16 -5
  300. package/dist/commonjs/api/operationStatusResourceGroupContext/options.js.map +7 -1
  301. package/dist/commonjs/api/recoveryPoints/index.d.ts +1 -1
  302. package/dist/commonjs/api/recoveryPoints/index.js +30 -9
  303. package/dist/commonjs/api/recoveryPoints/index.js.map +7 -1
  304. package/dist/commonjs/api/recoveryPoints/operations.js +108 -69
  305. package/dist/commonjs/api/recoveryPoints/operations.js.map +7 -1
  306. package/dist/commonjs/api/recoveryPoints/options.js +16 -5
  307. package/dist/commonjs/api/recoveryPoints/options.js.map +7 -1
  308. package/dist/commonjs/api/resourceGuards/index.d.ts +1 -1
  309. package/dist/commonjs/api/resourceGuards/index.js +62 -25
  310. package/dist/commonjs/api/resourceGuards/index.js.map +7 -1
  311. package/dist/commonjs/api/resourceGuards/operations.js +742 -552
  312. package/dist/commonjs/api/resourceGuards/operations.js.map +7 -1
  313. package/dist/commonjs/api/resourceGuards/options.js +16 -5
  314. package/dist/commonjs/api/resourceGuards/options.js.map +7 -1
  315. package/dist/commonjs/api/restorableTimeRanges/index.d.ts +1 -1
  316. package/dist/commonjs/api/restorableTimeRanges/index.js +28 -8
  317. package/dist/commonjs/api/restorableTimeRanges/index.js.map +7 -1
  318. package/dist/commonjs/api/restorableTimeRanges/operations.js +69 -38
  319. package/dist/commonjs/api/restorableTimeRanges/operations.js.map +7 -1
  320. package/dist/commonjs/api/restorableTimeRanges/options.js +16 -5
  321. package/dist/commonjs/api/restorableTimeRanges/options.js.map +7 -1
  322. package/dist/commonjs/classic/backupInstances/index.d.ts +1 -1
  323. package/dist/commonjs/classic/backupInstances/index.js +100 -30
  324. package/dist/commonjs/classic/backupInstances/index.js.map +7 -1
  325. package/dist/commonjs/classic/backupInstancesExtensionRouting/index.js +34 -13
  326. package/dist/commonjs/classic/backupInstancesExtensionRouting/index.js.map +7 -1
  327. package/dist/commonjs/classic/backupPolicies/index.js +37 -16
  328. package/dist/commonjs/classic/backupPolicies/index.js.map +7 -1
  329. package/dist/commonjs/classic/backupVaultOperationResults/index.d.ts +1 -1
  330. package/dist/commonjs/classic/backupVaultOperationResults/index.js +34 -13
  331. package/dist/commonjs/classic/backupVaultOperationResults/index.js.map +7 -1
  332. package/dist/commonjs/classic/backupVaults/index.js +40 -19
  333. package/dist/commonjs/classic/backupVaults/index.js.map +7 -1
  334. package/dist/commonjs/classic/dataProtection/index.js +34 -13
  335. package/dist/commonjs/classic/dataProtection/index.js.map +7 -1
  336. package/dist/commonjs/classic/dataProtectionOperations/index.js +34 -13
  337. package/dist/commonjs/classic/dataProtectionOperations/index.js.map +7 -1
  338. package/dist/commonjs/classic/deletedBackupInstances/index.js +36 -15
  339. package/dist/commonjs/classic/deletedBackupInstances/index.js.map +7 -1
  340. package/dist/commonjs/classic/deletedBackupVaults/index.d.ts +13 -0
  341. package/dist/commonjs/classic/deletedBackupVaults/index.js +39 -0
  342. package/dist/commonjs/classic/deletedBackupVaults/index.js.map +7 -0
  343. package/dist/commonjs/classic/dppResourceGuardProxy/index.js +52 -17
  344. package/dist/commonjs/classic/dppResourceGuardProxy/index.js.map +7 -1
  345. package/dist/commonjs/classic/exportJobs/index.js +34 -13
  346. package/dist/commonjs/classic/exportJobs/index.js.map +7 -1
  347. package/dist/commonjs/classic/exportJobsOperationResult/index.d.ts +1 -1
  348. package/dist/commonjs/classic/exportJobsOperationResult/index.js +34 -13
  349. package/dist/commonjs/classic/exportJobsOperationResult/index.js.map +7 -1
  350. package/dist/commonjs/classic/fetchCrossRegionRestoreJob/index.js +34 -13
  351. package/dist/commonjs/classic/fetchCrossRegionRestoreJob/index.js.map +7 -1
  352. package/dist/commonjs/classic/fetchCrossRegionRestoreJobs/index.js +34 -13
  353. package/dist/commonjs/classic/fetchCrossRegionRestoreJobs/index.js.map +7 -1
  354. package/dist/commonjs/classic/fetchSecondaryRecoveryPoints/index.js +34 -13
  355. package/dist/commonjs/classic/fetchSecondaryRecoveryPoints/index.js.map +7 -1
  356. package/dist/commonjs/classic/index.d.ts +23 -22
  357. package/dist/commonjs/classic/index.js +16 -5
  358. package/dist/commonjs/classic/index.js.map +7 -1
  359. package/dist/commonjs/classic/jobs/index.js +35 -14
  360. package/dist/commonjs/classic/jobs/index.js.map +7 -1
  361. package/dist/commonjs/classic/operationResult/index.d.ts +1 -1
  362. package/dist/commonjs/classic/operationResult/index.js +34 -13
  363. package/dist/commonjs/classic/operationResult/index.js.map +7 -1
  364. package/dist/commonjs/classic/operationStatus/index.js +34 -13
  365. package/dist/commonjs/classic/operationStatus/index.js.map +7 -1
  366. package/dist/commonjs/classic/operationStatusBackupVaultContext/index.js +34 -13
  367. package/dist/commonjs/classic/operationStatusBackupVaultContext/index.js.map +7 -1
  368. package/dist/commonjs/classic/operationStatusResourceGroupContext/index.js +34 -13
  369. package/dist/commonjs/classic/operationStatusResourceGroupContext/index.js.map +7 -1
  370. package/dist/commonjs/classic/recoveryPoints/index.js +35 -14
  371. package/dist/commonjs/classic/recoveryPoints/index.js.map +7 -1
  372. package/dist/commonjs/classic/resourceGuards/index.js +107 -30
  373. package/dist/commonjs/classic/resourceGuards/index.js.map +7 -1
  374. package/dist/commonjs/classic/restorableTimeRanges/index.js +34 -13
  375. package/dist/commonjs/classic/restorableTimeRanges/index.js.map +7 -1
  376. package/dist/commonjs/dataProtectionClient.d.ts +5 -2
  377. package/dist/commonjs/dataProtectionClient.js +145 -110
  378. package/dist/commonjs/dataProtectionClient.js.map +7 -1
  379. package/dist/commonjs/index.d.ts +35 -30
  380. package/dist/commonjs/index.js +121 -54
  381. package/dist/commonjs/index.js.map +7 -1
  382. package/dist/commonjs/logger.js +29 -8
  383. package/dist/commonjs/logger.js.map +7 -1
  384. package/dist/commonjs/models/index.d.ts +2 -1
  385. package/dist/commonjs/models/index.js +112 -48
  386. package/dist/commonjs/models/index.js.map +7 -1
  387. package/dist/commonjs/models/models.d.ts +193 -7
  388. package/dist/commonjs/models/models.js +2919 -2824
  389. package/dist/commonjs/models/models.js.map +7 -1
  390. package/dist/commonjs/restorePollerHelpers.js +127 -153
  391. package/dist/commonjs/restorePollerHelpers.js.map +7 -1
  392. package/dist/commonjs/static-helpers/cloudSettingHelpers.js +50 -40
  393. package/dist/commonjs/static-helpers/cloudSettingHelpers.js.map +7 -1
  394. package/dist/commonjs/static-helpers/pagingHelpers.d.ts +2 -0
  395. package/dist/commonjs/static-helpers/pagingHelpers.js +125 -103
  396. package/dist/commonjs/static-helpers/pagingHelpers.js.map +7 -1
  397. package/dist/commonjs/static-helpers/pollingHelpers.d.ts +4 -0
  398. package/dist/commonjs/static-helpers/pollingHelpers.js +95 -76
  399. package/dist/commonjs/static-helpers/pollingHelpers.js.map +7 -1
  400. package/dist/commonjs/static-helpers/urlTemplate.js +167 -158
  401. package/dist/commonjs/static-helpers/urlTemplate.js.map +7 -1
  402. package/dist/commonjs/tsdoc-metadata.json +1 -1
  403. package/dist/esm/api/backupInstances/index.d.ts +1 -1
  404. package/dist/esm/api/backupInstances/index.js.map +1 -1
  405. package/dist/esm/api/backupInstances/operations.d.ts +1 -1
  406. package/dist/esm/api/backupInstances/operations.js +91 -146
  407. package/dist/esm/api/backupInstances/operations.js.map +1 -1
  408. package/dist/esm/api/backupInstances/options.js.map +1 -1
  409. package/dist/esm/api/backupInstancesExtensionRouting/index.d.ts +1 -1
  410. package/dist/esm/api/backupInstancesExtensionRouting/index.js.map +1 -1
  411. package/dist/esm/api/backupInstancesExtensionRouting/operations.js +5 -12
  412. package/dist/esm/api/backupInstancesExtensionRouting/operations.js.map +1 -1
  413. package/dist/esm/api/backupPolicies/index.d.ts +1 -1
  414. package/dist/esm/api/backupPolicies/index.js.map +1 -1
  415. package/dist/esm/api/backupPolicies/operations.js +8 -17
  416. package/dist/esm/api/backupPolicies/operations.js.map +1 -1
  417. package/dist/esm/api/backupVaultOperationResults/index.d.ts +1 -1
  418. package/dist/esm/api/backupVaultOperationResults/index.js.map +1 -1
  419. package/dist/esm/api/backupVaultOperationResults/operations.d.ts +1 -1
  420. package/dist/esm/api/backupVaultOperationResults/operations.js +4 -11
  421. package/dist/esm/api/backupVaultOperationResults/operations.js.map +1 -1
  422. package/dist/esm/api/backupVaults/index.d.ts +1 -1
  423. package/dist/esm/api/backupVaults/index.js.map +1 -1
  424. package/dist/esm/api/backupVaults/operations.js +29 -51
  425. package/dist/esm/api/backupVaults/operations.js.map +1 -1
  426. package/dist/esm/api/backupVaults/options.d.ts +2 -0
  427. package/dist/esm/api/backupVaults/options.js.map +1 -1
  428. package/dist/esm/api/dataProtection/index.d.ts +1 -1
  429. package/dist/esm/api/dataProtection/index.js.map +1 -1
  430. package/dist/esm/api/dataProtection/operations.js +4 -11
  431. package/dist/esm/api/dataProtection/operations.js.map +1 -1
  432. package/dist/esm/api/dataProtectionContext.d.ts +3 -3
  433. package/dist/esm/api/dataProtectionContext.js +4 -23
  434. package/dist/esm/api/dataProtectionContext.js.map +1 -1
  435. package/dist/esm/api/dataProtectionOperations/index.d.ts +1 -1
  436. package/dist/esm/api/dataProtectionOperations/index.js.map +1 -1
  437. package/dist/esm/api/dataProtectionOperations/operations.js +3 -6
  438. package/dist/esm/api/dataProtectionOperations/operations.js.map +1 -1
  439. package/dist/esm/api/deletedBackupInstances/index.d.ts +1 -1
  440. package/dist/esm/api/deletedBackupInstances/index.js.map +1 -1
  441. package/dist/esm/api/deletedBackupInstances/operations.js +11 -20
  442. package/dist/esm/api/deletedBackupInstances/operations.js.map +1 -1
  443. package/dist/esm/api/deletedBackupVaults/index.d.ts +3 -0
  444. package/dist/esm/api/deletedBackupVaults/index.js +4 -0
  445. package/dist/esm/api/deletedBackupVaults/index.js.map +1 -0
  446. package/dist/esm/api/deletedBackupVaults/operations.d.ts +14 -0
  447. package/dist/esm/api/deletedBackupVaults/operations.js +61 -0
  448. package/dist/esm/api/deletedBackupVaults/operations.js.map +1 -0
  449. package/dist/esm/api/deletedBackupVaults/options.d.ts +8 -0
  450. package/dist/esm/api/deletedBackupVaults/options.js +4 -0
  451. package/dist/esm/api/deletedBackupVaults/options.js.map +1 -0
  452. package/dist/esm/api/dppResourceGuardProxy/index.d.ts +1 -1
  453. package/dist/esm/api/dppResourceGuardProxy/index.js.map +1 -1
  454. package/dist/esm/api/dppResourceGuardProxy/operations.js +14 -33
  455. package/dist/esm/api/dppResourceGuardProxy/operations.js.map +1 -1
  456. package/dist/esm/api/exportJobs/index.d.ts +1 -1
  457. package/dist/esm/api/exportJobs/index.js.map +1 -1
  458. package/dist/esm/api/exportJobs/operations.js +4 -3
  459. package/dist/esm/api/exportJobs/operations.js.map +1 -1
  460. package/dist/esm/api/exportJobsOperationResult/index.d.ts +1 -1
  461. package/dist/esm/api/exportJobsOperationResult/index.js.map +1 -1
  462. package/dist/esm/api/exportJobsOperationResult/operations.d.ts +1 -1
  463. package/dist/esm/api/exportJobsOperationResult/operations.js +2 -5
  464. package/dist/esm/api/exportJobsOperationResult/operations.js.map +1 -1
  465. package/dist/esm/api/fetchCrossRegionRestoreJob/index.d.ts +1 -1
  466. package/dist/esm/api/fetchCrossRegionRestoreJob/index.js.map +1 -1
  467. package/dist/esm/api/fetchCrossRegionRestoreJob/operations.js +2 -5
  468. package/dist/esm/api/fetchCrossRegionRestoreJob/operations.js.map +1 -1
  469. package/dist/esm/api/fetchCrossRegionRestoreJobs/index.d.ts +1 -1
  470. package/dist/esm/api/fetchCrossRegionRestoreJobs/index.js.map +1 -1
  471. package/dist/esm/api/fetchCrossRegionRestoreJobs/operations.js +5 -12
  472. package/dist/esm/api/fetchCrossRegionRestoreJobs/operations.js.map +1 -1
  473. package/dist/esm/api/fetchSecondaryRecoveryPoints/index.d.ts +1 -1
  474. package/dist/esm/api/fetchSecondaryRecoveryPoints/index.js.map +1 -1
  475. package/dist/esm/api/fetchSecondaryRecoveryPoints/operations.js +5 -12
  476. package/dist/esm/api/fetchSecondaryRecoveryPoints/operations.js.map +1 -1
  477. package/dist/esm/api/index.d.ts +2 -1
  478. package/dist/esm/api/index.js +1 -1
  479. package/dist/esm/api/index.js.map +1 -1
  480. package/dist/esm/api/jobs/index.d.ts +1 -1
  481. package/dist/esm/api/jobs/index.js.map +1 -1
  482. package/dist/esm/api/jobs/operations.js +5 -11
  483. package/dist/esm/api/jobs/operations.js.map +1 -1
  484. package/dist/esm/api/operationResult/index.d.ts +1 -1
  485. package/dist/esm/api/operationResult/index.js.map +1 -1
  486. package/dist/esm/api/operationResult/operations.d.ts +1 -1
  487. package/dist/esm/api/operationResult/operations.js +2 -5
  488. package/dist/esm/api/operationResult/operations.js.map +1 -1
  489. package/dist/esm/api/operationStatus/index.d.ts +1 -1
  490. package/dist/esm/api/operationStatus/index.js.map +1 -1
  491. package/dist/esm/api/operationStatus/operations.js +2 -5
  492. package/dist/esm/api/operationStatus/operations.js.map +1 -1
  493. package/dist/esm/api/operationStatusBackupVaultContext/index.d.ts +1 -1
  494. package/dist/esm/api/operationStatusBackupVaultContext/index.js.map +1 -1
  495. package/dist/esm/api/operationStatusBackupVaultContext/operations.js +4 -11
  496. package/dist/esm/api/operationStatusBackupVaultContext/operations.js.map +1 -1
  497. package/dist/esm/api/operationStatusResourceGroupContext/index.d.ts +1 -1
  498. package/dist/esm/api/operationStatusResourceGroupContext/index.js.map +1 -1
  499. package/dist/esm/api/operationStatusResourceGroupContext/operations.js +4 -11
  500. package/dist/esm/api/operationStatusResourceGroupContext/operations.js.map +1 -1
  501. package/dist/esm/api/recoveryPoints/index.d.ts +1 -1
  502. package/dist/esm/api/recoveryPoints/index.js.map +1 -1
  503. package/dist/esm/api/recoveryPoints/operations.js +5 -11
  504. package/dist/esm/api/recoveryPoints/operations.js.map +1 -1
  505. package/dist/esm/api/resourceGuards/index.d.ts +1 -1
  506. package/dist/esm/api/resourceGuards/index.js.map +1 -1
  507. package/dist/esm/api/resourceGuards/operations.js +47 -106
  508. package/dist/esm/api/resourceGuards/operations.js.map +1 -1
  509. package/dist/esm/api/resourceGuards/options.js.map +1 -1
  510. package/dist/esm/api/restorableTimeRanges/index.d.ts +1 -1
  511. package/dist/esm/api/restorableTimeRanges/index.js.map +1 -1
  512. package/dist/esm/api/restorableTimeRanges/operations.js +2 -5
  513. package/dist/esm/api/restorableTimeRanges/operations.js.map +1 -1
  514. package/dist/esm/classic/backupInstances/index.d.ts +1 -1
  515. package/dist/esm/classic/backupInstances/index.js.map +1 -1
  516. package/dist/esm/classic/backupVaultOperationResults/index.d.ts +1 -1
  517. package/dist/esm/classic/backupVaultOperationResults/index.js.map +1 -1
  518. package/dist/esm/classic/deletedBackupVaults/index.d.ts +13 -0
  519. package/dist/esm/classic/deletedBackupVaults/index.js +15 -0
  520. package/dist/esm/classic/deletedBackupVaults/index.js.map +1 -0
  521. package/dist/esm/classic/exportJobsOperationResult/index.d.ts +1 -1
  522. package/dist/esm/classic/exportJobsOperationResult/index.js.map +1 -1
  523. package/dist/esm/classic/index.d.ts +23 -22
  524. package/dist/esm/classic/index.js.map +1 -1
  525. package/dist/esm/classic/operationResult/index.d.ts +1 -1
  526. package/dist/esm/classic/operationResult/index.js.map +1 -1
  527. package/dist/esm/dataProtectionClient.d.ts +5 -2
  528. package/dist/esm/dataProtectionClient.js +14 -2
  529. package/dist/esm/dataProtectionClient.js.map +1 -1
  530. package/dist/esm/index.d.ts +35 -30
  531. package/dist/esm/index.js +1 -1
  532. package/dist/esm/index.js.map +1 -1
  533. package/dist/esm/models/index.d.ts +2 -1
  534. package/dist/esm/models/index.js +1 -1
  535. package/dist/esm/models/index.js.map +1 -1
  536. package/dist/esm/models/models.d.ts +193 -7
  537. package/dist/esm/models/models.js +240 -52
  538. package/dist/esm/models/models.js.map +1 -1
  539. package/dist/esm/restorePollerHelpers.js +26 -62
  540. package/dist/esm/restorePollerHelpers.js.map +1 -1
  541. package/dist/esm/static-helpers/pagingHelpers.d.ts +2 -0
  542. package/dist/esm/static-helpers/pagingHelpers.js +28 -3
  543. package/dist/esm/static-helpers/pagingHelpers.js.map +1 -1
  544. package/dist/esm/static-helpers/pollingHelpers.d.ts +4 -0
  545. package/dist/esm/static-helpers/pollingHelpers.js +18 -2
  546. package/dist/esm/static-helpers/pollingHelpers.js.map +1 -1
  547. package/dist/esm/static-helpers/urlTemplate.js +20 -5
  548. package/dist/esm/static-helpers/urlTemplate.js.map +1 -1
  549. package/dist/react-native/api/backupInstances/index.d.ts +1 -1
  550. package/dist/react-native/api/backupInstances/index.js.map +1 -1
  551. package/dist/react-native/api/backupInstances/operations.d.ts +1 -1
  552. package/dist/react-native/api/backupInstances/operations.js +91 -146
  553. package/dist/react-native/api/backupInstances/operations.js.map +1 -1
  554. package/dist/react-native/api/backupInstances/options.js.map +1 -1
  555. package/dist/react-native/api/backupInstancesExtensionRouting/index.d.ts +1 -1
  556. package/dist/react-native/api/backupInstancesExtensionRouting/index.js.map +1 -1
  557. package/dist/react-native/api/backupInstancesExtensionRouting/operations.js +5 -12
  558. package/dist/react-native/api/backupInstancesExtensionRouting/operations.js.map +1 -1
  559. package/dist/react-native/api/backupPolicies/index.d.ts +1 -1
  560. package/dist/react-native/api/backupPolicies/index.js.map +1 -1
  561. package/dist/react-native/api/backupPolicies/operations.js +8 -17
  562. package/dist/react-native/api/backupPolicies/operations.js.map +1 -1
  563. package/dist/react-native/api/backupVaultOperationResults/index.d.ts +1 -1
  564. package/dist/react-native/api/backupVaultOperationResults/index.js.map +1 -1
  565. package/dist/react-native/api/backupVaultOperationResults/operations.d.ts +1 -1
  566. package/dist/react-native/api/backupVaultOperationResults/operations.js +4 -11
  567. package/dist/react-native/api/backupVaultOperationResults/operations.js.map +1 -1
  568. package/dist/react-native/api/backupVaults/index.d.ts +1 -1
  569. package/dist/react-native/api/backupVaults/index.js.map +1 -1
  570. package/dist/react-native/api/backupVaults/operations.js +29 -51
  571. package/dist/react-native/api/backupVaults/operations.js.map +1 -1
  572. package/dist/react-native/api/backupVaults/options.d.ts +2 -0
  573. package/dist/react-native/api/backupVaults/options.js.map +1 -1
  574. package/dist/react-native/api/dataProtection/index.d.ts +1 -1
  575. package/dist/react-native/api/dataProtection/index.js.map +1 -1
  576. package/dist/react-native/api/dataProtection/operations.js +4 -11
  577. package/dist/react-native/api/dataProtection/operations.js.map +1 -1
  578. package/dist/react-native/api/dataProtectionContext.d.ts +3 -3
  579. package/dist/react-native/api/dataProtectionContext.js +4 -23
  580. package/dist/react-native/api/dataProtectionContext.js.map +1 -1
  581. package/dist/react-native/api/dataProtectionOperations/index.d.ts +1 -1
  582. package/dist/react-native/api/dataProtectionOperations/index.js.map +1 -1
  583. package/dist/react-native/api/dataProtectionOperations/operations.js +3 -6
  584. package/dist/react-native/api/dataProtectionOperations/operations.js.map +1 -1
  585. package/dist/react-native/api/deletedBackupInstances/index.d.ts +1 -1
  586. package/dist/react-native/api/deletedBackupInstances/index.js.map +1 -1
  587. package/dist/react-native/api/deletedBackupInstances/operations.js +11 -20
  588. package/dist/react-native/api/deletedBackupInstances/operations.js.map +1 -1
  589. package/dist/react-native/api/deletedBackupVaults/index.d.ts +3 -0
  590. package/dist/react-native/api/deletedBackupVaults/index.js +4 -0
  591. package/dist/react-native/api/deletedBackupVaults/index.js.map +1 -0
  592. package/dist/react-native/api/deletedBackupVaults/operations.d.ts +14 -0
  593. package/dist/react-native/api/deletedBackupVaults/operations.js +61 -0
  594. package/dist/react-native/api/deletedBackupVaults/operations.js.map +1 -0
  595. package/dist/react-native/api/deletedBackupVaults/options.d.ts +8 -0
  596. package/dist/react-native/api/deletedBackupVaults/options.js +4 -0
  597. package/dist/react-native/api/deletedBackupVaults/options.js.map +1 -0
  598. package/dist/react-native/api/dppResourceGuardProxy/index.d.ts +1 -1
  599. package/dist/react-native/api/dppResourceGuardProxy/index.js.map +1 -1
  600. package/dist/react-native/api/dppResourceGuardProxy/operations.js +14 -33
  601. package/dist/react-native/api/dppResourceGuardProxy/operations.js.map +1 -1
  602. package/dist/react-native/api/exportJobs/index.d.ts +1 -1
  603. package/dist/react-native/api/exportJobs/index.js.map +1 -1
  604. package/dist/react-native/api/exportJobs/operations.js +4 -3
  605. package/dist/react-native/api/exportJobs/operations.js.map +1 -1
  606. package/dist/react-native/api/exportJobsOperationResult/index.d.ts +1 -1
  607. package/dist/react-native/api/exportJobsOperationResult/index.js.map +1 -1
  608. package/dist/react-native/api/exportJobsOperationResult/operations.d.ts +1 -1
  609. package/dist/react-native/api/exportJobsOperationResult/operations.js +2 -5
  610. package/dist/react-native/api/exportJobsOperationResult/operations.js.map +1 -1
  611. package/dist/react-native/api/fetchCrossRegionRestoreJob/index.d.ts +1 -1
  612. package/dist/react-native/api/fetchCrossRegionRestoreJob/index.js.map +1 -1
  613. package/dist/react-native/api/fetchCrossRegionRestoreJob/operations.js +2 -5
  614. package/dist/react-native/api/fetchCrossRegionRestoreJob/operations.js.map +1 -1
  615. package/dist/react-native/api/fetchCrossRegionRestoreJobs/index.d.ts +1 -1
  616. package/dist/react-native/api/fetchCrossRegionRestoreJobs/index.js.map +1 -1
  617. package/dist/react-native/api/fetchCrossRegionRestoreJobs/operations.js +5 -12
  618. package/dist/react-native/api/fetchCrossRegionRestoreJobs/operations.js.map +1 -1
  619. package/dist/react-native/api/fetchSecondaryRecoveryPoints/index.d.ts +1 -1
  620. package/dist/react-native/api/fetchSecondaryRecoveryPoints/index.js.map +1 -1
  621. package/dist/react-native/api/fetchSecondaryRecoveryPoints/operations.js +5 -12
  622. package/dist/react-native/api/fetchSecondaryRecoveryPoints/operations.js.map +1 -1
  623. package/dist/react-native/api/index.d.ts +2 -1
  624. package/dist/react-native/api/index.js +1 -1
  625. package/dist/react-native/api/index.js.map +1 -1
  626. package/dist/react-native/api/jobs/index.d.ts +1 -1
  627. package/dist/react-native/api/jobs/index.js.map +1 -1
  628. package/dist/react-native/api/jobs/operations.js +5 -11
  629. package/dist/react-native/api/jobs/operations.js.map +1 -1
  630. package/dist/react-native/api/operationResult/index.d.ts +1 -1
  631. package/dist/react-native/api/operationResult/index.js.map +1 -1
  632. package/dist/react-native/api/operationResult/operations.d.ts +1 -1
  633. package/dist/react-native/api/operationResult/operations.js +2 -5
  634. package/dist/react-native/api/operationResult/operations.js.map +1 -1
  635. package/dist/react-native/api/operationStatus/index.d.ts +1 -1
  636. package/dist/react-native/api/operationStatus/index.js.map +1 -1
  637. package/dist/react-native/api/operationStatus/operations.js +2 -5
  638. package/dist/react-native/api/operationStatus/operations.js.map +1 -1
  639. package/dist/react-native/api/operationStatusBackupVaultContext/index.d.ts +1 -1
  640. package/dist/react-native/api/operationStatusBackupVaultContext/index.js.map +1 -1
  641. package/dist/react-native/api/operationStatusBackupVaultContext/operations.js +4 -11
  642. package/dist/react-native/api/operationStatusBackupVaultContext/operations.js.map +1 -1
  643. package/dist/react-native/api/operationStatusResourceGroupContext/index.d.ts +1 -1
  644. package/dist/react-native/api/operationStatusResourceGroupContext/index.js.map +1 -1
  645. package/dist/react-native/api/operationStatusResourceGroupContext/operations.js +4 -11
  646. package/dist/react-native/api/operationStatusResourceGroupContext/operations.js.map +1 -1
  647. package/dist/react-native/api/recoveryPoints/index.d.ts +1 -1
  648. package/dist/react-native/api/recoveryPoints/index.js.map +1 -1
  649. package/dist/react-native/api/recoveryPoints/operations.js +5 -11
  650. package/dist/react-native/api/recoveryPoints/operations.js.map +1 -1
  651. package/dist/react-native/api/resourceGuards/index.d.ts +1 -1
  652. package/dist/react-native/api/resourceGuards/index.js.map +1 -1
  653. package/dist/react-native/api/resourceGuards/operations.js +47 -106
  654. package/dist/react-native/api/resourceGuards/operations.js.map +1 -1
  655. package/dist/react-native/api/resourceGuards/options.js.map +1 -1
  656. package/dist/react-native/api/restorableTimeRanges/index.d.ts +1 -1
  657. package/dist/react-native/api/restorableTimeRanges/index.js.map +1 -1
  658. package/dist/react-native/api/restorableTimeRanges/operations.js +2 -5
  659. package/dist/react-native/api/restorableTimeRanges/operations.js.map +1 -1
  660. package/dist/react-native/classic/backupInstances/index.d.ts +1 -1
  661. package/dist/react-native/classic/backupInstances/index.js.map +1 -1
  662. package/dist/react-native/classic/backupVaultOperationResults/index.d.ts +1 -1
  663. package/dist/react-native/classic/backupVaultOperationResults/index.js.map +1 -1
  664. package/dist/react-native/classic/deletedBackupVaults/index.d.ts +13 -0
  665. package/dist/react-native/classic/deletedBackupVaults/index.js +15 -0
  666. package/dist/react-native/classic/deletedBackupVaults/index.js.map +1 -0
  667. package/dist/react-native/classic/exportJobsOperationResult/index.d.ts +1 -1
  668. package/dist/react-native/classic/exportJobsOperationResult/index.js.map +1 -1
  669. package/dist/react-native/classic/index.d.ts +23 -22
  670. package/dist/react-native/classic/index.js.map +1 -1
  671. package/dist/react-native/classic/operationResult/index.d.ts +1 -1
  672. package/dist/react-native/classic/operationResult/index.js.map +1 -1
  673. package/dist/react-native/dataProtectionClient.d.ts +5 -2
  674. package/dist/react-native/dataProtectionClient.js +14 -2
  675. package/dist/react-native/dataProtectionClient.js.map +1 -1
  676. package/dist/react-native/index.d.ts +35 -30
  677. package/dist/react-native/index.js +1 -1
  678. package/dist/react-native/index.js.map +1 -1
  679. package/dist/react-native/models/index.d.ts +2 -1
  680. package/dist/react-native/models/index.js +1 -1
  681. package/dist/react-native/models/index.js.map +1 -1
  682. package/dist/react-native/models/models.d.ts +193 -7
  683. package/dist/react-native/models/models.js +240 -52
  684. package/dist/react-native/models/models.js.map +1 -1
  685. package/dist/react-native/restorePollerHelpers.js +26 -62
  686. package/dist/react-native/restorePollerHelpers.js.map +1 -1
  687. package/dist/react-native/static-helpers/pagingHelpers.d.ts +2 -0
  688. package/dist/react-native/static-helpers/pagingHelpers.js +28 -3
  689. package/dist/react-native/static-helpers/pagingHelpers.js.map +1 -1
  690. package/dist/react-native/static-helpers/pollingHelpers.d.ts +4 -0
  691. package/dist/react-native/static-helpers/pollingHelpers.js +18 -2
  692. package/dist/react-native/static-helpers/pollingHelpers.js.map +1 -1
  693. package/dist/react-native/static-helpers/urlTemplate.js +20 -5
  694. package/dist/react-native/static-helpers/urlTemplate.js.map +1 -1
  695. package/package.json +32 -55
@@ -1 +1,7 @@
1
- {"version":3,"file":"models.js","sourceRoot":"","sources":["../../../src/models/models.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/** A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results. */\nexport interface _OperationListResult {\n /** The Operation items on this page */\n value: Operation[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _operationListResultDeserializer(item: any): _OperationListResult {\n return {\n value: operationArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function operationArrayDeserializer(result: Array<Operation>): any[] {\n return result.map((item) => {\n return operationDeserializer(item);\n });\n}\n\n/** Details of a REST API operation, returned from the Resource Provider Operations API */\nexport interface Operation {\n /** The name of the operation, as per Resource-Based Access Control (RBAC). Examples: \"Microsoft.Compute/virtualMachines/write\", \"Microsoft.Compute/virtualMachines/capture/action\" */\n readonly name?: string;\n /** Whether the operation applies to data-plane. This is \"true\" for data-plane operations and \"false\" for Azure Resource Manager/control-plane operations. */\n readonly isDataAction?: boolean;\n /** Localized display information for this particular operation. */\n display?: OperationDisplay;\n /** The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is \"user,system\" */\n readonly origin?: Origin;\n /** Extensible enum. Indicates the action type. \"Internal\" refers to actions that are for internal only APIs. */\n readonly actionType?: ActionType;\n}\n\nexport function operationDeserializer(item: any): Operation {\n return {\n name: item[\"name\"],\n isDataAction: item[\"isDataAction\"],\n display: !item[\"display\"] ? item[\"display\"] : operationDisplayDeserializer(item[\"display\"]),\n origin: item[\"origin\"],\n actionType: item[\"actionType\"],\n };\n}\n\n/** Localized display information for and operation. */\nexport interface OperationDisplay {\n /** The localized friendly form of the resource provider name, e.g. \"Microsoft Monitoring Insights\" or \"Microsoft Compute\". */\n readonly provider?: string;\n /** The localized friendly name of the resource type related to this operation. E.g. \"Virtual Machines\" or \"Job Schedule Collections\". */\n readonly resource?: string;\n /** The concise, localized friendly name for the operation; suitable for dropdowns. E.g. \"Create or Update Virtual Machine\", \"Restart Virtual Machine\". */\n readonly operation?: string;\n /** The short, localized friendly description of the operation; suitable for tool tips and detailed views. */\n readonly description?: string;\n}\n\nexport function operationDisplayDeserializer(item: any): OperationDisplay {\n return {\n provider: item[\"provider\"],\n resource: item[\"resource\"],\n operation: item[\"operation\"],\n description: item[\"description\"],\n };\n}\n\n/** The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is \"user,system\" */\nexport enum KnownOrigin {\n /** Indicates the operation is initiated by a user. */\n User = \"user\",\n /** Indicates the operation is initiated by a system. */\n System = \"system\",\n /** Indicates the operation is initiated by a user or system. */\n UserSystem = \"user,system\",\n}\n\n/**\n * The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is \"user,system\" \\\n * {@link KnownOrigin} can be used interchangeably with Origin,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **user**: Indicates the operation is initiated by a user. \\\n * **system**: Indicates the operation is initiated by a system. \\\n * **user,system**: Indicates the operation is initiated by a user or system.\n */\nexport type Origin = string;\n\n/** Extensible enum. Indicates the action type. \"Internal\" refers to actions that are for internal only APIs. */\nexport enum KnownActionType {\n /** Actions are for internal-only APIs. */\n Internal = \"Internal\",\n}\n\n/**\n * Extensible enum. Indicates the action type. \"Internal\" refers to actions that are for internal only APIs. \\\n * {@link KnownActionType} can be used interchangeably with ActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Internal**: Actions are for internal-only APIs.\n */\nexport type ActionType = string;\n\n/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. */\nexport interface ErrorResponse {\n /** The error object. */\n error?: ErrorDetail;\n}\n\nexport function errorResponseDeserializer(item: any): ErrorResponse {\n return {\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n };\n}\n\n/** The error detail. */\nexport interface ErrorDetail {\n /** The error code. */\n readonly code?: string;\n /** The error message. */\n readonly message?: string;\n /** The error target. */\n readonly target?: string;\n /** The error details. */\n readonly details?: ErrorDetail[];\n /** The error additional info. */\n readonly additionalInfo?: ErrorAdditionalInfo[];\n}\n\nexport function errorDetailDeserializer(item: any): ErrorDetail {\n return {\n code: item[\"code\"],\n message: item[\"message\"],\n target: item[\"target\"],\n details: !item[\"details\"] ? item[\"details\"] : errorDetailArrayDeserializer(item[\"details\"]),\n additionalInfo: !item[\"additionalInfo\"]\n ? item[\"additionalInfo\"]\n : errorAdditionalInfoArrayDeserializer(item[\"additionalInfo\"]),\n };\n}\n\nexport function errorDetailArrayDeserializer(result: Array<ErrorDetail>): any[] {\n return result.map((item) => {\n return errorDetailDeserializer(item);\n });\n}\n\nexport function errorAdditionalInfoArrayDeserializer(result: Array<ErrorAdditionalInfo>): any[] {\n return result.map((item) => {\n return errorAdditionalInfoDeserializer(item);\n });\n}\n\n/** The resource management error additional info. */\nexport interface ErrorAdditionalInfo {\n /** The additional info type. */\n readonly type?: string;\n /** The additional info. */\n readonly info?: any;\n}\n\nexport function errorAdditionalInfoDeserializer(item: any): ErrorAdditionalInfo {\n return {\n type: item[\"type\"],\n info: item[\"info\"],\n };\n}\n\n/** BackupInstance Resource */\nexport interface BackupInstanceResource extends ProxyResource {\n /** BackupInstanceResource properties */\n properties?: BackupInstance;\n /** Proxy Resource tags. */\n tags?: Record<string, string>;\n}\n\nexport function backupInstanceResourceSerializer(item: BackupInstanceResource): any {\n return {\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : backupInstanceSerializer(item[\"properties\"]),\n tags: item[\"tags\"],\n };\n}\n\nexport function backupInstanceResourceDeserializer(item: any): BackupInstanceResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : backupInstanceDeserializer(item[\"properties\"]),\n tags: item[\"tags\"],\n };\n}\n\n/** Backup Instance */\nexport interface BackupInstance {\n /** Gets or sets the Backup Instance friendly name. */\n friendlyName?: string;\n /** Gets or sets the data source information. */\n dataSourceInfo: Datasource;\n /** Gets or sets the data source set information. */\n dataSourceSetInfo?: DatasourceSet;\n /** Gets or sets the policy information. */\n policyInfo: PolicyInfo;\n /** ResourceGuardOperationRequests on which LAC check will be performed */\n resourceGuardOperationRequests?: string[];\n /** Specifies the protection status of the resource */\n readonly protectionStatus?: ProtectionStatusDetails;\n /** Specifies the current protection state of the resource */\n readonly currentProtectionState?: CurrentProtectionState;\n /** Specifies the protection error of the resource */\n readonly protectionErrorDetails?: UserFacingError;\n /** Specifies the provisioning state of the resource i.e. provisioning/updating/Succeeded/Failed */\n readonly provisioningState?: string;\n /** Credentials to use to authenticate with data source provider. */\n datasourceAuthCredentials?: AuthCredentialsUnion;\n /** Specifies the type of validation. In case of DeepValidation, all validations from /validateForBackup API will run again. */\n validationType?: ValidationType;\n /**\n * Contains information of the Identity Details for the BI.\n * If it is null, default will be considered as System Assigned.\n */\n identityDetails?: IdentityDetails;\n objectType: string;\n}\n\nexport function backupInstanceSerializer(item: BackupInstance): any {\n return {\n friendlyName: item[\"friendlyName\"],\n dataSourceInfo: datasourceSerializer(item[\"dataSourceInfo\"]),\n dataSourceSetInfo: !item[\"dataSourceSetInfo\"]\n ? item[\"dataSourceSetInfo\"]\n : datasourceSetSerializer(item[\"dataSourceSetInfo\"]),\n policyInfo: policyInfoSerializer(item[\"policyInfo\"]),\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n datasourceAuthCredentials: !item[\"datasourceAuthCredentials\"]\n ? item[\"datasourceAuthCredentials\"]\n : authCredentialsUnionSerializer(item[\"datasourceAuthCredentials\"]),\n validationType: item[\"validationType\"],\n identityDetails: !item[\"identityDetails\"]\n ? item[\"identityDetails\"]\n : identityDetailsSerializer(item[\"identityDetails\"]),\n objectType: item[\"objectType\"],\n };\n}\n\nexport function backupInstanceDeserializer(item: any): BackupInstance {\n return {\n friendlyName: item[\"friendlyName\"],\n dataSourceInfo: datasourceDeserializer(item[\"dataSourceInfo\"]),\n dataSourceSetInfo: !item[\"dataSourceSetInfo\"]\n ? item[\"dataSourceSetInfo\"]\n : datasourceSetDeserializer(item[\"dataSourceSetInfo\"]),\n policyInfo: policyInfoDeserializer(item[\"policyInfo\"]),\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n protectionStatus: !item[\"protectionStatus\"]\n ? item[\"protectionStatus\"]\n : protectionStatusDetailsDeserializer(item[\"protectionStatus\"]),\n currentProtectionState: item[\"currentProtectionState\"],\n protectionErrorDetails: !item[\"protectionErrorDetails\"]\n ? item[\"protectionErrorDetails\"]\n : userFacingErrorDeserializer(item[\"protectionErrorDetails\"]),\n provisioningState: item[\"provisioningState\"],\n datasourceAuthCredentials: !item[\"datasourceAuthCredentials\"]\n ? item[\"datasourceAuthCredentials\"]\n : authCredentialsUnionDeserializer(item[\"datasourceAuthCredentials\"]),\n validationType: item[\"validationType\"],\n identityDetails: !item[\"identityDetails\"]\n ? item[\"identityDetails\"]\n : identityDetailsDeserializer(item[\"identityDetails\"]),\n objectType: item[\"objectType\"],\n };\n}\n\n/** Datasource to be backed up */\nexport interface Datasource {\n /** DatasourceType of the resource. */\n datasourceType?: string;\n /** Type of Datasource object, used to initialize the right inherited type */\n objectType?: string;\n /** Full ARM ID of the resource. For azure resources, this is ARM ID. For non azure resources, this will be the ID created by backup service via Fabric/Vault. */\n resourceID: string;\n /** Location of datasource. */\n resourceLocation?: string;\n /** Unique identifier of the resource in the context of parent. */\n resourceName?: string;\n /** Resource Type of Datasource. */\n resourceType?: string;\n /** Uri of the resource. */\n resourceUri?: string;\n /** Properties specific to data source */\n resourceProperties?: BaseResourcePropertiesUnion;\n}\n\nexport function datasourceSerializer(item: Datasource): any {\n return {\n datasourceType: item[\"datasourceType\"],\n objectType: item[\"objectType\"],\n resourceID: item[\"resourceID\"],\n resourceLocation: item[\"resourceLocation\"],\n resourceName: item[\"resourceName\"],\n resourceType: item[\"resourceType\"],\n resourceUri: item[\"resourceUri\"],\n resourceProperties: !item[\"resourceProperties\"]\n ? item[\"resourceProperties\"]\n : baseResourcePropertiesUnionSerializer(item[\"resourceProperties\"]),\n };\n}\n\nexport function datasourceDeserializer(item: any): Datasource {\n return {\n datasourceType: item[\"datasourceType\"],\n objectType: item[\"objectType\"],\n resourceID: item[\"resourceID\"],\n resourceLocation: item[\"resourceLocation\"],\n resourceName: item[\"resourceName\"],\n resourceType: item[\"resourceType\"],\n resourceUri: item[\"resourceUri\"],\n resourceProperties: !item[\"resourceProperties\"]\n ? item[\"resourceProperties\"]\n : baseResourcePropertiesUnionDeserializer(item[\"resourceProperties\"]),\n };\n}\n\n/** Properties which are specific to datasource/datasourceSets */\nexport interface BaseResourceProperties {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: DefaultResourceProperties */\n objectType: ResourcePropertiesObjectType;\n}\n\nexport function baseResourcePropertiesSerializer(item: BaseResourceProperties): any {\n return { objectType: item[\"objectType\"] };\n}\n\nexport function baseResourcePropertiesDeserializer(item: any): BaseResourceProperties {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for BaseResourcePropertiesUnion */\nexport type BaseResourcePropertiesUnion = DefaultResourceProperties | BaseResourceProperties;\n\nexport function baseResourcePropertiesUnionSerializer(item: BaseResourcePropertiesUnion): any {\n switch (item.objectType) {\n case \"DefaultResourceProperties\":\n return defaultResourcePropertiesSerializer(item as DefaultResourceProperties);\n\n default:\n return baseResourcePropertiesSerializer(item);\n }\n}\n\nexport function baseResourcePropertiesUnionDeserializer(item: any): BaseResourcePropertiesUnion {\n switch (item.objectType) {\n case \"DefaultResourceProperties\":\n return defaultResourcePropertiesDeserializer(item as DefaultResourceProperties);\n\n default:\n return baseResourcePropertiesDeserializer(item);\n }\n}\n\n/** Type of the specific object - used for deserializing */\nexport enum KnownResourcePropertiesObjectType {\n /** DefaultResourceProperties */\n DefaultResourceProperties = \"DefaultResourceProperties\",\n}\n\n/**\n * Type of the specific object - used for deserializing \\\n * {@link KnownResourcePropertiesObjectType} can be used interchangeably with ResourcePropertiesObjectType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **DefaultResourceProperties**\n */\nexport type ResourcePropertiesObjectType = string;\n\n/** Default source properties */\nexport interface DefaultResourceProperties extends BaseResourceProperties {\n /** Type of the specific object - used for deserializing */\n objectType: \"DefaultResourceProperties\";\n}\n\nexport function defaultResourcePropertiesSerializer(item: DefaultResourceProperties): any {\n return { objectType: item[\"objectType\"] };\n}\n\nexport function defaultResourcePropertiesDeserializer(item: any): DefaultResourceProperties {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** DatasourceSet details of datasource to be backed up */\nexport interface DatasourceSet {\n /** DatasourceType of the resource. */\n datasourceType?: string;\n /** Type of Datasource object, used to initialize the right inherited type */\n objectType?: string;\n /** Full ARM ID of the resource. For azure resources, this is ARM ID. For non azure resources, this will be the ID created by backup service via Fabric/Vault. */\n resourceID: string;\n /** Location of datasource. */\n resourceLocation?: string;\n /** Unique identifier of the resource in the context of parent. */\n resourceName?: string;\n /** Resource Type of Datasource. */\n resourceType?: string;\n /** Uri of the resource. */\n resourceUri?: string;\n /** Properties specific to data source set */\n resourceProperties?: BaseResourcePropertiesUnion;\n}\n\nexport function datasourceSetSerializer(item: DatasourceSet): any {\n return {\n datasourceType: item[\"datasourceType\"],\n objectType: item[\"objectType\"],\n resourceID: item[\"resourceID\"],\n resourceLocation: item[\"resourceLocation\"],\n resourceName: item[\"resourceName\"],\n resourceType: item[\"resourceType\"],\n resourceUri: item[\"resourceUri\"],\n resourceProperties: !item[\"resourceProperties\"]\n ? item[\"resourceProperties\"]\n : baseResourcePropertiesUnionSerializer(item[\"resourceProperties\"]),\n };\n}\n\nexport function datasourceSetDeserializer(item: any): DatasourceSet {\n return {\n datasourceType: item[\"datasourceType\"],\n objectType: item[\"objectType\"],\n resourceID: item[\"resourceID\"],\n resourceLocation: item[\"resourceLocation\"],\n resourceName: item[\"resourceName\"],\n resourceType: item[\"resourceType\"],\n resourceUri: item[\"resourceUri\"],\n resourceProperties: !item[\"resourceProperties\"]\n ? item[\"resourceProperties\"]\n : baseResourcePropertiesUnionDeserializer(item[\"resourceProperties\"]),\n };\n}\n\n/** Policy Info in backupInstance */\nexport interface PolicyInfo {\n policyId: string;\n readonly policyVersion?: string;\n /** Policy parameters for the backup instance */\n policyParameters?: PolicyParameters;\n}\n\nexport function policyInfoSerializer(item: PolicyInfo): any {\n return {\n policyId: item[\"policyId\"],\n policyParameters: !item[\"policyParameters\"]\n ? item[\"policyParameters\"]\n : policyParametersSerializer(item[\"policyParameters\"]),\n };\n}\n\nexport function policyInfoDeserializer(item: any): PolicyInfo {\n return {\n policyId: item[\"policyId\"],\n policyVersion: item[\"policyVersion\"],\n policyParameters: !item[\"policyParameters\"]\n ? item[\"policyParameters\"]\n : policyParametersDeserializer(item[\"policyParameters\"]),\n };\n}\n\n/** Parameters in Policy */\nexport interface PolicyParameters {\n /** Gets or sets the DataStore Parameters */\n dataStoreParametersList?: DataStoreParametersUnion[];\n /** Gets or sets the Backup Data Source Parameters */\n backupDatasourceParametersList?: BackupDatasourceParametersUnion[];\n}\n\nexport function policyParametersSerializer(item: PolicyParameters): any {\n return {\n dataStoreParametersList: !item[\"dataStoreParametersList\"]\n ? item[\"dataStoreParametersList\"]\n : dataStoreParametersUnionArraySerializer(item[\"dataStoreParametersList\"]),\n backupDatasourceParametersList: !item[\"backupDatasourceParametersList\"]\n ? item[\"backupDatasourceParametersList\"]\n : backupDatasourceParametersUnionArraySerializer(item[\"backupDatasourceParametersList\"]),\n };\n}\n\nexport function policyParametersDeserializer(item: any): PolicyParameters {\n return {\n dataStoreParametersList: !item[\"dataStoreParametersList\"]\n ? item[\"dataStoreParametersList\"]\n : dataStoreParametersUnionArrayDeserializer(item[\"dataStoreParametersList\"]),\n backupDatasourceParametersList: !item[\"backupDatasourceParametersList\"]\n ? item[\"backupDatasourceParametersList\"]\n : backupDatasourceParametersUnionArrayDeserializer(item[\"backupDatasourceParametersList\"]),\n };\n}\n\nexport function dataStoreParametersUnionArraySerializer(\n result: Array<DataStoreParametersUnion>,\n): any[] {\n return result.map((item) => {\n return dataStoreParametersUnionSerializer(item);\n });\n}\n\nexport function dataStoreParametersUnionArrayDeserializer(\n result: Array<DataStoreParametersUnion>,\n): any[] {\n return result.map((item) => {\n return dataStoreParametersUnionDeserializer(item);\n });\n}\n\n/** Parameters for DataStore */\nexport interface DataStoreParameters {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: AzureOperationalStoreParameters */\n objectType: string;\n /** type of datastore; Operational/Vault/Archive */\n dataStoreType: DataStoreTypes;\n}\n\nexport function dataStoreParametersSerializer(item: DataStoreParameters): any {\n return {\n objectType: item[\"objectType\"],\n dataStoreType: item[\"dataStoreType\"],\n };\n}\n\nexport function dataStoreParametersDeserializer(item: any): DataStoreParameters {\n return {\n objectType: item[\"objectType\"],\n dataStoreType: item[\"dataStoreType\"],\n };\n}\n\n/** Alias for DataStoreParametersUnion */\nexport type DataStoreParametersUnion = AzureOperationalStoreParameters | DataStoreParameters;\n\nexport function dataStoreParametersUnionSerializer(item: DataStoreParametersUnion): any {\n switch (item.objectType) {\n case \"AzureOperationalStoreParameters\":\n return azureOperationalStoreParametersSerializer(item as AzureOperationalStoreParameters);\n\n default:\n return dataStoreParametersSerializer(item);\n }\n}\n\nexport function dataStoreParametersUnionDeserializer(item: any): DataStoreParametersUnion {\n switch (item.objectType) {\n case \"AzureOperationalStoreParameters\":\n return azureOperationalStoreParametersDeserializer(item as AzureOperationalStoreParameters);\n\n default:\n return dataStoreParametersDeserializer(item);\n }\n}\n\n/** type of datastore; Operational/Vault/Archive */\nexport enum KnownDataStoreTypes {\n /** OperationalStore */\n OperationalStore = \"OperationalStore\",\n /** VaultStore */\n VaultStore = \"VaultStore\",\n /** ArchiveStore */\n ArchiveStore = \"ArchiveStore\",\n}\n\n/**\n * type of datastore; Operational/Vault/Archive \\\n * {@link KnownDataStoreTypes} can be used interchangeably with DataStoreTypes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **OperationalStore** \\\n * **VaultStore** \\\n * **ArchiveStore**\n */\nexport type DataStoreTypes = string;\n\n/** Parameters for Operational-Tier DataStore */\nexport interface AzureOperationalStoreParameters extends DataStoreParameters {\n /** Gets or sets the Snapshot Resource Group Uri. */\n resourceGroupId?: string;\n /** Type of the specific object - used for deserializing */\n objectType: \"AzureOperationalStoreParameters\";\n}\n\nexport function azureOperationalStoreParametersSerializer(\n item: AzureOperationalStoreParameters,\n): any {\n return {\n objectType: item[\"objectType\"],\n dataStoreType: item[\"dataStoreType\"],\n resourceGroupId: item[\"resourceGroupId\"],\n };\n}\n\nexport function azureOperationalStoreParametersDeserializer(\n item: any,\n): AzureOperationalStoreParameters {\n return {\n objectType: item[\"objectType\"],\n dataStoreType: item[\"dataStoreType\"],\n resourceGroupId: item[\"resourceGroupId\"],\n };\n}\n\nexport function backupDatasourceParametersUnionArraySerializer(\n result: Array<BackupDatasourceParametersUnion>,\n): any[] {\n return result.map((item) => {\n return backupDatasourceParametersUnionSerializer(item);\n });\n}\n\nexport function backupDatasourceParametersUnionArrayDeserializer(\n result: Array<BackupDatasourceParametersUnion>,\n): any[] {\n return result.map((item) => {\n return backupDatasourceParametersUnionDeserializer(item);\n });\n}\n\n/** Parameters for Backup Datasource */\nexport interface BackupDatasourceParameters {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: KubernetesClusterBackupDatasourceParameters, BlobBackupDatasourceParameters, AdlsBlobBackupDatasourceParameters */\n objectType: string;\n}\n\nexport function backupDatasourceParametersSerializer(item: BackupDatasourceParameters): any {\n return { objectType: item[\"objectType\"] };\n}\n\nexport function backupDatasourceParametersDeserializer(item: any): BackupDatasourceParameters {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for BackupDatasourceParametersUnion */\nexport type BackupDatasourceParametersUnion =\n | KubernetesClusterBackupDatasourceParameters\n | BlobBackupDatasourceParametersUnion\n | BackupDatasourceParameters;\n\nexport function backupDatasourceParametersUnionSerializer(\n item: BackupDatasourceParametersUnion,\n): any {\n switch (item.objectType) {\n case \"KubernetesClusterBackupDatasourceParameters\":\n return kubernetesClusterBackupDatasourceParametersSerializer(\n item as KubernetesClusterBackupDatasourceParameters,\n );\n\n case \"BlobBackupDatasourceParameters\":\n case \"AdlsBlobBackupDatasourceParameters\":\n return blobBackupDatasourceParametersUnionSerializer(\n item as BlobBackupDatasourceParametersUnion,\n );\n\n default:\n return backupDatasourceParametersSerializer(item);\n }\n}\n\nexport function backupDatasourceParametersUnionDeserializer(\n item: any,\n): BackupDatasourceParametersUnion {\n switch (item.objectType) {\n case \"KubernetesClusterBackupDatasourceParameters\":\n return kubernetesClusterBackupDatasourceParametersDeserializer(\n item as KubernetesClusterBackupDatasourceParameters,\n );\n\n case \"BlobBackupDatasourceParameters\":\n case \"AdlsBlobBackupDatasourceParameters\":\n return blobBackupDatasourceParametersUnionDeserializer(\n item as BlobBackupDatasourceParametersUnion,\n );\n\n default:\n return backupDatasourceParametersDeserializer(item);\n }\n}\n\n/** Parameters for Kubernetes Cluster Backup Datasource */\nexport interface KubernetesClusterBackupDatasourceParameters extends BackupDatasourceParameters {\n /** Gets or sets the volume snapshot property. This property if enabled will take volume snapshots during backup. */\n snapshotVolumes: boolean;\n /** Gets or sets the include volume types property. This property sets the volume types to be included during backup. */\n includedVolumeTypes?: AKSVolumeTypes[];\n /** Gets or sets the include cluster resources property. This property if enabled will include cluster scope resources during backup. */\n includeClusterScopeResources: boolean;\n /** Gets or sets the include namespaces property. This property sets the namespaces to be included during backup. */\n includedNamespaces?: string[];\n /** Gets or sets the exclude namespaces property. This property sets the namespaces to be excluded during backup. */\n excludedNamespaces?: string[];\n /** Gets or sets the include resource types property. This property sets the resource types to be included during backup. */\n includedResourceTypes?: string[];\n /** Gets or sets the exclude resource types property. This property sets the resource types to be excluded during backup. */\n excludedResourceTypes?: string[];\n /** Gets or sets the LabelSelectors property. This property sets the resource with such label selectors to be included during backup. */\n labelSelectors?: string[];\n /** Gets or sets the backup hook references. This property sets the hook reference to be executed during backup. */\n backupHookReferences?: NamespacedNameResource[];\n /** Type of the specific object - used for deserializing */\n objectType: \"KubernetesClusterBackupDatasourceParameters\";\n}\n\nexport function kubernetesClusterBackupDatasourceParametersSerializer(\n item: KubernetesClusterBackupDatasourceParameters,\n): any {\n return {\n objectType: item[\"objectType\"],\n snapshotVolumes: item[\"snapshotVolumes\"],\n includedVolumeTypes: !item[\"includedVolumeTypes\"]\n ? item[\"includedVolumeTypes\"]\n : item[\"includedVolumeTypes\"].map((p: any) => {\n return p;\n }),\n includeClusterScopeResources: item[\"includeClusterScopeResources\"],\n includedNamespaces: !item[\"includedNamespaces\"]\n ? item[\"includedNamespaces\"]\n : item[\"includedNamespaces\"].map((p: any) => {\n return p;\n }),\n excludedNamespaces: !item[\"excludedNamespaces\"]\n ? item[\"excludedNamespaces\"]\n : item[\"excludedNamespaces\"].map((p: any) => {\n return p;\n }),\n includedResourceTypes: !item[\"includedResourceTypes\"]\n ? item[\"includedResourceTypes\"]\n : item[\"includedResourceTypes\"].map((p: any) => {\n return p;\n }),\n excludedResourceTypes: !item[\"excludedResourceTypes\"]\n ? item[\"excludedResourceTypes\"]\n : item[\"excludedResourceTypes\"].map((p: any) => {\n return p;\n }),\n labelSelectors: !item[\"labelSelectors\"]\n ? item[\"labelSelectors\"]\n : item[\"labelSelectors\"].map((p: any) => {\n return p;\n }),\n backupHookReferences: !item[\"backupHookReferences\"]\n ? item[\"backupHookReferences\"]\n : namespacedNameResourceArraySerializer(item[\"backupHookReferences\"]),\n };\n}\n\nexport function kubernetesClusterBackupDatasourceParametersDeserializer(\n item: any,\n): KubernetesClusterBackupDatasourceParameters {\n return {\n objectType: item[\"objectType\"],\n snapshotVolumes: item[\"snapshotVolumes\"],\n includedVolumeTypes: !item[\"includedVolumeTypes\"]\n ? item[\"includedVolumeTypes\"]\n : item[\"includedVolumeTypes\"].map((p: any) => {\n return p;\n }),\n includeClusterScopeResources: item[\"includeClusterScopeResources\"],\n includedNamespaces: !item[\"includedNamespaces\"]\n ? item[\"includedNamespaces\"]\n : item[\"includedNamespaces\"].map((p: any) => {\n return p;\n }),\n excludedNamespaces: !item[\"excludedNamespaces\"]\n ? item[\"excludedNamespaces\"]\n : item[\"excludedNamespaces\"].map((p: any) => {\n return p;\n }),\n includedResourceTypes: !item[\"includedResourceTypes\"]\n ? item[\"includedResourceTypes\"]\n : item[\"includedResourceTypes\"].map((p: any) => {\n return p;\n }),\n excludedResourceTypes: !item[\"excludedResourceTypes\"]\n ? item[\"excludedResourceTypes\"]\n : item[\"excludedResourceTypes\"].map((p: any) => {\n return p;\n }),\n labelSelectors: !item[\"labelSelectors\"]\n ? item[\"labelSelectors\"]\n : item[\"labelSelectors\"].map((p: any) => {\n return p;\n }),\n backupHookReferences: !item[\"backupHookReferences\"]\n ? item[\"backupHookReferences\"]\n : namespacedNameResourceArrayDeserializer(item[\"backupHookReferences\"]),\n };\n}\n\n/** Known values of {@link AKSVolumeTypes} that the service accepts. */\nexport enum KnownAKSVolumeTypes {\n /** AzureDisk */\n AzureDisk = \"AzureDisk\",\n /** AzureFileShareSMB */\n AzureFileShareSMB = \"AzureFileShareSMB\",\n}\n\n/** Type of AKSVolumeTypes */\nexport type AKSVolumeTypes = string;\n\nexport function namespacedNameResourceArraySerializer(\n result: Array<NamespacedNameResource>,\n): any[] {\n return result.map((item) => {\n return namespacedNameResourceSerializer(item);\n });\n}\n\nexport function namespacedNameResourceArrayDeserializer(\n result: Array<NamespacedNameResource>,\n): any[] {\n return result.map((item) => {\n return namespacedNameResourceDeserializer(item);\n });\n}\n\n/** Class to refer resources which contains namespace and name */\nexport interface NamespacedNameResource {\n /** Name of the resource */\n name?: string;\n /** Namespace in which the resource exists */\n namespace?: string;\n}\n\nexport function namespacedNameResourceSerializer(item: NamespacedNameResource): any {\n return { name: item[\"name\"], namespace: item[\"namespace\"] };\n}\n\nexport function namespacedNameResourceDeserializer(item: any): NamespacedNameResource {\n return {\n name: item[\"name\"],\n namespace: item[\"namespace\"],\n };\n}\n\n/** Parameters to be used during configuration of backup of blobs */\nexport interface BlobBackupDatasourceParameters extends BackupDatasourceParameters {\n /** List of containers to be backed up during configuration of backup of blobs */\n containersList: string[];\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: AdlsBlobBackupDatasourceParameters */\n objectType: \"BlobBackupDatasourceParameters\" | \"AdlsBlobBackupDatasourceParameters\";\n}\n\nexport function blobBackupDatasourceParametersSerializer(\n item: BlobBackupDatasourceParameters,\n): any {\n return {\n objectType: item[\"objectType\"],\n containersList: item[\"containersList\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function blobBackupDatasourceParametersDeserializer(\n item: any,\n): BlobBackupDatasourceParameters {\n return {\n objectType: item[\"objectType\"],\n containersList: item[\"containersList\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Alias for BlobBackupDatasourceParametersUnion */\nexport type BlobBackupDatasourceParametersUnion =\n | AdlsBlobBackupDatasourceParameters\n | BlobBackupDatasourceParameters;\n\nexport function blobBackupDatasourceParametersUnionSerializer(\n item: BlobBackupDatasourceParametersUnion,\n): any {\n switch (item.objectType) {\n case \"AdlsBlobBackupDatasourceParameters\":\n return adlsBlobBackupDatasourceParametersSerializer(\n item as AdlsBlobBackupDatasourceParameters,\n );\n\n default:\n return blobBackupDatasourceParametersSerializer(item);\n }\n}\n\nexport function blobBackupDatasourceParametersUnionDeserializer(\n item: any,\n): BlobBackupDatasourceParametersUnion {\n switch (item.objectType) {\n case \"AdlsBlobBackupDatasourceParameters\":\n return adlsBlobBackupDatasourceParametersDeserializer(\n item as AdlsBlobBackupDatasourceParameters,\n );\n\n default:\n return blobBackupDatasourceParametersDeserializer(item);\n }\n}\n\n/** Parameters to be used during configuration of backup of azure data lake storage account blobs */\nexport interface AdlsBlobBackupDatasourceParameters extends BlobBackupDatasourceParameters {\n /** Type of the specific object - used for deserializing */\n objectType: \"AdlsBlobBackupDatasourceParameters\";\n}\n\nexport function adlsBlobBackupDatasourceParametersSerializer(\n item: AdlsBlobBackupDatasourceParameters,\n): any {\n return {\n containersList: item[\"containersList\"].map((p: any) => {\n return p;\n }),\n objectType: item[\"objectType\"],\n };\n}\n\nexport function adlsBlobBackupDatasourceParametersDeserializer(\n item: any,\n): AdlsBlobBackupDatasourceParameters {\n return {\n containersList: item[\"containersList\"].map((p: any) => {\n return p;\n }),\n objectType: item[\"objectType\"],\n };\n}\n\n/** Protection status details */\nexport interface ProtectionStatusDetails {\n /** Specifies the protection status error of the resource */\n errorDetails?: UserFacingError;\n /** Specifies the protection status of the resource */\n status?: Status;\n}\n\nexport function protectionStatusDetailsDeserializer(item: any): ProtectionStatusDetails {\n return {\n errorDetails: !item[\"errorDetails\"]\n ? item[\"errorDetails\"]\n : userFacingErrorDeserializer(item[\"errorDetails\"]),\n status: item[\"status\"],\n };\n}\n\n/** Error object used by layers that have access to localized content, and propagate that to user */\nexport interface UserFacingError {\n /** Unique code for this error */\n code?: string;\n /** Additional related Errors */\n details?: UserFacingError[];\n /** Inner Error */\n innerError?: InnerError;\n /** Whether the operation will be retryable or not */\n isRetryable?: boolean;\n /** Whether the operation is due to a user error or service error */\n isUserError?: boolean;\n /** Any key value pairs that can be injected inside error object */\n properties?: Record<string, string>;\n message?: string;\n /** RecommendedAction � localized. */\n recommendedAction?: string[];\n /** Target of the error. */\n target?: string;\n}\n\nexport function userFacingErrorDeserializer(item: any): UserFacingError {\n return {\n code: item[\"code\"],\n details: !item[\"details\"] ? item[\"details\"] : userFacingErrorArrayDeserializer(item[\"details\"]),\n innerError: !item[\"innerError\"]\n ? item[\"innerError\"]\n : innerErrorDeserializer(item[\"innerError\"]),\n isRetryable: item[\"isRetryable\"],\n isUserError: item[\"isUserError\"],\n properties: item[\"properties\"],\n message: item[\"message\"],\n recommendedAction: !item[\"recommendedAction\"]\n ? item[\"recommendedAction\"]\n : item[\"recommendedAction\"].map((p: any) => {\n return p;\n }),\n target: item[\"target\"],\n };\n}\n\nexport function userFacingErrorArrayDeserializer(result: Array<UserFacingError>): any[] {\n return result.map((item) => {\n return userFacingErrorDeserializer(item);\n });\n}\n\n/** Inner Error */\nexport interface InnerError {\n /** Any Key value pairs that can be provided to the client for additional verbose information. */\n additionalInfo?: Record<string, string>;\n /** Unique code for this error */\n code?: string;\n /** Child Inner Error, to allow Nesting. */\n embeddedInnerError?: InnerError;\n}\n\nexport function innerErrorDeserializer(item: any): InnerError {\n return {\n additionalInfo: item[\"additionalInfo\"],\n code: item[\"code\"],\n embeddedInnerError: !item[\"embeddedInnerError\"]\n ? item[\"embeddedInnerError\"]\n : innerErrorDeserializer(item[\"embeddedInnerError\"]),\n };\n}\n\n/** Specifies the protection status of the resource */\nexport enum KnownStatus {\n /** ConfiguringProtection */\n ConfiguringProtection = \"ConfiguringProtection\",\n /** ConfiguringProtectionFailed */\n ConfiguringProtectionFailed = \"ConfiguringProtectionFailed\",\n /** ProtectionConfigured */\n ProtectionConfigured = \"ProtectionConfigured\",\n /** ProtectionStopped */\n ProtectionStopped = \"ProtectionStopped\",\n /** SoftDeleted */\n SoftDeleted = \"SoftDeleted\",\n /** SoftDeleting */\n SoftDeleting = \"SoftDeleting\",\n}\n\n/**\n * Specifies the protection status of the resource \\\n * {@link KnownStatus} can be used interchangeably with Status,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ConfiguringProtection** \\\n * **ConfiguringProtectionFailed** \\\n * **ProtectionConfigured** \\\n * **ProtectionStopped** \\\n * **SoftDeleted** \\\n * **SoftDeleting**\n */\nexport type Status = string;\n\n/** Specifies the current protection state of the resource */\nexport enum KnownCurrentProtectionState {\n /** Invalid */\n Invalid = \"Invalid\",\n /** NotProtected */\n NotProtected = \"NotProtected\",\n /** ConfiguringProtection */\n ConfiguringProtection = \"ConfiguringProtection\",\n /** ProtectionConfigured */\n ProtectionConfigured = \"ProtectionConfigured\",\n /** BackupSchedulesSuspended */\n BackupSchedulesSuspended = \"BackupSchedulesSuspended\",\n /** RetentionSchedulesSuspended */\n RetentionSchedulesSuspended = \"RetentionSchedulesSuspended\",\n /** ProtectionStopped */\n ProtectionStopped = \"ProtectionStopped\",\n /** ProtectionError */\n ProtectionError = \"ProtectionError\",\n /** ConfiguringProtectionFailed */\n ConfiguringProtectionFailed = \"ConfiguringProtectionFailed\",\n /** SoftDeleting */\n SoftDeleting = \"SoftDeleting\",\n /** SoftDeleted */\n SoftDeleted = \"SoftDeleted\",\n /** UpdatingProtection */\n UpdatingProtection = \"UpdatingProtection\",\n}\n\n/**\n * Specifies the current protection state of the resource \\\n * {@link KnownCurrentProtectionState} can be used interchangeably with CurrentProtectionState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Invalid** \\\n * **NotProtected** \\\n * **ConfiguringProtection** \\\n * **ProtectionConfigured** \\\n * **BackupSchedulesSuspended** \\\n * **RetentionSchedulesSuspended** \\\n * **ProtectionStopped** \\\n * **ProtectionError** \\\n * **ConfiguringProtectionFailed** \\\n * **SoftDeleting** \\\n * **SoftDeleted** \\\n * **UpdatingProtection**\n */\nexport type CurrentProtectionState = string;\n\n/** Base class for different types of authentication credentials. */\nexport interface AuthCredentials {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: SecretStoreBasedAuthCredentials */\n objectType: string;\n}\n\nexport function authCredentialsSerializer(item: AuthCredentials): any {\n return { objectType: item[\"objectType\"] };\n}\n\nexport function authCredentialsDeserializer(item: any): AuthCredentials {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for AuthCredentialsUnion */\nexport type AuthCredentialsUnion = SecretStoreBasedAuthCredentials | AuthCredentials;\n\nexport function authCredentialsUnionSerializer(item: AuthCredentialsUnion): any {\n switch (item.objectType) {\n case \"SecretStoreBasedAuthCredentials\":\n return secretStoreBasedAuthCredentialsSerializer(item as SecretStoreBasedAuthCredentials);\n\n default:\n return authCredentialsSerializer(item);\n }\n}\n\nexport function authCredentialsUnionDeserializer(item: any): AuthCredentialsUnion {\n switch (item.objectType) {\n case \"SecretStoreBasedAuthCredentials\":\n return secretStoreBasedAuthCredentialsDeserializer(item as SecretStoreBasedAuthCredentials);\n\n default:\n return authCredentialsDeserializer(item);\n }\n}\n\n/** Secret store based authentication credentials. */\nexport interface SecretStoreBasedAuthCredentials extends AuthCredentials {\n /** Secret store resource */\n secretStoreResource?: SecretStoreResource;\n /** Type of the specific object - used for deserializing */\n objectType: \"SecretStoreBasedAuthCredentials\";\n}\n\nexport function secretStoreBasedAuthCredentialsSerializer(\n item: SecretStoreBasedAuthCredentials,\n): any {\n return {\n objectType: item[\"objectType\"],\n secretStoreResource: !item[\"secretStoreResource\"]\n ? item[\"secretStoreResource\"]\n : secretStoreResourceSerializer(item[\"secretStoreResource\"]),\n };\n}\n\nexport function secretStoreBasedAuthCredentialsDeserializer(\n item: any,\n): SecretStoreBasedAuthCredentials {\n return {\n objectType: item[\"objectType\"],\n secretStoreResource: !item[\"secretStoreResource\"]\n ? item[\"secretStoreResource\"]\n : secretStoreResourceDeserializer(item[\"secretStoreResource\"]),\n };\n}\n\n/** Class representing a secret store resource. */\nexport interface SecretStoreResource {\n /** Uri to get to the resource */\n uri?: string;\n /** Gets or sets the type of secret store */\n secretStoreType: SecretStoreType;\n /** Gets or sets value stored in secret store resource */\n value?: string;\n}\n\nexport function secretStoreResourceSerializer(item: SecretStoreResource): any {\n return {\n uri: item[\"uri\"],\n secretStoreType: item[\"secretStoreType\"],\n value: item[\"value\"],\n };\n}\n\nexport function secretStoreResourceDeserializer(item: any): SecretStoreResource {\n return {\n uri: item[\"uri\"],\n secretStoreType: item[\"secretStoreType\"],\n value: item[\"value\"],\n };\n}\n\n/** Gets or sets the type of secret store */\nexport enum KnownSecretStoreType {\n /** Invalid */\n Invalid = \"Invalid\",\n /** AzureKeyVault */\n AzureKeyVault = \"AzureKeyVault\",\n}\n\n/**\n * Gets or sets the type of secret store \\\n * {@link KnownSecretStoreType} can be used interchangeably with SecretStoreType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Invalid** \\\n * **AzureKeyVault**\n */\nexport type SecretStoreType = string;\n\n/** Specifies the type of validation. In case of DeepValidation, all validations from /validateForBackup API will run again. */\nexport enum KnownValidationType {\n /** ShallowValidation */\n ShallowValidation = \"ShallowValidation\",\n /** DeepValidation */\n DeepValidation = \"DeepValidation\",\n}\n\n/**\n * Specifies the type of validation. In case of DeepValidation, all validations from /validateForBackup API will run again. \\\n * {@link KnownValidationType} can be used interchangeably with ValidationType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ShallowValidation** \\\n * **DeepValidation**\n */\nexport type ValidationType = string;\n\n/** model interface IdentityDetails */\nexport interface IdentityDetails {\n /** Specifies if the BI is protected by System Identity. */\n useSystemAssignedIdentity?: boolean;\n /** ARM URL for User Assigned Identity. */\n userAssignedIdentityArmUrl?: string;\n}\n\nexport function identityDetailsSerializer(item: IdentityDetails): any {\n return {\n useSystemAssignedIdentity: item[\"useSystemAssignedIdentity\"],\n userAssignedIdentityArmUrl: item[\"userAssignedIdentityArmUrl\"],\n };\n}\n\nexport function identityDetailsDeserializer(item: any): IdentityDetails {\n return {\n useSystemAssignedIdentity: item[\"useSystemAssignedIdentity\"],\n userAssignedIdentityArmUrl: item[\"userAssignedIdentityArmUrl\"],\n };\n}\n\n/** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */\nexport interface ProxyResource extends Resource {}\n\nexport function proxyResourceSerializer(item: ProxyResource): any {\n return item;\n}\n\nexport function proxyResourceDeserializer(item: any): ProxyResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n };\n}\n\n/** Common fields that are returned in the response for all Azure Resource Manager resources */\nexport interface Resource {\n /** Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} */\n readonly id?: string;\n /** The name of the resource */\n readonly name?: string;\n /** The type of the resource. E.g. \"Microsoft.Compute/virtualMachines\" or \"Microsoft.Storage/storageAccounts\" */\n readonly type?: string;\n /** Azure Resource Manager metadata containing createdBy and modifiedBy information. */\n readonly systemData?: SystemData;\n}\n\nexport function resourceSerializer(item: Resource): any {\n return item;\n}\n\nexport function resourceDeserializer(item: any): Resource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n };\n}\n\n/** Metadata pertaining to creation and last modification of the resource. */\nexport interface SystemData {\n /** The identity that created the resource. */\n createdBy?: string;\n /** The type of identity that created the resource. */\n createdByType?: CreatedByType;\n /** The timestamp of resource creation (UTC). */\n createdAt?: Date;\n /** The identity that last modified the resource. */\n lastModifiedBy?: string;\n /** The type of identity that last modified the resource. */\n lastModifiedByType?: CreatedByType;\n /** The timestamp of resource last modification (UTC) */\n lastModifiedAt?: Date;\n}\n\nexport function systemDataDeserializer(item: any): SystemData {\n return {\n createdBy: item[\"createdBy\"],\n createdByType: item[\"createdByType\"],\n createdAt: !item[\"createdAt\"] ? item[\"createdAt\"] : new Date(item[\"createdAt\"]),\n lastModifiedBy: item[\"lastModifiedBy\"],\n lastModifiedByType: item[\"lastModifiedByType\"],\n lastModifiedAt: !item[\"lastModifiedAt\"]\n ? item[\"lastModifiedAt\"]\n : new Date(item[\"lastModifiedAt\"]),\n };\n}\n\n/** The kind of entity that created the resource. */\nexport enum KnownCreatedByType {\n /** The entity was created by a user. */\n User = \"User\",\n /** The entity was created by an application. */\n Application = \"Application\",\n /** The entity was created by a managed identity. */\n ManagedIdentity = \"ManagedIdentity\",\n /** The entity was created by a key. */\n Key = \"Key\",\n}\n\n/**\n * The kind of entity that created the resource. \\\n * {@link KnownCreatedByType} can be used interchangeably with CreatedByType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **User**: The entity was created by a user. \\\n * **Application**: The entity was created by an application. \\\n * **ManagedIdentity**: The entity was created by a managed identity. \\\n * **Key**: The entity was created by a key.\n */\nexport type CreatedByType = string;\n\n/** An error response from Azure Backup. */\nexport interface CloudError {\n /** The resource management error response. */\n error?: ErrorModel;\n}\n\nexport function cloudErrorDeserializer(item: any): CloudError {\n return {\n error: !item[\"error\"] ? item[\"error\"] : errorDeserializer(item[\"error\"]),\n };\n}\n\n/** The resource management error response. */\nexport interface ErrorModel {\n /** The error additional info. */\n readonly additionalInfo?: ErrorAdditionalInfo[];\n /** The error code. */\n readonly code?: string;\n /** The error details. */\n readonly details?: ErrorModel[];\n /** The error message. */\n readonly message?: string;\n /** The error target. */\n readonly target?: string;\n}\n\nexport function errorDeserializer(item: any): ErrorModel {\n return {\n additionalInfo: !item[\"additionalInfo\"]\n ? item[\"additionalInfo\"]\n : errorAdditionalInfoArrayDeserializer(item[\"additionalInfo\"]),\n code: item[\"code\"],\n details: !item[\"details\"] ? item[\"details\"] : errorArrayDeserializer(item[\"details\"]),\n message: item[\"message\"],\n target: item[\"target\"],\n };\n}\n\nexport function errorArrayDeserializer(result: Array<ErrorModel>): any[] {\n return result.map((item) => {\n return errorDeserializer(item);\n });\n}\n\n/** BackupInstance Resource list response */\nexport interface _BackupInstanceResourceList extends DppResourceList {\n /** List of resources. */\n value?: BackupInstanceResource[];\n}\n\nexport function _backupInstanceResourceListDeserializer(item: any): _BackupInstanceResourceList {\n return {\n nextLink: item[\"nextLink\"],\n value: !item[\"value\"] ? item[\"value\"] : backupInstanceResourceArrayDeserializer(item[\"value\"]),\n };\n}\n\nexport function backupInstanceResourceArraySerializer(\n result: Array<BackupInstanceResource>,\n): any[] {\n return result.map((item) => {\n return backupInstanceResourceSerializer(item);\n });\n}\n\nexport function backupInstanceResourceArrayDeserializer(\n result: Array<BackupInstanceResource>,\n): any[] {\n return result.map((item) => {\n return backupInstanceResourceDeserializer(item);\n });\n}\n\n/** ListResource */\nexport interface DppResourceList {\n /** The uri to fetch the next page of resources. Call ListNext() fetches next page of resources. */\n nextLink?: string;\n}\n\nexport function dppResourceListDeserializer(item: any): DppResourceList {\n return {\n nextLink: item[\"nextLink\"],\n };\n}\n\n/** Validate for backup request */\nexport interface ValidateForBackupRequest {\n /** Backup Instance */\n backupInstance: BackupInstance;\n}\n\nexport function validateForBackupRequestSerializer(item: ValidateForBackupRequest): any {\n return { backupInstance: backupInstanceSerializer(item[\"backupInstance\"]) };\n}\n\n/** Operation Job Extended Info */\nexport interface OperationJobExtendedInfo extends OperationExtendedInfo {\n /** Name or Arm Id of the job created for this operation. */\n jobId?: string;\n /** This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types. */\n objectType: \"OperationJobExtendedInfo\";\n}\n\nexport function operationJobExtendedInfoDeserializer(item: any): OperationJobExtendedInfo {\n return {\n objectType: item[\"objectType\"],\n jobId: item[\"jobId\"],\n };\n}\n\n/** Operation Extended Info */\nexport interface OperationExtendedInfo {\n /** This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types. */\n /** The discriminator possible values: OperationJobExtendedInfo */\n objectType: string;\n}\n\nexport function operationExtendedInfoDeserializer(item: any): OperationExtendedInfo {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for OperationExtendedInfoUnion */\nexport type OperationExtendedInfoUnion = OperationJobExtendedInfo | OperationExtendedInfo;\n\nexport function operationExtendedInfoUnionDeserializer(item: any): OperationExtendedInfoUnion {\n switch (item.objectType) {\n case \"OperationJobExtendedInfo\":\n return operationJobExtendedInfoDeserializer(item as OperationJobExtendedInfo);\n\n default:\n return operationExtendedInfoDeserializer(item);\n }\n}\n\n/** Trigger backup request */\nexport interface TriggerBackupRequest {\n /** Name for the Rule of the Policy which needs to be applied for this backup */\n backupRuleOptions: AdHocBackupRuleOptions;\n}\n\nexport function triggerBackupRequestSerializer(item: TriggerBackupRequest): any {\n return {\n backupRuleOptions: adHocBackupRuleOptionsSerializer(item[\"backupRuleOptions\"]),\n };\n}\n\n/** Adhoc backup rules */\nexport interface AdHocBackupRuleOptions {\n ruleName: string;\n /** Adhoc backup trigger option */\n triggerOption: AdhocBackupTriggerOption;\n}\n\nexport function adHocBackupRuleOptionsSerializer(item: AdHocBackupRuleOptions): any {\n return {\n ruleName: item[\"ruleName\"],\n triggerOption: adhocBackupTriggerOptionSerializer(item[\"triggerOption\"]),\n };\n}\n\n/** Adhoc backup trigger option */\nexport interface AdhocBackupTriggerOption {\n retentionTagOverride?: string;\n}\n\nexport function adhocBackupTriggerOptionSerializer(item: AdhocBackupTriggerOption): any {\n return { retentionTagOverride: item[\"retentionTagOverride\"] };\n}\n\n/** Validate for modify backup request */\nexport interface ValidateForModifyBackupRequest {\n /** Backup Instance */\n backupInstance: BackupInstance;\n}\n\nexport function validateForModifyBackupRequestSerializer(\n item: ValidateForModifyBackupRequest,\n): any {\n return { backupInstance: backupInstanceSerializer(item[\"backupInstance\"]) };\n}\n\n/** Azure Backup Rehydrate Request */\nexport interface AzureBackupRehydrationRequest {\n /** Id of the recovery point to be recovered */\n recoveryPointId: string;\n /** Priority to be used for rehydration. Values High or Standard */\n rehydrationPriority?: RehydrationPriority;\n /** Retention duration in ISO 8601 format i.e P10D . */\n rehydrationRetentionDuration: string;\n}\n\nexport function azureBackupRehydrationRequestSerializer(item: AzureBackupRehydrationRequest): any {\n return {\n recoveryPointId: item[\"recoveryPointId\"],\n rehydrationPriority: item[\"rehydrationPriority\"],\n rehydrationRetentionDuration: item[\"rehydrationRetentionDuration\"],\n };\n}\n\n/** Priority to be used for rehydration. Values High or Standard */\nexport enum KnownRehydrationPriority {\n /** Invalid */\n Invalid = \"Invalid\",\n /** High */\n High = \"High\",\n /** Standard */\n Standard = \"Standard\",\n}\n\n/**\n * Priority to be used for rehydration. Values High or Standard \\\n * {@link KnownRehydrationPriority} can be used interchangeably with RehydrationPriority,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Invalid** \\\n * **High** \\\n * **Standard**\n */\nexport type RehydrationPriority = string;\n\n/** Azure backup restore request */\nexport interface AzureBackupRestoreRequest {\n objectType: string;\n /** Gets or sets the restore target information. */\n restoreTargetInfo: RestoreTargetInfoBaseUnion;\n /** Gets or sets the type of the source data store. */\n sourceDataStoreType: SourceDataStoreType;\n /** Fully qualified Azure Resource Manager ID of the datasource which is being recovered. */\n sourceResourceId?: string;\n /** ResourceGuardOperationRequests on which LAC check will be performed */\n resourceGuardOperationRequests?: string[];\n /**\n * Contains information of the Identity Details for the BI.\n * If it is null, default will be considered as System Assigned.\n */\n identityDetails?: IdentityDetails;\n}\n\nexport function azureBackupRestoreRequestSerializer(item: AzureBackupRestoreRequest): any {\n return {\n objectType: item[\"objectType\"],\n restoreTargetInfo: restoreTargetInfoBaseUnionSerializer(item[\"restoreTargetInfo\"]),\n sourceDataStoreType: item[\"sourceDataStoreType\"],\n sourceResourceId: item[\"sourceResourceId\"],\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n identityDetails: !item[\"identityDetails\"]\n ? item[\"identityDetails\"]\n : identityDetailsSerializer(item[\"identityDetails\"]),\n };\n}\n\n/** Alias for AzureBackupRestoreRequestUnion */\nexport type AzureBackupRestoreRequestUnion =\n | AzureBackupRecoveryPointBasedRestoreRequestUnion\n | AzureBackupRecoveryTimeBasedRestoreRequest\n | AzureBackupRestoreRequest;\n\nexport function azureBackupRestoreRequestUnionSerializer(\n item: AzureBackupRestoreRequestUnion,\n): any {\n switch (item.objectType) {\n case \"AzureBackupRecoveryPointBasedRestoreRequest\":\n case \"AzureBackupRestoreWithRehydrationRequest\":\n return azureBackupRecoveryPointBasedRestoreRequestUnionSerializer(\n item as AzureBackupRecoveryPointBasedRestoreRequestUnion,\n );\n\n case \"AzureBackupRecoveryTimeBasedRestoreRequest\":\n return azureBackupRecoveryTimeBasedRestoreRequestSerializer(\n item as AzureBackupRecoveryTimeBasedRestoreRequest,\n );\n\n default:\n return azureBackupRestoreRequestSerializer(item);\n }\n}\n\n/** Base class common to RestoreTargetInfo and RestoreFilesTargetInfo */\nexport interface RestoreTargetInfoBase {\n /** Type of Datasource object, used to initialize the right inherited type */\n /** The discriminator possible values: ItemLevelRestoreTargetInfo, RestoreFilesTargetInfo, RestoreTargetInfo */\n objectType: string;\n /** Recovery Option */\n recoveryOption: RecoveryOption;\n /** Target Restore region */\n restoreLocation?: string;\n}\n\nexport function restoreTargetInfoBaseSerializer(item: RestoreTargetInfoBase): any {\n return {\n objectType: item[\"objectType\"],\n recoveryOption: item[\"recoveryOption\"],\n restoreLocation: item[\"restoreLocation\"],\n };\n}\n\n/** Alias for RestoreTargetInfoBaseUnion */\nexport type RestoreTargetInfoBaseUnion =\n | ItemLevelRestoreTargetInfo\n | RestoreFilesTargetInfo\n | RestoreTargetInfo\n | RestoreTargetInfoBase;\n\nexport function restoreTargetInfoBaseUnionSerializer(item: RestoreTargetInfoBaseUnion): any {\n switch (item.objectType) {\n case \"ItemLevelRestoreTargetInfo\":\n return itemLevelRestoreTargetInfoSerializer(item as ItemLevelRestoreTargetInfo);\n\n case \"RestoreFilesTargetInfo\":\n return restoreFilesTargetInfoSerializer(item as RestoreFilesTargetInfo);\n\n case \"RestoreTargetInfo\":\n return restoreTargetInfoSerializer(item as RestoreTargetInfo);\n\n default:\n return restoreTargetInfoBaseSerializer(item);\n }\n}\n\n/** Recovery Option */\nexport enum KnownRecoveryOption {\n /** FailIfExists */\n FailIfExists = \"FailIfExists\",\n}\n\n/**\n * Recovery Option \\\n * {@link KnownRecoveryOption} can be used interchangeably with RecoveryOption,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **FailIfExists**\n */\nexport type RecoveryOption = string;\n\n/** Restore target info for Item level restore operation */\nexport interface ItemLevelRestoreTargetInfo extends RestoreTargetInfoBase {\n /** Restore Criteria */\n restoreCriteria: ItemLevelRestoreCriteriaUnion[];\n /** Information of target DS */\n datasourceInfo: Datasource;\n /** Information of target DS Set */\n datasourceSetInfo?: DatasourceSet;\n /** Credentials to use to authenticate with data source provider. */\n datasourceAuthCredentials?: AuthCredentialsUnion;\n /** Type of Datasource object, used to initialize the right inherited type */\n objectType: \"ItemLevelRestoreTargetInfo\";\n}\n\nexport function itemLevelRestoreTargetInfoSerializer(item: ItemLevelRestoreTargetInfo): any {\n return {\n objectType: item[\"objectType\"],\n recoveryOption: item[\"recoveryOption\"],\n restoreLocation: item[\"restoreLocation\"],\n restoreCriteria: itemLevelRestoreCriteriaUnionArraySerializer(item[\"restoreCriteria\"]),\n datasourceInfo: datasourceSerializer(item[\"datasourceInfo\"]),\n datasourceSetInfo: !item[\"datasourceSetInfo\"]\n ? item[\"datasourceSetInfo\"]\n : datasourceSetSerializer(item[\"datasourceSetInfo\"]),\n datasourceAuthCredentials: !item[\"datasourceAuthCredentials\"]\n ? item[\"datasourceAuthCredentials\"]\n : authCredentialsUnionSerializer(item[\"datasourceAuthCredentials\"]),\n };\n}\n\nexport function itemLevelRestoreCriteriaUnionArraySerializer(\n result: Array<ItemLevelRestoreCriteriaUnion>,\n): any[] {\n return result.map((item) => {\n return itemLevelRestoreCriteriaUnionSerializer(item);\n });\n}\n\n/** Class to contain criteria for item level restore */\nexport interface ItemLevelRestoreCriteria {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: ItemPathBasedRestoreCriteria, RangeBasedItemLevelRestoreCriteria, KubernetesStorageClassRestoreCriteria, KubernetesPVRestoreCriteria, KubernetesClusterRestoreCriteria, KubernetesClusterVaultTierRestoreCriteria */\n objectType: string;\n}\n\nexport function itemLevelRestoreCriteriaSerializer(item: ItemLevelRestoreCriteria): any {\n return { objectType: item[\"objectType\"] };\n}\n\n/** Alias for ItemLevelRestoreCriteriaUnion */\nexport type ItemLevelRestoreCriteriaUnion =\n | ItemPathBasedRestoreCriteria\n | RangeBasedItemLevelRestoreCriteria\n | KubernetesStorageClassRestoreCriteria\n | KubernetesPVRestoreCriteria\n | KubernetesClusterRestoreCriteria\n | KubernetesClusterVaultTierRestoreCriteria\n | ItemLevelRestoreCriteria;\n\nexport function itemLevelRestoreCriteriaUnionSerializer(item: ItemLevelRestoreCriteriaUnion): any {\n switch (item.objectType) {\n case \"ItemPathBasedRestoreCriteria\":\n return itemPathBasedRestoreCriteriaSerializer(item as ItemPathBasedRestoreCriteria);\n\n case \"RangeBasedItemLevelRestoreCriteria\":\n return rangeBasedItemLevelRestoreCriteriaSerializer(\n item as RangeBasedItemLevelRestoreCriteria,\n );\n\n case \"KubernetesStorageClassRestoreCriteria\":\n return kubernetesStorageClassRestoreCriteriaSerializer(\n item as KubernetesStorageClassRestoreCriteria,\n );\n\n case \"KubernetesPVRestoreCriteria\":\n return kubernetesPVRestoreCriteriaSerializer(item as KubernetesPVRestoreCriteria);\n\n case \"KubernetesClusterRestoreCriteria\":\n return kubernetesClusterRestoreCriteriaSerializer(item as KubernetesClusterRestoreCriteria);\n\n case \"KubernetesClusterVaultTierRestoreCriteria\":\n return kubernetesClusterVaultTierRestoreCriteriaSerializer(\n item as KubernetesClusterVaultTierRestoreCriteria,\n );\n\n default:\n return itemLevelRestoreCriteriaSerializer(item);\n }\n}\n\n/** Prefix criteria to be used to during restore */\nexport interface ItemPathBasedRestoreCriteria extends ItemLevelRestoreCriteria {\n /** The path of the item to be restored. It could be the full path of the item or the path relative to the backup item */\n itemPath: string;\n /** Flag to specify if the path is relative to backup item or full path */\n isPathRelativeToBackupItem: boolean;\n /** The list of prefix strings to be used as filter criteria during restore. These are relative to the item path specified. */\n subItemPathPrefix?: string[];\n /** Rename the item to be restored. Restore will rename the itemPath to this new name if the value is specified otherwise the itemPath will be restored as same name. */\n renameTo?: string;\n /** Type of the specific object - used for deserializing */\n objectType: \"ItemPathBasedRestoreCriteria\";\n}\n\nexport function itemPathBasedRestoreCriteriaSerializer(item: ItemPathBasedRestoreCriteria): any {\n return {\n objectType: item[\"objectType\"],\n itemPath: item[\"itemPath\"],\n isPathRelativeToBackupItem: item[\"isPathRelativeToBackupItem\"],\n subItemPathPrefix: !item[\"subItemPathPrefix\"]\n ? item[\"subItemPathPrefix\"]\n : item[\"subItemPathPrefix\"].map((p: any) => {\n return p;\n }),\n renameTo: item[\"renameTo\"],\n };\n}\n\n/** Item Level target info for restore operation */\nexport interface RangeBasedItemLevelRestoreCriteria extends ItemLevelRestoreCriteria {\n /** minimum value for range prefix match */\n minMatchingValue?: string;\n /** maximum value for range prefix match */\n maxMatchingValue?: string;\n /** Type of the specific object - used for deserializing */\n objectType: \"RangeBasedItemLevelRestoreCriteria\";\n}\n\nexport function rangeBasedItemLevelRestoreCriteriaSerializer(\n item: RangeBasedItemLevelRestoreCriteria,\n): any {\n return {\n objectType: item[\"objectType\"],\n minMatchingValue: item[\"minMatchingValue\"],\n maxMatchingValue: item[\"maxMatchingValue\"],\n };\n}\n\n/** Item Level kubernetes storage class target info for restore operation */\nexport interface KubernetesStorageClassRestoreCriteria extends ItemLevelRestoreCriteria {\n /** Selected storage class name */\n selectedStorageClassName?: string;\n /** Provisioner of the storage class */\n provisioner?: string;\n /** Type of the specific object - used for deserializing */\n objectType: \"KubernetesStorageClassRestoreCriteria\";\n}\n\nexport function kubernetesStorageClassRestoreCriteriaSerializer(\n item: KubernetesStorageClassRestoreCriteria,\n): any {\n return {\n objectType: item[\"objectType\"],\n selectedStorageClassName: item[\"selectedStorageClassName\"],\n provisioner: item[\"provisioner\"],\n };\n}\n\n/** Item Level kubernetes persistent volume target info for restore operation */\nexport interface KubernetesPVRestoreCriteria extends ItemLevelRestoreCriteria {\n /** Selected persistent volume claim name */\n name?: string;\n /** Selected storage class name for restore operation */\n storageClassName?: string;\n /** Type of the specific object - used for deserializing */\n objectType: \"KubernetesPVRestoreCriteria\";\n}\n\nexport function kubernetesPVRestoreCriteriaSerializer(item: KubernetesPVRestoreCriteria): any {\n return {\n objectType: item[\"objectType\"],\n name: item[\"name\"],\n storageClassName: item[\"storageClassName\"],\n };\n}\n\n/** kubernetes Cluster Backup target info for restore operation */\nexport interface KubernetesClusterRestoreCriteria extends ItemLevelRestoreCriteria {\n /** Gets or sets the include cluster resources property. This property if enabled will include cluster scope resources during restore. */\n includeClusterScopeResources: boolean;\n /** Gets or sets the include namespaces property. This property sets the namespaces to be included during restore. */\n includedNamespaces?: string[];\n /** Gets or sets the exclude namespaces property. This property sets the namespaces to be excluded during restore. */\n excludedNamespaces?: string[];\n /** Gets or sets the include resource types property. This property sets the resource types to be included during restore. */\n includedResourceTypes?: string[];\n /** Gets or sets the exclude resource types property. This property sets the resource types to be excluded during restore. */\n excludedResourceTypes?: string[];\n /** Gets or sets the LabelSelectors property. This property sets the resource with such label selectors to be included during restore. */\n labelSelectors?: string[];\n /** Gets or sets the PV (Persistent Volume) Restore Mode property. This property sets whether volumes needs to be restored. */\n persistentVolumeRestoreMode?: PersistentVolumeRestoreMode;\n /** Gets or sets the Conflict Policy property. This property sets policy during conflict of resources during restore. */\n conflictPolicy?: ExistingResourcePolicy;\n /** Gets or sets the Namespace Mappings property. This property sets if namespace needs to be change during restore. */\n namespaceMappings?: Record<string, string>;\n /** Gets or sets the restore hook references. This property sets the hook reference to be executed during restore. */\n restoreHookReferences?: NamespacedNameResource[];\n /** Gets or sets the resource modifier reference. This property sets the reference for resource modifier during restore. */\n resourceModifierReference?: NamespacedNameResource;\n /** Type of the specific object - used for deserializing */\n objectType: \"KubernetesClusterRestoreCriteria\";\n}\n\nexport function kubernetesClusterRestoreCriteriaSerializer(\n item: KubernetesClusterRestoreCriteria,\n): any {\n return {\n objectType: item[\"objectType\"],\n includeClusterScopeResources: item[\"includeClusterScopeResources\"],\n includedNamespaces: !item[\"includedNamespaces\"]\n ? item[\"includedNamespaces\"]\n : item[\"includedNamespaces\"].map((p: any) => {\n return p;\n }),\n excludedNamespaces: !item[\"excludedNamespaces\"]\n ? item[\"excludedNamespaces\"]\n : item[\"excludedNamespaces\"].map((p: any) => {\n return p;\n }),\n includedResourceTypes: !item[\"includedResourceTypes\"]\n ? item[\"includedResourceTypes\"]\n : item[\"includedResourceTypes\"].map((p: any) => {\n return p;\n }),\n excludedResourceTypes: !item[\"excludedResourceTypes\"]\n ? item[\"excludedResourceTypes\"]\n : item[\"excludedResourceTypes\"].map((p: any) => {\n return p;\n }),\n labelSelectors: !item[\"labelSelectors\"]\n ? item[\"labelSelectors\"]\n : item[\"labelSelectors\"].map((p: any) => {\n return p;\n }),\n persistentVolumeRestoreMode: item[\"persistentVolumeRestoreMode\"],\n conflictPolicy: item[\"conflictPolicy\"],\n namespaceMappings: item[\"namespaceMappings\"],\n restoreHookReferences: !item[\"restoreHookReferences\"]\n ? item[\"restoreHookReferences\"]\n : namespacedNameResourceArraySerializer(item[\"restoreHookReferences\"]),\n resourceModifierReference: !item[\"resourceModifierReference\"]\n ? item[\"resourceModifierReference\"]\n : namespacedNameResourceSerializer(item[\"resourceModifierReference\"]),\n };\n}\n\n/** Gets or sets the PV (Persistent Volume) Restore Mode property. This property sets whether volumes needs to be restored. */\nexport enum KnownPersistentVolumeRestoreMode {\n /** RestoreWithVolumeData */\n RestoreWithVolumeData = \"RestoreWithVolumeData\",\n /** RestoreWithoutVolumeData */\n RestoreWithoutVolumeData = \"RestoreWithoutVolumeData\",\n}\n\n/**\n * Gets or sets the PV (Persistent Volume) Restore Mode property. This property sets whether volumes needs to be restored. \\\n * {@link KnownPersistentVolumeRestoreMode} can be used interchangeably with PersistentVolumeRestoreMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **RestoreWithVolumeData** \\\n * **RestoreWithoutVolumeData**\n */\nexport type PersistentVolumeRestoreMode = string;\n\n/** Gets or sets the Conflict Policy property. This property sets policy during conflict of resources during restore. */\nexport enum KnownExistingResourcePolicy {\n /** Skip */\n Skip = \"Skip\",\n /** Patch */\n Patch = \"Patch\",\n}\n\n/**\n * Gets or sets the Conflict Policy property. This property sets policy during conflict of resources during restore. \\\n * {@link KnownExistingResourcePolicy} can be used interchangeably with ExistingResourcePolicy,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Skip** \\\n * **Patch**\n */\nexport type ExistingResourcePolicy = string;\n\n/** kubernetes Cluster Backup target info for restore operation from vault */\nexport interface KubernetesClusterVaultTierRestoreCriteria extends ItemLevelRestoreCriteria {\n /** Gets or sets the include cluster resources property. This property if enabled will include cluster scope resources during restore from vault. */\n includeClusterScopeResources: boolean;\n /** Gets or sets the include namespaces property. This property sets the namespaces to be included during restore from vault. */\n includedNamespaces?: string[];\n /** Gets or sets the exclude namespaces property. This property sets the namespaces to be excluded during restore from vault. */\n excludedNamespaces?: string[];\n /** Gets or sets the include resource types property. This property sets the resource types to be included during restore from vault. */\n includedResourceTypes?: string[];\n /** Gets or sets the exclude resource types property. This property sets the resource types to be excluded during restore from vault. */\n excludedResourceTypes?: string[];\n /** Gets or sets the LabelSelectors property. This property sets the resource with such label selectors to be included during restore from vault. */\n labelSelectors?: string[];\n /** Gets or sets the PV (Persistent Volume) Restore Mode property. This property sets whether volumes needs to be restored from vault. */\n persistentVolumeRestoreMode?: PersistentVolumeRestoreMode;\n /** Gets or sets the Conflict Policy property. This property sets policy during conflict of resources during restore from vault. */\n conflictPolicy?: ExistingResourcePolicy;\n /** Gets or sets the Namespace Mappings property. This property sets if namespace needs to be change during restore from vault. */\n namespaceMappings?: Record<string, string>;\n /** Gets or sets the restore hook references. This property sets the hook reference to be executed during restore from vault. */\n restoreHookReferences?: NamespacedNameResource[];\n /** Gets or sets the staging RG Id for creating staging disks and snapshots during restore from vault. */\n stagingResourceGroupId?: string;\n /** Gets or sets the staging Storage Account Id for creating backup extension object store data during restore from vault. */\n stagingStorageAccountId?: string;\n /** Gets or sets the resource modifier reference. This property sets the reference for resource modifier during restore. */\n resourceModifierReference?: NamespacedNameResource;\n /** Type of the specific object - used for deserializing */\n objectType: \"KubernetesClusterVaultTierRestoreCriteria\";\n}\n\nexport function kubernetesClusterVaultTierRestoreCriteriaSerializer(\n item: KubernetesClusterVaultTierRestoreCriteria,\n): any {\n return {\n objectType: item[\"objectType\"],\n includeClusterScopeResources: item[\"includeClusterScopeResources\"],\n includedNamespaces: !item[\"includedNamespaces\"]\n ? item[\"includedNamespaces\"]\n : item[\"includedNamespaces\"].map((p: any) => {\n return p;\n }),\n excludedNamespaces: !item[\"excludedNamespaces\"]\n ? item[\"excludedNamespaces\"]\n : item[\"excludedNamespaces\"].map((p: any) => {\n return p;\n }),\n includedResourceTypes: !item[\"includedResourceTypes\"]\n ? item[\"includedResourceTypes\"]\n : item[\"includedResourceTypes\"].map((p: any) => {\n return p;\n }),\n excludedResourceTypes: !item[\"excludedResourceTypes\"]\n ? item[\"excludedResourceTypes\"]\n : item[\"excludedResourceTypes\"].map((p: any) => {\n return p;\n }),\n labelSelectors: !item[\"labelSelectors\"]\n ? item[\"labelSelectors\"]\n : item[\"labelSelectors\"].map((p: any) => {\n return p;\n }),\n persistentVolumeRestoreMode: item[\"persistentVolumeRestoreMode\"],\n conflictPolicy: item[\"conflictPolicy\"],\n namespaceMappings: item[\"namespaceMappings\"],\n restoreHookReferences: !item[\"restoreHookReferences\"]\n ? item[\"restoreHookReferences\"]\n : namespacedNameResourceArraySerializer(item[\"restoreHookReferences\"]),\n stagingResourceGroupId: item[\"stagingResourceGroupId\"],\n stagingStorageAccountId: item[\"stagingStorageAccountId\"],\n resourceModifierReference: !item[\"resourceModifierReference\"]\n ? item[\"resourceModifierReference\"]\n : namespacedNameResourceSerializer(item[\"resourceModifierReference\"]),\n };\n}\n\n/** Class encapsulating restore as files target parameters */\nexport interface RestoreFilesTargetInfo extends RestoreTargetInfoBase {\n /** Destination of RestoreAsFiles operation, when destination is not a datasource */\n targetDetails: TargetDetails;\n /** Type of Datasource object, used to initialize the right inherited type */\n objectType: \"RestoreFilesTargetInfo\";\n}\n\nexport function restoreFilesTargetInfoSerializer(item: RestoreFilesTargetInfo): any {\n return {\n objectType: item[\"objectType\"],\n recoveryOption: item[\"recoveryOption\"],\n restoreLocation: item[\"restoreLocation\"],\n targetDetails: targetDetailsSerializer(item[\"targetDetails\"]),\n };\n}\n\n/** Class encapsulating target details, used where the destination is not a datasource */\nexport interface TargetDetails {\n /**\n * Restore operation may create multiple files inside location pointed by Url\n * Below will be the common prefix for all of them\n */\n filePrefix: string;\n /**\n * Denotes the target location where the data will be restored,\n * string value for the enum {Microsoft.Internal.AzureBackup.DataProtection.Common.Interface.RestoreTargetLocationType}\n */\n restoreTargetLocationType: RestoreTargetLocationType;\n /** Url denoting the restore destination. It can point to container / file share etc */\n url: string;\n /**\n * Full ARM Id denoting the restore destination. It is the ARM Id pointing to container / file share\n * This is optional if the target subscription can be identified with the URL field. If not\n * then this is needed if CrossSubscriptionRestore field of BackupVault is in any of the disabled states\n */\n targetResourceArmId?: string;\n}\n\nexport function targetDetailsSerializer(item: TargetDetails): any {\n return {\n filePrefix: item[\"filePrefix\"],\n restoreTargetLocationType: item[\"restoreTargetLocationType\"],\n url: item[\"url\"],\n targetResourceArmId: item[\"targetResourceArmId\"],\n };\n}\n\n/**\n * Denotes the target location where the data will be restored,\n * string value for the enum {Microsoft.Internal.AzureBackup.DataProtection.Common.Interface.RestoreTargetLocationType}\n */\nexport enum KnownRestoreTargetLocationType {\n /** Invalid */\n Invalid = \"Invalid\",\n /** AzureBlobs */\n AzureBlobs = \"AzureBlobs\",\n /** AzureFiles */\n AzureFiles = \"AzureFiles\",\n}\n\n/**\n * Denotes the target location where the data will be restored,\n * string value for the enum {Microsoft.Internal.AzureBackup.DataProtection.Common.Interface.RestoreTargetLocationType} \\\n * {@link KnownRestoreTargetLocationType} can be used interchangeably with RestoreTargetLocationType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Invalid** \\\n * **AzureBlobs** \\\n * **AzureFiles**\n */\nexport type RestoreTargetLocationType = string;\n\n/** Class encapsulating restore target parameters */\nexport interface RestoreTargetInfo extends RestoreTargetInfoBase {\n /** Information of target DS */\n datasourceInfo: Datasource;\n /** Information of target DS Set */\n datasourceSetInfo?: DatasourceSet;\n /** Credentials to use to authenticate with data source provider. */\n datasourceAuthCredentials?: AuthCredentialsUnion;\n /** Type of Datasource object, used to initialize the right inherited type */\n objectType: \"RestoreTargetInfo\";\n}\n\nexport function restoreTargetInfoSerializer(item: RestoreTargetInfo): any {\n return {\n objectType: item[\"objectType\"],\n recoveryOption: item[\"recoveryOption\"],\n restoreLocation: item[\"restoreLocation\"],\n datasourceInfo: datasourceSerializer(item[\"datasourceInfo\"]),\n datasourceSetInfo: !item[\"datasourceSetInfo\"]\n ? item[\"datasourceSetInfo\"]\n : datasourceSetSerializer(item[\"datasourceSetInfo\"]),\n datasourceAuthCredentials: !item[\"datasourceAuthCredentials\"]\n ? item[\"datasourceAuthCredentials\"]\n : authCredentialsUnionSerializer(item[\"datasourceAuthCredentials\"]),\n };\n}\n\n/** Gets or sets the type of the source data store. */\nexport enum KnownSourceDataStoreType {\n /** ArchiveStore */\n ArchiveStore = \"ArchiveStore\",\n /** SnapshotStore */\n SnapshotStore = \"SnapshotStore\",\n /** OperationalStore */\n OperationalStore = \"OperationalStore\",\n /** VaultStore */\n VaultStore = \"VaultStore\",\n}\n\n/**\n * Gets or sets the type of the source data store. \\\n * {@link KnownSourceDataStoreType} can be used interchangeably with SourceDataStoreType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ArchiveStore** \\\n * **SnapshotStore** \\\n * **OperationalStore** \\\n * **VaultStore**\n */\nexport type SourceDataStoreType = string;\n\n/** Azure backup recoveryPoint based restore request */\nexport interface AzureBackupRecoveryPointBasedRestoreRequest extends AzureBackupRestoreRequest {\n recoveryPointId: string;\n objectType:\n | \"AzureBackupRecoveryPointBasedRestoreRequest\"\n | \"AzureBackupRestoreWithRehydrationRequest\";\n}\n\nexport function azureBackupRecoveryPointBasedRestoreRequestSerializer(\n item: AzureBackupRecoveryPointBasedRestoreRequest,\n): any {\n return {\n objectType: item[\"objectType\"],\n restoreTargetInfo: restoreTargetInfoBaseUnionSerializer(item[\"restoreTargetInfo\"]),\n sourceDataStoreType: item[\"sourceDataStoreType\"],\n sourceResourceId: item[\"sourceResourceId\"],\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n identityDetails: !item[\"identityDetails\"]\n ? item[\"identityDetails\"]\n : identityDetailsSerializer(item[\"identityDetails\"]),\n recoveryPointId: item[\"recoveryPointId\"],\n };\n}\n\n/** Alias for AzureBackupRecoveryPointBasedRestoreRequestUnion */\nexport type AzureBackupRecoveryPointBasedRestoreRequestUnion =\n | AzureBackupRestoreWithRehydrationRequest\n | AzureBackupRecoveryPointBasedRestoreRequest;\n\nexport function azureBackupRecoveryPointBasedRestoreRequestUnionSerializer(\n item: AzureBackupRecoveryPointBasedRestoreRequestUnion,\n): any {\n switch (item.objectType) {\n case \"AzureBackupRestoreWithRehydrationRequest\":\n return azureBackupRestoreWithRehydrationRequestSerializer(\n item as AzureBackupRestoreWithRehydrationRequest,\n );\n\n default:\n return azureBackupRecoveryPointBasedRestoreRequestSerializer(item);\n }\n}\n\n/** AzureBackup Restore with Rehydration Request */\nexport interface AzureBackupRestoreWithRehydrationRequest\n extends AzureBackupRecoveryPointBasedRestoreRequest {\n /** Priority to be used for rehydration. Values High or Standard */\n rehydrationPriority: RehydrationPriority;\n /** Retention duration in ISO 8601 format i.e P10D . */\n rehydrationRetentionDuration: string;\n objectType: \"AzureBackupRestoreWithRehydrationRequest\";\n}\n\nexport function azureBackupRestoreWithRehydrationRequestSerializer(\n item: AzureBackupRestoreWithRehydrationRequest,\n): any {\n return {\n recoveryPointId: item[\"recoveryPointId\"],\n objectType: item[\"objectType\"],\n restoreTargetInfo: restoreTargetInfoBaseUnionSerializer(item[\"restoreTargetInfo\"]),\n sourceDataStoreType: item[\"sourceDataStoreType\"],\n sourceResourceId: item[\"sourceResourceId\"],\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n identityDetails: !item[\"identityDetails\"]\n ? item[\"identityDetails\"]\n : identityDetailsSerializer(item[\"identityDetails\"]),\n rehydrationPriority: item[\"rehydrationPriority\"],\n rehydrationRetentionDuration: item[\"rehydrationRetentionDuration\"],\n };\n}\n\n/** AzureBackup RecoveryPointTime Based Restore Request */\nexport interface AzureBackupRecoveryTimeBasedRestoreRequest extends AzureBackupRestoreRequest {\n /** The recovery time in ISO 8601 format example - 2020-08-14T17:30:00.0000000Z. */\n recoveryPointTime: string;\n objectType: \"AzureBackupRecoveryTimeBasedRestoreRequest\";\n}\n\nexport function azureBackupRecoveryTimeBasedRestoreRequestSerializer(\n item: AzureBackupRecoveryTimeBasedRestoreRequest,\n): any {\n return {\n objectType: item[\"objectType\"],\n restoreTargetInfo: restoreTargetInfoBaseUnionSerializer(item[\"restoreTargetInfo\"]),\n sourceDataStoreType: item[\"sourceDataStoreType\"],\n sourceResourceId: item[\"sourceResourceId\"],\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n identityDetails: !item[\"identityDetails\"]\n ? item[\"identityDetails\"]\n : identityDetailsSerializer(item[\"identityDetails\"]),\n recoveryPointTime: item[\"recoveryPointTime\"],\n };\n}\n\n/** Request body of Stop protection when MUA is Enabled */\nexport interface StopProtectionRequest {\n /** ResourceGuardOperationRequests on which LAC check will be performed */\n resourceGuardOperationRequests?: string[];\n}\n\nexport function stopProtectionRequestSerializer(item: StopProtectionRequest): any {\n return {\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Request body of Suspend backup when MUA is Enabled */\nexport interface SuspendBackupRequest {\n /** ResourceGuardOperationRequests on which LAC check will be performed */\n resourceGuardOperationRequests?: string[];\n}\n\nexport function suspendBackupRequestSerializer(item: SuspendBackupRequest): any {\n return {\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Sync BackupInstance Request */\nexport interface SyncBackupInstanceRequest {\n /** Field indicating sync type e.g. to sync only in case of failure or in all cases */\n syncType?: SyncType;\n}\n\nexport function syncBackupInstanceRequestSerializer(item: SyncBackupInstanceRequest): any {\n return { syncType: item[\"syncType\"] };\n}\n\n/** Field indicating sync type e.g. to sync only in case of failure or in all cases */\nexport enum KnownSyncType {\n /** Default */\n Default = \"Default\",\n /** ForceResync */\n ForceResync = \"ForceResync\",\n}\n\n/**\n * Field indicating sync type e.g. to sync only in case of failure or in all cases \\\n * {@link KnownSyncType} can be used interchangeably with SyncType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Default** \\\n * **ForceResync**\n */\nexport type SyncType = string;\n\n/** Validate restore request object */\nexport interface ValidateRestoreRequestObject {\n /** Gets or sets the restore request object. */\n restoreRequestObject: AzureBackupRestoreRequestUnion;\n}\n\nexport function validateRestoreRequestObjectSerializer(item: ValidateRestoreRequestObject): any {\n return {\n restoreRequestObject: azureBackupRestoreRequestUnionSerializer(item[\"restoreRequestObject\"]),\n };\n}\n\n/** Cross Region Restore Request Object */\nexport interface CrossRegionRestoreRequestObject {\n /** Gets or sets the restore request object. */\n restoreRequestObject: AzureBackupRestoreRequestUnion;\n /** Cross region restore details. */\n crossRegionRestoreDetails: CrossRegionRestoreDetails;\n}\n\nexport function crossRegionRestoreRequestObjectSerializer(\n item: CrossRegionRestoreRequestObject,\n): any {\n return {\n restoreRequestObject: azureBackupRestoreRequestUnionSerializer(item[\"restoreRequestObject\"]),\n crossRegionRestoreDetails: crossRegionRestoreDetailsSerializer(\n item[\"crossRegionRestoreDetails\"],\n ),\n };\n}\n\n/** Cross Region Restore details */\nexport interface CrossRegionRestoreDetails {\n sourceRegion: string;\n sourceBackupInstanceId: string;\n}\n\nexport function crossRegionRestoreDetailsSerializer(item: CrossRegionRestoreDetails): any {\n return {\n sourceRegion: item[\"sourceRegion\"],\n sourceBackupInstanceId: item[\"sourceBackupInstanceId\"],\n };\n}\n\n/** Cross Region Restore Request Object */\nexport interface ValidateCrossRegionRestoreRequestObject {\n /** Gets or sets the restore request object. */\n restoreRequestObject: AzureBackupRestoreRequestUnion;\n /** Cross region restore details. */\n crossRegionRestoreDetails: CrossRegionRestoreDetails;\n}\n\nexport function validateCrossRegionRestoreRequestObjectSerializer(\n item: ValidateCrossRegionRestoreRequestObject,\n): any {\n return {\n restoreRequestObject: azureBackupRestoreRequestUnionSerializer(item[\"restoreRequestObject\"]),\n crossRegionRestoreDetails: crossRegionRestoreDetailsSerializer(\n item[\"crossRegionRestoreDetails\"],\n ),\n };\n}\n\n/** Backup Vault Resource */\nexport interface BackupVaultResource extends TrackedResource {\n /** BackupVaultResource properties */\n properties: BackupVault;\n /** Input Managed Identity Details */\n identity?: DppIdentityDetails;\n /** Optional ETag. */\n eTag?: string;\n}\n\nexport function backupVaultResourceSerializer(item: BackupVaultResource): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: backupVaultSerializer(item[\"properties\"]),\n identity: !item[\"identity\"] ? item[\"identity\"] : dppIdentityDetailsSerializer(item[\"identity\"]),\n eTag: item[\"eTag\"],\n };\n}\n\nexport function backupVaultResourceDeserializer(item: any): BackupVaultResource {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n properties: backupVaultDeserializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : dppIdentityDetailsDeserializer(item[\"identity\"]),\n eTag: item[\"eTag\"],\n };\n}\n\n/** Backup Vault */\nexport interface BackupVault {\n /** Monitoring Settings */\n monitoringSettings?: MonitoringSettings;\n /** Provisioning state of the BackupVault resource */\n readonly provisioningState?: ProvisioningState;\n /** Resource move state for backup vault */\n readonly resourceMoveState?: ResourceMoveState;\n /** Resource move details for backup vault */\n readonly resourceMoveDetails?: ResourceMoveDetails;\n /** Security Settings */\n securitySettings?: SecuritySettings;\n /** Storage Settings */\n storageSettings: StorageSetting[];\n /** Is vault protected by resource guard */\n readonly isVaultProtectedByResourceGuard?: boolean;\n /** Feature Settings */\n featureSettings?: FeatureSettings;\n /** Secure Score of Backup Vault */\n readonly secureScore?: SecureScoreLevel;\n /** Security Level of Backup Vault */\n readonly bcdrSecurityLevel?: BcdrSecurityLevel;\n /** ResourceGuardOperationRequests on which LAC check will be performed */\n resourceGuardOperationRequests?: string[];\n /** List of replicated regions for Backup Vault */\n replicatedRegions?: string[];\n}\n\nexport function backupVaultSerializer(item: BackupVault): any {\n return {\n monitoringSettings: !item[\"monitoringSettings\"]\n ? item[\"monitoringSettings\"]\n : monitoringSettingsSerializer(item[\"monitoringSettings\"]),\n securitySettings: !item[\"securitySettings\"]\n ? item[\"securitySettings\"]\n : securitySettingsSerializer(item[\"securitySettings\"]),\n storageSettings: storageSettingArraySerializer(item[\"storageSettings\"]),\n featureSettings: !item[\"featureSettings\"]\n ? item[\"featureSettings\"]\n : featureSettingsSerializer(item[\"featureSettings\"]),\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n replicatedRegions: !item[\"replicatedRegions\"]\n ? item[\"replicatedRegions\"]\n : item[\"replicatedRegions\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function backupVaultDeserializer(item: any): BackupVault {\n return {\n monitoringSettings: !item[\"monitoringSettings\"]\n ? item[\"monitoringSettings\"]\n : monitoringSettingsDeserializer(item[\"monitoringSettings\"]),\n provisioningState: item[\"provisioningState\"],\n resourceMoveState: item[\"resourceMoveState\"],\n resourceMoveDetails: !item[\"resourceMoveDetails\"]\n ? item[\"resourceMoveDetails\"]\n : resourceMoveDetailsDeserializer(item[\"resourceMoveDetails\"]),\n securitySettings: !item[\"securitySettings\"]\n ? item[\"securitySettings\"]\n : securitySettingsDeserializer(item[\"securitySettings\"]),\n storageSettings: storageSettingArrayDeserializer(item[\"storageSettings\"]),\n isVaultProtectedByResourceGuard: item[\"isVaultProtectedByResourceGuard\"],\n featureSettings: !item[\"featureSettings\"]\n ? item[\"featureSettings\"]\n : featureSettingsDeserializer(item[\"featureSettings\"]),\n secureScore: item[\"secureScore\"],\n bcdrSecurityLevel: item[\"bcdrSecurityLevel\"],\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n replicatedRegions: !item[\"replicatedRegions\"]\n ? item[\"replicatedRegions\"]\n : item[\"replicatedRegions\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Monitoring Settings */\nexport interface MonitoringSettings {\n /** Settings for Azure Monitor based alerts */\n azureMonitorAlertSettings?: AzureMonitorAlertSettings;\n}\n\nexport function monitoringSettingsSerializer(item: MonitoringSettings): any {\n return {\n azureMonitorAlertSettings: !item[\"azureMonitorAlertSettings\"]\n ? item[\"azureMonitorAlertSettings\"]\n : azureMonitorAlertSettingsSerializer(item[\"azureMonitorAlertSettings\"]),\n };\n}\n\nexport function monitoringSettingsDeserializer(item: any): MonitoringSettings {\n return {\n azureMonitorAlertSettings: !item[\"azureMonitorAlertSettings\"]\n ? item[\"azureMonitorAlertSettings\"]\n : azureMonitorAlertSettingsDeserializer(item[\"azureMonitorAlertSettings\"]),\n };\n}\n\n/** Settings for Azure Monitor based alerts */\nexport interface AzureMonitorAlertSettings {\n alertsForAllJobFailures?: AlertsState;\n}\n\nexport function azureMonitorAlertSettingsSerializer(item: AzureMonitorAlertSettings): any {\n return { alertsForAllJobFailures: item[\"alertsForAllJobFailures\"] };\n}\n\nexport function azureMonitorAlertSettingsDeserializer(item: any): AzureMonitorAlertSettings {\n return {\n alertsForAllJobFailures: item[\"alertsForAllJobFailures\"],\n };\n}\n\n/** Known values of {@link AlertsState} that the service accepts. */\nexport enum KnownAlertsState {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\",\n}\n\n/** Type of AlertsState */\nexport type AlertsState = string;\n\n/** Provisioning state of the BackupVault resource */\nexport enum KnownProvisioningState {\n /** Failed */\n Failed = \"Failed\",\n /** Provisioning */\n Provisioning = \"Provisioning\",\n /** Succeeded */\n Succeeded = \"Succeeded\",\n /** Unknown */\n Unknown = \"Unknown\",\n /** Updating */\n Updating = \"Updating\",\n}\n\n/**\n * Provisioning state of the BackupVault resource \\\n * {@link KnownProvisioningState} can be used interchangeably with ProvisioningState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Failed** \\\n * **Provisioning** \\\n * **Succeeded** \\\n * **Unknown** \\\n * **Updating**\n */\nexport type ProvisioningState = string;\n\n/** Resource move state for backup vault */\nexport enum KnownResourceMoveState {\n /** Unknown */\n Unknown = \"Unknown\",\n /** InProgress */\n InProgress = \"InProgress\",\n /** PrepareFailed */\n PrepareFailed = \"PrepareFailed\",\n /** CommitFailed */\n CommitFailed = \"CommitFailed\",\n /** Failed */\n Failed = \"Failed\",\n /** PrepareTimedout */\n PrepareTimedout = \"PrepareTimedout\",\n /** CommitTimedout */\n CommitTimedout = \"CommitTimedout\",\n /** CriticalFailure */\n CriticalFailure = \"CriticalFailure\",\n /** PartialSuccess */\n PartialSuccess = \"PartialSuccess\",\n /** MoveSucceeded */\n MoveSucceeded = \"MoveSucceeded\",\n}\n\n/**\n * Resource move state for backup vault \\\n * {@link KnownResourceMoveState} can be used interchangeably with ResourceMoveState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Unknown** \\\n * **InProgress** \\\n * **PrepareFailed** \\\n * **CommitFailed** \\\n * **Failed** \\\n * **PrepareTimedout** \\\n * **CommitTimedout** \\\n * **CriticalFailure** \\\n * **PartialSuccess** \\\n * **MoveSucceeded**\n */\nexport type ResourceMoveState = string;\n\n/** ResourceMoveDetails will be returned in response to GetResource call from ARM */\nexport interface ResourceMoveDetails {\n /** CorrelationId of latest ResourceMove operation attempted */\n operationId?: string;\n /** Start time in UTC of latest ResourceMove operation attempted. ISO 8601 format. */\n startTimeUtc?: string;\n /** Completion time in UTC of latest ResourceMove operation attempted. ISO 8601 format. */\n completionTimeUtc?: string;\n /** ARM resource path of source resource */\n sourceResourcePath?: string;\n /** ARM resource path of target resource used in latest ResourceMove operation */\n targetResourcePath?: string;\n}\n\nexport function resourceMoveDetailsDeserializer(item: any): ResourceMoveDetails {\n return {\n operationId: item[\"operationId\"],\n startTimeUtc: item[\"startTimeUtc\"],\n completionTimeUtc: item[\"completionTimeUtc\"],\n sourceResourcePath: item[\"sourceResourcePath\"],\n targetResourcePath: item[\"targetResourcePath\"],\n };\n}\n\n/** Class containing security settings of vault */\nexport interface SecuritySettings {\n /** Soft delete related settings */\n softDeleteSettings?: SoftDeleteSettings;\n /** Immutability Settings at vault level */\n immutabilitySettings?: ImmutabilitySettings;\n /** Customer Managed Key details of the resource. */\n encryptionSettings?: EncryptionSettings;\n}\n\nexport function securitySettingsSerializer(item: SecuritySettings): any {\n return {\n softDeleteSettings: !item[\"softDeleteSettings\"]\n ? item[\"softDeleteSettings\"]\n : softDeleteSettingsSerializer(item[\"softDeleteSettings\"]),\n immutabilitySettings: !item[\"immutabilitySettings\"]\n ? item[\"immutabilitySettings\"]\n : immutabilitySettingsSerializer(item[\"immutabilitySettings\"]),\n encryptionSettings: !item[\"encryptionSettings\"]\n ? item[\"encryptionSettings\"]\n : encryptionSettingsSerializer(item[\"encryptionSettings\"]),\n };\n}\n\nexport function securitySettingsDeserializer(item: any): SecuritySettings {\n return {\n softDeleteSettings: !item[\"softDeleteSettings\"]\n ? item[\"softDeleteSettings\"]\n : softDeleteSettingsDeserializer(item[\"softDeleteSettings\"]),\n immutabilitySettings: !item[\"immutabilitySettings\"]\n ? item[\"immutabilitySettings\"]\n : immutabilitySettingsDeserializer(item[\"immutabilitySettings\"]),\n encryptionSettings: !item[\"encryptionSettings\"]\n ? item[\"encryptionSettings\"]\n : encryptionSettingsDeserializer(item[\"encryptionSettings\"]),\n };\n}\n\n/** Soft delete related settings */\nexport interface SoftDeleteSettings {\n /** State of soft delete */\n state?: SoftDeleteState;\n /** Soft delete retention duration */\n retentionDurationInDays?: number;\n}\n\nexport function softDeleteSettingsSerializer(item: SoftDeleteSettings): any {\n return {\n state: item[\"state\"],\n retentionDurationInDays: item[\"retentionDurationInDays\"],\n };\n}\n\nexport function softDeleteSettingsDeserializer(item: any): SoftDeleteSettings {\n return {\n state: item[\"state\"],\n retentionDurationInDays: item[\"retentionDurationInDays\"],\n };\n}\n\n/** State of soft delete */\nexport enum KnownSoftDeleteState {\n /** Soft Delete is turned off for the BackupVault */\n Off = \"Off\",\n /** Soft Delete is enabled for the BackupVault but can be turned off */\n On = \"On\",\n /** Soft Delete is permanently enabled for the BackupVault and the setting cannot be changed */\n AlwaysOn = \"AlwaysOn\",\n}\n\n/**\n * State of soft delete \\\n * {@link KnownSoftDeleteState} can be used interchangeably with SoftDeleteState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Off**: Soft Delete is turned off for the BackupVault \\\n * **On**: Soft Delete is enabled for the BackupVault but can be turned off \\\n * **AlwaysOn**: Soft Delete is permanently enabled for the BackupVault and the setting cannot be changed\n */\nexport type SoftDeleteState = string;\n\n/** Immutability Settings at vault level */\nexport interface ImmutabilitySettings {\n /** Immutability state */\n state?: ImmutabilityState;\n}\n\nexport function immutabilitySettingsSerializer(item: ImmutabilitySettings): any {\n return { state: item[\"state\"] };\n}\n\nexport function immutabilitySettingsDeserializer(item: any): ImmutabilitySettings {\n return {\n state: item[\"state\"],\n };\n}\n\n/** Immutability state */\nexport enum KnownImmutabilityState {\n /** Disabled */\n Disabled = \"Disabled\",\n /** Unlocked */\n Unlocked = \"Unlocked\",\n /** Locked */\n Locked = \"Locked\",\n}\n\n/**\n * Immutability state \\\n * {@link KnownImmutabilityState} can be used interchangeably with ImmutabilityState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Disabled** \\\n * **Unlocked** \\\n * **Locked**\n */\nexport type ImmutabilityState = string;\n\n/** Customer Managed Key details of the resource. */\nexport interface EncryptionSettings {\n /** Encryption state of the Backup Vault. */\n state?: EncryptionState;\n /** The properties of the Key Vault which hosts CMK */\n keyVaultProperties?: CmkKeyVaultProperties;\n /** The details of the managed identity used for CMK */\n kekIdentity?: CmkKekIdentity;\n /** Enabling/Disabling the Double Encryption state */\n infrastructureEncryption?: InfrastructureEncryptionState;\n}\n\nexport function encryptionSettingsSerializer(item: EncryptionSettings): any {\n return {\n state: item[\"state\"],\n keyVaultProperties: !item[\"keyVaultProperties\"]\n ? item[\"keyVaultProperties\"]\n : cmkKeyVaultPropertiesSerializer(item[\"keyVaultProperties\"]),\n kekIdentity: !item[\"kekIdentity\"]\n ? item[\"kekIdentity\"]\n : cmkKekIdentitySerializer(item[\"kekIdentity\"]),\n infrastructureEncryption: item[\"infrastructureEncryption\"],\n };\n}\n\nexport function encryptionSettingsDeserializer(item: any): EncryptionSettings {\n return {\n state: item[\"state\"],\n keyVaultProperties: !item[\"keyVaultProperties\"]\n ? item[\"keyVaultProperties\"]\n : cmkKeyVaultPropertiesDeserializer(item[\"keyVaultProperties\"]),\n kekIdentity: !item[\"kekIdentity\"]\n ? item[\"kekIdentity\"]\n : cmkKekIdentityDeserializer(item[\"kekIdentity\"]),\n infrastructureEncryption: item[\"infrastructureEncryption\"],\n };\n}\n\n/** Encryption state of the Backup Vault. */\nexport enum KnownEncryptionState {\n /** CMK encryption is enabled on the Backup Vault */\n Enabled = \"Enabled\",\n /** CMK encryption is disabled on the Backup Vault. User can not set this state once Encryption State is 'Enabled'. */\n Disabled = \"Disabled\",\n /** CMK encryption is in inconsistent state on the Backup Vault. This state indicates that user needs to retry the encryption settings operation immediately to correct the state. */\n Inconsistent = \"Inconsistent\",\n}\n\n/**\n * Encryption state of the Backup Vault. \\\n * {@link KnownEncryptionState} can be used interchangeably with EncryptionState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: CMK encryption is enabled on the Backup Vault \\\n * **Disabled**: CMK encryption is disabled on the Backup Vault. User can not set this state once Encryption State is 'Enabled'. \\\n * **Inconsistent**: CMK encryption is in inconsistent state on the Backup Vault. This state indicates that user needs to retry the encryption settings operation immediately to correct the state.\n */\nexport type EncryptionState = string;\n\n/** The properties of the Key Vault which hosts CMK */\nexport interface CmkKeyVaultProperties {\n /** The key uri of the Customer Managed Key */\n keyUri?: string;\n}\n\nexport function cmkKeyVaultPropertiesSerializer(item: CmkKeyVaultProperties): any {\n return { keyUri: item[\"keyUri\"] };\n}\n\nexport function cmkKeyVaultPropertiesDeserializer(item: any): CmkKeyVaultProperties {\n return {\n keyUri: item[\"keyUri\"],\n };\n}\n\n/** The details of the managed identity used for CMK */\nexport interface CmkKekIdentity {\n /** The identity type. 'SystemAssigned' and 'UserAssigned' are mutually exclusive. 'SystemAssigned' will use implicitly created managed identity. */\n identityType?: IdentityType;\n /** The managed identity to be used which has access permissions to the Key Vault. Provide a value here in case identity types: 'UserAssigned' only. */\n identityId?: string;\n}\n\nexport function cmkKekIdentitySerializer(item: CmkKekIdentity): any {\n return { identityType: item[\"identityType\"], identityId: item[\"identityId\"] };\n}\n\nexport function cmkKekIdentityDeserializer(item: any): CmkKekIdentity {\n return {\n identityType: item[\"identityType\"],\n identityId: item[\"identityId\"],\n };\n}\n\n/** The identity type. 'SystemAssigned' and 'UserAssigned' are mutually exclusive. 'SystemAssigned' will use implicitly created managed identity. */\nexport enum KnownIdentityType {\n /** SystemAssigned */\n SystemAssigned = \"SystemAssigned\",\n /** UserAssigned */\n UserAssigned = \"UserAssigned\",\n}\n\n/**\n * The identity type. 'SystemAssigned' and 'UserAssigned' are mutually exclusive. 'SystemAssigned' will use implicitly created managed identity. \\\n * {@link KnownIdentityType} can be used interchangeably with IdentityType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **SystemAssigned** \\\n * **UserAssigned**\n */\nexport type IdentityType = string;\n\n/** Enabling/Disabling the Double Encryption state */\nexport enum KnownInfrastructureEncryptionState {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * Enabling/Disabling the Double Encryption state \\\n * {@link KnownInfrastructureEncryptionState} can be used interchangeably with InfrastructureEncryptionState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type InfrastructureEncryptionState = string;\n\nexport function storageSettingArraySerializer(result: Array<StorageSetting>): any[] {\n return result.map((item) => {\n return storageSettingSerializer(item);\n });\n}\n\nexport function storageSettingArrayDeserializer(result: Array<StorageSetting>): any[] {\n return result.map((item) => {\n return storageSettingDeserializer(item);\n });\n}\n\n/** Storage setting */\nexport interface StorageSetting {\n /** Gets or sets the type of the datastore. */\n datastoreType?: StorageSettingStoreTypes;\n /** Gets or sets the type. */\n type?: StorageSettingTypes;\n}\n\nexport function storageSettingSerializer(item: StorageSetting): any {\n return { datastoreType: item[\"datastoreType\"], type: item[\"type\"] };\n}\n\nexport function storageSettingDeserializer(item: any): StorageSetting {\n return {\n datastoreType: item[\"datastoreType\"],\n type: item[\"type\"],\n };\n}\n\n/** Gets or sets the type of the datastore. */\nexport enum KnownStorageSettingStoreTypes {\n /** ArchiveStore */\n ArchiveStore = \"ArchiveStore\",\n /** OperationalStore */\n OperationalStore = \"OperationalStore\",\n /** VaultStore */\n VaultStore = \"VaultStore\",\n}\n\n/**\n * Gets or sets the type of the datastore. \\\n * {@link KnownStorageSettingStoreTypes} can be used interchangeably with StorageSettingStoreTypes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ArchiveStore** \\\n * **OperationalStore** \\\n * **VaultStore**\n */\nexport type StorageSettingStoreTypes = string;\n\n/** Gets or sets the type. */\nexport enum KnownStorageSettingTypes {\n /** GeoRedundant */\n GeoRedundant = \"GeoRedundant\",\n /** LocallyRedundant */\n LocallyRedundant = \"LocallyRedundant\",\n /** ZoneRedundant */\n ZoneRedundant = \"ZoneRedundant\",\n}\n\n/**\n * Gets or sets the type. \\\n * {@link KnownStorageSettingTypes} can be used interchangeably with StorageSettingTypes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **GeoRedundant** \\\n * **LocallyRedundant** \\\n * **ZoneRedundant**\n */\nexport type StorageSettingTypes = string;\n\n/** Class containing feature settings of vault */\nexport interface FeatureSettings {\n /** CrossSubscriptionRestore Settings */\n crossSubscriptionRestoreSettings?: CrossSubscriptionRestoreSettings;\n crossRegionRestoreSettings?: CrossRegionRestoreSettings;\n}\n\nexport function featureSettingsSerializer(item: FeatureSettings): any {\n return {\n crossSubscriptionRestoreSettings: !item[\"crossSubscriptionRestoreSettings\"]\n ? item[\"crossSubscriptionRestoreSettings\"]\n : crossSubscriptionRestoreSettingsSerializer(item[\"crossSubscriptionRestoreSettings\"]),\n crossRegionRestoreSettings: !item[\"crossRegionRestoreSettings\"]\n ? item[\"crossRegionRestoreSettings\"]\n : crossRegionRestoreSettingsSerializer(item[\"crossRegionRestoreSettings\"]),\n };\n}\n\nexport function featureSettingsDeserializer(item: any): FeatureSettings {\n return {\n crossSubscriptionRestoreSettings: !item[\"crossSubscriptionRestoreSettings\"]\n ? item[\"crossSubscriptionRestoreSettings\"]\n : crossSubscriptionRestoreSettingsDeserializer(item[\"crossSubscriptionRestoreSettings\"]),\n crossRegionRestoreSettings: !item[\"crossRegionRestoreSettings\"]\n ? item[\"crossRegionRestoreSettings\"]\n : crossRegionRestoreSettingsDeserializer(item[\"crossRegionRestoreSettings\"]),\n };\n}\n\n/** CrossSubscriptionRestore Settings */\nexport interface CrossSubscriptionRestoreSettings {\n /** CrossSubscriptionRestore state */\n state?: CrossSubscriptionRestoreState;\n}\n\nexport function crossSubscriptionRestoreSettingsSerializer(\n item: CrossSubscriptionRestoreSettings,\n): any {\n return { state: item[\"state\"] };\n}\n\nexport function crossSubscriptionRestoreSettingsDeserializer(\n item: any,\n): CrossSubscriptionRestoreSettings {\n return {\n state: item[\"state\"],\n };\n}\n\n/** CrossSubscriptionRestore state */\nexport enum KnownCrossSubscriptionRestoreState {\n /** Disabled */\n Disabled = \"Disabled\",\n /** PermanentlyDisabled */\n PermanentlyDisabled = \"PermanentlyDisabled\",\n /** Enabled */\n Enabled = \"Enabled\",\n}\n\n/**\n * CrossSubscriptionRestore state \\\n * {@link KnownCrossSubscriptionRestoreState} can be used interchangeably with CrossSubscriptionRestoreState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Disabled** \\\n * **PermanentlyDisabled** \\\n * **Enabled**\n */\nexport type CrossSubscriptionRestoreState = string;\n\n/** model interface CrossRegionRestoreSettings */\nexport interface CrossRegionRestoreSettings {\n /** CrossRegionRestore state */\n state?: CrossRegionRestoreState;\n}\n\nexport function crossRegionRestoreSettingsSerializer(item: CrossRegionRestoreSettings): any {\n return { state: item[\"state\"] };\n}\n\nexport function crossRegionRestoreSettingsDeserializer(item: any): CrossRegionRestoreSettings {\n return {\n state: item[\"state\"],\n };\n}\n\n/** CrossRegionRestore state */\nexport enum KnownCrossRegionRestoreState {\n /** Disabled */\n Disabled = \"Disabled\",\n /** Enabled */\n Enabled = \"Enabled\",\n}\n\n/**\n * CrossRegionRestore state \\\n * {@link KnownCrossRegionRestoreState} can be used interchangeably with CrossRegionRestoreState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Disabled** \\\n * **Enabled**\n */\nexport type CrossRegionRestoreState = string;\n\n/** Secure Score of Backup Vault */\nexport enum KnownSecureScoreLevel {\n /** None */\n None = \"None\",\n /** Minimum */\n Minimum = \"Minimum\",\n /** Adequate */\n Adequate = \"Adequate\",\n /** Maximum */\n Maximum = \"Maximum\",\n /** NotSupported */\n NotSupported = \"NotSupported\",\n}\n\n/**\n * Secure Score of Backup Vault \\\n * {@link KnownSecureScoreLevel} can be used interchangeably with SecureScoreLevel,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **None** \\\n * **Minimum** \\\n * **Adequate** \\\n * **Maximum** \\\n * **NotSupported**\n */\nexport type SecureScoreLevel = string;\n\n/** Security Level of Backup Vault */\nexport enum KnownBcdrSecurityLevel {\n /** Poor */\n Poor = \"Poor\",\n /** Fair */\n Fair = \"Fair\",\n /** Good */\n Good = \"Good\",\n /** Excellent */\n Excellent = \"Excellent\",\n /** NotSupported */\n NotSupported = \"NotSupported\",\n}\n\n/**\n * Security Level of Backup Vault \\\n * {@link KnownBcdrSecurityLevel} can be used interchangeably with BcdrSecurityLevel,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Poor** \\\n * **Fair** \\\n * **Good** \\\n * **Excellent** \\\n * **NotSupported**\n */\nexport type BcdrSecurityLevel = string;\n\n/** Identity details */\nexport interface DppIdentityDetails {\n /** The object ID of the service principal object for the managed identity that is used to grant role-based access to an Azure resource. */\n readonly principalId?: string;\n /** A Globally Unique Identifier (GUID) that represents the Azure AD tenant where the resource is now a member. */\n readonly tenantId?: string;\n /** The identityType which can be either SystemAssigned, UserAssigned, 'SystemAssigned,UserAssigned' or None */\n type?: string;\n /** Gets or sets the user assigned identities. */\n userAssignedIdentities?: Record<string, UserAssignedIdentity>;\n}\n\nexport function dppIdentityDetailsSerializer(item: DppIdentityDetails): any {\n return {\n type: item[\"type\"],\n userAssignedIdentities: !item[\"userAssignedIdentities\"]\n ? item[\"userAssignedIdentities\"]\n : userAssignedIdentityRecordSerializer(item[\"userAssignedIdentities\"]),\n };\n}\n\nexport function dppIdentityDetailsDeserializer(item: any): DppIdentityDetails {\n return {\n principalId: item[\"principalId\"],\n tenantId: item[\"tenantId\"],\n type: item[\"type\"],\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 item;\n}\n\nexport function userAssignedIdentityDeserializer(item: any): UserAssignedIdentity {\n return {\n principalId: item[\"principalId\"],\n clientId: item[\"clientId\"],\n };\n}\n\n/** The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location' */\nexport interface TrackedResource extends Resource {\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The geo-location where the resource lives */\n location: string;\n}\n\nexport function trackedResourceSerializer(item: TrackedResource): any {\n return { tags: item[\"tags\"], location: item[\"location\"] };\n}\n\nexport function trackedResourceDeserializer(item: any): TrackedResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n tags: item[\"tags\"],\n location: item[\"location\"],\n };\n}\n\n/** Base resource under Microsoft.DataProtection provider namespace */\nexport interface DppBaseResource extends ProxyResource {}\n\nexport function dppBaseResourceDeserializer(item: any): DppBaseResource {\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/** Base for all lists of V2 resources. */\nexport interface _DppBaseResourceList {\n /** The DppBaseResource items on this page */\n value: DppBaseResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _dppBaseResourceListDeserializer(item: any): _DppBaseResourceList {\n return {\n value: dppBaseResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function dppBaseResourceArrayDeserializer(result: Array<DppBaseResource>): any[] {\n return result.map((item) => {\n return dppBaseResourceDeserializer(item);\n });\n}\n\n/** Concrete tracked resource types can be created by aliasing this type using a specific property type. */\nexport interface ResourceGuardResource extends TrackedResource {\n /** ResourceGuardResource properties */\n properties?: ResourceGuard;\n /** Optional ETag. */\n eTag?: string;\n}\n\nexport function resourceGuardResourceSerializer(item: ResourceGuardResource): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : resourceGuardSerializer(item[\"properties\"]),\n eTag: item[\"eTag\"],\n };\n}\n\nexport function resourceGuardResourceDeserializer(item: any): ResourceGuardResource {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : resourceGuardDeserializer(item[\"properties\"]),\n eTag: item[\"eTag\"],\n };\n}\n\n/** model interface ResourceGuard */\nexport interface ResourceGuard {\n /** Provisioning state of the BackupVault resource */\n readonly provisioningState?: ProvisioningState;\n /** This flag indicates whether auto approval is allowed or not. */\n readonly allowAutoApprovals?: boolean;\n /** {readonly} List of operation details those are protected by the ResourceGuard resource */\n readonly resourceGuardOperations?: ResourceGuardOperation[];\n /** List of critical operations which are not protected by this resourceGuard */\n vaultCriticalOperationExclusionList?: string[];\n /** Description about the pre-req steps to perform all the critical operations. */\n readonly description?: string;\n}\n\nexport function resourceGuardSerializer(item: ResourceGuard): any {\n return {\n vaultCriticalOperationExclusionList: !item[\"vaultCriticalOperationExclusionList\"]\n ? item[\"vaultCriticalOperationExclusionList\"]\n : item[\"vaultCriticalOperationExclusionList\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function resourceGuardDeserializer(item: any): ResourceGuard {\n return {\n provisioningState: item[\"provisioningState\"],\n allowAutoApprovals: item[\"allowAutoApprovals\"],\n resourceGuardOperations: !item[\"resourceGuardOperations\"]\n ? item[\"resourceGuardOperations\"]\n : resourceGuardOperationArrayDeserializer(item[\"resourceGuardOperations\"]),\n vaultCriticalOperationExclusionList: !item[\"vaultCriticalOperationExclusionList\"]\n ? item[\"vaultCriticalOperationExclusionList\"]\n : item[\"vaultCriticalOperationExclusionList\"].map((p: any) => {\n return p;\n }),\n description: item[\"description\"],\n };\n}\n\nexport function resourceGuardOperationArrayDeserializer(\n result: Array<ResourceGuardOperation>,\n): any[] {\n return result.map((item) => {\n return resourceGuardOperationDeserializer(item);\n });\n}\n\n/** This class contains all the details about a critical operation. */\nexport interface ResourceGuardOperation {\n /** Name of the critical operation. */\n readonly vaultCriticalOperation?: string;\n /** Type of resource request. */\n readonly requestResourceType?: string;\n}\n\nexport function resourceGuardOperationDeserializer(item: any): ResourceGuardOperation {\n return {\n vaultCriticalOperation: item[\"vaultCriticalOperation\"],\n requestResourceType: item[\"requestResourceType\"],\n };\n}\n\n/** Patch Request content for Microsoft.DataProtection Resource Guard resources */\nexport interface PatchResourceGuardInput {\n /** Resource Guard tags. */\n tags?: Record<string, string>;\n}\n\nexport function patchResourceGuardInputSerializer(item: PatchResourceGuardInput): any {\n return { tags: item[\"tags\"] };\n}\n\n/** List of ResourceGuard resources */\nexport interface _ResourceGuardResourceList extends DppTrackedResourceList {\n /** List of resources. */\n value?: ResourceGuardResource[];\n}\n\nexport function _resourceGuardResourceListDeserializer(item: any): _ResourceGuardResourceList {\n return {\n nextLink: item[\"nextLink\"],\n value: !item[\"value\"] ? item[\"value\"] : resourceGuardResourceArrayDeserializer(item[\"value\"]),\n };\n}\n\nexport function resourceGuardResourceArraySerializer(result: Array<ResourceGuardResource>): any[] {\n return result.map((item) => {\n return resourceGuardResourceSerializer(item);\n });\n}\n\nexport function resourceGuardResourceArrayDeserializer(\n result: Array<ResourceGuardResource>,\n): any[] {\n return result.map((item) => {\n return resourceGuardResourceDeserializer(item);\n });\n}\n\n/** model interface DppTrackedResourceList */\nexport interface DppTrackedResourceList {\n /** The uri to fetch the next page of resources. Call ListNext() fetches next page of resources. */\n nextLink?: string;\n}\n\nexport function dppTrackedResourceListDeserializer(item: any): DppTrackedResourceList {\n return {\n nextLink: item[\"nextLink\"],\n };\n}\n\n/** Patch Request content for Microsoft.DataProtection resources */\nexport interface PatchResourceRequestInput {\n /** Input Managed Identity Details */\n identity?: DppIdentityDetails;\n /** Resource properties. */\n properties?: PatchBackupVaultInput;\n /** Resource tags. */\n tags?: Record<string, string>;\n}\n\nexport function patchResourceRequestInputSerializer(item: PatchResourceRequestInput): any {\n return {\n identity: !item[\"identity\"] ? item[\"identity\"] : dppIdentityDetailsSerializer(item[\"identity\"]),\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : patchBackupVaultInputSerializer(item[\"properties\"]),\n tags: item[\"tags\"],\n };\n}\n\n/** Backup Vault Contract for Patch Backup Vault API. */\nexport interface PatchBackupVaultInput {\n /** Monitoring Settings */\n monitoringSettings?: MonitoringSettings;\n /** Security Settings */\n securitySettings?: SecuritySettings;\n /** Feature Settings */\n featureSettings?: FeatureSettings;\n /** ResourceGuardOperationRequests on which LAC check will be performed */\n resourceGuardOperationRequests?: string[];\n}\n\nexport function patchBackupVaultInputSerializer(item: PatchBackupVaultInput): any {\n return {\n monitoringSettings: !item[\"monitoringSettings\"]\n ? item[\"monitoringSettings\"]\n : monitoringSettingsSerializer(item[\"monitoringSettings\"]),\n securitySettings: !item[\"securitySettings\"]\n ? item[\"securitySettings\"]\n : securitySettingsSerializer(item[\"securitySettings\"]),\n featureSettings: !item[\"featureSettings\"]\n ? item[\"featureSettings\"]\n : featureSettingsSerializer(item[\"featureSettings\"]),\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** List of BackupVault resources */\nexport interface _BackupVaultResourceList extends DppResourceList {\n /** List of resources. */\n value?: BackupVaultResource[];\n}\n\nexport function _backupVaultResourceListDeserializer(item: any): _BackupVaultResourceList {\n return {\n nextLink: item[\"nextLink\"],\n value: !item[\"value\"] ? item[\"value\"] : backupVaultResourceArrayDeserializer(item[\"value\"]),\n };\n}\n\nexport function backupVaultResourceArraySerializer(result: Array<BackupVaultResource>): any[] {\n return result.map((item) => {\n return backupVaultResourceSerializer(item);\n });\n}\n\nexport function backupVaultResourceArrayDeserializer(result: Array<BackupVaultResource>): any[] {\n return result.map((item) => {\n return backupVaultResourceDeserializer(item);\n });\n}\n\n/** CheckNameAvailability Request */\nexport interface CheckNameAvailabilityRequest {\n /** Resource name for which availability needs to be checked */\n name?: string;\n /** Describes the Resource type: Microsoft.DataProtection/BackupVaults */\n type?: string;\n}\n\nexport function checkNameAvailabilityRequestSerializer(item: CheckNameAvailabilityRequest): any {\n return { name: item[\"name\"], type: item[\"type\"] };\n}\n\n/** CheckNameAvailability Result */\nexport interface CheckNameAvailabilityResult {\n /** Gets or sets the message. */\n message?: string;\n /** Gets or sets a value indicating whether [name available]. */\n nameAvailable?: boolean;\n /** Gets or sets the reason. */\n reason?: string;\n}\n\nexport function checkNameAvailabilityResultDeserializer(item: any): CheckNameAvailabilityResult {\n return {\n message: item[\"message\"],\n nameAvailable: item[\"nameAvailable\"],\n reason: item[\"reason\"],\n };\n}\n\n/** Operation Resource */\nexport interface OperationResource {\n /** End time of the operation */\n endTime?: Date;\n /**\n * Required if status == failed or status == canceled. This is the OData v4 error format, used by the RPC and will go into the v2.2 Azure REST API guidelines.\n * The full set of optional properties (e.g. inner errors / details) can be found in the \"Error Response\" section.\n */\n error?: ErrorModel;\n /** It should match what is used to GET the operation result */\n id?: string;\n /** It must match the last segment of the \"id\" field, and will typically be a GUID / system generated value */\n name?: string;\n /** End time of the operation */\n properties?: OperationExtendedInfoUnion;\n /** Start time of the operation */\n startTime?: Date;\n status?: string;\n}\n\nexport function operationResourceDeserializer(item: any): OperationResource {\n return {\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDeserializer(item[\"error\"]),\n id: item[\"id\"],\n name: item[\"name\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : operationExtendedInfoUnionDeserializer(item[\"properties\"]),\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n status: item[\"status\"],\n };\n}\n\n/** The result for export jobs containing blob details. */\nexport interface ExportJobsResult {\n /** URL of the blob into which the serialized string of list of jobs is exported. */\n readonly blobUrl?: string;\n /** SAS key to access the blob. */\n readonly blobSasKey?: string;\n /** URL of the blob into which the ExcelFile is uploaded. */\n readonly excelFileBlobUrl?: string;\n /** SAS key to access the ExcelFile blob. */\n readonly excelFileBlobSasKey?: string;\n}\n\nexport function exportJobsResultDeserializer(item: any): ExportJobsResult {\n return {\n blobUrl: item[\"blobUrl\"],\n blobSasKey: item[\"blobSasKey\"],\n excelFileBlobUrl: item[\"excelFileBlobUrl\"],\n excelFileBlobSasKey: item[\"excelFileBlobSasKey\"],\n };\n}\n\n/** BaseBackupPolicy resource */\nexport interface BaseBackupPolicyResource extends ProxyResource {\n /** BaseBackupPolicyResource properties */\n properties?: BaseBackupPolicyUnion;\n}\n\nexport function baseBackupPolicyResourceSerializer(item: BaseBackupPolicyResource): any {\n return {\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : baseBackupPolicyUnionSerializer(item[\"properties\"]),\n };\n}\n\nexport function baseBackupPolicyResourceDeserializer(item: any): BaseBackupPolicyResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : baseBackupPolicyUnionDeserializer(item[\"properties\"]),\n };\n}\n\n/** BackupPolicy base */\nexport interface BaseBackupPolicy {\n /** Type of datasource for the backup management */\n datasourceTypes: string[];\n objectType: string;\n}\n\nexport function baseBackupPolicySerializer(item: BaseBackupPolicy): any {\n return {\n datasourceTypes: item[\"datasourceTypes\"].map((p: any) => {\n return p;\n }),\n objectType: item[\"objectType\"],\n };\n}\n\nexport function baseBackupPolicyDeserializer(item: any): BaseBackupPolicy {\n return {\n datasourceTypes: item[\"datasourceTypes\"].map((p: any) => {\n return p;\n }),\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for BaseBackupPolicyUnion */\nexport type BaseBackupPolicyUnion = BackupPolicy | BaseBackupPolicy;\n\nexport function baseBackupPolicyUnionSerializer(item: BaseBackupPolicyUnion): any {\n switch (item.objectType) {\n case \"BackupPolicy\":\n return backupPolicySerializer(item as BackupPolicy);\n\n default:\n return baseBackupPolicySerializer(item);\n }\n}\n\nexport function baseBackupPolicyUnionDeserializer(item: any): BaseBackupPolicyUnion {\n switch (item.objectType) {\n case \"BackupPolicy\":\n return backupPolicyDeserializer(item as BackupPolicy);\n\n default:\n return baseBackupPolicyDeserializer(item);\n }\n}\n\n/** Rule based backup policy */\nexport interface BackupPolicy extends BaseBackupPolicy {\n /** Policy rule dictionary that contains rules for each backuptype i.e Full/Incremental/Logs etc */\n policyRules: BasePolicyRuleUnion[];\n objectType: \"BackupPolicy\";\n}\n\nexport function backupPolicySerializer(item: BackupPolicy): any {\n return {\n datasourceTypes: item[\"datasourceTypes\"].map((p: any) => {\n return p;\n }),\n objectType: item[\"objectType\"],\n policyRules: basePolicyRuleUnionArraySerializer(item[\"policyRules\"]),\n };\n}\n\nexport function backupPolicyDeserializer(item: any): BackupPolicy {\n return {\n datasourceTypes: item[\"datasourceTypes\"].map((p: any) => {\n return p;\n }),\n objectType: item[\"objectType\"],\n policyRules: basePolicyRuleUnionArrayDeserializer(item[\"policyRules\"]),\n };\n}\n\nexport function basePolicyRuleUnionArraySerializer(result: Array<BasePolicyRuleUnion>): any[] {\n return result.map((item) => {\n return basePolicyRuleUnionSerializer(item);\n });\n}\n\nexport function basePolicyRuleUnionArrayDeserializer(result: Array<BasePolicyRuleUnion>): any[] {\n return result.map((item) => {\n return basePolicyRuleUnionDeserializer(item);\n });\n}\n\n/** BasePolicy Rule */\nexport interface BasePolicyRule {\n name: string;\n objectType: string;\n}\n\nexport function basePolicyRuleSerializer(item: BasePolicyRule): any {\n return { name: item[\"name\"], objectType: item[\"objectType\"] };\n}\n\nexport function basePolicyRuleDeserializer(item: any): BasePolicyRule {\n return {\n name: item[\"name\"],\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for BasePolicyRuleUnion */\nexport type BasePolicyRuleUnion = AzureBackupRule | AzureRetentionRule | BasePolicyRule;\n\nexport function basePolicyRuleUnionSerializer(item: BasePolicyRuleUnion): any {\n switch (item.objectType) {\n case \"AzureBackupRule\":\n return azureBackupRuleSerializer(item as AzureBackupRule);\n\n case \"AzureRetentionRule\":\n return azureRetentionRuleSerializer(item as AzureRetentionRule);\n\n default:\n return basePolicyRuleSerializer(item);\n }\n}\n\nexport function basePolicyRuleUnionDeserializer(item: any): BasePolicyRuleUnion {\n switch (item.objectType) {\n case \"AzureBackupRule\":\n return azureBackupRuleDeserializer(item as AzureBackupRule);\n\n case \"AzureRetentionRule\":\n return azureRetentionRuleDeserializer(item as AzureRetentionRule);\n\n default:\n return basePolicyRuleDeserializer(item);\n }\n}\n\n/** Azure backup rule */\nexport interface AzureBackupRule extends BasePolicyRule {\n /** BackupParameters base */\n backupParameters?: BackupParametersUnion;\n /** DataStoreInfo base */\n dataStore: DataStoreInfoBase;\n /** Trigger context */\n trigger: TriggerContextUnion;\n objectType: \"AzureBackupRule\";\n}\n\nexport function azureBackupRuleSerializer(item: AzureBackupRule): any {\n return {\n name: item[\"name\"],\n objectType: item[\"objectType\"],\n backupParameters: !item[\"backupParameters\"]\n ? item[\"backupParameters\"]\n : backupParametersUnionSerializer(item[\"backupParameters\"]),\n dataStore: dataStoreInfoBaseSerializer(item[\"dataStore\"]),\n trigger: triggerContextUnionSerializer(item[\"trigger\"]),\n };\n}\n\nexport function azureBackupRuleDeserializer(item: any): AzureBackupRule {\n return {\n name: item[\"name\"],\n objectType: item[\"objectType\"],\n backupParameters: !item[\"backupParameters\"]\n ? item[\"backupParameters\"]\n : backupParametersUnionDeserializer(item[\"backupParameters\"]),\n dataStore: dataStoreInfoBaseDeserializer(item[\"dataStore\"]),\n trigger: triggerContextUnionDeserializer(item[\"trigger\"]),\n };\n}\n\n/** BackupParameters base */\nexport interface BackupParameters {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: AzureBackupParams */\n objectType: string;\n}\n\nexport function backupParametersSerializer(item: BackupParameters): any {\n return { objectType: item[\"objectType\"] };\n}\n\nexport function backupParametersDeserializer(item: any): BackupParameters {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for BackupParametersUnion */\nexport type BackupParametersUnion = AzureBackupParams | BackupParameters;\n\nexport function backupParametersUnionSerializer(item: BackupParametersUnion): any {\n switch (item.objectType) {\n case \"AzureBackupParams\":\n return azureBackupParamsSerializer(item as AzureBackupParams);\n\n default:\n return backupParametersSerializer(item);\n }\n}\n\nexport function backupParametersUnionDeserializer(item: any): BackupParametersUnion {\n switch (item.objectType) {\n case \"AzureBackupParams\":\n return azureBackupParamsDeserializer(item as AzureBackupParams);\n\n default:\n return backupParametersDeserializer(item);\n }\n}\n\n/** Azure backup parameters */\nexport interface AzureBackupParams extends BackupParameters {\n /** BackupType ; Full/Incremental etc */\n backupType: string;\n /** Type of the specific object - used for deserializing */\n objectType: \"AzureBackupParams\";\n}\n\nexport function azureBackupParamsSerializer(item: AzureBackupParams): any {\n return { objectType: item[\"objectType\"], backupType: item[\"backupType\"] };\n}\n\nexport function azureBackupParamsDeserializer(item: any): AzureBackupParams {\n return {\n objectType: item[\"objectType\"],\n backupType: item[\"backupType\"],\n };\n}\n\n/** DataStoreInfo base */\nexport interface DataStoreInfoBase {\n /** type of datastore; Operational/Vault/Archive */\n dataStoreType: DataStoreTypes;\n /** Type of Datasource object, used to initialize the right inherited type */\n objectType: string;\n}\n\nexport function dataStoreInfoBaseSerializer(item: DataStoreInfoBase): any {\n return {\n dataStoreType: item[\"dataStoreType\"],\n objectType: item[\"objectType\"],\n };\n}\n\nexport function dataStoreInfoBaseDeserializer(item: any): DataStoreInfoBase {\n return {\n dataStoreType: item[\"dataStoreType\"],\n objectType: item[\"objectType\"],\n };\n}\n\n/** Trigger context */\nexport interface TriggerContext {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: AdhocBasedTriggerContext, ScheduleBasedTriggerContext */\n objectType: string;\n}\n\nexport function triggerContextSerializer(item: TriggerContext): any {\n return { objectType: item[\"objectType\"] };\n}\n\nexport function triggerContextDeserializer(item: any): TriggerContext {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for TriggerContextUnion */\nexport type TriggerContextUnion =\n | AdhocBasedTriggerContext\n | ScheduleBasedTriggerContext\n | TriggerContext;\n\nexport function triggerContextUnionSerializer(item: TriggerContextUnion): any {\n switch (item.objectType) {\n case \"AdhocBasedTriggerContext\":\n return adhocBasedTriggerContextSerializer(item as AdhocBasedTriggerContext);\n\n case \"ScheduleBasedTriggerContext\":\n return scheduleBasedTriggerContextSerializer(item as ScheduleBasedTriggerContext);\n\n default:\n return triggerContextSerializer(item);\n }\n}\n\nexport function triggerContextUnionDeserializer(item: any): TriggerContextUnion {\n switch (item.objectType) {\n case \"AdhocBasedTriggerContext\":\n return adhocBasedTriggerContextDeserializer(item as AdhocBasedTriggerContext);\n\n case \"ScheduleBasedTriggerContext\":\n return scheduleBasedTriggerContextDeserializer(item as ScheduleBasedTriggerContext);\n\n default:\n return triggerContextDeserializer(item);\n }\n}\n\n/** Adhoc trigger context */\nexport interface AdhocBasedTriggerContext extends TriggerContext {\n /** Tagging Criteria containing retention tag for adhoc backup. */\n taggingCriteria: AdhocBasedTaggingCriteria;\n /** Type of the specific object - used for deserializing */\n objectType: \"AdhocBasedTriggerContext\";\n}\n\nexport function adhocBasedTriggerContextSerializer(item: AdhocBasedTriggerContext): any {\n return {\n objectType: item[\"objectType\"],\n taggingCriteria: adhocBasedTaggingCriteriaSerializer(item[\"taggingCriteria\"]),\n };\n}\n\nexport function adhocBasedTriggerContextDeserializer(item: any): AdhocBasedTriggerContext {\n return {\n objectType: item[\"objectType\"],\n taggingCriteria: adhocBasedTaggingCriteriaDeserializer(item[\"taggingCriteria\"]),\n };\n}\n\n/** Adhoc backup tagging criteria */\nexport interface AdhocBasedTaggingCriteria {\n /** Retention tag information */\n tagInfo?: RetentionTag;\n}\n\nexport function adhocBasedTaggingCriteriaSerializer(item: AdhocBasedTaggingCriteria): any {\n return {\n tagInfo: !item[\"tagInfo\"] ? item[\"tagInfo\"] : retentionTagSerializer(item[\"tagInfo\"]),\n };\n}\n\nexport function adhocBasedTaggingCriteriaDeserializer(item: any): AdhocBasedTaggingCriteria {\n return {\n tagInfo: !item[\"tagInfo\"] ? item[\"tagInfo\"] : retentionTagDeserializer(item[\"tagInfo\"]),\n };\n}\n\n/** Retention tag */\nexport interface RetentionTag {\n /** Retention Tag version. */\n readonly eTag?: string;\n /** Retention Tag version. */\n readonly id?: string;\n /** Retention Tag Name to relate it to retention rule. */\n tagName: string;\n}\n\nexport function retentionTagSerializer(item: RetentionTag): any {\n return { tagName: item[\"tagName\"] };\n}\n\nexport function retentionTagDeserializer(item: any): RetentionTag {\n return {\n eTag: item[\"eTag\"],\n id: item[\"id\"],\n tagName: item[\"tagName\"],\n };\n}\n\n/** Schedule based trigger context */\nexport interface ScheduleBasedTriggerContext extends TriggerContext {\n /** Schedule for this backup */\n schedule: BackupSchedule;\n /** List of tags that can be applicable for given schedule. */\n taggingCriteria: TaggingCriteria[];\n /** Type of the specific object - used for deserializing */\n objectType: \"ScheduleBasedTriggerContext\";\n}\n\nexport function scheduleBasedTriggerContextSerializer(item: ScheduleBasedTriggerContext): any {\n return {\n objectType: item[\"objectType\"],\n schedule: backupScheduleSerializer(item[\"schedule\"]),\n taggingCriteria: taggingCriteriaArraySerializer(item[\"taggingCriteria\"]),\n };\n}\n\nexport function scheduleBasedTriggerContextDeserializer(item: any): ScheduleBasedTriggerContext {\n return {\n objectType: item[\"objectType\"],\n schedule: backupScheduleDeserializer(item[\"schedule\"]),\n taggingCriteria: taggingCriteriaArrayDeserializer(item[\"taggingCriteria\"]),\n };\n}\n\n/** Schedule for backup */\nexport interface BackupSchedule {\n /** Repeating time interval which only support the following ISO 8601 format [R/startDateTime/Duration]. Example: R/2007-03-01T13:00:00Z/P1Y2M10DT2H30M */\n repeatingTimeIntervals: string[];\n /** Time zone for a schedule. Example: Pacific Standard Time */\n timeZone?: string;\n}\n\nexport function backupScheduleSerializer(item: BackupSchedule): any {\n return {\n repeatingTimeIntervals: item[\"repeatingTimeIntervals\"].map((p: any) => {\n return p;\n }),\n timeZone: item[\"timeZone\"],\n };\n}\n\nexport function backupScheduleDeserializer(item: any): BackupSchedule {\n return {\n repeatingTimeIntervals: item[\"repeatingTimeIntervals\"].map((p: any) => {\n return p;\n }),\n timeZone: item[\"timeZone\"],\n };\n}\n\nexport function taggingCriteriaArraySerializer(result: Array<TaggingCriteria>): any[] {\n return result.map((item) => {\n return taggingCriteriaSerializer(item);\n });\n}\n\nexport function taggingCriteriaArrayDeserializer(result: Array<TaggingCriteria>): any[] {\n return result.map((item) => {\n return taggingCriteriaDeserializer(item);\n });\n}\n\n/** Tagging criteria */\nexport interface TaggingCriteria {\n /** Criteria which decides whether the tag can be applied to a triggered backup. */\n criteria?: BackupCriteriaUnion[];\n /** Specifies if tag is default. */\n isDefault: boolean;\n /** Retention Tag priority. */\n taggingPriority: number;\n /** Retention tag information */\n tagInfo: RetentionTag;\n}\n\nexport function taggingCriteriaSerializer(item: TaggingCriteria): any {\n return {\n criteria: !item[\"criteria\"]\n ? item[\"criteria\"]\n : backupCriteriaUnionArraySerializer(item[\"criteria\"]),\n isDefault: item[\"isDefault\"],\n taggingPriority: item[\"taggingPriority\"],\n tagInfo: retentionTagSerializer(item[\"tagInfo\"]),\n };\n}\n\nexport function taggingCriteriaDeserializer(item: any): TaggingCriteria {\n return {\n criteria: !item[\"criteria\"]\n ? item[\"criteria\"]\n : backupCriteriaUnionArrayDeserializer(item[\"criteria\"]),\n isDefault: item[\"isDefault\"],\n taggingPriority: item[\"taggingPriority\"],\n tagInfo: retentionTagDeserializer(item[\"tagInfo\"]),\n };\n}\n\nexport function backupCriteriaUnionArraySerializer(result: Array<BackupCriteriaUnion>): any[] {\n return result.map((item) => {\n return backupCriteriaUnionSerializer(item);\n });\n}\n\nexport function backupCriteriaUnionArrayDeserializer(result: Array<BackupCriteriaUnion>): any[] {\n return result.map((item) => {\n return backupCriteriaUnionDeserializer(item);\n });\n}\n\n/** BackupCriteria base class */\nexport interface BackupCriteria {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: ScheduleBasedBackupCriteria */\n objectType: string;\n}\n\nexport function backupCriteriaSerializer(item: BackupCriteria): any {\n return { objectType: item[\"objectType\"] };\n}\n\nexport function backupCriteriaDeserializer(item: any): BackupCriteria {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for BackupCriteriaUnion */\nexport type BackupCriteriaUnion = ScheduleBasedBackupCriteria | BackupCriteria;\n\nexport function backupCriteriaUnionSerializer(item: BackupCriteriaUnion): any {\n switch (item.objectType) {\n case \"ScheduleBasedBackupCriteria\":\n return scheduleBasedBackupCriteriaSerializer(item as ScheduleBasedBackupCriteria);\n\n default:\n return backupCriteriaSerializer(item);\n }\n}\n\nexport function backupCriteriaUnionDeserializer(item: any): BackupCriteriaUnion {\n switch (item.objectType) {\n case \"ScheduleBasedBackupCriteria\":\n return scheduleBasedBackupCriteriaDeserializer(item as ScheduleBasedBackupCriteria);\n\n default:\n return backupCriteriaDeserializer(item);\n }\n}\n\n/** Schedule based backup criteria */\nexport interface ScheduleBasedBackupCriteria extends BackupCriteria {\n /**\n * it contains absolute values like \"AllBackup\" / \"FirstOfDay\" / \"FirstOfWeek\" / \"FirstOfMonth\"\n * and should be part of AbsoluteMarker enum\n */\n absoluteCriteria?: AbsoluteMarker[];\n /** This is day of the month from 1 to 28 other wise last of month */\n daysOfMonth?: Day[];\n /** It should be Sunday/Monday/T..../Saturday */\n daysOfTheWeek?: DayOfWeek[];\n /** It should be January/February/....../December */\n monthsOfYear?: Month[];\n /** List of schedule times for backup */\n scheduleTimes?: Date[];\n /** It should be First/Second/Third/Fourth/Last */\n weeksOfTheMonth?: WeekNumber[];\n /** Type of the specific object - used for deserializing */\n objectType: \"ScheduleBasedBackupCriteria\";\n}\n\nexport function scheduleBasedBackupCriteriaSerializer(item: ScheduleBasedBackupCriteria): any {\n return {\n objectType: item[\"objectType\"],\n absoluteCriteria: !item[\"absoluteCriteria\"]\n ? item[\"absoluteCriteria\"]\n : item[\"absoluteCriteria\"].map((p: any) => {\n return p;\n }),\n daysOfMonth: !item[\"daysOfMonth\"]\n ? item[\"daysOfMonth\"]\n : dayArraySerializer(item[\"daysOfMonth\"]),\n daysOfTheWeek: !item[\"daysOfTheWeek\"]\n ? item[\"daysOfTheWeek\"]\n : item[\"daysOfTheWeek\"].map((p: any) => {\n return p;\n }),\n monthsOfYear: !item[\"monthsOfYear\"]\n ? item[\"monthsOfYear\"]\n : item[\"monthsOfYear\"].map((p: any) => {\n return p;\n }),\n scheduleTimes: !item[\"scheduleTimes\"]\n ? item[\"scheduleTimes\"]\n : item[\"scheduleTimes\"].map((p: any) => {\n return p.toISOString();\n }),\n weeksOfTheMonth: !item[\"weeksOfTheMonth\"]\n ? item[\"weeksOfTheMonth\"]\n : item[\"weeksOfTheMonth\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function scheduleBasedBackupCriteriaDeserializer(item: any): ScheduleBasedBackupCriteria {\n return {\n objectType: item[\"objectType\"],\n absoluteCriteria: !item[\"absoluteCriteria\"]\n ? item[\"absoluteCriteria\"]\n : item[\"absoluteCriteria\"].map((p: any) => {\n return p;\n }),\n daysOfMonth: !item[\"daysOfMonth\"]\n ? item[\"daysOfMonth\"]\n : dayArrayDeserializer(item[\"daysOfMonth\"]),\n daysOfTheWeek: !item[\"daysOfTheWeek\"]\n ? item[\"daysOfTheWeek\"]\n : item[\"daysOfTheWeek\"].map((p: any) => {\n return p;\n }),\n monthsOfYear: !item[\"monthsOfYear\"]\n ? item[\"monthsOfYear\"]\n : item[\"monthsOfYear\"].map((p: any) => {\n return p;\n }),\n scheduleTimes: !item[\"scheduleTimes\"]\n ? item[\"scheduleTimes\"]\n : item[\"scheduleTimes\"].map((p: any) => {\n return new Date(p);\n }),\n weeksOfTheMonth: !item[\"weeksOfTheMonth\"]\n ? item[\"weeksOfTheMonth\"]\n : item[\"weeksOfTheMonth\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Known values of {@link AbsoluteMarker} that the service accepts. */\nexport enum KnownAbsoluteMarker {\n /** AllBackup */\n AllBackup = \"AllBackup\",\n /** FirstOfDay */\n FirstOfDay = \"FirstOfDay\",\n /** FirstOfMonth */\n FirstOfMonth = \"FirstOfMonth\",\n /** FirstOfWeek */\n FirstOfWeek = \"FirstOfWeek\",\n /** FirstOfYear */\n FirstOfYear = \"FirstOfYear\",\n}\n\n/** Type of AbsoluteMarker */\nexport type AbsoluteMarker = string;\n\nexport function dayArraySerializer(result: Array<Day>): any[] {\n return result.map((item) => {\n return daySerializer(item);\n });\n}\n\nexport function dayArrayDeserializer(result: Array<Day>): any[] {\n return result.map((item) => {\n return dayDeserializer(item);\n });\n}\n\n/** Day of the week */\nexport interface Day {\n /** Date of the month */\n date?: number;\n /** Whether Date is last date of month */\n isLast?: boolean;\n}\n\nexport function daySerializer(item: Day): any {\n return { date: item[\"date\"], isLast: item[\"isLast\"] };\n}\n\nexport function dayDeserializer(item: any): Day {\n return {\n date: item[\"date\"],\n isLast: item[\"isLast\"],\n };\n}\n\n/** Known values of {@link DayOfWeek} that the service accepts. */\nexport enum KnownDayOfWeek {\n /** Friday */\n Friday = \"Friday\",\n /** Monday */\n Monday = \"Monday\",\n /** Saturday */\n Saturday = \"Saturday\",\n /** Sunday */\n Sunday = \"Sunday\",\n /** Thursday */\n Thursday = \"Thursday\",\n /** Tuesday */\n Tuesday = \"Tuesday\",\n /** Wednesday */\n Wednesday = \"Wednesday\",\n}\n\n/** Type of DayOfWeek */\nexport type DayOfWeek = string;\n\n/** Known values of {@link Month} that the service accepts. */\nexport enum KnownMonth {\n /** April */\n April = \"April\",\n /** August */\n August = \"August\",\n /** December */\n December = \"December\",\n /** February */\n February = \"February\",\n /** January */\n January = \"January\",\n /** July */\n July = \"July\",\n /** June */\n June = \"June\",\n /** March */\n March = \"March\",\n /** May */\n May = \"May\",\n /** November */\n November = \"November\",\n /** October */\n October = \"October\",\n /** September */\n September = \"September\",\n}\n\n/** Type of Month */\nexport type Month = string;\n\n/** Known values of {@link WeekNumber} that the service accepts. */\nexport enum KnownWeekNumber {\n /** First */\n First = \"First\",\n /** Fourth */\n Fourth = \"Fourth\",\n /** Last */\n Last = \"Last\",\n /** Second */\n Second = \"Second\",\n /** Third */\n Third = \"Third\",\n}\n\n/** Type of WeekNumber */\nexport type WeekNumber = string;\n\n/** Azure retention rule */\nexport interface AzureRetentionRule extends BasePolicyRule {\n isDefault?: boolean;\n lifecycles: SourceLifeCycle[];\n objectType: \"AzureRetentionRule\";\n}\n\nexport function azureRetentionRuleSerializer(item: AzureRetentionRule): any {\n return {\n name: item[\"name\"],\n objectType: item[\"objectType\"],\n isDefault: item[\"isDefault\"],\n lifecycles: sourceLifeCycleArraySerializer(item[\"lifecycles\"]),\n };\n}\n\nexport function azureRetentionRuleDeserializer(item: any): AzureRetentionRule {\n return {\n name: item[\"name\"],\n objectType: item[\"objectType\"],\n isDefault: item[\"isDefault\"],\n lifecycles: sourceLifeCycleArrayDeserializer(item[\"lifecycles\"]),\n };\n}\n\nexport function sourceLifeCycleArraySerializer(result: Array<SourceLifeCycle>): any[] {\n return result.map((item) => {\n return sourceLifeCycleSerializer(item);\n });\n}\n\nexport function sourceLifeCycleArrayDeserializer(result: Array<SourceLifeCycle>): any[] {\n return result.map((item) => {\n return sourceLifeCycleDeserializer(item);\n });\n}\n\n/** Source LifeCycle */\nexport interface SourceLifeCycle {\n /** Delete Option */\n deleteAfter: DeleteOptionUnion;\n /** DataStoreInfo base */\n sourceDataStore: DataStoreInfoBase;\n targetDataStoreCopySettings?: TargetCopySetting[];\n}\n\nexport function sourceLifeCycleSerializer(item: SourceLifeCycle): any {\n return {\n deleteAfter: deleteOptionUnionSerializer(item[\"deleteAfter\"]),\n sourceDataStore: dataStoreInfoBaseSerializer(item[\"sourceDataStore\"]),\n targetDataStoreCopySettings: !item[\"targetDataStoreCopySettings\"]\n ? item[\"targetDataStoreCopySettings\"]\n : targetCopySettingArraySerializer(item[\"targetDataStoreCopySettings\"]),\n };\n}\n\nexport function sourceLifeCycleDeserializer(item: any): SourceLifeCycle {\n return {\n deleteAfter: deleteOptionUnionDeserializer(item[\"deleteAfter\"]),\n sourceDataStore: dataStoreInfoBaseDeserializer(item[\"sourceDataStore\"]),\n targetDataStoreCopySettings: !item[\"targetDataStoreCopySettings\"]\n ? item[\"targetDataStoreCopySettings\"]\n : targetCopySettingArrayDeserializer(item[\"targetDataStoreCopySettings\"]),\n };\n}\n\n/** Delete Option */\nexport interface DeleteOption {\n /** Duration of deletion after given timespan */\n duration: string;\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: AbsoluteDeleteOption */\n objectType: string;\n}\n\nexport function deleteOptionSerializer(item: DeleteOption): any {\n return { duration: item[\"duration\"], objectType: item[\"objectType\"] };\n}\n\nexport function deleteOptionDeserializer(item: any): DeleteOption {\n return {\n duration: item[\"duration\"],\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for DeleteOptionUnion */\nexport type DeleteOptionUnion = AbsoluteDeleteOption | DeleteOption;\n\nexport function deleteOptionUnionSerializer(item: DeleteOptionUnion): any {\n switch (item.objectType) {\n case \"AbsoluteDeleteOption\":\n return absoluteDeleteOptionSerializer(item as AbsoluteDeleteOption);\n\n default:\n return deleteOptionSerializer(item);\n }\n}\n\nexport function deleteOptionUnionDeserializer(item: any): DeleteOptionUnion {\n switch (item.objectType) {\n case \"AbsoluteDeleteOption\":\n return absoluteDeleteOptionDeserializer(item as AbsoluteDeleteOption);\n\n default:\n return deleteOptionDeserializer(item);\n }\n}\n\n/** Delete option with duration */\nexport interface AbsoluteDeleteOption extends DeleteOption {\n /** Type of the specific object - used for deserializing */\n objectType: \"AbsoluteDeleteOption\";\n}\n\nexport function absoluteDeleteOptionSerializer(item: AbsoluteDeleteOption): any {\n return { duration: item[\"duration\"], objectType: item[\"objectType\"] };\n}\n\nexport function absoluteDeleteOptionDeserializer(item: any): AbsoluteDeleteOption {\n return {\n duration: item[\"duration\"],\n objectType: item[\"objectType\"],\n };\n}\n\nexport function targetCopySettingArraySerializer(result: Array<TargetCopySetting>): any[] {\n return result.map((item) => {\n return targetCopySettingSerializer(item);\n });\n}\n\nexport function targetCopySettingArrayDeserializer(result: Array<TargetCopySetting>): any[] {\n return result.map((item) => {\n return targetCopySettingDeserializer(item);\n });\n}\n\n/** Target copy settings */\nexport interface TargetCopySetting {\n /** It can be CustomCopyOption or ImmediateCopyOption. */\n copyAfter: CopyOptionUnion;\n /** Info of target datastore */\n dataStore: DataStoreInfoBase;\n}\n\nexport function targetCopySettingSerializer(item: TargetCopySetting): any {\n return {\n copyAfter: copyOptionUnionSerializer(item[\"copyAfter\"]),\n dataStore: dataStoreInfoBaseSerializer(item[\"dataStore\"]),\n };\n}\n\nexport function targetCopySettingDeserializer(item: any): TargetCopySetting {\n return {\n copyAfter: copyOptionUnionDeserializer(item[\"copyAfter\"]),\n dataStore: dataStoreInfoBaseDeserializer(item[\"dataStore\"]),\n };\n}\n\n/** Options to copy */\nexport interface CopyOption {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: CopyOnExpiryOption, CustomCopyOption, ImmediateCopyOption */\n objectType: string;\n}\n\nexport function copyOptionSerializer(item: CopyOption): any {\n return { objectType: item[\"objectType\"] };\n}\n\nexport function copyOptionDeserializer(item: any): CopyOption {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for CopyOptionUnion */\nexport type CopyOptionUnion =\n | CopyOnExpiryOption\n | CustomCopyOption\n | ImmediateCopyOption\n | CopyOption;\n\nexport function copyOptionUnionSerializer(item: CopyOptionUnion): any {\n switch (item.objectType) {\n case \"CopyOnExpiryOption\":\n return copyOnExpiryOptionSerializer(item as CopyOnExpiryOption);\n\n case \"CustomCopyOption\":\n return customCopyOptionSerializer(item as CustomCopyOption);\n\n case \"ImmediateCopyOption\":\n return immediateCopyOptionSerializer(item as ImmediateCopyOption);\n\n default:\n return copyOptionSerializer(item);\n }\n}\n\nexport function copyOptionUnionDeserializer(item: any): CopyOptionUnion {\n switch (item.objectType) {\n case \"CopyOnExpiryOption\":\n return copyOnExpiryOptionDeserializer(item as CopyOnExpiryOption);\n\n case \"CustomCopyOption\":\n return customCopyOptionDeserializer(item as CustomCopyOption);\n\n case \"ImmediateCopyOption\":\n return immediateCopyOptionDeserializer(item as ImmediateCopyOption);\n\n default:\n return copyOptionDeserializer(item);\n }\n}\n\n/** Copy on Expiry Option */\nexport interface CopyOnExpiryOption extends CopyOption {\n /** Type of the specific object - used for deserializing */\n objectType: \"CopyOnExpiryOption\";\n}\n\nexport function copyOnExpiryOptionSerializer(item: CopyOnExpiryOption): any {\n return { objectType: item[\"objectType\"] };\n}\n\nexport function copyOnExpiryOptionDeserializer(item: any): CopyOnExpiryOption {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Duration based custom options to copy */\nexport interface CustomCopyOption extends CopyOption {\n /** Data copied after given timespan */\n duration?: string;\n /** Type of the specific object - used for deserializing */\n objectType: \"CustomCopyOption\";\n}\n\nexport function customCopyOptionSerializer(item: CustomCopyOption): any {\n return { objectType: item[\"objectType\"], duration: item[\"duration\"] };\n}\n\nexport function customCopyOptionDeserializer(item: any): CustomCopyOption {\n return {\n objectType: item[\"objectType\"],\n duration: item[\"duration\"],\n };\n}\n\n/** Immediate copy Option */\nexport interface ImmediateCopyOption extends CopyOption {\n /** Type of the specific object - used for deserializing */\n objectType: \"ImmediateCopyOption\";\n}\n\nexport function immediateCopyOptionSerializer(item: ImmediateCopyOption): any {\n return { objectType: item[\"objectType\"] };\n}\n\nexport function immediateCopyOptionDeserializer(item: any): ImmediateCopyOption {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** List of BaseBackupPolicy resources */\nexport interface _BaseBackupPolicyResourceList extends DppResourceList {\n /** List of resources. */\n value?: BaseBackupPolicyResource[];\n}\n\nexport function _baseBackupPolicyResourceListDeserializer(\n item: any,\n): _BaseBackupPolicyResourceList {\n return {\n nextLink: item[\"nextLink\"],\n value: !item[\"value\"]\n ? item[\"value\"]\n : baseBackupPolicyResourceArrayDeserializer(item[\"value\"]),\n };\n}\n\nexport function baseBackupPolicyResourceArraySerializer(\n result: Array<BaseBackupPolicyResource>,\n): any[] {\n return result.map((item) => {\n return baseBackupPolicyResourceSerializer(item);\n });\n}\n\nexport function baseBackupPolicyResourceArrayDeserializer(\n result: Array<BaseBackupPolicyResource>,\n): any[] {\n return result.map((item) => {\n return baseBackupPolicyResourceDeserializer(item);\n });\n}\n\n/** List Restore Ranges Request */\nexport interface AzureBackupFindRestorableTimeRangesRequest {\n /** Gets or sets the type of the source data store. */\n sourceDataStoreType: RestoreSourceDataStoreType;\n /** Start time for the List Restore Ranges request. ISO 8601 format. */\n startTime?: string;\n /** End time for the List Restore Ranges request. ISO 8601 format. */\n endTime?: string;\n}\n\nexport function azureBackupFindRestorableTimeRangesRequestSerializer(\n item: AzureBackupFindRestorableTimeRangesRequest,\n): any {\n return {\n sourceDataStoreType: item[\"sourceDataStoreType\"],\n startTime: item[\"startTime\"],\n endTime: item[\"endTime\"],\n };\n}\n\n/** Gets or sets the type of the source data store. */\nexport enum KnownRestoreSourceDataStoreType {\n /** OperationalStore */\n OperationalStore = \"OperationalStore\",\n /** VaultStore */\n VaultStore = \"VaultStore\",\n /** ArchiveStore */\n ArchiveStore = \"ArchiveStore\",\n}\n\n/**\n * Gets or sets the type of the source data store. \\\n * {@link KnownRestoreSourceDataStoreType} can be used interchangeably with RestoreSourceDataStoreType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **OperationalStore** \\\n * **VaultStore** \\\n * **ArchiveStore**\n */\nexport type RestoreSourceDataStoreType = string;\n\n/** List Restore Ranges Response */\nexport interface AzureBackupFindRestorableTimeRangesResponseResource extends DppResource {\n /** AzureBackupFindRestorableTimeRangesResponseResource properties */\n properties?: AzureBackupFindRestorableTimeRangesResponse;\n}\n\nexport function azureBackupFindRestorableTimeRangesResponseResourceDeserializer(\n item: any,\n): AzureBackupFindRestorableTimeRangesResponseResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : azureBackupFindRestorableTimeRangesResponseDeserializer(item[\"properties\"]),\n };\n}\n\n/** List Restore Ranges Response */\nexport interface AzureBackupFindRestorableTimeRangesResponse {\n /** Returns the Restore Ranges available on the Backup Instance. */\n restorableTimeRanges?: RestorableTimeRange[];\n objectType?: string;\n}\n\nexport function azureBackupFindRestorableTimeRangesResponseDeserializer(\n item: any,\n): AzureBackupFindRestorableTimeRangesResponse {\n return {\n restorableTimeRanges: !item[\"restorableTimeRanges\"]\n ? item[\"restorableTimeRanges\"]\n : restorableTimeRangeArrayDeserializer(item[\"restorableTimeRanges\"]),\n objectType: item[\"objectType\"],\n };\n}\n\nexport function restorableTimeRangeArrayDeserializer(result: Array<RestorableTimeRange>): any[] {\n return result.map((item) => {\n return restorableTimeRangeDeserializer(item);\n });\n}\n\n/** model interface RestorableTimeRange */\nexport interface RestorableTimeRange {\n /** Start time for the available restore range */\n startTime: string;\n /** End time for the available restore range */\n endTime: string;\n objectType?: string;\n}\n\nexport function restorableTimeRangeDeserializer(item: any): RestorableTimeRange {\n return {\n startTime: item[\"startTime\"],\n endTime: item[\"endTime\"],\n objectType: item[\"objectType\"],\n };\n}\n\n/** Resource class */\nexport interface DppResource {\n /** Resource Id represents the complete path to the resource. */\n readonly id?: string;\n /** Resource name associated with the resource. */\n readonly name?: string;\n /** Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/... */\n readonly type?: string;\n /** Metadata pertaining to creation and last modification of the resource. */\n readonly systemData?: SystemData;\n}\n\nexport function dppResourceDeserializer(item: any): DppResource {\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/** Azure backup recoveryPoint resource */\nexport interface AzureBackupRecoveryPointResource extends ProxyResource {\n /** AzureBackupRecoveryPointResource properties */\n properties?: AzureBackupRecoveryPointUnion;\n}\n\nexport function azureBackupRecoveryPointResourceDeserializer(\n item: any,\n): AzureBackupRecoveryPointResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : azureBackupRecoveryPointUnionDeserializer(item[\"properties\"]),\n };\n}\n\n/** Azure backup recoveryPoint */\nexport interface AzureBackupRecoveryPoint {\n objectType: string;\n}\n\nexport function azureBackupRecoveryPointDeserializer(item: any): AzureBackupRecoveryPoint {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for AzureBackupRecoveryPointUnion */\nexport type AzureBackupRecoveryPointUnion =\n | AzureBackupDiscreteRecoveryPoint\n | AzureBackupRecoveryPoint;\n\nexport function azureBackupRecoveryPointUnionDeserializer(\n item: any,\n): AzureBackupRecoveryPointUnion {\n switch (item.objectType) {\n case \"AzureBackupDiscreteRecoveryPoint\":\n return azureBackupDiscreteRecoveryPointDeserializer(item as AzureBackupDiscreteRecoveryPoint);\n\n default:\n return azureBackupRecoveryPointDeserializer(item);\n }\n}\n\n/** Azure backup discrete RecoveryPoint */\nexport interface AzureBackupDiscreteRecoveryPoint extends AzureBackupRecoveryPoint {\n friendlyName?: string;\n recoveryPointDataStoresDetails?: RecoveryPointDataStoreDetails[];\n recoveryPointTime: Date;\n policyName?: string;\n policyVersion?: string;\n recoveryPointId?: string;\n recoveryPointType?: string;\n retentionTagName?: string;\n retentionTagVersion?: string;\n readonly expiryTime?: Date;\n /** Specifies recovery point completeness. Partial (i.e., only some of the intended items were backed up), or Completed (i.e., ALL intended items were backed up). */\n recoveryPointState?: RecoveryPointCompletionState;\n objectType: \"AzureBackupDiscreteRecoveryPoint\";\n}\n\nexport function azureBackupDiscreteRecoveryPointDeserializer(\n item: any,\n): AzureBackupDiscreteRecoveryPoint {\n return {\n objectType: item[\"objectType\"],\n friendlyName: item[\"friendlyName\"],\n recoveryPointDataStoresDetails: !item[\"recoveryPointDataStoresDetails\"]\n ? item[\"recoveryPointDataStoresDetails\"]\n : recoveryPointDataStoreDetailsArrayDeserializer(item[\"recoveryPointDataStoresDetails\"]),\n recoveryPointTime: new Date(item[\"recoveryPointTime\"]),\n policyName: item[\"policyName\"],\n policyVersion: item[\"policyVersion\"],\n recoveryPointId: item[\"recoveryPointId\"],\n recoveryPointType: item[\"recoveryPointType\"],\n retentionTagName: item[\"retentionTagName\"],\n retentionTagVersion: item[\"retentionTagVersion\"],\n expiryTime: !item[\"expiryTime\"] ? item[\"expiryTime\"] : new Date(item[\"expiryTime\"]),\n recoveryPointState: item[\"recoveryPointState\"],\n };\n}\n\nexport function recoveryPointDataStoreDetailsArrayDeserializer(\n result: Array<RecoveryPointDataStoreDetails>,\n): any[] {\n return result.map((item) => {\n return recoveryPointDataStoreDetailsDeserializer(item);\n });\n}\n\n/** RecoveryPoint datastore details */\nexport interface RecoveryPointDataStoreDetails {\n creationTime?: Date;\n expiryTime?: Date;\n id?: string;\n metaData?: string;\n state?: string;\n type?: string;\n visible?: boolean;\n readonly rehydrationExpiryTime?: Date;\n readonly rehydrationStatus?: RehydrationStatus;\n}\n\nexport function recoveryPointDataStoreDetailsDeserializer(\n item: any,\n): RecoveryPointDataStoreDetails {\n return {\n creationTime: !item[\"creationTime\"] ? item[\"creationTime\"] : new Date(item[\"creationTime\"]),\n expiryTime: !item[\"expiryTime\"] ? item[\"expiryTime\"] : new Date(item[\"expiryTime\"]),\n id: item[\"id\"],\n metaData: item[\"metaData\"],\n state: item[\"state\"],\n type: item[\"type\"],\n visible: item[\"visible\"],\n rehydrationExpiryTime: !item[\"rehydrationExpiryTime\"]\n ? item[\"rehydrationExpiryTime\"]\n : new Date(item[\"rehydrationExpiryTime\"]),\n rehydrationStatus: item[\"rehydrationStatus\"],\n };\n}\n\n/** Known values of {@link RehydrationStatus} that the service accepts. */\nexport enum KnownRehydrationStatus {\n /** CREATE_IN_PROGRESS */\n CreateINProgress = \"CREATE_IN_PROGRESS\",\n /** COMPLETED */\n Completed = \"COMPLETED\",\n /** DELETE_IN_PROGRESS */\n DeleteINProgress = \"DELETE_IN_PROGRESS\",\n /** DELETED */\n Deleted = \"DELETED\",\n /** FAILED */\n Failed = \"FAILED\",\n}\n\n/** Type of RehydrationStatus */\nexport type RehydrationStatus = string;\n\n/** Specifies recovery point completeness. Partial (i.e., only some of the intended items were backed up), or Completed (i.e., ALL intended items were backed up). */\nexport enum KnownRecoveryPointCompletionState {\n /** Completed */\n Completed = \"Completed\",\n /** Partial */\n Partial = \"Partial\",\n}\n\n/**\n * Specifies recovery point completeness. Partial (i.e., only some of the intended items were backed up), or Completed (i.e., ALL intended items were backed up). \\\n * {@link KnownRecoveryPointCompletionState} can be used interchangeably with RecoveryPointCompletionState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Completed** \\\n * **Partial**\n */\nexport type RecoveryPointCompletionState = string;\n\n/** Azure backup recoveryPoint resource list */\nexport interface _AzureBackupRecoveryPointResourceList extends DppResourceList {\n /** List of resources. */\n value?: AzureBackupRecoveryPointResource[];\n}\n\nexport function _azureBackupRecoveryPointResourceListDeserializer(\n item: any,\n): _AzureBackupRecoveryPointResourceList {\n return {\n nextLink: item[\"nextLink\"],\n value: !item[\"value\"]\n ? item[\"value\"]\n : azureBackupRecoveryPointResourceArrayDeserializer(item[\"value\"]),\n };\n}\n\nexport function azureBackupRecoveryPointResourceArrayDeserializer(\n result: Array<AzureBackupRecoveryPointResource>,\n): any[] {\n return result.map((item) => {\n return azureBackupRecoveryPointResourceDeserializer(item);\n });\n}\n\n/** AzureBackup Job Resource Class */\nexport interface AzureBackupJobResource extends ProxyResource {\n /** AzureBackupJobResource properties */\n properties?: AzureBackupJob;\n}\n\nexport function azureBackupJobResourceDeserializer(item: any): AzureBackupJobResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : azureBackupJobDeserializer(item[\"properties\"]),\n };\n}\n\n/** AzureBackup Job Class */\nexport interface AzureBackupJob {\n /** Job Activity Id */\n activityID: string;\n /** Name of the Backup Instance */\n backupInstanceFriendlyName: string;\n /** ARM ID of the Backup Instance */\n readonly backupInstanceId?: string;\n /** ARM ID of the DataSource */\n dataSourceId: string;\n /** Location of the DataSource */\n dataSourceLocation: string;\n /** User Friendly Name of the DataSource */\n dataSourceName: string;\n /** Data Source Set Name of the DataSource */\n dataSourceSetName?: string;\n /** Type of DataSource */\n dataSourceType: string;\n /** Total run time of the job. ISO 8601 format. */\n duration?: string;\n /** EndTime of the job(in UTC) */\n readonly endTime?: Date;\n /** A List, detailing the errors related to the job */\n readonly errorDetails?: UserFacingError[];\n /** Extended Information about the job */\n readonly extendedInfo?: JobExtendedInfo;\n /** Indicated that whether the job is adhoc(true) or scheduled(false) */\n isUserTriggered: boolean;\n /** It indicates the type of Job i.e. Backup:full/log/diff ;Restore:ALR/OLR; Tiering:Backup/Archive ; Management:ConfigureProtection/UnConfigure */\n operation: string;\n /** It indicates the type of Job i.e. Backup/Restore/Tiering/Management */\n operationCategory: string;\n /** ARM ID of the policy */\n readonly policyId?: string;\n /** Name of the policy */\n readonly policyName?: string;\n /** Indicated whether progress is enabled for the job */\n progressEnabled: boolean;\n /** Url which contains job's progress */\n readonly progressUrl?: string;\n /** Priority to be used for rehydration */\n readonly rehydrationPriority?: string;\n /** It indicates the sub type of operation i.e. in case of Restore it can be ALR/OLR */\n readonly restoreType?: string;\n /** Resource Group Name of the Datasource */\n sourceResourceGroup: string;\n /** SubscriptionId corresponding to the DataSource */\n sourceSubscriptionID: string;\n /** StartTime of the job(in UTC) */\n startTime: Date;\n /** Status of the job like InProgress/Completed/Failed/Cancelled/CompletedWithWarnings/Cancelling/Paused */\n status: string;\n /** Subscription Id of the corresponding backup vault */\n subscriptionId: string;\n /** List of supported actions */\n supportedActions: string[];\n /** Name of the vault */\n vaultName: string;\n etag?: string;\n sourceDataStoreName?: string;\n destinationDataStoreName?: string;\n}\n\nexport function azureBackupJobDeserializer(item: any): AzureBackupJob {\n return {\n activityID: item[\"activityID\"],\n backupInstanceFriendlyName: item[\"backupInstanceFriendlyName\"],\n backupInstanceId: item[\"backupInstanceId\"],\n dataSourceId: item[\"dataSourceId\"],\n dataSourceLocation: item[\"dataSourceLocation\"],\n dataSourceName: item[\"dataSourceName\"],\n dataSourceSetName: item[\"dataSourceSetName\"],\n dataSourceType: item[\"dataSourceType\"],\n duration: item[\"duration\"],\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n errorDetails: !item[\"errorDetails\"]\n ? item[\"errorDetails\"]\n : userFacingErrorArrayDeserializer(item[\"errorDetails\"]),\n extendedInfo: !item[\"extendedInfo\"]\n ? item[\"extendedInfo\"]\n : jobExtendedInfoDeserializer(item[\"extendedInfo\"]),\n isUserTriggered: item[\"isUserTriggered\"],\n operation: item[\"operation\"],\n operationCategory: item[\"operationCategory\"],\n policyId: item[\"policyId\"],\n policyName: item[\"policyName\"],\n progressEnabled: item[\"progressEnabled\"],\n progressUrl: item[\"progressUrl\"],\n rehydrationPriority: item[\"rehydrationPriority\"],\n restoreType: item[\"restoreType\"],\n sourceResourceGroup: item[\"sourceResourceGroup\"],\n sourceSubscriptionID: item[\"sourceSubscriptionID\"],\n startTime: new Date(item[\"startTime\"]),\n status: item[\"status\"],\n subscriptionId: item[\"subscriptionId\"],\n supportedActions: item[\"supportedActions\"].map((p: any) => {\n return p;\n }),\n vaultName: item[\"vaultName\"],\n etag: item[\"etag\"],\n sourceDataStoreName: item[\"sourceDataStoreName\"],\n destinationDataStoreName: item[\"destinationDataStoreName\"],\n };\n}\n\n/** Extended Information about the job */\nexport interface JobExtendedInfo {\n /** Job's Additional Details */\n additionalDetails?: Record<string, string>;\n /** State of the Backup Instance */\n readonly backupInstanceState?: string;\n /** Number of bytes transferred */\n readonly dataTransferredInBytes?: number;\n /** Destination where restore is done */\n readonly recoveryDestination?: string;\n /** Details of the Source Recovery Point */\n readonly sourceRecoverPoint?: RestoreJobRecoveryPointDetails;\n /** List of Sub Tasks of the job */\n readonly subTasks?: JobSubTask[];\n /** Details of the Target Recovery Point */\n readonly targetRecoverPoint?: RestoreJobRecoveryPointDetails;\n /** A List, detailing the warnings related to the job */\n readonly warningDetails?: UserFacingWarningDetail[];\n}\n\nexport function jobExtendedInfoDeserializer(item: any): JobExtendedInfo {\n return {\n additionalDetails: item[\"additionalDetails\"],\n backupInstanceState: item[\"backupInstanceState\"],\n dataTransferredInBytes: item[\"dataTransferredInBytes\"],\n recoveryDestination: item[\"recoveryDestination\"],\n sourceRecoverPoint: !item[\"sourceRecoverPoint\"]\n ? item[\"sourceRecoverPoint\"]\n : restoreJobRecoveryPointDetailsDeserializer(item[\"sourceRecoverPoint\"]),\n subTasks: !item[\"subTasks\"] ? item[\"subTasks\"] : jobSubTaskArrayDeserializer(item[\"subTasks\"]),\n targetRecoverPoint: !item[\"targetRecoverPoint\"]\n ? item[\"targetRecoverPoint\"]\n : restoreJobRecoveryPointDetailsDeserializer(item[\"targetRecoverPoint\"]),\n warningDetails: !item[\"warningDetails\"]\n ? item[\"warningDetails\"]\n : userFacingWarningDetailArrayDeserializer(item[\"warningDetails\"]),\n };\n}\n\n/** model interface RestoreJobRecoveryPointDetails */\nexport interface RestoreJobRecoveryPointDetails {\n recoveryPointID?: string;\n recoveryPointTime?: Date;\n}\n\nexport function restoreJobRecoveryPointDetailsDeserializer(\n item: any,\n): RestoreJobRecoveryPointDetails {\n return {\n recoveryPointID: item[\"recoveryPointID\"],\n recoveryPointTime: !item[\"recoveryPointTime\"]\n ? item[\"recoveryPointTime\"]\n : new Date(item[\"recoveryPointTime\"]),\n };\n}\n\nexport function jobSubTaskArrayDeserializer(result: Array<JobSubTask>): any[] {\n return result.map((item) => {\n return jobSubTaskDeserializer(item);\n });\n}\n\n/** Details of Job's Sub Task */\nexport interface JobSubTask {\n /** Additional details of Sub Tasks */\n additionalDetails?: Record<string, string>;\n /** Task Id of the Sub Task */\n taskId: number;\n /** Name of the Sub Task */\n taskName: string;\n /** Progress of the Sub Task */\n readonly taskProgress?: string;\n /** Status of the Sub Task */\n taskStatus: string;\n}\n\nexport function jobSubTaskDeserializer(item: any): JobSubTask {\n return {\n additionalDetails: item[\"additionalDetails\"],\n taskId: item[\"taskId\"],\n taskName: item[\"taskName\"],\n taskProgress: item[\"taskProgress\"],\n taskStatus: item[\"taskStatus\"],\n };\n}\n\nexport function userFacingWarningDetailArrayDeserializer(\n result: Array<UserFacingWarningDetail>,\n): any[] {\n return result.map((item) => {\n return userFacingWarningDetailDeserializer(item);\n });\n}\n\n/** Warning object used by layers that have access to localized content, and propagate that to user */\nexport interface UserFacingWarningDetail {\n /** Name of resource for which warning is raised. */\n resourceName?: string;\n /** Error details for the warning. */\n warning: UserFacingError;\n}\n\nexport function userFacingWarningDetailDeserializer(item: any): UserFacingWarningDetail {\n return {\n resourceName: item[\"resourceName\"],\n warning: userFacingErrorDeserializer(item[\"warning\"]),\n };\n}\n\n/** List of AzureBackup Job resources */\nexport interface _AzureBackupJobResourceList extends DppResourceList {\n /** List of resources. */\n value?: AzureBackupJobResource[];\n}\n\nexport function _azureBackupJobResourceListDeserializer(item: any): _AzureBackupJobResourceList {\n return {\n nextLink: item[\"nextLink\"],\n value: !item[\"value\"] ? item[\"value\"] : azureBackupJobResourceArrayDeserializer(item[\"value\"]),\n };\n}\n\nexport function azureBackupJobResourceArrayDeserializer(\n result: Array<AzureBackupJobResource>,\n): any[] {\n return result.map((item) => {\n return azureBackupJobResourceDeserializer(item);\n });\n}\n\n/** Deleted Backup Instance */\nexport interface DeletedBackupInstanceResource extends ProxyResource {\n /** DeletedBackupInstanceResource properties */\n properties?: DeletedBackupInstance;\n}\n\nexport function deletedBackupInstanceResourceDeserializer(\n item: any,\n): DeletedBackupInstanceResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : deletedBackupInstanceDeserializer(item[\"properties\"]),\n };\n}\n\n/** Deleted Backup Instance */\nexport interface DeletedBackupInstance extends BackupInstance {\n /** Deletion info of Backup Instance */\n readonly deletionInfo?: DeletionInfo;\n}\n\nexport function deletedBackupInstanceDeserializer(item: any): DeletedBackupInstance {\n return {\n friendlyName: item[\"friendlyName\"],\n dataSourceInfo: datasourceDeserializer(item[\"dataSourceInfo\"]),\n dataSourceSetInfo: !item[\"dataSourceSetInfo\"]\n ? item[\"dataSourceSetInfo\"]\n : datasourceSetDeserializer(item[\"dataSourceSetInfo\"]),\n policyInfo: policyInfoDeserializer(item[\"policyInfo\"]),\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n protectionStatus: !item[\"protectionStatus\"]\n ? item[\"protectionStatus\"]\n : protectionStatusDetailsDeserializer(item[\"protectionStatus\"]),\n currentProtectionState: item[\"currentProtectionState\"],\n protectionErrorDetails: !item[\"protectionErrorDetails\"]\n ? item[\"protectionErrorDetails\"]\n : userFacingErrorDeserializer(item[\"protectionErrorDetails\"]),\n provisioningState: item[\"provisioningState\"],\n datasourceAuthCredentials: !item[\"datasourceAuthCredentials\"]\n ? item[\"datasourceAuthCredentials\"]\n : authCredentialsUnionDeserializer(item[\"datasourceAuthCredentials\"]),\n validationType: item[\"validationType\"],\n identityDetails: !item[\"identityDetails\"]\n ? item[\"identityDetails\"]\n : identityDetailsDeserializer(item[\"identityDetails\"]),\n objectType: item[\"objectType\"],\n deletionInfo: !item[\"deletionInfo\"]\n ? item[\"deletionInfo\"]\n : deletionInfoDeserializer(item[\"deletionInfo\"]),\n };\n}\n\n/** Deletion Info */\nexport interface DeletionInfo {\n /** Specifies time of deletion */\n readonly deletionTime?: string;\n /** Specifies billing end date */\n readonly billingEndDate?: string;\n /** Specifies purge time */\n readonly scheduledPurgeTime?: string;\n /** Delete activity ID for troubleshooting purpose */\n readonly deleteActivityID?: string;\n}\n\nexport function deletionInfoDeserializer(item: any): DeletionInfo {\n return {\n deletionTime: item[\"deletionTime\"],\n billingEndDate: item[\"billingEndDate\"],\n scheduledPurgeTime: item[\"scheduledPurgeTime\"],\n deleteActivityID: item[\"deleteActivityID\"],\n };\n}\n\n/** List of DeletedBackupInstance resources */\nexport interface _DeletedBackupInstanceResourceList extends DppResourceList {\n /** List of resources. */\n value?: DeletedBackupInstanceResource[];\n}\n\nexport function _deletedBackupInstanceResourceListDeserializer(\n item: any,\n): _DeletedBackupInstanceResourceList {\n return {\n nextLink: item[\"nextLink\"],\n value: !item[\"value\"]\n ? item[\"value\"]\n : deletedBackupInstanceResourceArrayDeserializer(item[\"value\"]),\n };\n}\n\nexport function deletedBackupInstanceResourceArrayDeserializer(\n result: Array<DeletedBackupInstanceResource>,\n): any[] {\n return result.map((item) => {\n return deletedBackupInstanceResourceDeserializer(item);\n });\n}\n\n/** ResourceGuardProxyBaseResource object, used for response and request bodies for ResourceGuardProxy APIs */\nexport interface ResourceGuardProxyBaseResource extends ProxyResource {\n /** ResourceGuardProxyBaseResource properties */\n properties?: ResourceGuardProxyBase;\n}\n\nexport function resourceGuardProxyBaseResourceSerializer(\n item: ResourceGuardProxyBaseResource,\n): any {\n return {\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : resourceGuardProxyBaseSerializer(item[\"properties\"]),\n };\n}\n\nexport function resourceGuardProxyBaseResourceDeserializer(\n item: any,\n): ResourceGuardProxyBaseResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : resourceGuardProxyBaseDeserializer(item[\"properties\"]),\n };\n}\n\n/** ResourceGuardProxyBase object, used in ResourceGuardProxyBaseResource */\nexport interface ResourceGuardProxyBase {\n resourceGuardResourceId?: string;\n resourceGuardOperationDetails?: ResourceGuardOperationDetail[];\n lastUpdatedTime?: string;\n description?: string;\n}\n\nexport function resourceGuardProxyBaseSerializer(item: ResourceGuardProxyBase): any {\n return {\n resourceGuardResourceId: item[\"resourceGuardResourceId\"],\n resourceGuardOperationDetails: !item[\"resourceGuardOperationDetails\"]\n ? item[\"resourceGuardOperationDetails\"]\n : resourceGuardOperationDetailArraySerializer(item[\"resourceGuardOperationDetails\"]),\n lastUpdatedTime: item[\"lastUpdatedTime\"],\n description: item[\"description\"],\n };\n}\n\nexport function resourceGuardProxyBaseDeserializer(item: any): ResourceGuardProxyBase {\n return {\n resourceGuardResourceId: item[\"resourceGuardResourceId\"],\n resourceGuardOperationDetails: !item[\"resourceGuardOperationDetails\"]\n ? item[\"resourceGuardOperationDetails\"]\n : resourceGuardOperationDetailArrayDeserializer(item[\"resourceGuardOperationDetails\"]),\n lastUpdatedTime: item[\"lastUpdatedTime\"],\n description: item[\"description\"],\n };\n}\n\nexport function resourceGuardOperationDetailArraySerializer(\n result: Array<ResourceGuardOperationDetail>,\n): any[] {\n return result.map((item) => {\n return resourceGuardOperationDetailSerializer(item);\n });\n}\n\nexport function resourceGuardOperationDetailArrayDeserializer(\n result: Array<ResourceGuardOperationDetail>,\n): any[] {\n return result.map((item) => {\n return resourceGuardOperationDetailDeserializer(item);\n });\n}\n\n/** VaultCritical Operation protected by a resource guard */\nexport interface ResourceGuardOperationDetail {\n vaultCriticalOperation?: string;\n defaultResourceRequest?: string;\n}\n\nexport function resourceGuardOperationDetailSerializer(item: ResourceGuardOperationDetail): any {\n return {\n vaultCriticalOperation: item[\"vaultCriticalOperation\"],\n defaultResourceRequest: item[\"defaultResourceRequest\"],\n };\n}\n\nexport function resourceGuardOperationDetailDeserializer(item: any): ResourceGuardOperationDetail {\n return {\n vaultCriticalOperation: item[\"vaultCriticalOperation\"],\n defaultResourceRequest: item[\"defaultResourceRequest\"],\n };\n}\n\n/** List of ResourceGuardProxyBase resources */\nexport interface _ResourceGuardProxyBaseResourceList extends DppResourceList {\n /** List of resources. */\n value?: ResourceGuardProxyBaseResource[];\n}\n\nexport function _resourceGuardProxyBaseResourceListDeserializer(\n item: any,\n): _ResourceGuardProxyBaseResourceList {\n return {\n nextLink: item[\"nextLink\"],\n value: !item[\"value\"]\n ? item[\"value\"]\n : resourceGuardProxyBaseResourceArrayDeserializer(item[\"value\"]),\n };\n}\n\nexport function resourceGuardProxyBaseResourceArraySerializer(\n result: Array<ResourceGuardProxyBaseResource>,\n): any[] {\n return result.map((item) => {\n return resourceGuardProxyBaseResourceSerializer(item);\n });\n}\n\nexport function resourceGuardProxyBaseResourceArrayDeserializer(\n result: Array<ResourceGuardProxyBaseResource>,\n): any[] {\n return result.map((item) => {\n return resourceGuardProxyBaseResourceDeserializer(item);\n });\n}\n\n/** Request body of unlock delete API. */\nexport interface UnlockDeleteRequest {\n /** ResourceGuardOperationRequests on which LAC check will be performed */\n resourceGuardOperationRequests?: string[];\n resourceToBeDeleted?: string;\n}\n\nexport function unlockDeleteRequestSerializer(item: UnlockDeleteRequest): any {\n return {\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n resourceToBeDeleted: item[\"resourceToBeDeleted\"],\n };\n}\n\n/** Response of Unlock Delete API. */\nexport interface UnlockDeleteResponse {\n /** This is the time when unlock delete privileges will get expired. */\n unlockDeleteExpiryTime?: string;\n}\n\nexport function unlockDeleteResponseDeserializer(item: any): UnlockDeleteResponse {\n return {\n unlockDeleteExpiryTime: item[\"unlockDeleteExpiryTime\"],\n };\n}\n\n/** Base class for Backup Feature support */\nexport interface FeatureValidationRequestBase {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: FeatureValidationRequest */\n objectType: string;\n}\n\nexport function featureValidationRequestBaseSerializer(item: FeatureValidationRequestBase): any {\n return { objectType: item[\"objectType\"] };\n}\n\n/** Alias for FeatureValidationRequestBaseUnion */\nexport type FeatureValidationRequestBaseUnion =\n | FeatureValidationRequest\n | FeatureValidationRequestBase;\n\nexport function featureValidationRequestBaseUnionSerializer(\n item: FeatureValidationRequestBaseUnion,\n): any {\n switch (item.objectType) {\n case \"FeatureValidationRequest\":\n return featureValidationRequestSerializer(item as FeatureValidationRequest);\n\n default:\n return featureValidationRequestBaseSerializer(item);\n }\n}\n\n/** Base class for feature object */\nexport interface FeatureValidationRequest extends FeatureValidationRequestBase {\n /** backup support feature type. */\n featureType?: FeatureType;\n /** backup support feature name. */\n featureName?: string;\n /** Type of the specific object - used for deserializing */\n objectType: \"FeatureValidationRequest\";\n}\n\nexport function featureValidationRequestSerializer(item: FeatureValidationRequest): any {\n return {\n objectType: item[\"objectType\"],\n featureType: item[\"featureType\"],\n featureName: item[\"featureName\"],\n };\n}\n\n/** backup support feature type. */\nexport enum KnownFeatureType {\n /** Invalid */\n Invalid = \"Invalid\",\n /** DataSourceType */\n DataSourceType = \"DataSourceType\",\n}\n\n/**\n * backup support feature type. \\\n * {@link KnownFeatureType} can be used interchangeably with FeatureType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Invalid** \\\n * **DataSourceType**\n */\nexport type FeatureType = string;\n\n/** Base class for Backup Feature support */\nexport interface FeatureValidationResponseBase {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: FeatureValidationResponse */\n objectType: string;\n}\n\nexport function featureValidationResponseBaseDeserializer(\n item: any,\n): FeatureValidationResponseBase {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for FeatureValidationResponseBaseUnion */\nexport type FeatureValidationResponseBaseUnion =\n | FeatureValidationResponse\n | FeatureValidationResponseBase;\n\nexport function featureValidationResponseBaseUnionDeserializer(\n item: any,\n): FeatureValidationResponseBaseUnion {\n switch (item.objectType) {\n case \"FeatureValidationResponse\":\n return featureValidationResponseDeserializer(item as FeatureValidationResponse);\n\n default:\n return featureValidationResponseBaseDeserializer(item);\n }\n}\n\n/** Feature Validation Response */\nexport interface FeatureValidationResponse extends FeatureValidationResponseBase {\n /** backup support feature type. */\n featureType?: FeatureType;\n /** Response features */\n features?: SupportedFeature[];\n /** Type of the specific object - used for deserializing */\n objectType: \"FeatureValidationResponse\";\n}\n\nexport function featureValidationResponseDeserializer(item: any): FeatureValidationResponse {\n return {\n objectType: item[\"objectType\"],\n featureType: item[\"featureType\"],\n features: !item[\"features\"]\n ? item[\"features\"]\n : supportedFeatureArrayDeserializer(item[\"features\"]),\n };\n}\n\nexport function supportedFeatureArrayDeserializer(result: Array<SupportedFeature>): any[] {\n return result.map((item) => {\n return supportedFeatureDeserializer(item);\n });\n}\n\n/** Elements class for feature request */\nexport interface SupportedFeature {\n /** support feature type. */\n featureName?: string;\n /** feature support status */\n supportStatus?: FeatureSupportStatus;\n /** support feature type. */\n exposureControlledFeatures?: string[];\n}\n\nexport function supportedFeatureDeserializer(item: any): SupportedFeature {\n return {\n featureName: item[\"featureName\"],\n supportStatus: item[\"supportStatus\"],\n exposureControlledFeatures: !item[\"exposureControlledFeatures\"]\n ? item[\"exposureControlledFeatures\"]\n : item[\"exposureControlledFeatures\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** feature support status */\nexport enum KnownFeatureSupportStatus {\n /** Invalid */\n Invalid = \"Invalid\",\n /** NotSupported */\n NotSupported = \"NotSupported\",\n /** AlphaPreview */\n AlphaPreview = \"AlphaPreview\",\n /** PrivatePreview */\n PrivatePreview = \"PrivatePreview\",\n /** PublicPreview */\n PublicPreview = \"PublicPreview\",\n /** GenerallyAvailable */\n GenerallyAvailable = \"GenerallyAvailable\",\n}\n\n/**\n * feature support status \\\n * {@link KnownFeatureSupportStatus} can be used interchangeably with FeatureSupportStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Invalid** \\\n * **NotSupported** \\\n * **AlphaPreview** \\\n * **PrivatePreview** \\\n * **PublicPreview** \\\n * **GenerallyAvailable**\n */\nexport type FeatureSupportStatus = string;\n\n/**\n * Information about BI whose secondary RecoveryPoints are requested\n * Source region and\n * BI ARM path\n */\nexport interface FetchSecondaryRPsRequestParameters {\n /** Source region in which BackupInstance is located */\n sourceRegion?: string;\n /** ARM Path of BackupInstance */\n sourceBackupInstanceId?: string;\n}\n\nexport function fetchSecondaryRPsRequestParametersSerializer(\n item: FetchSecondaryRPsRequestParameters,\n): any {\n return {\n sourceRegion: item[\"sourceRegion\"],\n sourceBackupInstanceId: item[\"sourceBackupInstanceId\"],\n };\n}\n\n/** Details of CRR Job to be fetched */\nexport interface CrossRegionRestoreJobRequest {\n sourceRegion: string;\n sourceBackupVaultId: string;\n jobId: string;\n}\n\nexport function crossRegionRestoreJobRequestSerializer(item: CrossRegionRestoreJobRequest): any {\n return {\n sourceRegion: item[\"sourceRegion\"],\n sourceBackupVaultId: item[\"sourceBackupVaultId\"],\n jobId: item[\"jobId\"],\n };\n}\n\n/** Details of Backup Vault for which CRR Jobs are to be fetched */\nexport interface CrossRegionRestoreJobsRequest {\n sourceRegion: string;\n sourceBackupVaultId: string;\n}\n\nexport function crossRegionRestoreJobsRequestSerializer(item: CrossRegionRestoreJobsRequest): any {\n return {\n sourceRegion: item[\"sourceRegion\"],\n sourceBackupVaultId: item[\"sourceBackupVaultId\"],\n };\n}\n\n/** The available API versions. */\nexport enum KnownVersions {\n /** The 2025-07-01 API version. */\n V20250701 = \"2025-07-01\",\n}\n"]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/models/models.ts"],
4
+ "sourcesContent": ["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * This file contains only generated model types and their (de)serializers.\n * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input.\n */\n/* eslint-disable @typescript-eslint/naming-convention */\n/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n/** A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results. */\nexport interface _OperationListResult {\n /** The Operation items on this page */\n value: Operation[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _operationListResultDeserializer(item: any): _OperationListResult {\n return {\n value: operationArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function operationArrayDeserializer(result: Array<Operation>): any[] {\n return result.map((item) => {\n return operationDeserializer(item);\n });\n}\n\n/** Details of a REST API operation, returned from the Resource Provider Operations API */\nexport interface Operation {\n /** The name of the operation, as per Resource-Based Access Control (RBAC). Examples: \"Microsoft.Compute/virtualMachines/write\", \"Microsoft.Compute/virtualMachines/capture/action\" */\n readonly name?: string;\n /** Whether the operation applies to data-plane. This is \"true\" for data-plane operations and \"false\" for Azure Resource Manager/control-plane operations. */\n readonly isDataAction?: boolean;\n /** Localized display information for this particular operation. */\n display?: OperationDisplay;\n /** The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is \"user,system\" */\n readonly origin?: Origin;\n /** Extensible enum. Indicates the action type. \"Internal\" refers to actions that are for internal only APIs. */\n readonly actionType?: ActionType;\n}\n\nexport function operationDeserializer(item: any): Operation {\n return {\n name: item[\"name\"],\n isDataAction: item[\"isDataAction\"],\n display: !item[\"display\"] ? item[\"display\"] : operationDisplayDeserializer(item[\"display\"]),\n origin: item[\"origin\"],\n actionType: item[\"actionType\"],\n };\n}\n\n/** Localized display information for an operation. */\nexport interface OperationDisplay {\n /** The localized friendly form of the resource provider name, e.g. \"Microsoft Monitoring Insights\" or \"Microsoft Compute\". */\n readonly provider?: string;\n /** The localized friendly name of the resource type related to this operation. E.g. \"Virtual Machines\" or \"Job Schedule Collections\". */\n readonly resource?: string;\n /** The concise, localized friendly name for the operation; suitable for dropdowns. E.g. \"Create or Update Virtual Machine\", \"Restart Virtual Machine\". */\n readonly operation?: string;\n /** The short, localized friendly description of the operation; suitable for tool tips and detailed views. */\n readonly description?: string;\n}\n\nexport function operationDisplayDeserializer(item: any): OperationDisplay {\n return {\n provider: item[\"provider\"],\n resource: item[\"resource\"],\n operation: item[\"operation\"],\n description: item[\"description\"],\n };\n}\n\n/** The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is \"user,system\" */\nexport enum KnownOrigin {\n /** Indicates the operation is initiated by a user. */\n User = \"user\",\n /** Indicates the operation is initiated by a system. */\n System = \"system\",\n /** Indicates the operation is initiated by a user or system. */\n UserSystem = \"user,system\",\n}\n\n/**\n * The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is \"user,system\" \\\n * {@link KnownOrigin} can be used interchangeably with Origin,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **user**: Indicates the operation is initiated by a user. \\\n * **system**: Indicates the operation is initiated by a system. \\\n * **user,system**: Indicates the operation is initiated by a user or system.\n */\nexport type Origin = string;\n\n/** Extensible enum. Indicates the action type. \"Internal\" refers to actions that are for internal only APIs. */\nexport enum KnownActionType {\n /** Actions are for internal-only APIs. */\n Internal = \"Internal\",\n}\n\n/**\n * Extensible enum. Indicates the action type. \"Internal\" refers to actions that are for internal only APIs. \\\n * {@link KnownActionType} can be used interchangeably with ActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Internal**: Actions are for internal-only APIs.\n */\nexport type ActionType = string;\n\n/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. */\nexport interface ErrorResponse {\n /** The error object. */\n error?: ErrorDetail;\n}\n\nexport function errorResponseDeserializer(item: any): ErrorResponse {\n return {\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n };\n}\n\n/** The error detail. */\nexport interface ErrorDetail {\n /** The error code. */\n readonly code?: string;\n /** The error message. */\n readonly message?: string;\n /** The error target. */\n readonly target?: string;\n /** The error details. */\n readonly details?: ErrorDetail[];\n /** The error additional info. */\n readonly additionalInfo?: ErrorAdditionalInfo[];\n}\n\nexport function errorDetailDeserializer(item: any): ErrorDetail {\n return {\n code: item[\"code\"],\n message: item[\"message\"],\n target: item[\"target\"],\n details: !item[\"details\"] ? item[\"details\"] : errorDetailArrayDeserializer(item[\"details\"]),\n additionalInfo: !item[\"additionalInfo\"]\n ? item[\"additionalInfo\"]\n : errorAdditionalInfoArrayDeserializer(item[\"additionalInfo\"]),\n };\n}\n\nexport function errorDetailArrayDeserializer(result: Array<ErrorDetail>): any[] {\n return result.map((item) => {\n return errorDetailDeserializer(item);\n });\n}\n\nexport function errorAdditionalInfoArrayDeserializer(result: Array<ErrorAdditionalInfo>): any[] {\n return result.map((item) => {\n return errorAdditionalInfoDeserializer(item);\n });\n}\n\n/** The resource management error additional info. */\nexport interface ErrorAdditionalInfo {\n /** The additional info type. */\n readonly type?: string;\n /** The additional info. */\n readonly info?: any;\n}\n\nexport function errorAdditionalInfoDeserializer(item: any): ErrorAdditionalInfo {\n return {\n type: item[\"type\"],\n info: item[\"info\"],\n };\n}\n\n/** BackupInstance Resource */\nexport interface BackupInstanceResource extends ProxyResource {\n /** BackupInstanceResource properties */\n properties?: BackupInstance;\n /** Proxy Resource tags. */\n tags?: Record<string, string>;\n}\n\nexport function backupInstanceResourceSerializer(item: BackupInstanceResource): any {\n return {\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : backupInstanceSerializer(item[\"properties\"]),\n tags: item[\"tags\"],\n };\n}\n\nexport function backupInstanceResourceDeserializer(item: any): BackupInstanceResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : backupInstanceDeserializer(item[\"properties\"]),\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n };\n}\n\n/** Backup Instance */\nexport interface BackupInstance {\n /** Gets or sets the Backup Instance friendly name. */\n friendlyName?: string;\n /** Gets or sets the data source information. */\n dataSourceInfo: Datasource;\n /** Gets or sets the data source set information. */\n dataSourceSetInfo?: DatasourceSet;\n /** Gets or sets the policy information. */\n policyInfo: PolicyInfo;\n /** ResourceGuardOperationRequests on which LAC check will be performed */\n resourceGuardOperationRequests?: string[];\n /** Specifies the protection status of the resource */\n readonly protectionStatus?: ProtectionStatusDetails;\n /** Specifies the current protection state of the resource */\n readonly currentProtectionState?: CurrentProtectionState;\n /** Specifies the protection error of the resource */\n readonly protectionErrorDetails?: UserFacingError;\n /** Specifies the provisioning state of the resource i.e. provisioning/updating/Succeeded/Failed */\n readonly provisioningState?: string;\n /** Credentials to use to authenticate with data source provider. */\n datasourceAuthCredentials?: AuthCredentialsUnion;\n /** Specifies the type of validation. In case of DeepValidation, all validations from /validateForBackup API will run again. */\n validationType?: ValidationType;\n /**\n * Contains information of the Identity Details for the BI.\n * If it is null, default will be considered as System Assigned.\n */\n identityDetails?: IdentityDetails;\n objectType: string;\n}\n\nexport function backupInstanceSerializer(item: BackupInstance): any {\n return {\n friendlyName: item[\"friendlyName\"],\n dataSourceInfo: datasourceSerializer(item[\"dataSourceInfo\"]),\n dataSourceSetInfo: !item[\"dataSourceSetInfo\"]\n ? item[\"dataSourceSetInfo\"]\n : datasourceSetSerializer(item[\"dataSourceSetInfo\"]),\n policyInfo: policyInfoSerializer(item[\"policyInfo\"]),\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n datasourceAuthCredentials: !item[\"datasourceAuthCredentials\"]\n ? item[\"datasourceAuthCredentials\"]\n : authCredentialsUnionSerializer(item[\"datasourceAuthCredentials\"]),\n validationType: item[\"validationType\"],\n identityDetails: !item[\"identityDetails\"]\n ? item[\"identityDetails\"]\n : identityDetailsSerializer(item[\"identityDetails\"]),\n objectType: item[\"objectType\"],\n };\n}\n\nexport function backupInstanceDeserializer(item: any): BackupInstance {\n return {\n friendlyName: item[\"friendlyName\"],\n dataSourceInfo: datasourceDeserializer(item[\"dataSourceInfo\"]),\n dataSourceSetInfo: !item[\"dataSourceSetInfo\"]\n ? item[\"dataSourceSetInfo\"]\n : datasourceSetDeserializer(item[\"dataSourceSetInfo\"]),\n policyInfo: policyInfoDeserializer(item[\"policyInfo\"]),\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n protectionStatus: !item[\"protectionStatus\"]\n ? item[\"protectionStatus\"]\n : protectionStatusDetailsDeserializer(item[\"protectionStatus\"]),\n currentProtectionState: item[\"currentProtectionState\"],\n protectionErrorDetails: !item[\"protectionErrorDetails\"]\n ? item[\"protectionErrorDetails\"]\n : userFacingErrorDeserializer(item[\"protectionErrorDetails\"]),\n provisioningState: item[\"provisioningState\"],\n datasourceAuthCredentials: !item[\"datasourceAuthCredentials\"]\n ? item[\"datasourceAuthCredentials\"]\n : authCredentialsUnionDeserializer(item[\"datasourceAuthCredentials\"]),\n validationType: item[\"validationType\"],\n identityDetails: !item[\"identityDetails\"]\n ? item[\"identityDetails\"]\n : identityDetailsDeserializer(item[\"identityDetails\"]),\n objectType: item[\"objectType\"],\n };\n}\n\n/** Datasource to be backed up */\nexport interface Datasource {\n /** DatasourceType of the resource. */\n datasourceType?: string;\n /** Type of Datasource object, used to initialize the right inherited type */\n objectType?: string;\n /** Full ARM ID of the resource. For azure resources, this is ARM ID. For non azure resources, this will be the ID created by backup service via Fabric/Vault. */\n resourceID: string;\n /** Location of datasource. */\n resourceLocation?: string;\n /** Unique identifier of the resource in the context of parent. */\n resourceName?: string;\n /** Resource Type of Datasource. */\n resourceType?: string;\n /** Uri of the resource. */\n resourceUri?: string;\n /** Properties specific to data source */\n resourceProperties?: BaseResourcePropertiesUnion;\n}\n\nexport function datasourceSerializer(item: Datasource): any {\n return {\n datasourceType: item[\"datasourceType\"],\n objectType: item[\"objectType\"],\n resourceID: item[\"resourceID\"],\n resourceLocation: item[\"resourceLocation\"],\n resourceName: item[\"resourceName\"],\n resourceType: item[\"resourceType\"],\n resourceUri: item[\"resourceUri\"],\n resourceProperties: !item[\"resourceProperties\"]\n ? item[\"resourceProperties\"]\n : baseResourcePropertiesUnionSerializer(item[\"resourceProperties\"]),\n };\n}\n\nexport function datasourceDeserializer(item: any): Datasource {\n return {\n datasourceType: item[\"datasourceType\"],\n objectType: item[\"objectType\"],\n resourceID: item[\"resourceID\"],\n resourceLocation: item[\"resourceLocation\"],\n resourceName: item[\"resourceName\"],\n resourceType: item[\"resourceType\"],\n resourceUri: item[\"resourceUri\"],\n resourceProperties: !item[\"resourceProperties\"]\n ? item[\"resourceProperties\"]\n : baseResourcePropertiesUnionDeserializer(item[\"resourceProperties\"]),\n };\n}\n\n/** Properties which are specific to datasource/datasourceSets */\nexport interface BaseResourceProperties {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: DefaultResourceProperties */\n objectType: ResourcePropertiesObjectType;\n}\n\nexport function baseResourcePropertiesSerializer(item: BaseResourceProperties): any {\n return { objectType: item[\"objectType\"] };\n}\n\nexport function baseResourcePropertiesDeserializer(item: any): BaseResourceProperties {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for BaseResourcePropertiesUnion */\nexport type BaseResourcePropertiesUnion = DefaultResourceProperties | BaseResourceProperties;\n\nexport function baseResourcePropertiesUnionSerializer(item: BaseResourcePropertiesUnion): any {\n switch (item.objectType) {\n case \"DefaultResourceProperties\":\n return defaultResourcePropertiesSerializer(item as DefaultResourceProperties);\n\n default:\n return baseResourcePropertiesSerializer(item);\n }\n}\n\nexport function baseResourcePropertiesUnionDeserializer(item: any): BaseResourcePropertiesUnion {\n switch (item[\"objectType\"]) {\n case \"DefaultResourceProperties\":\n return defaultResourcePropertiesDeserializer(item as DefaultResourceProperties);\n\n default:\n return baseResourcePropertiesDeserializer(item);\n }\n}\n\n/** Type of the specific object - used for deserializing */\nexport enum KnownResourcePropertiesObjectType {\n /** DefaultResourceProperties */\n DefaultResourceProperties = \"DefaultResourceProperties\",\n}\n\n/**\n * Type of the specific object - used for deserializing \\\n * {@link KnownResourcePropertiesObjectType} can be used interchangeably with ResourcePropertiesObjectType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **DefaultResourceProperties**\n */\nexport type ResourcePropertiesObjectType = string;\n\n/** Default source properties */\nexport interface DefaultResourceProperties extends BaseResourceProperties {\n /** Type of the specific object - used for deserializing */\n objectType: \"DefaultResourceProperties\";\n}\n\nexport function defaultResourcePropertiesSerializer(item: DefaultResourceProperties): any {\n return { objectType: item[\"objectType\"] };\n}\n\nexport function defaultResourcePropertiesDeserializer(item: any): DefaultResourceProperties {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** DatasourceSet details of datasource to be backed up */\nexport interface DatasourceSet {\n /** DatasourceType of the resource. */\n datasourceType?: string;\n /** Type of Datasource object, used to initialize the right inherited type */\n objectType?: string;\n /** Full ARM ID of the resource. For azure resources, this is ARM ID. For non azure resources, this will be the ID created by backup service via Fabric/Vault. */\n resourceID: string;\n /** Location of datasource. */\n resourceLocation?: string;\n /** Unique identifier of the resource in the context of parent. */\n resourceName?: string;\n /** Resource Type of Datasource. */\n resourceType?: string;\n /** Uri of the resource. */\n resourceUri?: string;\n /** Properties specific to data source set */\n resourceProperties?: BaseResourcePropertiesUnion;\n}\n\nexport function datasourceSetSerializer(item: DatasourceSet): any {\n return {\n datasourceType: item[\"datasourceType\"],\n objectType: item[\"objectType\"],\n resourceID: item[\"resourceID\"],\n resourceLocation: item[\"resourceLocation\"],\n resourceName: item[\"resourceName\"],\n resourceType: item[\"resourceType\"],\n resourceUri: item[\"resourceUri\"],\n resourceProperties: !item[\"resourceProperties\"]\n ? item[\"resourceProperties\"]\n : baseResourcePropertiesUnionSerializer(item[\"resourceProperties\"]),\n };\n}\n\nexport function datasourceSetDeserializer(item: any): DatasourceSet {\n return {\n datasourceType: item[\"datasourceType\"],\n objectType: item[\"objectType\"],\n resourceID: item[\"resourceID\"],\n resourceLocation: item[\"resourceLocation\"],\n resourceName: item[\"resourceName\"],\n resourceType: item[\"resourceType\"],\n resourceUri: item[\"resourceUri\"],\n resourceProperties: !item[\"resourceProperties\"]\n ? item[\"resourceProperties\"]\n : baseResourcePropertiesUnionDeserializer(item[\"resourceProperties\"]),\n };\n}\n\n/** Policy Info in backupInstance */\nexport interface PolicyInfo {\n policyId: string;\n readonly policyVersion?: string;\n /** Policy parameters for the backup instance */\n policyParameters?: PolicyParameters;\n}\n\nexport function policyInfoSerializer(item: PolicyInfo): any {\n return {\n policyId: item[\"policyId\"],\n policyParameters: !item[\"policyParameters\"]\n ? item[\"policyParameters\"]\n : policyParametersSerializer(item[\"policyParameters\"]),\n };\n}\n\nexport function policyInfoDeserializer(item: any): PolicyInfo {\n return {\n policyId: item[\"policyId\"],\n policyVersion: item[\"policyVersion\"],\n policyParameters: !item[\"policyParameters\"]\n ? item[\"policyParameters\"]\n : policyParametersDeserializer(item[\"policyParameters\"]),\n };\n}\n\n/** Parameters in Policy */\nexport interface PolicyParameters {\n /** Gets or sets the DataStore Parameters */\n dataStoreParametersList?: DataStoreParametersUnion[];\n /** Gets or sets the Backup Data Source Parameters */\n backupDatasourceParametersList?: BackupDatasourceParametersUnion[];\n}\n\nexport function policyParametersSerializer(item: PolicyParameters): any {\n return {\n dataStoreParametersList: !item[\"dataStoreParametersList\"]\n ? item[\"dataStoreParametersList\"]\n : dataStoreParametersUnionArraySerializer(item[\"dataStoreParametersList\"]),\n backupDatasourceParametersList: !item[\"backupDatasourceParametersList\"]\n ? item[\"backupDatasourceParametersList\"]\n : backupDatasourceParametersUnionArraySerializer(item[\"backupDatasourceParametersList\"]),\n };\n}\n\nexport function policyParametersDeserializer(item: any): PolicyParameters {\n return {\n dataStoreParametersList: !item[\"dataStoreParametersList\"]\n ? item[\"dataStoreParametersList\"]\n : dataStoreParametersUnionArrayDeserializer(item[\"dataStoreParametersList\"]),\n backupDatasourceParametersList: !item[\"backupDatasourceParametersList\"]\n ? item[\"backupDatasourceParametersList\"]\n : backupDatasourceParametersUnionArrayDeserializer(item[\"backupDatasourceParametersList\"]),\n };\n}\n\nexport function dataStoreParametersUnionArraySerializer(\n result: Array<DataStoreParametersUnion>,\n): any[] {\n return result.map((item) => {\n return dataStoreParametersUnionSerializer(item);\n });\n}\n\nexport function dataStoreParametersUnionArrayDeserializer(\n result: Array<DataStoreParametersUnion>,\n): any[] {\n return result.map((item) => {\n return dataStoreParametersUnionDeserializer(item);\n });\n}\n\n/** Parameters for DataStore */\nexport interface DataStoreParameters {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: AzureOperationalStoreParameters */\n objectType: string;\n /** type of datastore; Operational/Vault/Archive */\n dataStoreType: DataStoreTypes;\n}\n\nexport function dataStoreParametersSerializer(item: DataStoreParameters): any {\n return { objectType: item[\"objectType\"], dataStoreType: item[\"dataStoreType\"] };\n}\n\nexport function dataStoreParametersDeserializer(item: any): DataStoreParameters {\n return {\n objectType: item[\"objectType\"],\n dataStoreType: item[\"dataStoreType\"],\n };\n}\n\n/** Alias for DataStoreParametersUnion */\nexport type DataStoreParametersUnion = AzureOperationalStoreParameters | DataStoreParameters;\n\nexport function dataStoreParametersUnionSerializer(item: DataStoreParametersUnion): any {\n switch (item.objectType) {\n case \"AzureOperationalStoreParameters\":\n return azureOperationalStoreParametersSerializer(item as AzureOperationalStoreParameters);\n\n default:\n return dataStoreParametersSerializer(item);\n }\n}\n\nexport function dataStoreParametersUnionDeserializer(item: any): DataStoreParametersUnion {\n switch (item[\"objectType\"]) {\n case \"AzureOperationalStoreParameters\":\n return azureOperationalStoreParametersDeserializer(item as AzureOperationalStoreParameters);\n\n default:\n return dataStoreParametersDeserializer(item);\n }\n}\n\n/** type of datastore; Operational/Vault/Archive */\nexport enum KnownDataStoreTypes {\n /** OperationalStore */\n OperationalStore = \"OperationalStore\",\n /** VaultStore */\n VaultStore = \"VaultStore\",\n /** ArchiveStore */\n ArchiveStore = \"ArchiveStore\",\n}\n\n/**\n * type of datastore; Operational/Vault/Archive \\\n * {@link KnownDataStoreTypes} can be used interchangeably with DataStoreTypes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **OperationalStore** \\\n * **VaultStore** \\\n * **ArchiveStore**\n */\nexport type DataStoreTypes = string;\n\n/** Parameters for Operational-Tier DataStore */\nexport interface AzureOperationalStoreParameters extends DataStoreParameters {\n /** Gets or sets the Snapshot Resource Group Uri. */\n resourceGroupId?: string;\n /** Type of the specific object - used for deserializing */\n objectType: \"AzureOperationalStoreParameters\";\n}\n\nexport function azureOperationalStoreParametersSerializer(\n item: AzureOperationalStoreParameters,\n): any {\n return {\n objectType: item[\"objectType\"],\n dataStoreType: item[\"dataStoreType\"],\n resourceGroupId: item[\"resourceGroupId\"],\n };\n}\n\nexport function azureOperationalStoreParametersDeserializer(\n item: any,\n): AzureOperationalStoreParameters {\n return {\n objectType: item[\"objectType\"],\n dataStoreType: item[\"dataStoreType\"],\n resourceGroupId: item[\"resourceGroupId\"],\n };\n}\n\nexport function backupDatasourceParametersUnionArraySerializer(\n result: Array<BackupDatasourceParametersUnion>,\n): any[] {\n return result.map((item) => {\n return backupDatasourceParametersUnionSerializer(item);\n });\n}\n\nexport function backupDatasourceParametersUnionArrayDeserializer(\n result: Array<BackupDatasourceParametersUnion>,\n): any[] {\n return result.map((item) => {\n return backupDatasourceParametersUnionDeserializer(item);\n });\n}\n\n/** Parameters for Backup Datasource */\nexport interface BackupDatasourceParameters {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: KubernetesClusterBackupDatasourceParameters, BlobBackupDatasourceParameters, BlobBackupDatasourceParametersForAutoProtection, AdlsBlobBackupDatasourceParameters, AdlsBlobBackupDatasourceParametersForAutoProtection */\n objectType: string;\n}\n\nexport function backupDatasourceParametersSerializer(item: BackupDatasourceParameters): any {\n return { objectType: item[\"objectType\"] };\n}\n\nexport function backupDatasourceParametersDeserializer(item: any): BackupDatasourceParameters {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for BackupDatasourceParametersUnion */\nexport type BackupDatasourceParametersUnion =\n | KubernetesClusterBackupDatasourceParameters\n | BlobBackupDatasourceParametersUnion\n | BlobBackupDatasourceParametersForAutoProtection\n | AdlsBlobBackupDatasourceParametersForAutoProtection\n | BackupDatasourceParameters;\n\nexport function backupDatasourceParametersUnionSerializer(\n item: BackupDatasourceParametersUnion,\n): any {\n switch (item.objectType) {\n case \"KubernetesClusterBackupDatasourceParameters\":\n return kubernetesClusterBackupDatasourceParametersSerializer(\n item as KubernetesClusterBackupDatasourceParameters,\n );\n\n case \"BlobBackupDatasourceParameters\":\n case \"AdlsBlobBackupDatasourceParameters\":\n return blobBackupDatasourceParametersUnionSerializer(\n item as BlobBackupDatasourceParametersUnion,\n );\n\n case \"BlobBackupDatasourceParametersForAutoProtection\":\n return blobBackupDatasourceParametersForAutoProtectionSerializer(\n item as BlobBackupDatasourceParametersForAutoProtection,\n );\n\n case \"AdlsBlobBackupDatasourceParametersForAutoProtection\":\n return adlsBlobBackupDatasourceParametersForAutoProtectionSerializer(\n item as AdlsBlobBackupDatasourceParametersForAutoProtection,\n );\n\n default:\n return backupDatasourceParametersSerializer(item);\n }\n}\n\nexport function backupDatasourceParametersUnionDeserializer(\n item: any,\n): BackupDatasourceParametersUnion {\n switch (item[\"objectType\"]) {\n case \"KubernetesClusterBackupDatasourceParameters\":\n return kubernetesClusterBackupDatasourceParametersDeserializer(\n item as KubernetesClusterBackupDatasourceParameters,\n );\n\n case \"BlobBackupDatasourceParameters\":\n case \"AdlsBlobBackupDatasourceParameters\":\n return blobBackupDatasourceParametersUnionDeserializer(\n item as BlobBackupDatasourceParametersUnion,\n );\n\n case \"BlobBackupDatasourceParametersForAutoProtection\":\n return blobBackupDatasourceParametersForAutoProtectionDeserializer(\n item as BlobBackupDatasourceParametersForAutoProtection,\n );\n\n case \"AdlsBlobBackupDatasourceParametersForAutoProtection\":\n return adlsBlobBackupDatasourceParametersForAutoProtectionDeserializer(\n item as AdlsBlobBackupDatasourceParametersForAutoProtection,\n );\n\n default:\n return backupDatasourceParametersDeserializer(item);\n }\n}\n\n/** Parameters for Kubernetes Cluster Backup Datasource */\nexport interface KubernetesClusterBackupDatasourceParameters extends BackupDatasourceParameters {\n /** Gets or sets the volume snapshot property. This property if enabled will take volume snapshots during backup. */\n snapshotVolumes: boolean;\n /** Gets or sets the include volume types property. This property sets the volume types to be included during backup. */\n includedVolumeTypes?: AKSVolumeTypes[];\n /** Gets or sets the include cluster resources property. This property if enabled will include cluster scope resources during backup. */\n includeClusterScopeResources: boolean;\n /** Gets or sets the include namespaces property. This property sets the namespaces to be included during backup. */\n includedNamespaces?: string[];\n /** Gets or sets the exclude namespaces property. This property sets the namespaces to be excluded during backup. */\n excludedNamespaces?: string[];\n /** Gets or sets the include resource types property. This property sets the resource types to be included during backup. */\n includedResourceTypes?: string[];\n /** Gets or sets the exclude resource types property. This property sets the resource types to be excluded during backup. */\n excludedResourceTypes?: string[];\n /** Gets or sets the LabelSelectors property. This property sets the resource with such label selectors to be included during backup. */\n labelSelectors?: string[];\n /** Gets or sets the backup hook references. This property sets the hook reference to be executed during backup. */\n backupHookReferences?: NamespacedNameResource[];\n /** Type of the specific object - used for deserializing */\n objectType: \"KubernetesClusterBackupDatasourceParameters\";\n}\n\nexport function kubernetesClusterBackupDatasourceParametersSerializer(\n item: KubernetesClusterBackupDatasourceParameters,\n): any {\n return {\n objectType: item[\"objectType\"],\n snapshotVolumes: item[\"snapshotVolumes\"],\n includedVolumeTypes: !item[\"includedVolumeTypes\"]\n ? item[\"includedVolumeTypes\"]\n : item[\"includedVolumeTypes\"].map((p: any) => {\n return p;\n }),\n includeClusterScopeResources: item[\"includeClusterScopeResources\"],\n includedNamespaces: !item[\"includedNamespaces\"]\n ? item[\"includedNamespaces\"]\n : item[\"includedNamespaces\"].map((p: any) => {\n return p;\n }),\n excludedNamespaces: !item[\"excludedNamespaces\"]\n ? item[\"excludedNamespaces\"]\n : item[\"excludedNamespaces\"].map((p: any) => {\n return p;\n }),\n includedResourceTypes: !item[\"includedResourceTypes\"]\n ? item[\"includedResourceTypes\"]\n : item[\"includedResourceTypes\"].map((p: any) => {\n return p;\n }),\n excludedResourceTypes: !item[\"excludedResourceTypes\"]\n ? item[\"excludedResourceTypes\"]\n : item[\"excludedResourceTypes\"].map((p: any) => {\n return p;\n }),\n labelSelectors: !item[\"labelSelectors\"]\n ? item[\"labelSelectors\"]\n : item[\"labelSelectors\"].map((p: any) => {\n return p;\n }),\n backupHookReferences: !item[\"backupHookReferences\"]\n ? item[\"backupHookReferences\"]\n : namespacedNameResourceArraySerializer(item[\"backupHookReferences\"]),\n };\n}\n\nexport function kubernetesClusterBackupDatasourceParametersDeserializer(\n item: any,\n): KubernetesClusterBackupDatasourceParameters {\n return {\n objectType: item[\"objectType\"],\n snapshotVolumes: item[\"snapshotVolumes\"],\n includedVolumeTypes: !item[\"includedVolumeTypes\"]\n ? item[\"includedVolumeTypes\"]\n : item[\"includedVolumeTypes\"].map((p: any) => {\n return p;\n }),\n includeClusterScopeResources: item[\"includeClusterScopeResources\"],\n includedNamespaces: !item[\"includedNamespaces\"]\n ? item[\"includedNamespaces\"]\n : item[\"includedNamespaces\"].map((p: any) => {\n return p;\n }),\n excludedNamespaces: !item[\"excludedNamespaces\"]\n ? item[\"excludedNamespaces\"]\n : item[\"excludedNamespaces\"].map((p: any) => {\n return p;\n }),\n includedResourceTypes: !item[\"includedResourceTypes\"]\n ? item[\"includedResourceTypes\"]\n : item[\"includedResourceTypes\"].map((p: any) => {\n return p;\n }),\n excludedResourceTypes: !item[\"excludedResourceTypes\"]\n ? item[\"excludedResourceTypes\"]\n : item[\"excludedResourceTypes\"].map((p: any) => {\n return p;\n }),\n labelSelectors: !item[\"labelSelectors\"]\n ? item[\"labelSelectors\"]\n : item[\"labelSelectors\"].map((p: any) => {\n return p;\n }),\n backupHookReferences: !item[\"backupHookReferences\"]\n ? item[\"backupHookReferences\"]\n : namespacedNameResourceArrayDeserializer(item[\"backupHookReferences\"]),\n };\n}\n\n/** Known values of {@link AKSVolumeTypes} that the service accepts. */\nexport enum KnownAKSVolumeTypes {\n /** AzureDisk */\n AzureDisk = \"AzureDisk\",\n /** AzureFileShareSMB */\n AzureFileShareSMB = \"AzureFileShareSMB\",\n}\n\n/** Type of AKSVolumeTypes */\nexport type AKSVolumeTypes = string;\n\nexport function namespacedNameResourceArraySerializer(\n result: Array<NamespacedNameResource>,\n): any[] {\n return result.map((item) => {\n return namespacedNameResourceSerializer(item);\n });\n}\n\nexport function namespacedNameResourceArrayDeserializer(\n result: Array<NamespacedNameResource>,\n): any[] {\n return result.map((item) => {\n return namespacedNameResourceDeserializer(item);\n });\n}\n\n/** Class to refer resources which contains namespace and name */\nexport interface NamespacedNameResource {\n /** Name of the resource */\n name?: string;\n /** Namespace in which the resource exists */\n namespace?: string;\n}\n\nexport function namespacedNameResourceSerializer(item: NamespacedNameResource): any {\n return { name: item[\"name\"], namespace: item[\"namespace\"] };\n}\n\nexport function namespacedNameResourceDeserializer(item: any): NamespacedNameResource {\n return {\n name: item[\"name\"],\n namespace: item[\"namespace\"],\n };\n}\n\n/** Parameters to be used during configuration of backup of blobs */\nexport interface BlobBackupDatasourceParameters extends BackupDatasourceParameters {\n /** List of containers to be backed up during configuration of backup of blobs */\n containersList: string[];\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: AdlsBlobBackupDatasourceParameters */\n objectType: \"BlobBackupDatasourceParameters\" | \"AdlsBlobBackupDatasourceParameters\";\n}\n\nexport function blobBackupDatasourceParametersSerializer(\n item: BlobBackupDatasourceParameters,\n): any {\n return {\n objectType: item[\"objectType\"],\n containersList: item[\"containersList\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function blobBackupDatasourceParametersDeserializer(\n item: any,\n): BlobBackupDatasourceParameters {\n return {\n objectType: item[\"objectType\"],\n containersList: item[\"containersList\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Alias for BlobBackupDatasourceParametersUnion */\nexport type BlobBackupDatasourceParametersUnion =\n | AdlsBlobBackupDatasourceParameters\n | BlobBackupDatasourceParameters;\n\nexport function blobBackupDatasourceParametersUnionSerializer(\n item: BlobBackupDatasourceParametersUnion,\n): any {\n switch (item.objectType) {\n case \"AdlsBlobBackupDatasourceParameters\":\n return adlsBlobBackupDatasourceParametersSerializer(\n item as AdlsBlobBackupDatasourceParameters,\n );\n\n default:\n return blobBackupDatasourceParametersSerializer(item);\n }\n}\n\nexport function blobBackupDatasourceParametersUnionDeserializer(\n item: any,\n): BlobBackupDatasourceParametersUnion {\n switch (item[\"objectType\"]) {\n case \"AdlsBlobBackupDatasourceParameters\":\n return adlsBlobBackupDatasourceParametersDeserializer(\n item as AdlsBlobBackupDatasourceParameters,\n );\n\n default:\n return blobBackupDatasourceParametersDeserializer(item);\n }\n}\n\n/** Parameters to be used during configuration of backup of azure data lake storage account blobs */\nexport interface AdlsBlobBackupDatasourceParameters extends BlobBackupDatasourceParameters {\n /** Type of the specific object - used for deserializing */\n objectType: \"AdlsBlobBackupDatasourceParameters\";\n}\n\nexport function adlsBlobBackupDatasourceParametersSerializer(\n item: AdlsBlobBackupDatasourceParameters,\n): any {\n return {\n containersList: item[\"containersList\"].map((p: any) => {\n return p;\n }),\n objectType: item[\"objectType\"],\n };\n}\n\nexport function adlsBlobBackupDatasourceParametersDeserializer(\n item: any,\n): AdlsBlobBackupDatasourceParameters {\n return {\n containersList: item[\"containersList\"].map((p: any) => {\n return p;\n }),\n objectType: item[\"objectType\"],\n };\n}\n\n/** Paramters to be used during configuration of backup of blobs using AutoProtection settings */\nexport interface BlobBackupDatasourceParametersForAutoProtection extends BackupDatasourceParameters {\n /** AutoProtection settings */\n autoProtectionSettings: BlobBackupRuleBasedAutoProtectionSettings;\n /** Type of the specific object - used for deserializing */\n objectType: \"BlobBackupDatasourceParametersForAutoProtection\";\n}\n\nexport function blobBackupDatasourceParametersForAutoProtectionSerializer(\n item: BlobBackupDatasourceParametersForAutoProtection,\n): any {\n return {\n objectType: item[\"objectType\"],\n autoProtectionSettings: blobBackupRuleBasedAutoProtectionSettingsSerializer(\n item[\"autoProtectionSettings\"],\n ),\n };\n}\n\nexport function blobBackupDatasourceParametersForAutoProtectionDeserializer(\n item: any,\n): BlobBackupDatasourceParametersForAutoProtection {\n return {\n objectType: item[\"objectType\"],\n autoProtectionSettings: blobBackupRuleBasedAutoProtectionSettingsDeserializer(\n item[\"autoProtectionSettings\"],\n ),\n };\n}\n\n/** Parameters to be used for Blob Backup Rule Based Auto Protection settings. */\nexport interface BlobBackupRuleBasedAutoProtectionSettings extends BlobBackupAutoProtectionSettings {\n objectType: \"BlobBackupRuleBasedAutoProtectionSettings\";\n /**\n * Rules are evaluated in the order provided. Inclusion adds candidates; exclusion removes candidates.\n * If no rules are present, all containers are considered eligible when enabled = true.\n */\n rules?: BlobBackupAutoProtectionRule[];\n}\n\nexport function blobBackupRuleBasedAutoProtectionSettingsSerializer(\n item: BlobBackupRuleBasedAutoProtectionSettings,\n): any {\n return {\n objectType: item[\"objectType\"],\n enabled: item[\"enabled\"],\n rules: !item[\"rules\"]\n ? item[\"rules\"]\n : blobBackupAutoProtectionRuleArraySerializer(item[\"rules\"]),\n };\n}\n\nexport function blobBackupRuleBasedAutoProtectionSettingsDeserializer(\n item: any,\n): BlobBackupRuleBasedAutoProtectionSettings {\n return {\n objectType: item[\"objectType\"],\n enabled: item[\"enabled\"],\n rules: !item[\"rules\"]\n ? item[\"rules\"]\n : blobBackupAutoProtectionRuleArrayDeserializer(item[\"rules\"]),\n };\n}\n\nexport function blobBackupAutoProtectionRuleArraySerializer(\n result: Array<BlobBackupAutoProtectionRule>,\n): any[] {\n return result.map((item) => {\n return blobBackupAutoProtectionRuleSerializer(item);\n });\n}\n\nexport function blobBackupAutoProtectionRuleArrayDeserializer(\n result: Array<BlobBackupAutoProtectionRule>,\n): any[] {\n return result.map((item) => {\n return blobBackupAutoProtectionRuleDeserializer(item);\n });\n}\n\n/** Indicates a Blob Backup Auto Protection Rule. */\nexport interface BlobBackupAutoProtectionRule {\n /** Type of the specific object - used for deserializing */\n objectType: string;\n /** Exclude removes candidates (after inclusion) */\n mode: BlobBackupRuleMode;\n /** Pattern type: Prefix, only pattern type supported for now. */\n type: BlobBackupPatternType;\n /** The string pattern to evaluate against container names. For now this accepts literal strings only (no wildcards or regex). */\n pattern: string;\n}\n\nexport function blobBackupAutoProtectionRuleSerializer(item: BlobBackupAutoProtectionRule): any {\n return {\n objectType: item[\"objectType\"],\n mode: item[\"mode\"],\n type: item[\"type\"],\n pattern: item[\"pattern\"],\n };\n}\n\nexport function blobBackupAutoProtectionRuleDeserializer(item: any): BlobBackupAutoProtectionRule {\n return {\n objectType: item[\"objectType\"],\n mode: item[\"mode\"],\n type: item[\"type\"],\n pattern: item[\"pattern\"],\n };\n}\n\n/** Rule mode (Only Exclude supported for now). */\nexport enum KnownBlobBackupRuleMode {\n /** Exclude */\n Exclude = \"Exclude\",\n}\n\n/**\n * Rule mode (Only Exclude supported for now). \\\n * {@link KnownBlobBackupRuleMode} can be used interchangeably with BlobBackupRuleMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Exclude**\n */\nexport type BlobBackupRuleMode = string;\n\n/** Pattern type. Only Prefix supported for now. */\nexport enum KnownBlobBackupPatternType {\n /** Prefix */\n Prefix = \"Prefix\",\n}\n\n/**\n * Pattern type. Only Prefix supported for now. \\\n * {@link KnownBlobBackupPatternType} can be used interchangeably with BlobBackupPatternType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Prefix**\n */\nexport type BlobBackupPatternType = string;\n\n/** Parameters to be used during configuration of backup of azure data lake storage account blobs using AutoProtection settings */\nexport interface AdlsBlobBackupDatasourceParametersForAutoProtection extends BackupDatasourceParameters {\n /** AutoProtection settings */\n autoProtectionSettings: BlobBackupRuleBasedAutoProtectionSettings;\n /** Type of the specific object - used for deserializing */\n objectType: \"AdlsBlobBackupDatasourceParametersForAutoProtection\";\n}\n\nexport function adlsBlobBackupDatasourceParametersForAutoProtectionSerializer(\n item: AdlsBlobBackupDatasourceParametersForAutoProtection,\n): any {\n return {\n objectType: item[\"objectType\"],\n autoProtectionSettings: blobBackupRuleBasedAutoProtectionSettingsSerializer(\n item[\"autoProtectionSettings\"],\n ),\n };\n}\n\nexport function adlsBlobBackupDatasourceParametersForAutoProtectionDeserializer(\n item: any,\n): AdlsBlobBackupDatasourceParametersForAutoProtection {\n return {\n objectType: item[\"objectType\"],\n autoProtectionSettings: blobBackupRuleBasedAutoProtectionSettingsDeserializer(\n item[\"autoProtectionSettings\"],\n ),\n };\n}\n\n/** Protection status details */\nexport interface ProtectionStatusDetails {\n /** Specifies the protection status error of the resource */\n errorDetails?: UserFacingError;\n /** Specifies the protection status of the resource */\n status?: Status;\n}\n\nexport function protectionStatusDetailsDeserializer(item: any): ProtectionStatusDetails {\n return {\n errorDetails: !item[\"errorDetails\"]\n ? item[\"errorDetails\"]\n : userFacingErrorDeserializer(item[\"errorDetails\"]),\n status: item[\"status\"],\n };\n}\n\n/** Error object used by layers that have access to localized content, and propagate that to user */\nexport interface UserFacingError {\n /** Unique code for this error */\n code?: string;\n /** Additional related Errors */\n details?: UserFacingError[];\n /** Inner Error */\n innerError?: InnerError;\n /** Whether the operation will be retryable or not */\n isRetryable?: boolean;\n /** Whether the operation is due to a user error or service error */\n isUserError?: boolean;\n /** Any key value pairs that can be injected inside error object */\n properties?: Record<string, string>;\n message?: string;\n /** RecommendedAction \uFFFD localized. */\n recommendedAction?: string[];\n /** Target of the error. */\n target?: string;\n}\n\nexport function userFacingErrorDeserializer(item: any): UserFacingError {\n return {\n code: item[\"code\"],\n details: !item[\"details\"] ? item[\"details\"] : userFacingErrorArrayDeserializer(item[\"details\"]),\n innerError: !item[\"innerError\"]\n ? item[\"innerError\"]\n : innerErrorDeserializer(item[\"innerError\"]),\n isRetryable: item[\"isRetryable\"],\n isUserError: item[\"isUserError\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : Object.fromEntries(\n Object.entries(item[\"properties\"]).map(([k, p]: [string, any]) => [k, p]),\n ),\n message: item[\"message\"],\n recommendedAction: !item[\"recommendedAction\"]\n ? item[\"recommendedAction\"]\n : item[\"recommendedAction\"].map((p: any) => {\n return p;\n }),\n target: item[\"target\"],\n };\n}\n\nexport function userFacingErrorArrayDeserializer(result: Array<UserFacingError>): any[] {\n return result.map((item) => {\n return userFacingErrorDeserializer(item);\n });\n}\n\n/** Inner Error */\nexport interface InnerError {\n /** Any Key value pairs that can be provided to the client for additional verbose information. */\n additionalInfo?: Record<string, string>;\n /** Unique code for this error */\n code?: string;\n /** Child Inner Error, to allow Nesting. */\n embeddedInnerError?: InnerError;\n}\n\nexport function innerErrorDeserializer(item: any): InnerError {\n return {\n additionalInfo: !item[\"additionalInfo\"]\n ? item[\"additionalInfo\"]\n : Object.fromEntries(\n Object.entries(item[\"additionalInfo\"]).map(([k, p]: [string, any]) => [k, p]),\n ),\n code: item[\"code\"],\n embeddedInnerError: !item[\"embeddedInnerError\"]\n ? item[\"embeddedInnerError\"]\n : innerErrorDeserializer(item[\"embeddedInnerError\"]),\n };\n}\n\n/** Specifies the protection status of the resource */\nexport enum KnownStatus {\n /** ConfiguringProtection */\n ConfiguringProtection = \"ConfiguringProtection\",\n /** ConfiguringProtectionFailed */\n ConfiguringProtectionFailed = \"ConfiguringProtectionFailed\",\n /** ProtectionConfigured */\n ProtectionConfigured = \"ProtectionConfigured\",\n /** ProtectionStopped */\n ProtectionStopped = \"ProtectionStopped\",\n /** SoftDeleted */\n SoftDeleted = \"SoftDeleted\",\n /** SoftDeleting */\n SoftDeleting = \"SoftDeleting\",\n}\n\n/**\n * Specifies the protection status of the resource \\\n * {@link KnownStatus} can be used interchangeably with Status,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ConfiguringProtection** \\\n * **ConfiguringProtectionFailed** \\\n * **ProtectionConfigured** \\\n * **ProtectionStopped** \\\n * **SoftDeleted** \\\n * **SoftDeleting**\n */\nexport type Status = string;\n\n/** Specifies the current protection state of the resource */\nexport enum KnownCurrentProtectionState {\n /** Invalid */\n Invalid = \"Invalid\",\n /** NotProtected */\n NotProtected = \"NotProtected\",\n /** ConfiguringProtection */\n ConfiguringProtection = \"ConfiguringProtection\",\n /** ProtectionConfigured */\n ProtectionConfigured = \"ProtectionConfigured\",\n /** BackupSchedulesSuspended */\n BackupSchedulesSuspended = \"BackupSchedulesSuspended\",\n /** RetentionSchedulesSuspended */\n RetentionSchedulesSuspended = \"RetentionSchedulesSuspended\",\n /** ProtectionStopped */\n ProtectionStopped = \"ProtectionStopped\",\n /** ProtectionError */\n ProtectionError = \"ProtectionError\",\n /** ConfiguringProtectionFailed */\n ConfiguringProtectionFailed = \"ConfiguringProtectionFailed\",\n /** SoftDeleting */\n SoftDeleting = \"SoftDeleting\",\n /** SoftDeleted */\n SoftDeleted = \"SoftDeleted\",\n /** UpdatingProtection */\n UpdatingProtection = \"UpdatingProtection\",\n}\n\n/**\n * Specifies the current protection state of the resource \\\n * {@link KnownCurrentProtectionState} can be used interchangeably with CurrentProtectionState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Invalid** \\\n * **NotProtected** \\\n * **ConfiguringProtection** \\\n * **ProtectionConfigured** \\\n * **BackupSchedulesSuspended** \\\n * **RetentionSchedulesSuspended** \\\n * **ProtectionStopped** \\\n * **ProtectionError** \\\n * **ConfiguringProtectionFailed** \\\n * **SoftDeleting** \\\n * **SoftDeleted** \\\n * **UpdatingProtection**\n */\nexport type CurrentProtectionState = string;\n\n/** Base class for different types of authentication credentials. */\nexport interface AuthCredentials {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: SecretStoreBasedAuthCredentials */\n objectType: string;\n}\n\nexport function authCredentialsSerializer(item: AuthCredentials): any {\n return { objectType: item[\"objectType\"] };\n}\n\nexport function authCredentialsDeserializer(item: any): AuthCredentials {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for AuthCredentialsUnion */\nexport type AuthCredentialsUnion = SecretStoreBasedAuthCredentials | AuthCredentials;\n\nexport function authCredentialsUnionSerializer(item: AuthCredentialsUnion): any {\n switch (item.objectType) {\n case \"SecretStoreBasedAuthCredentials\":\n return secretStoreBasedAuthCredentialsSerializer(item as SecretStoreBasedAuthCredentials);\n\n default:\n return authCredentialsSerializer(item);\n }\n}\n\nexport function authCredentialsUnionDeserializer(item: any): AuthCredentialsUnion {\n switch (item[\"objectType\"]) {\n case \"SecretStoreBasedAuthCredentials\":\n return secretStoreBasedAuthCredentialsDeserializer(item as SecretStoreBasedAuthCredentials);\n\n default:\n return authCredentialsDeserializer(item);\n }\n}\n\n/** Secret store based authentication credentials. */\nexport interface SecretStoreBasedAuthCredentials extends AuthCredentials {\n /** Secret store resource */\n secretStoreResource?: SecretStoreResource;\n /** Type of the specific object - used for deserializing */\n objectType: \"SecretStoreBasedAuthCredentials\";\n}\n\nexport function secretStoreBasedAuthCredentialsSerializer(\n item: SecretStoreBasedAuthCredentials,\n): any {\n return {\n objectType: item[\"objectType\"],\n secretStoreResource: !item[\"secretStoreResource\"]\n ? item[\"secretStoreResource\"]\n : secretStoreResourceSerializer(item[\"secretStoreResource\"]),\n };\n}\n\nexport function secretStoreBasedAuthCredentialsDeserializer(\n item: any,\n): SecretStoreBasedAuthCredentials {\n return {\n objectType: item[\"objectType\"],\n secretStoreResource: !item[\"secretStoreResource\"]\n ? item[\"secretStoreResource\"]\n : secretStoreResourceDeserializer(item[\"secretStoreResource\"]),\n };\n}\n\n/** Class representing a secret store resource. */\nexport interface SecretStoreResource {\n /** Uri to get to the resource */\n uri?: string;\n /** Gets or sets the type of secret store */\n secretStoreType: SecretStoreType;\n /** Gets or sets value stored in secret store resource */\n value?: string;\n}\n\nexport function secretStoreResourceSerializer(item: SecretStoreResource): any {\n return { uri: item[\"uri\"], secretStoreType: item[\"secretStoreType\"], value: item[\"value\"] };\n}\n\nexport function secretStoreResourceDeserializer(item: any): SecretStoreResource {\n return {\n uri: item[\"uri\"],\n secretStoreType: item[\"secretStoreType\"],\n value: item[\"value\"],\n };\n}\n\n/** Gets or sets the type of secret store */\nexport enum KnownSecretStoreType {\n /** Invalid */\n Invalid = \"Invalid\",\n /** AzureKeyVault */\n AzureKeyVault = \"AzureKeyVault\",\n}\n\n/**\n * Gets or sets the type of secret store \\\n * {@link KnownSecretStoreType} can be used interchangeably with SecretStoreType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Invalid** \\\n * **AzureKeyVault**\n */\nexport type SecretStoreType = string;\n\n/** Specifies the type of validation. In case of DeepValidation, all validations from /validateForBackup API will run again. */\nexport enum KnownValidationType {\n /** ShallowValidation */\n ShallowValidation = \"ShallowValidation\",\n /** DeepValidation */\n DeepValidation = \"DeepValidation\",\n}\n\n/**\n * Specifies the type of validation. In case of DeepValidation, all validations from /validateForBackup API will run again. \\\n * {@link KnownValidationType} can be used interchangeably with ValidationType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ShallowValidation** \\\n * **DeepValidation**\n */\nexport type ValidationType = string;\n\n/** model interface IdentityDetails */\nexport interface IdentityDetails {\n /** Specifies if the BI is protected by System Identity. */\n useSystemAssignedIdentity?: boolean;\n /** ARM URL for User Assigned Identity. */\n userAssignedIdentityArmUrl?: string;\n}\n\nexport function identityDetailsSerializer(item: IdentityDetails): any {\n return {\n useSystemAssignedIdentity: item[\"useSystemAssignedIdentity\"],\n userAssignedIdentityArmUrl: item[\"userAssignedIdentityArmUrl\"],\n };\n}\n\nexport function identityDetailsDeserializer(item: any): IdentityDetails {\n return {\n useSystemAssignedIdentity: item[\"useSystemAssignedIdentity\"],\n userAssignedIdentityArmUrl: item[\"userAssignedIdentityArmUrl\"],\n };\n}\n\n/** The settings for Blob Backup Auto Protection. */\nexport interface BlobBackupAutoProtectionSettings {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: BlobBackupRuleBasedAutoProtectionSettings */\n objectType: string;\n /** Flag to enable whether auto protection. */\n enabled: boolean;\n}\n\nexport function blobBackupAutoProtectionSettingsSerializer(\n item: BlobBackupAutoProtectionSettings,\n): any {\n return { objectType: item[\"objectType\"], enabled: item[\"enabled\"] };\n}\n\nexport function blobBackupAutoProtectionSettingsDeserializer(\n item: any,\n): BlobBackupAutoProtectionSettings {\n return {\n objectType: item[\"objectType\"],\n enabled: item[\"enabled\"],\n };\n}\n\n/** Alias for BlobBackupAutoProtectionSettingsUnion */\nexport type BlobBackupAutoProtectionSettingsUnion =\n | BlobBackupRuleBasedAutoProtectionSettings\n | BlobBackupAutoProtectionSettings;\n\nexport function blobBackupAutoProtectionSettingsUnionSerializer(\n item: BlobBackupAutoProtectionSettingsUnion,\n): any {\n switch (item.objectType) {\n case \"BlobBackupRuleBasedAutoProtectionSettings\":\n return blobBackupRuleBasedAutoProtectionSettingsSerializer(\n item as BlobBackupRuleBasedAutoProtectionSettings,\n );\n\n default:\n return blobBackupAutoProtectionSettingsSerializer(item);\n }\n}\n\nexport function blobBackupAutoProtectionSettingsUnionDeserializer(\n item: any,\n): BlobBackupAutoProtectionSettingsUnion {\n switch (item[\"objectType\"]) {\n case \"BlobBackupRuleBasedAutoProtectionSettings\":\n return blobBackupRuleBasedAutoProtectionSettingsDeserializer(\n item as BlobBackupRuleBasedAutoProtectionSettings,\n );\n\n default:\n return blobBackupAutoProtectionSettingsDeserializer(item);\n }\n}\n\n/** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */\nexport interface ProxyResource extends Resource {}\n\nexport function proxyResourceSerializer(item: ProxyResource): any {\n return item;\n}\n\nexport function proxyResourceDeserializer(item: any): ProxyResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n };\n}\n\n/** Common fields that are returned in the response for all Azure Resource Manager resources */\nexport interface Resource {\n /** Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} */\n readonly id?: string;\n /** The name of the resource */\n readonly name?: string;\n /** The type of the resource. E.g. \"Microsoft.Compute/virtualMachines\" or \"Microsoft.Storage/storageAccounts\" */\n readonly type?: string;\n /** Azure Resource Manager metadata containing createdBy and modifiedBy information. */\n readonly systemData?: SystemData;\n}\n\nexport function resourceSerializer(item: Resource): any {\n return item;\n}\n\nexport function resourceDeserializer(item: any): Resource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n };\n}\n\n/** Metadata pertaining to creation and last modification of the resource. */\nexport interface SystemData {\n /** The identity that created the resource. */\n createdBy?: string;\n /** The type of identity that created the resource. */\n createdByType?: CreatedByType;\n /** The timestamp of resource creation (UTC). */\n createdAt?: Date;\n /** The identity that last modified the resource. */\n lastModifiedBy?: string;\n /** The type of identity that last modified the resource. */\n lastModifiedByType?: CreatedByType;\n /** The timestamp of resource last modification (UTC) */\n lastModifiedAt?: Date;\n}\n\nexport function systemDataDeserializer(item: any): SystemData {\n return {\n createdBy: item[\"createdBy\"],\n createdByType: item[\"createdByType\"],\n createdAt: !item[\"createdAt\"] ? item[\"createdAt\"] : new Date(item[\"createdAt\"]),\n lastModifiedBy: item[\"lastModifiedBy\"],\n lastModifiedByType: item[\"lastModifiedByType\"],\n lastModifiedAt: !item[\"lastModifiedAt\"]\n ? item[\"lastModifiedAt\"]\n : new Date(item[\"lastModifiedAt\"]),\n };\n}\n\n/** The kind of entity that created the resource. */\nexport enum KnownCreatedByType {\n /** The entity was created by a user. */\n User = \"User\",\n /** The entity was created by an application. */\n Application = \"Application\",\n /** The entity was created by a managed identity. */\n ManagedIdentity = \"ManagedIdentity\",\n /** The entity was created by a key. */\n Key = \"Key\",\n}\n\n/**\n * The kind of entity that created the resource. \\\n * {@link KnownCreatedByType} can be used interchangeably with CreatedByType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **User**: The entity was created by a user. \\\n * **Application**: The entity was created by an application. \\\n * **ManagedIdentity**: The entity was created by a managed identity. \\\n * **Key**: The entity was created by a key.\n */\nexport type CreatedByType = string;\n\n/** An error response from Azure Backup. */\nexport interface CloudError {\n /** The resource management error response. */\n error?: ErrorModel;\n}\n\nexport function cloudErrorDeserializer(item: any): CloudError {\n return {\n error: !item[\"error\"] ? item[\"error\"] : errorDeserializer(item[\"error\"]),\n };\n}\n\n/** The resource management error response. */\nexport interface ErrorModel {\n /** The error additional info. */\n readonly additionalInfo?: ErrorAdditionalInfo[];\n /** The error code. */\n readonly code?: string;\n /** The error details. */\n readonly details?: ErrorModel[];\n /** The error message. */\n readonly message?: string;\n /** The error target. */\n readonly target?: string;\n}\n\nexport function errorDeserializer(item: any): ErrorModel {\n return {\n additionalInfo: !item[\"additionalInfo\"]\n ? item[\"additionalInfo\"]\n : errorAdditionalInfoArrayDeserializer(item[\"additionalInfo\"]),\n code: item[\"code\"],\n details: !item[\"details\"] ? item[\"details\"] : errorArrayDeserializer(item[\"details\"]),\n message: item[\"message\"],\n target: item[\"target\"],\n };\n}\n\nexport function errorArrayDeserializer(result: Array<ErrorModel>): any[] {\n return result.map((item) => {\n return errorDeserializer(item);\n });\n}\n\n/** BackupInstance Resource list response */\nexport interface _BackupInstanceResourceList extends DppResourceList {\n /** List of resources. */\n value?: BackupInstanceResource[];\n}\n\nexport function _backupInstanceResourceListDeserializer(item: any): _BackupInstanceResourceList {\n return {\n nextLink: item[\"nextLink\"],\n value: !item[\"value\"] ? item[\"value\"] : backupInstanceResourceArrayDeserializer(item[\"value\"]),\n };\n}\n\nexport function backupInstanceResourceArraySerializer(\n result: Array<BackupInstanceResource>,\n): any[] {\n return result.map((item) => {\n return backupInstanceResourceSerializer(item);\n });\n}\n\nexport function backupInstanceResourceArrayDeserializer(\n result: Array<BackupInstanceResource>,\n): any[] {\n return result.map((item) => {\n return backupInstanceResourceDeserializer(item);\n });\n}\n\n/** ListResource */\nexport interface DppResourceList {\n /** The uri to fetch the next page of resources. Call ListNext() fetches next page of resources. */\n nextLink?: string;\n}\n\nexport function dppResourceListDeserializer(item: any): DppResourceList {\n return {\n nextLink: item[\"nextLink\"],\n };\n}\n\n/** Validate for backup request */\nexport interface ValidateForBackupRequest {\n /** Backup Instance */\n backupInstance: BackupInstance;\n}\n\nexport function validateForBackupRequestSerializer(item: ValidateForBackupRequest): any {\n return { backupInstance: backupInstanceSerializer(item[\"backupInstance\"]) };\n}\n\n/** Operation Job Extended Info */\nexport interface OperationJobExtendedInfo extends OperationExtendedInfo {\n /** Name or Arm Id of the job created for this operation. */\n jobId?: string;\n /** This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types. */\n objectType: \"OperationJobExtendedInfo\";\n}\n\nexport function operationJobExtendedInfoDeserializer(item: any): OperationJobExtendedInfo {\n return {\n objectType: item[\"objectType\"],\n jobId: item[\"jobId\"],\n };\n}\n\n/** Operation Extended Info */\nexport interface OperationExtendedInfo {\n /** This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types. */\n /** The discriminator possible values: OperationJobExtendedInfo */\n objectType: string;\n}\n\nexport function operationExtendedInfoDeserializer(item: any): OperationExtendedInfo {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for OperationExtendedInfoUnion */\nexport type OperationExtendedInfoUnion = OperationJobExtendedInfo | OperationExtendedInfo;\n\nexport function operationExtendedInfoUnionDeserializer(item: any): OperationExtendedInfoUnion {\n switch (item[\"objectType\"]) {\n case \"OperationJobExtendedInfo\":\n return operationJobExtendedInfoDeserializer(item as OperationJobExtendedInfo);\n\n default:\n return operationExtendedInfoDeserializer(item);\n }\n}\n\n/** Trigger backup request */\nexport interface TriggerBackupRequest {\n /** Name for the Rule of the Policy which needs to be applied for this backup */\n backupRuleOptions: AdHocBackupRuleOptions;\n}\n\nexport function triggerBackupRequestSerializer(item: TriggerBackupRequest): any {\n return { backupRuleOptions: adHocBackupRuleOptionsSerializer(item[\"backupRuleOptions\"]) };\n}\n\n/** Adhoc backup rules */\nexport interface AdHocBackupRuleOptions {\n ruleName: string;\n /** Adhoc backup trigger option */\n triggerOption: AdhocBackupTriggerOption;\n}\n\nexport function adHocBackupRuleOptionsSerializer(item: AdHocBackupRuleOptions): any {\n return {\n ruleName: item[\"ruleName\"],\n triggerOption: adhocBackupTriggerOptionSerializer(item[\"triggerOption\"]),\n };\n}\n\n/** Adhoc backup trigger option */\nexport interface AdhocBackupTriggerOption {\n retentionTagOverride?: string;\n}\n\nexport function adhocBackupTriggerOptionSerializer(item: AdhocBackupTriggerOption): any {\n return { retentionTagOverride: item[\"retentionTagOverride\"] };\n}\n\n/** Validate for modify backup request */\nexport interface ValidateForModifyBackupRequest {\n /** Backup Instance */\n backupInstance: BackupInstance;\n}\n\nexport function validateForModifyBackupRequestSerializer(\n item: ValidateForModifyBackupRequest,\n): any {\n return { backupInstance: backupInstanceSerializer(item[\"backupInstance\"]) };\n}\n\n/** Azure Backup Rehydrate Request */\nexport interface AzureBackupRehydrationRequest {\n /** Id of the recovery point to be recovered */\n recoveryPointId: string;\n /** Priority to be used for rehydration. Values High or Standard */\n rehydrationPriority?: RehydrationPriority;\n /** Retention duration in ISO 8601 format i.e P10D . */\n rehydrationRetentionDuration: string;\n}\n\nexport function azureBackupRehydrationRequestSerializer(item: AzureBackupRehydrationRequest): any {\n return {\n recoveryPointId: item[\"recoveryPointId\"],\n rehydrationPriority: item[\"rehydrationPriority\"],\n rehydrationRetentionDuration: item[\"rehydrationRetentionDuration\"],\n };\n}\n\n/** Priority to be used for rehydration. Values High or Standard */\nexport enum KnownRehydrationPriority {\n /** Invalid */\n Invalid = \"Invalid\",\n /** High */\n High = \"High\",\n /** Standard */\n Standard = \"Standard\",\n}\n\n/**\n * Priority to be used for rehydration. Values High or Standard \\\n * {@link KnownRehydrationPriority} can be used interchangeably with RehydrationPriority,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Invalid** \\\n * **High** \\\n * **Standard**\n */\nexport type RehydrationPriority = string;\n\n/** Azure backup restore request */\nexport interface AzureBackupRestoreRequest {\n objectType: string;\n /** Gets or sets the restore target information. */\n restoreTargetInfo: RestoreTargetInfoBaseUnion;\n /** Gets or sets the type of the source data store. */\n sourceDataStoreType: SourceDataStoreType;\n /** Fully qualified Azure Resource Manager ID of the datasource which is being recovered. */\n sourceResourceId?: string;\n /** ResourceGuardOperationRequests on which LAC check will be performed */\n resourceGuardOperationRequests?: string[];\n /**\n * Contains information of the Identity Details for the BI.\n * If it is null, default will be considered as System Assigned.\n */\n identityDetails?: IdentityDetails;\n}\n\nexport function azureBackupRestoreRequestSerializer(item: AzureBackupRestoreRequest): any {\n return {\n objectType: item[\"objectType\"],\n restoreTargetInfo: restoreTargetInfoBaseUnionSerializer(item[\"restoreTargetInfo\"]),\n sourceDataStoreType: item[\"sourceDataStoreType\"],\n sourceResourceId: item[\"sourceResourceId\"],\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n identityDetails: !item[\"identityDetails\"]\n ? item[\"identityDetails\"]\n : identityDetailsSerializer(item[\"identityDetails\"]),\n };\n}\n\n/** Alias for AzureBackupRestoreRequestUnion */\nexport type AzureBackupRestoreRequestUnion =\n | AzureBackupRecoveryPointBasedRestoreRequestUnion\n | AzureBackupRecoveryTimeBasedRestoreRequest\n | AzureBackupRestoreRequest;\n\nexport function azureBackupRestoreRequestUnionSerializer(\n item: AzureBackupRestoreRequestUnion,\n): any {\n switch (item.objectType) {\n case \"AzureBackupRecoveryPointBasedRestoreRequest\":\n case \"AzureBackupRestoreWithRehydrationRequest\":\n return azureBackupRecoveryPointBasedRestoreRequestUnionSerializer(\n item as AzureBackupRecoveryPointBasedRestoreRequestUnion,\n );\n\n case \"AzureBackupRecoveryTimeBasedRestoreRequest\":\n return azureBackupRecoveryTimeBasedRestoreRequestSerializer(\n item as AzureBackupRecoveryTimeBasedRestoreRequest,\n );\n\n default:\n return azureBackupRestoreRequestSerializer(item);\n }\n}\n\n/** Base class common to RestoreTargetInfo and RestoreFilesTargetInfo */\nexport interface RestoreTargetInfoBase {\n /** Type of Datasource object, used to initialize the right inherited type */\n /** The discriminator possible values: ItemLevelRestoreTargetInfo, RestoreFilesTargetInfo, RestoreTargetInfo */\n objectType: string;\n /** Recovery Option */\n recoveryOption: RecoveryOption;\n /** Target Restore region */\n restoreLocation?: string;\n}\n\nexport function restoreTargetInfoBaseSerializer(item: RestoreTargetInfoBase): any {\n return {\n objectType: item[\"objectType\"],\n recoveryOption: item[\"recoveryOption\"],\n restoreLocation: item[\"restoreLocation\"],\n };\n}\n\n/** Alias for RestoreTargetInfoBaseUnion */\nexport type RestoreTargetInfoBaseUnion =\n | ItemLevelRestoreTargetInfo\n | RestoreFilesTargetInfo\n | RestoreTargetInfo\n | RestoreTargetInfoBase;\n\nexport function restoreTargetInfoBaseUnionSerializer(item: RestoreTargetInfoBaseUnion): any {\n switch (item.objectType) {\n case \"ItemLevelRestoreTargetInfo\":\n return itemLevelRestoreTargetInfoSerializer(item as ItemLevelRestoreTargetInfo);\n\n case \"RestoreFilesTargetInfo\":\n return restoreFilesTargetInfoSerializer(item as RestoreFilesTargetInfo);\n\n case \"RestoreTargetInfo\":\n return restoreTargetInfoSerializer(item as RestoreTargetInfo);\n\n default:\n return restoreTargetInfoBaseSerializer(item);\n }\n}\n\n/** Recovery Option */\nexport enum KnownRecoveryOption {\n /** FailIfExists */\n FailIfExists = \"FailIfExists\",\n}\n\n/**\n * Recovery Option \\\n * {@link KnownRecoveryOption} can be used interchangeably with RecoveryOption,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **FailIfExists**\n */\nexport type RecoveryOption = string;\n\n/** Restore target info for Item level restore operation */\nexport interface ItemLevelRestoreTargetInfo extends RestoreTargetInfoBase {\n /** Restore Criteria */\n restoreCriteria: ItemLevelRestoreCriteriaUnion[];\n /** Information of target DS */\n datasourceInfo: Datasource;\n /** Information of target DS Set */\n datasourceSetInfo?: DatasourceSet;\n /** Credentials to use to authenticate with data source provider. */\n datasourceAuthCredentials?: AuthCredentialsUnion;\n /** Type of Datasource object, used to initialize the right inherited type */\n objectType: \"ItemLevelRestoreTargetInfo\";\n}\n\nexport function itemLevelRestoreTargetInfoSerializer(item: ItemLevelRestoreTargetInfo): any {\n return {\n objectType: item[\"objectType\"],\n recoveryOption: item[\"recoveryOption\"],\n restoreLocation: item[\"restoreLocation\"],\n restoreCriteria: itemLevelRestoreCriteriaUnionArraySerializer(item[\"restoreCriteria\"]),\n datasourceInfo: datasourceSerializer(item[\"datasourceInfo\"]),\n datasourceSetInfo: !item[\"datasourceSetInfo\"]\n ? item[\"datasourceSetInfo\"]\n : datasourceSetSerializer(item[\"datasourceSetInfo\"]),\n datasourceAuthCredentials: !item[\"datasourceAuthCredentials\"]\n ? item[\"datasourceAuthCredentials\"]\n : authCredentialsUnionSerializer(item[\"datasourceAuthCredentials\"]),\n };\n}\n\nexport function itemLevelRestoreCriteriaUnionArraySerializer(\n result: Array<ItemLevelRestoreCriteriaUnion>,\n): any[] {\n return result.map((item) => {\n return itemLevelRestoreCriteriaUnionSerializer(item);\n });\n}\n\n/** Class to contain criteria for item level restore */\nexport interface ItemLevelRestoreCriteria {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: ItemPathBasedRestoreCriteria, RangeBasedItemLevelRestoreCriteria, KubernetesStorageClassRestoreCriteria, KubernetesPVRestoreCriteria, KubernetesClusterRestoreCriteria, KubernetesClusterVaultTierRestoreCriteria */\n objectType: string;\n}\n\nexport function itemLevelRestoreCriteriaSerializer(item: ItemLevelRestoreCriteria): any {\n return { objectType: item[\"objectType\"] };\n}\n\n/** Alias for ItemLevelRestoreCriteriaUnion */\nexport type ItemLevelRestoreCriteriaUnion =\n | ItemPathBasedRestoreCriteria\n | RangeBasedItemLevelRestoreCriteria\n | KubernetesStorageClassRestoreCriteria\n | KubernetesPVRestoreCriteria\n | KubernetesClusterRestoreCriteria\n | KubernetesClusterVaultTierRestoreCriteria\n | ItemLevelRestoreCriteria;\n\nexport function itemLevelRestoreCriteriaUnionSerializer(item: ItemLevelRestoreCriteriaUnion): any {\n switch (item.objectType) {\n case \"ItemPathBasedRestoreCriteria\":\n return itemPathBasedRestoreCriteriaSerializer(item as ItemPathBasedRestoreCriteria);\n\n case \"RangeBasedItemLevelRestoreCriteria\":\n return rangeBasedItemLevelRestoreCriteriaSerializer(\n item as RangeBasedItemLevelRestoreCriteria,\n );\n\n case \"KubernetesStorageClassRestoreCriteria\":\n return kubernetesStorageClassRestoreCriteriaSerializer(\n item as KubernetesStorageClassRestoreCriteria,\n );\n\n case \"KubernetesPVRestoreCriteria\":\n return kubernetesPVRestoreCriteriaSerializer(item as KubernetesPVRestoreCriteria);\n\n case \"KubernetesClusterRestoreCriteria\":\n return kubernetesClusterRestoreCriteriaSerializer(item as KubernetesClusterRestoreCriteria);\n\n case \"KubernetesClusterVaultTierRestoreCriteria\":\n return kubernetesClusterVaultTierRestoreCriteriaSerializer(\n item as KubernetesClusterVaultTierRestoreCriteria,\n );\n\n default:\n return itemLevelRestoreCriteriaSerializer(item);\n }\n}\n\n/** Prefix criteria to be used to during restore */\nexport interface ItemPathBasedRestoreCriteria extends ItemLevelRestoreCriteria {\n /** The path of the item to be restored. It could be the full path of the item or the path relative to the backup item */\n itemPath: string;\n /** Flag to specify if the path is relative to backup item or full path */\n isPathRelativeToBackupItem: boolean;\n /** The list of prefix strings to be used as filter criteria during restore. These are relative to the item path specified. */\n subItemPathPrefix?: string[];\n /** Rename the item to be restored. Restore will rename the itemPath to this new name if the value is specified otherwise the itemPath will be restored as same name. */\n renameTo?: string;\n /** Type of the specific object - used for deserializing */\n objectType: \"ItemPathBasedRestoreCriteria\";\n}\n\nexport function itemPathBasedRestoreCriteriaSerializer(item: ItemPathBasedRestoreCriteria): any {\n return {\n objectType: item[\"objectType\"],\n itemPath: item[\"itemPath\"],\n isPathRelativeToBackupItem: item[\"isPathRelativeToBackupItem\"],\n subItemPathPrefix: !item[\"subItemPathPrefix\"]\n ? item[\"subItemPathPrefix\"]\n : item[\"subItemPathPrefix\"].map((p: any) => {\n return p;\n }),\n renameTo: item[\"renameTo\"],\n };\n}\n\n/** Item Level target info for restore operation */\nexport interface RangeBasedItemLevelRestoreCriteria extends ItemLevelRestoreCriteria {\n /** minimum value for range prefix match */\n minMatchingValue?: string;\n /** maximum value for range prefix match */\n maxMatchingValue?: string;\n /** Type of the specific object - used for deserializing */\n objectType: \"RangeBasedItemLevelRestoreCriteria\";\n}\n\nexport function rangeBasedItemLevelRestoreCriteriaSerializer(\n item: RangeBasedItemLevelRestoreCriteria,\n): any {\n return {\n objectType: item[\"objectType\"],\n minMatchingValue: item[\"minMatchingValue\"],\n maxMatchingValue: item[\"maxMatchingValue\"],\n };\n}\n\n/** Item Level kubernetes storage class target info for restore operation */\nexport interface KubernetesStorageClassRestoreCriteria extends ItemLevelRestoreCriteria {\n /** Selected storage class name */\n selectedStorageClassName?: string;\n /** Provisioner of the storage class */\n provisioner?: string;\n /** Type of the specific object - used for deserializing */\n objectType: \"KubernetesStorageClassRestoreCriteria\";\n}\n\nexport function kubernetesStorageClassRestoreCriteriaSerializer(\n item: KubernetesStorageClassRestoreCriteria,\n): any {\n return {\n objectType: item[\"objectType\"],\n selectedStorageClassName: item[\"selectedStorageClassName\"],\n provisioner: item[\"provisioner\"],\n };\n}\n\n/** Item Level kubernetes persistent volume target info for restore operation */\nexport interface KubernetesPVRestoreCriteria extends ItemLevelRestoreCriteria {\n /** Selected persistent volume claim name */\n name?: string;\n /** Selected storage class name for restore operation */\n storageClassName?: string;\n /** Type of the specific object - used for deserializing */\n objectType: \"KubernetesPVRestoreCriteria\";\n}\n\nexport function kubernetesPVRestoreCriteriaSerializer(item: KubernetesPVRestoreCriteria): any {\n return {\n objectType: item[\"objectType\"],\n name: item[\"name\"],\n storageClassName: item[\"storageClassName\"],\n };\n}\n\n/** kubernetes Cluster Backup target info for restore operation */\nexport interface KubernetesClusterRestoreCriteria extends ItemLevelRestoreCriteria {\n /** Gets or sets the include cluster resources property. This property if enabled will include cluster scope resources during restore. */\n includeClusterScopeResources: boolean;\n /** Gets or sets the include namespaces property. This property sets the namespaces to be included during restore. */\n includedNamespaces?: string[];\n /** Gets or sets the exclude namespaces property. This property sets the namespaces to be excluded during restore. */\n excludedNamespaces?: string[];\n /** Gets or sets the include resource types property. This property sets the resource types to be included during restore. */\n includedResourceTypes?: string[];\n /** Gets or sets the exclude resource types property. This property sets the resource types to be excluded during restore. */\n excludedResourceTypes?: string[];\n /** Gets or sets the LabelSelectors property. This property sets the resource with such label selectors to be included during restore. */\n labelSelectors?: string[];\n /** Gets or sets the PV (Persistent Volume) Restore Mode property. This property sets whether volumes needs to be restored. */\n persistentVolumeRestoreMode?: PersistentVolumeRestoreMode;\n /** Gets or sets the Conflict Policy property. This property sets policy during conflict of resources during restore. */\n conflictPolicy?: ExistingResourcePolicy;\n /** Gets or sets the Namespace Mappings property. This property sets if namespace needs to be change during restore. */\n namespaceMappings?: Record<string, string>;\n /** Gets or sets the restore hook references. This property sets the hook reference to be executed during restore. */\n restoreHookReferences?: NamespacedNameResource[];\n /** Gets or sets the resource modifier reference. This property sets the reference for resource modifier during restore. */\n resourceModifierReference?: NamespacedNameResource;\n /** Type of the specific object - used for deserializing */\n objectType: \"KubernetesClusterRestoreCriteria\";\n}\n\nexport function kubernetesClusterRestoreCriteriaSerializer(\n item: KubernetesClusterRestoreCriteria,\n): any {\n return {\n objectType: item[\"objectType\"],\n includeClusterScopeResources: item[\"includeClusterScopeResources\"],\n includedNamespaces: !item[\"includedNamespaces\"]\n ? item[\"includedNamespaces\"]\n : item[\"includedNamespaces\"].map((p: any) => {\n return p;\n }),\n excludedNamespaces: !item[\"excludedNamespaces\"]\n ? item[\"excludedNamespaces\"]\n : item[\"excludedNamespaces\"].map((p: any) => {\n return p;\n }),\n includedResourceTypes: !item[\"includedResourceTypes\"]\n ? item[\"includedResourceTypes\"]\n : item[\"includedResourceTypes\"].map((p: any) => {\n return p;\n }),\n excludedResourceTypes: !item[\"excludedResourceTypes\"]\n ? item[\"excludedResourceTypes\"]\n : item[\"excludedResourceTypes\"].map((p: any) => {\n return p;\n }),\n labelSelectors: !item[\"labelSelectors\"]\n ? item[\"labelSelectors\"]\n : item[\"labelSelectors\"].map((p: any) => {\n return p;\n }),\n persistentVolumeRestoreMode: item[\"persistentVolumeRestoreMode\"],\n conflictPolicy: item[\"conflictPolicy\"],\n namespaceMappings: item[\"namespaceMappings\"],\n restoreHookReferences: !item[\"restoreHookReferences\"]\n ? item[\"restoreHookReferences\"]\n : namespacedNameResourceArraySerializer(item[\"restoreHookReferences\"]),\n resourceModifierReference: !item[\"resourceModifierReference\"]\n ? item[\"resourceModifierReference\"]\n : namespacedNameResourceSerializer(item[\"resourceModifierReference\"]),\n };\n}\n\n/** Gets or sets the PV (Persistent Volume) Restore Mode property. This property sets whether volumes needs to be restored. */\nexport enum KnownPersistentVolumeRestoreMode {\n /** RestoreWithVolumeData */\n RestoreWithVolumeData = \"RestoreWithVolumeData\",\n /** RestoreWithoutVolumeData */\n RestoreWithoutVolumeData = \"RestoreWithoutVolumeData\",\n}\n\n/**\n * Gets or sets the PV (Persistent Volume) Restore Mode property. This property sets whether volumes needs to be restored. \\\n * {@link KnownPersistentVolumeRestoreMode} can be used interchangeably with PersistentVolumeRestoreMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **RestoreWithVolumeData** \\\n * **RestoreWithoutVolumeData**\n */\nexport type PersistentVolumeRestoreMode = string;\n\n/** Gets or sets the Conflict Policy property. This property sets policy during conflict of resources during restore. */\nexport enum KnownExistingResourcePolicy {\n /** Skip */\n Skip = \"Skip\",\n /** Patch */\n Patch = \"Patch\",\n}\n\n/**\n * Gets or sets the Conflict Policy property. This property sets policy during conflict of resources during restore. \\\n * {@link KnownExistingResourcePolicy} can be used interchangeably with ExistingResourcePolicy,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Skip** \\\n * **Patch**\n */\nexport type ExistingResourcePolicy = string;\n\n/** kubernetes Cluster Backup target info for restore operation from vault */\nexport interface KubernetesClusterVaultTierRestoreCriteria extends ItemLevelRestoreCriteria {\n /** Gets or sets the include cluster resources property. This property if enabled will include cluster scope resources during restore from vault. */\n includeClusterScopeResources: boolean;\n /** Gets or sets the include namespaces property. This property sets the namespaces to be included during restore from vault. */\n includedNamespaces?: string[];\n /** Gets or sets the exclude namespaces property. This property sets the namespaces to be excluded during restore from vault. */\n excludedNamespaces?: string[];\n /** Gets or sets the include resource types property. This property sets the resource types to be included during restore from vault. */\n includedResourceTypes?: string[];\n /** Gets or sets the exclude resource types property. This property sets the resource types to be excluded during restore from vault. */\n excludedResourceTypes?: string[];\n /** Gets or sets the LabelSelectors property. This property sets the resource with such label selectors to be included during restore from vault. */\n labelSelectors?: string[];\n /** Gets or sets the PV (Persistent Volume) Restore Mode property. This property sets whether volumes needs to be restored from vault. */\n persistentVolumeRestoreMode?: PersistentVolumeRestoreMode;\n /** Gets or sets the Conflict Policy property. This property sets policy during conflict of resources during restore from vault. */\n conflictPolicy?: ExistingResourcePolicy;\n /** Gets or sets the Namespace Mappings property. This property sets if namespace needs to be change during restore from vault. */\n namespaceMappings?: Record<string, string>;\n /** Gets or sets the restore hook references. This property sets the hook reference to be executed during restore from vault. */\n restoreHookReferences?: NamespacedNameResource[];\n /** Gets or sets the staging RG Id for creating staging disks and snapshots during restore from vault. */\n stagingResourceGroupId?: string;\n /** Gets or sets the staging Storage Account Id for creating backup extension object store data during restore from vault. */\n stagingStorageAccountId?: string;\n /** Gets or sets the resource modifier reference. This property sets the reference for resource modifier during restore. */\n resourceModifierReference?: NamespacedNameResource;\n /** Type of the specific object - used for deserializing */\n objectType: \"KubernetesClusterVaultTierRestoreCriteria\";\n}\n\nexport function kubernetesClusterVaultTierRestoreCriteriaSerializer(\n item: KubernetesClusterVaultTierRestoreCriteria,\n): any {\n return {\n objectType: item[\"objectType\"],\n includeClusterScopeResources: item[\"includeClusterScopeResources\"],\n includedNamespaces: !item[\"includedNamespaces\"]\n ? item[\"includedNamespaces\"]\n : item[\"includedNamespaces\"].map((p: any) => {\n return p;\n }),\n excludedNamespaces: !item[\"excludedNamespaces\"]\n ? item[\"excludedNamespaces\"]\n : item[\"excludedNamespaces\"].map((p: any) => {\n return p;\n }),\n includedResourceTypes: !item[\"includedResourceTypes\"]\n ? item[\"includedResourceTypes\"]\n : item[\"includedResourceTypes\"].map((p: any) => {\n return p;\n }),\n excludedResourceTypes: !item[\"excludedResourceTypes\"]\n ? item[\"excludedResourceTypes\"]\n : item[\"excludedResourceTypes\"].map((p: any) => {\n return p;\n }),\n labelSelectors: !item[\"labelSelectors\"]\n ? item[\"labelSelectors\"]\n : item[\"labelSelectors\"].map((p: any) => {\n return p;\n }),\n persistentVolumeRestoreMode: item[\"persistentVolumeRestoreMode\"],\n conflictPolicy: item[\"conflictPolicy\"],\n namespaceMappings: item[\"namespaceMappings\"],\n restoreHookReferences: !item[\"restoreHookReferences\"]\n ? item[\"restoreHookReferences\"]\n : namespacedNameResourceArraySerializer(item[\"restoreHookReferences\"]),\n stagingResourceGroupId: item[\"stagingResourceGroupId\"],\n stagingStorageAccountId: item[\"stagingStorageAccountId\"],\n resourceModifierReference: !item[\"resourceModifierReference\"]\n ? item[\"resourceModifierReference\"]\n : namespacedNameResourceSerializer(item[\"resourceModifierReference\"]),\n };\n}\n\n/** Class encapsulating restore as files target parameters */\nexport interface RestoreFilesTargetInfo extends RestoreTargetInfoBase {\n /** Destination of RestoreAsFiles operation, when destination is not a datasource */\n targetDetails: TargetDetails;\n /** Type of Datasource object, used to initialize the right inherited type */\n objectType: \"RestoreFilesTargetInfo\";\n}\n\nexport function restoreFilesTargetInfoSerializer(item: RestoreFilesTargetInfo): any {\n return {\n objectType: item[\"objectType\"],\n recoveryOption: item[\"recoveryOption\"],\n restoreLocation: item[\"restoreLocation\"],\n targetDetails: targetDetailsSerializer(item[\"targetDetails\"]),\n };\n}\n\n/** Class encapsulating target details, used where the destination is not a datasource */\nexport interface TargetDetails {\n /**\n * Restore operation may create multiple files inside location pointed by Url\n * Below will be the common prefix for all of them\n */\n filePrefix: string;\n /**\n * Denotes the target location where the data will be restored,\n * string value for the enum {Microsoft.Internal.AzureBackup.DataProtection.Common.Interface.RestoreTargetLocationType}\n */\n restoreTargetLocationType: RestoreTargetLocationType;\n /** Url denoting the restore destination. It can point to container / file share etc */\n url: string;\n /**\n * Full ARM Id denoting the restore destination. It is the ARM Id pointing to container / file share\n * This is optional if the target subscription can be identified with the URL field. If not\n * then this is needed if CrossSubscriptionRestore field of BackupVault is in any of the disabled states\n */\n targetResourceArmId?: string;\n}\n\nexport function targetDetailsSerializer(item: TargetDetails): any {\n return {\n filePrefix: item[\"filePrefix\"],\n restoreTargetLocationType: item[\"restoreTargetLocationType\"],\n url: item[\"url\"],\n targetResourceArmId: item[\"targetResourceArmId\"],\n };\n}\n\n/**\n * Denotes the target location where the data will be restored,\n * string value for the enum {Microsoft.Internal.AzureBackup.DataProtection.Common.Interface.RestoreTargetLocationType}\n */\nexport enum KnownRestoreTargetLocationType {\n /** Invalid */\n Invalid = \"Invalid\",\n /** AzureBlobs */\n AzureBlobs = \"AzureBlobs\",\n /** AzureFiles */\n AzureFiles = \"AzureFiles\",\n}\n\n/**\n * Denotes the target location where the data will be restored,\n * string value for the enum {Microsoft.Internal.AzureBackup.DataProtection.Common.Interface.RestoreTargetLocationType} \\\n * {@link KnownRestoreTargetLocationType} can be used interchangeably with RestoreTargetLocationType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Invalid** \\\n * **AzureBlobs** \\\n * **AzureFiles**\n */\nexport type RestoreTargetLocationType = string;\n\n/** Class encapsulating restore target parameters */\nexport interface RestoreTargetInfo extends RestoreTargetInfoBase {\n /** Information of target DS */\n datasourceInfo: Datasource;\n /** Information of target DS Set */\n datasourceSetInfo?: DatasourceSet;\n /** Credentials to use to authenticate with data source provider. */\n datasourceAuthCredentials?: AuthCredentialsUnion;\n /** Type of Datasource object, used to initialize the right inherited type */\n objectType: \"RestoreTargetInfo\";\n}\n\nexport function restoreTargetInfoSerializer(item: RestoreTargetInfo): any {\n return {\n objectType: item[\"objectType\"],\n recoveryOption: item[\"recoveryOption\"],\n restoreLocation: item[\"restoreLocation\"],\n datasourceInfo: datasourceSerializer(item[\"datasourceInfo\"]),\n datasourceSetInfo: !item[\"datasourceSetInfo\"]\n ? item[\"datasourceSetInfo\"]\n : datasourceSetSerializer(item[\"datasourceSetInfo\"]),\n datasourceAuthCredentials: !item[\"datasourceAuthCredentials\"]\n ? item[\"datasourceAuthCredentials\"]\n : authCredentialsUnionSerializer(item[\"datasourceAuthCredentials\"]),\n };\n}\n\n/** Gets or sets the type of the source data store. */\nexport enum KnownSourceDataStoreType {\n /** ArchiveStore */\n ArchiveStore = \"ArchiveStore\",\n /** SnapshotStore */\n SnapshotStore = \"SnapshotStore\",\n /** OperationalStore */\n OperationalStore = \"OperationalStore\",\n /** VaultStore */\n VaultStore = \"VaultStore\",\n}\n\n/**\n * Gets or sets the type of the source data store. \\\n * {@link KnownSourceDataStoreType} can be used interchangeably with SourceDataStoreType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ArchiveStore** \\\n * **SnapshotStore** \\\n * **OperationalStore** \\\n * **VaultStore**\n */\nexport type SourceDataStoreType = string;\n\n/** Azure backup recoveryPoint based restore request */\nexport interface AzureBackupRecoveryPointBasedRestoreRequest extends AzureBackupRestoreRequest {\n recoveryPointId: string;\n objectType:\n | \"AzureBackupRecoveryPointBasedRestoreRequest\"\n | \"AzureBackupRestoreWithRehydrationRequest\";\n}\n\nexport function azureBackupRecoveryPointBasedRestoreRequestSerializer(\n item: AzureBackupRecoveryPointBasedRestoreRequest,\n): any {\n return {\n objectType: item[\"objectType\"],\n restoreTargetInfo: restoreTargetInfoBaseUnionSerializer(item[\"restoreTargetInfo\"]),\n sourceDataStoreType: item[\"sourceDataStoreType\"],\n sourceResourceId: item[\"sourceResourceId\"],\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n identityDetails: !item[\"identityDetails\"]\n ? item[\"identityDetails\"]\n : identityDetailsSerializer(item[\"identityDetails\"]),\n recoveryPointId: item[\"recoveryPointId\"],\n };\n}\n\n/** Alias for AzureBackupRecoveryPointBasedRestoreRequestUnion */\nexport type AzureBackupRecoveryPointBasedRestoreRequestUnion =\n | AzureBackupRestoreWithRehydrationRequest\n | AzureBackupRecoveryPointBasedRestoreRequest;\n\nexport function azureBackupRecoveryPointBasedRestoreRequestUnionSerializer(\n item: AzureBackupRecoveryPointBasedRestoreRequestUnion,\n): any {\n switch (item.objectType) {\n case \"AzureBackupRestoreWithRehydrationRequest\":\n return azureBackupRestoreWithRehydrationRequestSerializer(\n item as AzureBackupRestoreWithRehydrationRequest,\n );\n\n default:\n return azureBackupRecoveryPointBasedRestoreRequestSerializer(item);\n }\n}\n\n/** AzureBackup Restore with Rehydration Request */\nexport interface AzureBackupRestoreWithRehydrationRequest extends AzureBackupRecoveryPointBasedRestoreRequest {\n /** Priority to be used for rehydration. Values High or Standard */\n rehydrationPriority: RehydrationPriority;\n /** Retention duration in ISO 8601 format i.e P10D . */\n rehydrationRetentionDuration: string;\n objectType: \"AzureBackupRestoreWithRehydrationRequest\";\n}\n\nexport function azureBackupRestoreWithRehydrationRequestSerializer(\n item: AzureBackupRestoreWithRehydrationRequest,\n): any {\n return {\n recoveryPointId: item[\"recoveryPointId\"],\n objectType: item[\"objectType\"],\n restoreTargetInfo: restoreTargetInfoBaseUnionSerializer(item[\"restoreTargetInfo\"]),\n sourceDataStoreType: item[\"sourceDataStoreType\"],\n sourceResourceId: item[\"sourceResourceId\"],\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n identityDetails: !item[\"identityDetails\"]\n ? item[\"identityDetails\"]\n : identityDetailsSerializer(item[\"identityDetails\"]),\n rehydrationPriority: item[\"rehydrationPriority\"],\n rehydrationRetentionDuration: item[\"rehydrationRetentionDuration\"],\n };\n}\n\n/** AzureBackup RecoveryPointTime Based Restore Request */\nexport interface AzureBackupRecoveryTimeBasedRestoreRequest extends AzureBackupRestoreRequest {\n /** The recovery time in ISO 8601 format example - 2020-08-14T17:30:00.0000000Z. */\n recoveryPointTime: string;\n objectType: \"AzureBackupRecoveryTimeBasedRestoreRequest\";\n}\n\nexport function azureBackupRecoveryTimeBasedRestoreRequestSerializer(\n item: AzureBackupRecoveryTimeBasedRestoreRequest,\n): any {\n return {\n objectType: item[\"objectType\"],\n restoreTargetInfo: restoreTargetInfoBaseUnionSerializer(item[\"restoreTargetInfo\"]),\n sourceDataStoreType: item[\"sourceDataStoreType\"],\n sourceResourceId: item[\"sourceResourceId\"],\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n identityDetails: !item[\"identityDetails\"]\n ? item[\"identityDetails\"]\n : identityDetailsSerializer(item[\"identityDetails\"]),\n recoveryPointTime: item[\"recoveryPointTime\"],\n };\n}\n\n/** Request body of Stop protection when MUA is Enabled */\nexport interface StopProtectionRequest {\n /** ResourceGuardOperationRequests on which LAC check will be performed */\n resourceGuardOperationRequests?: string[];\n}\n\nexport function stopProtectionRequestSerializer(item: StopProtectionRequest): any {\n return {\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Request body of Suspend backup when MUA is Enabled */\nexport interface SuspendBackupRequest {\n /** ResourceGuardOperationRequests on which LAC check will be performed */\n resourceGuardOperationRequests?: string[];\n}\n\nexport function suspendBackupRequestSerializer(item: SuspendBackupRequest): any {\n return {\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Sync BackupInstance Request */\nexport interface SyncBackupInstanceRequest {\n /** Field indicating sync type e.g. to sync only in case of failure or in all cases */\n syncType?: SyncType;\n}\n\nexport function syncBackupInstanceRequestSerializer(item: SyncBackupInstanceRequest): any {\n return { syncType: item[\"syncType\"] };\n}\n\n/** Field indicating sync type e.g. to sync only in case of failure or in all cases */\nexport enum KnownSyncType {\n /** Default */\n Default = \"Default\",\n /** ForceResync */\n ForceResync = \"ForceResync\",\n}\n\n/**\n * Field indicating sync type e.g. to sync only in case of failure or in all cases \\\n * {@link KnownSyncType} can be used interchangeably with SyncType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Default** \\\n * **ForceResync**\n */\nexport type SyncType = string;\n\n/** Validate restore request object */\nexport interface ValidateRestoreRequestObject {\n /** Gets or sets the restore request object. */\n restoreRequestObject: AzureBackupRestoreRequestUnion;\n}\n\nexport function validateRestoreRequestObjectSerializer(item: ValidateRestoreRequestObject): any {\n return {\n restoreRequestObject: azureBackupRestoreRequestUnionSerializer(item[\"restoreRequestObject\"]),\n };\n}\n\n/** Cross Region Restore Request Object */\nexport interface CrossRegionRestoreRequestObject {\n /** Gets or sets the restore request object. */\n restoreRequestObject: AzureBackupRestoreRequestUnion;\n /** Cross region restore details. */\n crossRegionRestoreDetails: CrossRegionRestoreDetails;\n}\n\nexport function crossRegionRestoreRequestObjectSerializer(\n item: CrossRegionRestoreRequestObject,\n): any {\n return {\n restoreRequestObject: azureBackupRestoreRequestUnionSerializer(item[\"restoreRequestObject\"]),\n crossRegionRestoreDetails: crossRegionRestoreDetailsSerializer(\n item[\"crossRegionRestoreDetails\"],\n ),\n };\n}\n\n/** Cross Region Restore details */\nexport interface CrossRegionRestoreDetails {\n sourceRegion: string;\n sourceBackupInstanceId: string;\n}\n\nexport function crossRegionRestoreDetailsSerializer(item: CrossRegionRestoreDetails): any {\n return {\n sourceRegion: item[\"sourceRegion\"],\n sourceBackupInstanceId: item[\"sourceBackupInstanceId\"],\n };\n}\n\n/** Cross Region Restore Request Object */\nexport interface ValidateCrossRegionRestoreRequestObject {\n /** Gets or sets the restore request object. */\n restoreRequestObject: AzureBackupRestoreRequestUnion;\n /** Cross region restore details. */\n crossRegionRestoreDetails: CrossRegionRestoreDetails;\n}\n\nexport function validateCrossRegionRestoreRequestObjectSerializer(\n item: ValidateCrossRegionRestoreRequestObject,\n): any {\n return {\n restoreRequestObject: azureBackupRestoreRequestUnionSerializer(item[\"restoreRequestObject\"]),\n crossRegionRestoreDetails: crossRegionRestoreDetailsSerializer(\n item[\"crossRegionRestoreDetails\"],\n ),\n };\n}\n\n/** Backup Vault Resource */\nexport interface BackupVaultResource extends TrackedResource {\n /** BackupVaultResource properties */\n properties: BackupVault;\n /** Input Managed Identity Details */\n identity?: DppIdentityDetails;\n /** Optional ETag. */\n eTag?: string;\n}\n\nexport function backupVaultResourceSerializer(item: BackupVaultResource): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: backupVaultSerializer(item[\"properties\"]),\n identity: !item[\"identity\"] ? item[\"identity\"] : dppIdentityDetailsSerializer(item[\"identity\"]),\n eTag: item[\"eTag\"],\n };\n}\n\nexport function backupVaultResourceDeserializer(item: any): BackupVaultResource {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n properties: backupVaultDeserializer(item[\"properties\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : dppIdentityDetailsDeserializer(item[\"identity\"]),\n eTag: item[\"eTag\"],\n };\n}\n\n/** Backup Vault */\nexport interface BackupVault {\n /** Monitoring Settings */\n monitoringSettings?: MonitoringSettings;\n /** Provisioning state of the BackupVault resource */\n readonly provisioningState?: ProvisioningState;\n /** Resource move state for backup vault */\n readonly resourceMoveState?: ResourceMoveState;\n /** Resource move details for backup vault */\n readonly resourceMoveDetails?: ResourceMoveDetails;\n /** Security Settings */\n securitySettings?: SecuritySettings;\n /** Storage Settings */\n storageSettings?: StorageSetting[];\n /** Is vault protected by resource guard */\n readonly isVaultProtectedByResourceGuard?: boolean;\n /** Feature Settings */\n featureSettings?: FeatureSettings;\n /** Secure Score of Backup Vault */\n readonly secureScore?: SecureScoreLevel;\n /** Security Level of Backup Vault */\n readonly bcdrSecurityLevel?: BcdrSecurityLevel;\n /** ResourceGuardOperationRequests on which LAC check will be performed */\n resourceGuardOperationRequests?: string[];\n /** List of replicated regions for Backup Vault */\n replicatedRegions?: string[];\n}\n\nexport function backupVaultSerializer(item: BackupVault): any {\n return {\n monitoringSettings: !item[\"monitoringSettings\"]\n ? item[\"monitoringSettings\"]\n : monitoringSettingsSerializer(item[\"monitoringSettings\"]),\n securitySettings: !item[\"securitySettings\"]\n ? item[\"securitySettings\"]\n : securitySettingsSerializer(item[\"securitySettings\"]),\n storageSettings: !item[\"storageSettings\"]\n ? item[\"storageSettings\"]\n : storageSettingArraySerializer(item[\"storageSettings\"]),\n featureSettings: !item[\"featureSettings\"]\n ? item[\"featureSettings\"]\n : featureSettingsSerializer(item[\"featureSettings\"]),\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n replicatedRegions: !item[\"replicatedRegions\"]\n ? item[\"replicatedRegions\"]\n : item[\"replicatedRegions\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function backupVaultDeserializer(item: any): BackupVault {\n return {\n monitoringSettings: !item[\"monitoringSettings\"]\n ? item[\"monitoringSettings\"]\n : monitoringSettingsDeserializer(item[\"monitoringSettings\"]),\n provisioningState: item[\"provisioningState\"],\n resourceMoveState: item[\"resourceMoveState\"],\n resourceMoveDetails: !item[\"resourceMoveDetails\"]\n ? item[\"resourceMoveDetails\"]\n : resourceMoveDetailsDeserializer(item[\"resourceMoveDetails\"]),\n securitySettings: !item[\"securitySettings\"]\n ? item[\"securitySettings\"]\n : securitySettingsDeserializer(item[\"securitySettings\"]),\n storageSettings: !item[\"storageSettings\"]\n ? item[\"storageSettings\"]\n : storageSettingArrayDeserializer(item[\"storageSettings\"]),\n isVaultProtectedByResourceGuard: item[\"isVaultProtectedByResourceGuard\"],\n featureSettings: !item[\"featureSettings\"]\n ? item[\"featureSettings\"]\n : featureSettingsDeserializer(item[\"featureSettings\"]),\n secureScore: item[\"secureScore\"],\n bcdrSecurityLevel: item[\"bcdrSecurityLevel\"],\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n replicatedRegions: !item[\"replicatedRegions\"]\n ? item[\"replicatedRegions\"]\n : item[\"replicatedRegions\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Monitoring Settings */\nexport interface MonitoringSettings {\n /** Settings for Azure Monitor based alerts */\n azureMonitorAlertSettings?: AzureMonitorAlertSettings;\n}\n\nexport function monitoringSettingsSerializer(item: MonitoringSettings): any {\n return {\n azureMonitorAlertSettings: !item[\"azureMonitorAlertSettings\"]\n ? item[\"azureMonitorAlertSettings\"]\n : azureMonitorAlertSettingsSerializer(item[\"azureMonitorAlertSettings\"]),\n };\n}\n\nexport function monitoringSettingsDeserializer(item: any): MonitoringSettings {\n return {\n azureMonitorAlertSettings: !item[\"azureMonitorAlertSettings\"]\n ? item[\"azureMonitorAlertSettings\"]\n : azureMonitorAlertSettingsDeserializer(item[\"azureMonitorAlertSettings\"]),\n };\n}\n\n/** Settings for Azure Monitor based alerts */\nexport interface AzureMonitorAlertSettings {\n alertsForAllJobFailures?: AlertsState;\n}\n\nexport function azureMonitorAlertSettingsSerializer(item: AzureMonitorAlertSettings): any {\n return { alertsForAllJobFailures: item[\"alertsForAllJobFailures\"] };\n}\n\nexport function azureMonitorAlertSettingsDeserializer(item: any): AzureMonitorAlertSettings {\n return {\n alertsForAllJobFailures: item[\"alertsForAllJobFailures\"],\n };\n}\n\n/** Known values of {@link AlertsState} that the service accepts. */\nexport enum KnownAlertsState {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\",\n}\n\n/** Type of AlertsState */\nexport type AlertsState = string;\n\n/** Provisioning state of the BackupVault resource */\nexport enum KnownProvisioningState {\n /** Failed */\n Failed = \"Failed\",\n /** Provisioning */\n Provisioning = \"Provisioning\",\n /** Succeeded */\n Succeeded = \"Succeeded\",\n /** Unknown */\n Unknown = \"Unknown\",\n /** Updating */\n Updating = \"Updating\",\n}\n\n/**\n * Provisioning state of the BackupVault resource \\\n * {@link KnownProvisioningState} can be used interchangeably with ProvisioningState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Failed** \\\n * **Provisioning** \\\n * **Succeeded** \\\n * **Unknown** \\\n * **Updating**\n */\nexport type ProvisioningState = string;\n\n/** Resource move state for backup vault */\nexport enum KnownResourceMoveState {\n /** Unknown */\n Unknown = \"Unknown\",\n /** InProgress */\n InProgress = \"InProgress\",\n /** PrepareFailed */\n PrepareFailed = \"PrepareFailed\",\n /** CommitFailed */\n CommitFailed = \"CommitFailed\",\n /** Failed */\n Failed = \"Failed\",\n /** PrepareTimedout */\n PrepareTimedout = \"PrepareTimedout\",\n /** CommitTimedout */\n CommitTimedout = \"CommitTimedout\",\n /** CriticalFailure */\n CriticalFailure = \"CriticalFailure\",\n /** PartialSuccess */\n PartialSuccess = \"PartialSuccess\",\n /** MoveSucceeded */\n MoveSucceeded = \"MoveSucceeded\",\n}\n\n/**\n * Resource move state for backup vault \\\n * {@link KnownResourceMoveState} can be used interchangeably with ResourceMoveState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Unknown** \\\n * **InProgress** \\\n * **PrepareFailed** \\\n * **CommitFailed** \\\n * **Failed** \\\n * **PrepareTimedout** \\\n * **CommitTimedout** \\\n * **CriticalFailure** \\\n * **PartialSuccess** \\\n * **MoveSucceeded**\n */\nexport type ResourceMoveState = string;\n\n/** ResourceMoveDetails will be returned in response to GetResource call from ARM */\nexport interface ResourceMoveDetails {\n /** CorrelationId of latest ResourceMove operation attempted */\n operationId?: string;\n /** Start time in UTC of latest ResourceMove operation attempted. ISO 8601 format. */\n startTimeUtc?: string;\n /** Completion time in UTC of latest ResourceMove operation attempted. ISO 8601 format. */\n completionTimeUtc?: string;\n /** ARM resource path of source resource */\n sourceResourcePath?: string;\n /** ARM resource path of target resource used in latest ResourceMove operation */\n targetResourcePath?: string;\n}\n\nexport function resourceMoveDetailsDeserializer(item: any): ResourceMoveDetails {\n return {\n operationId: item[\"operationId\"],\n startTimeUtc: item[\"startTimeUtc\"],\n completionTimeUtc: item[\"completionTimeUtc\"],\n sourceResourcePath: item[\"sourceResourcePath\"],\n targetResourcePath: item[\"targetResourcePath\"],\n };\n}\n\n/** Class containing security settings of vault */\nexport interface SecuritySettings {\n /** Soft delete related settings */\n softDeleteSettings?: SoftDeleteSettings;\n /** Immutability Settings at vault level */\n immutabilitySettings?: ImmutabilitySettings;\n /** Customer Managed Key details of the resource. */\n encryptionSettings?: EncryptionSettings;\n}\n\nexport function securitySettingsSerializer(item: SecuritySettings): any {\n return {\n softDeleteSettings: !item[\"softDeleteSettings\"]\n ? item[\"softDeleteSettings\"]\n : softDeleteSettingsSerializer(item[\"softDeleteSettings\"]),\n immutabilitySettings: !item[\"immutabilitySettings\"]\n ? item[\"immutabilitySettings\"]\n : immutabilitySettingsSerializer(item[\"immutabilitySettings\"]),\n encryptionSettings: !item[\"encryptionSettings\"]\n ? item[\"encryptionSettings\"]\n : encryptionSettingsSerializer(item[\"encryptionSettings\"]),\n };\n}\n\nexport function securitySettingsDeserializer(item: any): SecuritySettings {\n return {\n softDeleteSettings: !item[\"softDeleteSettings\"]\n ? item[\"softDeleteSettings\"]\n : softDeleteSettingsDeserializer(item[\"softDeleteSettings\"]),\n immutabilitySettings: !item[\"immutabilitySettings\"]\n ? item[\"immutabilitySettings\"]\n : immutabilitySettingsDeserializer(item[\"immutabilitySettings\"]),\n encryptionSettings: !item[\"encryptionSettings\"]\n ? item[\"encryptionSettings\"]\n : encryptionSettingsDeserializer(item[\"encryptionSettings\"]),\n };\n}\n\n/** Soft delete related settings */\nexport interface SoftDeleteSettings {\n /** State of soft delete */\n state?: SoftDeleteState;\n /** Soft delete retention duration */\n retentionDurationInDays?: number;\n}\n\nexport function softDeleteSettingsSerializer(item: SoftDeleteSettings): any {\n return { state: item[\"state\"], retentionDurationInDays: item[\"retentionDurationInDays\"] };\n}\n\nexport function softDeleteSettingsDeserializer(item: any): SoftDeleteSettings {\n return {\n state: item[\"state\"],\n retentionDurationInDays: item[\"retentionDurationInDays\"],\n };\n}\n\n/** State of soft delete */\nexport enum KnownSoftDeleteState {\n /** Soft Delete is turned off for the BackupVault */\n Off = \"Off\",\n /** Soft Delete is enabled for the BackupVault but can be turned off */\n On = \"On\",\n /** Soft Delete is permanently enabled for the BackupVault and the setting cannot be changed */\n AlwaysOn = \"AlwaysOn\",\n}\n\n/**\n * State of soft delete \\\n * {@link KnownSoftDeleteState} can be used interchangeably with SoftDeleteState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Off**: Soft Delete is turned off for the BackupVault \\\n * **On**: Soft Delete is enabled for the BackupVault but can be turned off \\\n * **AlwaysOn**: Soft Delete is permanently enabled for the BackupVault and the setting cannot be changed\n */\nexport type SoftDeleteState = string;\n\n/** Immutability Settings at vault level */\nexport interface ImmutabilitySettings {\n /** Immutability state */\n state?: ImmutabilityState;\n}\n\nexport function immutabilitySettingsSerializer(item: ImmutabilitySettings): any {\n return { state: item[\"state\"] };\n}\n\nexport function immutabilitySettingsDeserializer(item: any): ImmutabilitySettings {\n return {\n state: item[\"state\"],\n };\n}\n\n/** Immutability state */\nexport enum KnownImmutabilityState {\n /** Disabled */\n Disabled = \"Disabled\",\n /** Unlocked */\n Unlocked = \"Unlocked\",\n /** Locked */\n Locked = \"Locked\",\n}\n\n/**\n * Immutability state \\\n * {@link KnownImmutabilityState} can be used interchangeably with ImmutabilityState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Disabled** \\\n * **Unlocked** \\\n * **Locked**\n */\nexport type ImmutabilityState = string;\n\n/** Customer Managed Key details of the resource. */\nexport interface EncryptionSettings {\n /** Encryption state of the Backup Vault. */\n state?: EncryptionState;\n /** The properties of the Key Vault which hosts CMK */\n keyVaultProperties?: CmkKeyVaultProperties;\n /** The details of the managed identity used for CMK */\n kekIdentity?: CmkKekIdentity;\n /** Enabling/Disabling the Double Encryption state */\n infrastructureEncryption?: InfrastructureEncryptionState;\n}\n\nexport function encryptionSettingsSerializer(item: EncryptionSettings): any {\n return {\n state: item[\"state\"],\n keyVaultProperties: !item[\"keyVaultProperties\"]\n ? item[\"keyVaultProperties\"]\n : cmkKeyVaultPropertiesSerializer(item[\"keyVaultProperties\"]),\n kekIdentity: !item[\"kekIdentity\"]\n ? item[\"kekIdentity\"]\n : cmkKekIdentitySerializer(item[\"kekIdentity\"]),\n infrastructureEncryption: item[\"infrastructureEncryption\"],\n };\n}\n\nexport function encryptionSettingsDeserializer(item: any): EncryptionSettings {\n return {\n state: item[\"state\"],\n keyVaultProperties: !item[\"keyVaultProperties\"]\n ? item[\"keyVaultProperties\"]\n : cmkKeyVaultPropertiesDeserializer(item[\"keyVaultProperties\"]),\n kekIdentity: !item[\"kekIdentity\"]\n ? item[\"kekIdentity\"]\n : cmkKekIdentityDeserializer(item[\"kekIdentity\"]),\n infrastructureEncryption: item[\"infrastructureEncryption\"],\n };\n}\n\n/** Encryption state of the Backup Vault. */\nexport enum KnownEncryptionState {\n /** CMK encryption is enabled on the Backup Vault */\n Enabled = \"Enabled\",\n /** CMK encryption is disabled on the Backup Vault. User can not set this state once Encryption State is 'Enabled'. */\n Disabled = \"Disabled\",\n /** CMK encryption is in inconsistent state on the Backup Vault. This state indicates that user needs to retry the encryption settings operation immediately to correct the state. */\n Inconsistent = \"Inconsistent\",\n}\n\n/**\n * Encryption state of the Backup Vault. \\\n * {@link KnownEncryptionState} can be used interchangeably with EncryptionState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: CMK encryption is enabled on the Backup Vault \\\n * **Disabled**: CMK encryption is disabled on the Backup Vault. User can not set this state once Encryption State is 'Enabled'. \\\n * **Inconsistent**: CMK encryption is in inconsistent state on the Backup Vault. This state indicates that user needs to retry the encryption settings operation immediately to correct the state.\n */\nexport type EncryptionState = string;\n\n/** The properties of the Key Vault which hosts CMK */\nexport interface CmkKeyVaultProperties {\n /** The key uri of the Customer Managed Key */\n keyUri?: string;\n}\n\nexport function cmkKeyVaultPropertiesSerializer(item: CmkKeyVaultProperties): any {\n return { keyUri: item[\"keyUri\"] };\n}\n\nexport function cmkKeyVaultPropertiesDeserializer(item: any): CmkKeyVaultProperties {\n return {\n keyUri: item[\"keyUri\"],\n };\n}\n\n/** The details of the managed identity used for CMK */\nexport interface CmkKekIdentity {\n /** The identity type. 'SystemAssigned' and 'UserAssigned' are mutually exclusive. 'SystemAssigned' will use implicitly created managed identity. */\n identityType?: IdentityType;\n /** The managed identity to be used which has access permissions to the Key Vault. Provide a value here in case identity types: 'UserAssigned' only. */\n identityId?: string;\n}\n\nexport function cmkKekIdentitySerializer(item: CmkKekIdentity): any {\n return { identityType: item[\"identityType\"], identityId: item[\"identityId\"] };\n}\n\nexport function cmkKekIdentityDeserializer(item: any): CmkKekIdentity {\n return {\n identityType: item[\"identityType\"],\n identityId: item[\"identityId\"],\n };\n}\n\n/** The identity type. 'SystemAssigned' and 'UserAssigned' are mutually exclusive. 'SystemAssigned' will use implicitly created managed identity. */\nexport enum KnownIdentityType {\n /** SystemAssigned */\n SystemAssigned = \"SystemAssigned\",\n /** UserAssigned */\n UserAssigned = \"UserAssigned\",\n}\n\n/**\n * The identity type. 'SystemAssigned' and 'UserAssigned' are mutually exclusive. 'SystemAssigned' will use implicitly created managed identity. \\\n * {@link KnownIdentityType} can be used interchangeably with IdentityType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **SystemAssigned** \\\n * **UserAssigned**\n */\nexport type IdentityType = string;\n\n/** Enabling/Disabling the Double Encryption state */\nexport enum KnownInfrastructureEncryptionState {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * Enabling/Disabling the Double Encryption state \\\n * {@link KnownInfrastructureEncryptionState} can be used interchangeably with InfrastructureEncryptionState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type InfrastructureEncryptionState = string;\n\nexport function storageSettingArraySerializer(result: Array<StorageSetting>): any[] {\n return result.map((item) => {\n return storageSettingSerializer(item);\n });\n}\n\nexport function storageSettingArrayDeserializer(result: Array<StorageSetting>): any[] {\n return result.map((item) => {\n return storageSettingDeserializer(item);\n });\n}\n\n/** Storage setting */\nexport interface StorageSetting {\n /** Gets or sets the type of the datastore. */\n datastoreType?: StorageSettingStoreTypes;\n /** Gets or sets the type. */\n type?: StorageSettingTypes;\n}\n\nexport function storageSettingSerializer(item: StorageSetting): any {\n return { datastoreType: item[\"datastoreType\"], type: item[\"type\"] };\n}\n\nexport function storageSettingDeserializer(item: any): StorageSetting {\n return {\n datastoreType: item[\"datastoreType\"],\n type: item[\"type\"],\n };\n}\n\n/** Gets or sets the type of the datastore. */\nexport enum KnownStorageSettingStoreTypes {\n /** ArchiveStore */\n ArchiveStore = \"ArchiveStore\",\n /** OperationalStore */\n OperationalStore = \"OperationalStore\",\n /** VaultStore */\n VaultStore = \"VaultStore\",\n}\n\n/**\n * Gets or sets the type of the datastore. \\\n * {@link KnownStorageSettingStoreTypes} can be used interchangeably with StorageSettingStoreTypes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ArchiveStore** \\\n * **OperationalStore** \\\n * **VaultStore**\n */\nexport type StorageSettingStoreTypes = string;\n\n/** Gets or sets the type. */\nexport enum KnownStorageSettingTypes {\n /** GeoRedundant */\n GeoRedundant = \"GeoRedundant\",\n /** LocallyRedundant */\n LocallyRedundant = \"LocallyRedundant\",\n /** ZoneRedundant */\n ZoneRedundant = \"ZoneRedundant\",\n}\n\n/**\n * Gets or sets the type. \\\n * {@link KnownStorageSettingTypes} can be used interchangeably with StorageSettingTypes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **GeoRedundant** \\\n * **LocallyRedundant** \\\n * **ZoneRedundant**\n */\nexport type StorageSettingTypes = string;\n\n/** Class containing feature settings of vault */\nexport interface FeatureSettings {\n /** CrossSubscriptionRestore Settings */\n crossSubscriptionRestoreSettings?: CrossSubscriptionRestoreSettings;\n crossRegionRestoreSettings?: CrossRegionRestoreSettings;\n}\n\nexport function featureSettingsSerializer(item: FeatureSettings): any {\n return {\n crossSubscriptionRestoreSettings: !item[\"crossSubscriptionRestoreSettings\"]\n ? item[\"crossSubscriptionRestoreSettings\"]\n : crossSubscriptionRestoreSettingsSerializer(item[\"crossSubscriptionRestoreSettings\"]),\n crossRegionRestoreSettings: !item[\"crossRegionRestoreSettings\"]\n ? item[\"crossRegionRestoreSettings\"]\n : crossRegionRestoreSettingsSerializer(item[\"crossRegionRestoreSettings\"]),\n };\n}\n\nexport function featureSettingsDeserializer(item: any): FeatureSettings {\n return {\n crossSubscriptionRestoreSettings: !item[\"crossSubscriptionRestoreSettings\"]\n ? item[\"crossSubscriptionRestoreSettings\"]\n : crossSubscriptionRestoreSettingsDeserializer(item[\"crossSubscriptionRestoreSettings\"]),\n crossRegionRestoreSettings: !item[\"crossRegionRestoreSettings\"]\n ? item[\"crossRegionRestoreSettings\"]\n : crossRegionRestoreSettingsDeserializer(item[\"crossRegionRestoreSettings\"]),\n };\n}\n\n/** CrossSubscriptionRestore Settings */\nexport interface CrossSubscriptionRestoreSettings {\n /** CrossSubscriptionRestore state */\n state?: CrossSubscriptionRestoreState;\n}\n\nexport function crossSubscriptionRestoreSettingsSerializer(\n item: CrossSubscriptionRestoreSettings,\n): any {\n return { state: item[\"state\"] };\n}\n\nexport function crossSubscriptionRestoreSettingsDeserializer(\n item: any,\n): CrossSubscriptionRestoreSettings {\n return {\n state: item[\"state\"],\n };\n}\n\n/** CrossSubscriptionRestore state */\nexport enum KnownCrossSubscriptionRestoreState {\n /** Disabled */\n Disabled = \"Disabled\",\n /** PermanentlyDisabled */\n PermanentlyDisabled = \"PermanentlyDisabled\",\n /** Enabled */\n Enabled = \"Enabled\",\n}\n\n/**\n * CrossSubscriptionRestore state \\\n * {@link KnownCrossSubscriptionRestoreState} can be used interchangeably with CrossSubscriptionRestoreState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Disabled** \\\n * **PermanentlyDisabled** \\\n * **Enabled**\n */\nexport type CrossSubscriptionRestoreState = string;\n\n/** model interface CrossRegionRestoreSettings */\nexport interface CrossRegionRestoreSettings {\n /** CrossRegionRestore state */\n state?: CrossRegionRestoreState;\n}\n\nexport function crossRegionRestoreSettingsSerializer(item: CrossRegionRestoreSettings): any {\n return { state: item[\"state\"] };\n}\n\nexport function crossRegionRestoreSettingsDeserializer(item: any): CrossRegionRestoreSettings {\n return {\n state: item[\"state\"],\n };\n}\n\n/** CrossRegionRestore state */\nexport enum KnownCrossRegionRestoreState {\n /** Disabled */\n Disabled = \"Disabled\",\n /** Enabled */\n Enabled = \"Enabled\",\n}\n\n/**\n * CrossRegionRestore state \\\n * {@link KnownCrossRegionRestoreState} can be used interchangeably with CrossRegionRestoreState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Disabled** \\\n * **Enabled**\n */\nexport type CrossRegionRestoreState = string;\n\n/** Secure Score of Backup Vault */\nexport enum KnownSecureScoreLevel {\n /** None */\n None = \"None\",\n /** Minimum */\n Minimum = \"Minimum\",\n /** Adequate */\n Adequate = \"Adequate\",\n /** Maximum */\n Maximum = \"Maximum\",\n /** NotSupported */\n NotSupported = \"NotSupported\",\n}\n\n/**\n * Secure Score of Backup Vault \\\n * {@link KnownSecureScoreLevel} can be used interchangeably with SecureScoreLevel,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **None** \\\n * **Minimum** \\\n * **Adequate** \\\n * **Maximum** \\\n * **NotSupported**\n */\nexport type SecureScoreLevel = string;\n\n/** Security Level of Backup Vault */\nexport enum KnownBcdrSecurityLevel {\n /** Poor */\n Poor = \"Poor\",\n /** Fair */\n Fair = \"Fair\",\n /** Good */\n Good = \"Good\",\n /** Excellent */\n Excellent = \"Excellent\",\n /** NotSupported */\n NotSupported = \"NotSupported\",\n}\n\n/**\n * Security Level of Backup Vault \\\n * {@link KnownBcdrSecurityLevel} can be used interchangeably with BcdrSecurityLevel,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Poor** \\\n * **Fair** \\\n * **Good** \\\n * **Excellent** \\\n * **NotSupported**\n */\nexport type BcdrSecurityLevel = string;\n\n/** Identity details */\nexport interface DppIdentityDetails {\n /** The object ID of the service principal object for the managed identity that is used to grant role-based access to an Azure resource. */\n readonly principalId?: string;\n /** A Globally Unique Identifier (GUID) that represents the Azure AD tenant where the resource is now a member. */\n readonly tenantId?: string;\n /** The identityType which can be either SystemAssigned, UserAssigned, 'SystemAssigned,UserAssigned' or None */\n type?: string;\n /** Gets or sets the user assigned identities. */\n userAssignedIdentities?: Record<string, UserAssignedIdentity>;\n}\n\nexport function dppIdentityDetailsSerializer(item: DppIdentityDetails): any {\n return {\n type: item[\"type\"],\n userAssignedIdentities: !item[\"userAssignedIdentities\"]\n ? item[\"userAssignedIdentities\"]\n : userAssignedIdentityRecordSerializer(item[\"userAssignedIdentities\"]),\n };\n}\n\nexport function dppIdentityDetailsDeserializer(item: any): DppIdentityDetails {\n return {\n principalId: item[\"principalId\"],\n tenantId: item[\"tenantId\"],\n type: item[\"type\"],\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 item;\n}\n\nexport function userAssignedIdentityDeserializer(item: any): UserAssignedIdentity {\n return {\n principalId: item[\"principalId\"],\n clientId: item[\"clientId\"],\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/** Deleted Backup Vault Resource (available from version 2025-09-01) */\nexport interface DeletedBackupVaultResource extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: DeletedBackupVault;\n}\n\nexport function deletedBackupVaultResourceDeserializer(item: any): DeletedBackupVaultResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : deletedBackupVaultDeserializer(item[\"properties\"]),\n };\n}\n\n/** Deleted Backup Vault - uses composition with BackupVault and additional deletion metadata */\nexport interface DeletedBackupVault {\n /** Monitoring Settings */\n monitoringSettings?: MonitoringSettings;\n /** Provisioning state of the BackupVault resource */\n readonly provisioningState?: ProvisioningState;\n /** Resource move state for backup vault */\n readonly resourceMoveState?: ResourceMoveState;\n /** Resource move details for backup vault */\n readonly resourceMoveDetails?: ResourceMoveDetails;\n /** Security Settings */\n securitySettings?: SecuritySettings;\n /** Storage Settings */\n storageSettings?: StorageSetting[];\n /** Is vault protected by resource guard */\n readonly isVaultProtectedByResourceGuard?: boolean;\n /** Feature Settings */\n featureSettings?: FeatureSettings;\n /** Secure Score of Backup Vault */\n readonly secureScore?: SecureScoreLevel;\n /** Security Level of Backup Vault */\n readonly bcdrSecurityLevel?: BcdrSecurityLevel;\n /** ResourceGuardOperationRequests on which LAC check will be performed */\n resourceGuardOperationRequests?: string[];\n /** List of replicated regions for Backup Vault */\n replicatedRegions?: string[];\n /** Resource Id of the original backup vault */\n readonly originalBackupVaultId: string;\n /** Resource name of the original backup vault */\n readonly originalBackupVaultName: string;\n /** Resource path of the original backup vault */\n readonly originalBackupVaultResourcePath: string;\n /** Deletion info for the tracked resource (Backup Vault) */\n readonly resourceDeletionInfo: ResourceDeletionInfo;\n}\n\nexport function deletedBackupVaultDeserializer(item: any): DeletedBackupVault {\n return {\n monitoringSettings: !item[\"monitoringSettings\"]\n ? item[\"monitoringSettings\"]\n : monitoringSettingsDeserializer(item[\"monitoringSettings\"]),\n provisioningState: item[\"provisioningState\"],\n resourceMoveState: item[\"resourceMoveState\"],\n resourceMoveDetails: !item[\"resourceMoveDetails\"]\n ? item[\"resourceMoveDetails\"]\n : resourceMoveDetailsDeserializer(item[\"resourceMoveDetails\"]),\n securitySettings: !item[\"securitySettings\"]\n ? item[\"securitySettings\"]\n : securitySettingsDeserializer(item[\"securitySettings\"]),\n storageSettings: !item[\"storageSettings\"]\n ? item[\"storageSettings\"]\n : storageSettingArrayDeserializer(item[\"storageSettings\"]),\n isVaultProtectedByResourceGuard: item[\"isVaultProtectedByResourceGuard\"],\n featureSettings: !item[\"featureSettings\"]\n ? item[\"featureSettings\"]\n : featureSettingsDeserializer(item[\"featureSettings\"]),\n secureScore: item[\"secureScore\"],\n bcdrSecurityLevel: item[\"bcdrSecurityLevel\"],\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n replicatedRegions: !item[\"replicatedRegions\"]\n ? item[\"replicatedRegions\"]\n : item[\"replicatedRegions\"].map((p: any) => {\n return p;\n }),\n originalBackupVaultId: item[\"originalBackupVaultId\"],\n originalBackupVaultName: item[\"originalBackupVaultName\"],\n originalBackupVaultResourcePath: item[\"originalBackupVaultResourcePath\"],\n resourceDeletionInfo: resourceDeletionInfoDeserializer(item[\"resourceDeletionInfo\"]),\n };\n}\n\n/** Deletion info for a tracked resource (Backup Vault) */\nexport interface ResourceDeletionInfo {\n /** Specifies time of deletion for the tracked resource (Backup Vault) */\n readonly deletionTime?: Date;\n /** Specifies the scheduled purge time for the tracked resource (Backup Vault) */\n readonly scheduledPurgeTime?: Date;\n /** Delete activity ID for troubleshooting the deletion of the tracked resource */\n readonly deleteActivityId?: string;\n}\n\nexport function resourceDeletionInfoDeserializer(item: any): ResourceDeletionInfo {\n return {\n deletionTime: !item[\"deletionTime\"] ? item[\"deletionTime\"] : new Date(item[\"deletionTime\"]),\n scheduledPurgeTime: !item[\"scheduledPurgeTime\"]\n ? item[\"scheduledPurgeTime\"]\n : new Date(item[\"scheduledPurgeTime\"]),\n deleteActivityId: item[\"deleteActivityId\"],\n };\n}\n\n/** The response of a DeletedBackupVaultResource list operation. */\nexport interface _DeletedBackupVaultResourceListResult {\n /** The DeletedBackupVaultResource items on this page */\n value: DeletedBackupVaultResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _deletedBackupVaultResourceListResultDeserializer(\n item: any,\n): _DeletedBackupVaultResourceListResult {\n return {\n value: deletedBackupVaultResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function deletedBackupVaultResourceArrayDeserializer(\n result: Array<DeletedBackupVaultResource>,\n): any[] {\n return result.map((item) => {\n return deletedBackupVaultResourceDeserializer(item);\n });\n}\n\n/** Base resource under Microsoft.DataProtection provider namespace */\nexport interface DppBaseResource extends ProxyResource {}\n\nexport function dppBaseResourceDeserializer(item: any): DppBaseResource {\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/** Base for all lists of V2 resources. */\nexport interface _DppBaseResourceList {\n /** The DppBaseResource items on this page */\n value: DppBaseResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _dppBaseResourceListDeserializer(item: any): _DppBaseResourceList {\n return {\n value: dppBaseResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function dppBaseResourceArrayDeserializer(result: Array<DppBaseResource>): any[] {\n return result.map((item) => {\n return dppBaseResourceDeserializer(item);\n });\n}\n\n/** Concrete tracked resource types can be created by aliasing this type using a specific property type. */\nexport interface ResourceGuardResource extends TrackedResource {\n /** ResourceGuardResource properties */\n properties?: ResourceGuard;\n /** Optional ETag. */\n eTag?: string;\n}\n\nexport function resourceGuardResourceSerializer(item: ResourceGuardResource): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : resourceGuardSerializer(item[\"properties\"]),\n eTag: item[\"eTag\"],\n };\n}\n\nexport function resourceGuardResourceDeserializer(item: any): ResourceGuardResource {\n return {\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : resourceGuardDeserializer(item[\"properties\"]),\n eTag: item[\"eTag\"],\n };\n}\n\n/** model interface ResourceGuard */\nexport interface ResourceGuard {\n /** Provisioning state of the BackupVault resource */\n readonly provisioningState?: ProvisioningState;\n /** This flag indicates whether auto approval is allowed or not. */\n readonly allowAutoApprovals?: boolean;\n /** {readonly} List of operation details those are protected by the ResourceGuard resource */\n readonly resourceGuardOperations?: ResourceGuardOperation[];\n /** List of critical operations which are not protected by this resourceGuard */\n vaultCriticalOperationExclusionList?: string[];\n /** Description about the pre-req steps to perform all the critical operations. */\n readonly description?: string;\n}\n\nexport function resourceGuardSerializer(item: ResourceGuard): any {\n return {\n vaultCriticalOperationExclusionList: !item[\"vaultCriticalOperationExclusionList\"]\n ? item[\"vaultCriticalOperationExclusionList\"]\n : item[\"vaultCriticalOperationExclusionList\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function resourceGuardDeserializer(item: any): ResourceGuard {\n return {\n provisioningState: item[\"provisioningState\"],\n allowAutoApprovals: item[\"allowAutoApprovals\"],\n resourceGuardOperations: !item[\"resourceGuardOperations\"]\n ? item[\"resourceGuardOperations\"]\n : resourceGuardOperationArrayDeserializer(item[\"resourceGuardOperations\"]),\n vaultCriticalOperationExclusionList: !item[\"vaultCriticalOperationExclusionList\"]\n ? item[\"vaultCriticalOperationExclusionList\"]\n : item[\"vaultCriticalOperationExclusionList\"].map((p: any) => {\n return p;\n }),\n description: item[\"description\"],\n };\n}\n\nexport function resourceGuardOperationArrayDeserializer(\n result: Array<ResourceGuardOperation>,\n): any[] {\n return result.map((item) => {\n return resourceGuardOperationDeserializer(item);\n });\n}\n\n/** This class contains all the details about a critical operation. */\nexport interface ResourceGuardOperation {\n /** Name of the critical operation. */\n readonly vaultCriticalOperation?: string;\n /** Type of resource request. */\n readonly requestResourceType?: string;\n}\n\nexport function resourceGuardOperationDeserializer(item: any): ResourceGuardOperation {\n return {\n vaultCriticalOperation: item[\"vaultCriticalOperation\"],\n requestResourceType: item[\"requestResourceType\"],\n };\n}\n\n/** Patch Request content for Microsoft.DataProtection Resource Guard resources */\nexport interface PatchResourceGuardInput {\n /** Resource Guard tags. */\n tags?: Record<string, string>;\n}\n\nexport function patchResourceGuardInputSerializer(item: PatchResourceGuardInput): any {\n return { tags: item[\"tags\"] };\n}\n\n/** List of ResourceGuard resources */\nexport interface _ResourceGuardResourceList extends DppTrackedResourceList {\n /** List of resources. */\n value?: ResourceGuardResource[];\n}\n\nexport function _resourceGuardResourceListDeserializer(item: any): _ResourceGuardResourceList {\n return {\n nextLink: item[\"nextLink\"],\n value: !item[\"value\"] ? item[\"value\"] : resourceGuardResourceArrayDeserializer(item[\"value\"]),\n };\n}\n\nexport function resourceGuardResourceArraySerializer(result: Array<ResourceGuardResource>): any[] {\n return result.map((item) => {\n return resourceGuardResourceSerializer(item);\n });\n}\n\nexport function resourceGuardResourceArrayDeserializer(\n result: Array<ResourceGuardResource>,\n): any[] {\n return result.map((item) => {\n return resourceGuardResourceDeserializer(item);\n });\n}\n\n/** model interface DppTrackedResourceList */\nexport interface DppTrackedResourceList {\n /** The uri to fetch the next page of resources. Call ListNext() fetches next page of resources. */\n nextLink?: string;\n}\n\nexport function dppTrackedResourceListDeserializer(item: any): DppTrackedResourceList {\n return {\n nextLink: item[\"nextLink\"],\n };\n}\n\n/** Patch Request content for Microsoft.DataProtection resources */\nexport interface PatchResourceRequestInput {\n /** Input Managed Identity Details */\n identity?: DppIdentityDetails;\n /** Resource properties. */\n properties?: PatchBackupVaultInput;\n /** Resource tags. */\n tags?: Record<string, string>;\n}\n\nexport function patchResourceRequestInputSerializer(item: PatchResourceRequestInput): any {\n return {\n identity: !item[\"identity\"] ? item[\"identity\"] : dppIdentityDetailsSerializer(item[\"identity\"]),\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : patchBackupVaultInputSerializer(item[\"properties\"]),\n tags: item[\"tags\"],\n };\n}\n\n/** Backup Vault Contract for Patch Backup Vault API. */\nexport interface PatchBackupVaultInput {\n /** Monitoring Settings */\n monitoringSettings?: MonitoringSettings;\n /** Security Settings */\n securitySettings?: SecuritySettings;\n /** Feature Settings */\n featureSettings?: FeatureSettings;\n /** ResourceGuardOperationRequests on which LAC check will be performed */\n resourceGuardOperationRequests?: string[];\n}\n\nexport function patchBackupVaultInputSerializer(item: PatchBackupVaultInput): any {\n return {\n monitoringSettings: !item[\"monitoringSettings\"]\n ? item[\"monitoringSettings\"]\n : monitoringSettingsSerializer(item[\"monitoringSettings\"]),\n securitySettings: !item[\"securitySettings\"]\n ? item[\"securitySettings\"]\n : securitySettingsSerializer(item[\"securitySettings\"]),\n featureSettings: !item[\"featureSettings\"]\n ? item[\"featureSettings\"]\n : featureSettingsSerializer(item[\"featureSettings\"]),\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** List of BackupVault resources */\nexport interface _BackupVaultResourceList extends DppResourceList {\n /** List of resources. */\n value?: BackupVaultResource[];\n}\n\nexport function _backupVaultResourceListDeserializer(item: any): _BackupVaultResourceList {\n return {\n nextLink: item[\"nextLink\"],\n value: !item[\"value\"] ? item[\"value\"] : backupVaultResourceArrayDeserializer(item[\"value\"]),\n };\n}\n\nexport function backupVaultResourceArraySerializer(result: Array<BackupVaultResource>): any[] {\n return result.map((item) => {\n return backupVaultResourceSerializer(item);\n });\n}\n\nexport function backupVaultResourceArrayDeserializer(result: Array<BackupVaultResource>): any[] {\n return result.map((item) => {\n return backupVaultResourceDeserializer(item);\n });\n}\n\n/** CheckNameAvailability Request */\nexport interface CheckNameAvailabilityRequest {\n /** Resource name for which availability needs to be checked */\n name?: string;\n /** Describes the Resource type: Microsoft.DataProtection/BackupVaults */\n type?: string;\n}\n\nexport function checkNameAvailabilityRequestSerializer(item: CheckNameAvailabilityRequest): any {\n return { name: item[\"name\"], type: item[\"type\"] };\n}\n\n/** CheckNameAvailability Result */\nexport interface CheckNameAvailabilityResult {\n /** Gets or sets the message. */\n message?: string;\n /** Gets or sets a value indicating whether [name available]. */\n nameAvailable?: boolean;\n /** Gets or sets the reason. */\n reason?: string;\n}\n\nexport function checkNameAvailabilityResultDeserializer(item: any): CheckNameAvailabilityResult {\n return {\n message: item[\"message\"],\n nameAvailable: item[\"nameAvailable\"],\n reason: item[\"reason\"],\n };\n}\n\n/** Operation Resource */\nexport interface OperationResource {\n /** End time of the operation */\n endTime?: Date;\n /**\n * Required if status == failed or status == canceled. This is the OData v4 error format, used by the RPC and will go into the v2.2 Azure REST API guidelines.\n * The full set of optional properties (e.g. inner errors / details) can be found in the \"Error Response\" section.\n */\n error?: ErrorModel;\n /** It should match what is used to GET the operation result */\n id?: string;\n /** It must match the last segment of the \"id\" field, and will typically be a GUID / system generated value */\n name?: string;\n /** End time of the operation */\n properties?: OperationExtendedInfoUnion;\n /** Start time of the operation */\n startTime?: Date;\n status?: string;\n}\n\nexport function operationResourceDeserializer(item: any): OperationResource {\n return {\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n error: !item[\"error\"] ? item[\"error\"] : errorDeserializer(item[\"error\"]),\n id: item[\"id\"],\n name: item[\"name\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : operationExtendedInfoUnionDeserializer(item[\"properties\"]),\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n status: item[\"status\"],\n };\n}\n\n/** The result for export jobs containing blob details. */\nexport interface ExportJobsResult {\n /** URL of the blob into which the serialized string of list of jobs is exported. */\n readonly blobUrl?: string;\n /** SAS key to access the blob. */\n readonly blobSasKey?: string;\n /** URL of the blob into which the ExcelFile is uploaded. */\n readonly excelFileBlobUrl?: string;\n /** SAS key to access the ExcelFile blob. */\n readonly excelFileBlobSasKey?: string;\n}\n\nexport function exportJobsResultDeserializer(item: any): ExportJobsResult {\n return {\n blobUrl: item[\"blobUrl\"],\n blobSasKey: item[\"blobSasKey\"],\n excelFileBlobUrl: item[\"excelFileBlobUrl\"],\n excelFileBlobSasKey: item[\"excelFileBlobSasKey\"],\n };\n}\n\n/** BaseBackupPolicy resource */\nexport interface BaseBackupPolicyResource extends ProxyResource {\n /** BaseBackupPolicyResource properties */\n properties?: BaseBackupPolicyUnion;\n}\n\nexport function baseBackupPolicyResourceSerializer(item: BaseBackupPolicyResource): any {\n return {\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : baseBackupPolicyUnionSerializer(item[\"properties\"]),\n };\n}\n\nexport function baseBackupPolicyResourceDeserializer(item: any): BaseBackupPolicyResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : baseBackupPolicyUnionDeserializer(item[\"properties\"]),\n };\n}\n\n/** BackupPolicy base */\nexport interface BaseBackupPolicy {\n /** Type of datasource for the backup management */\n datasourceTypes: string[];\n objectType: string;\n}\n\nexport function baseBackupPolicySerializer(item: BaseBackupPolicy): any {\n return {\n datasourceTypes: item[\"datasourceTypes\"].map((p: any) => {\n return p;\n }),\n objectType: item[\"objectType\"],\n };\n}\n\nexport function baseBackupPolicyDeserializer(item: any): BaseBackupPolicy {\n return {\n datasourceTypes: item[\"datasourceTypes\"].map((p: any) => {\n return p;\n }),\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for BaseBackupPolicyUnion */\nexport type BaseBackupPolicyUnion = BackupPolicy | BaseBackupPolicy;\n\nexport function baseBackupPolicyUnionSerializer(item: BaseBackupPolicyUnion): any {\n switch (item.objectType) {\n case \"BackupPolicy\":\n return backupPolicySerializer(item as BackupPolicy);\n\n default:\n return baseBackupPolicySerializer(item);\n }\n}\n\nexport function baseBackupPolicyUnionDeserializer(item: any): BaseBackupPolicyUnion {\n switch (item[\"objectType\"]) {\n case \"BackupPolicy\":\n return backupPolicyDeserializer(item as BackupPolicy);\n\n default:\n return baseBackupPolicyDeserializer(item);\n }\n}\n\n/** Rule based backup policy */\nexport interface BackupPolicy extends BaseBackupPolicy {\n /** Policy rule dictionary that contains rules for each backuptype i.e Full/Incremental/Logs etc */\n policyRules: BasePolicyRuleUnion[];\n objectType: \"BackupPolicy\";\n}\n\nexport function backupPolicySerializer(item: BackupPolicy): any {\n return {\n datasourceTypes: item[\"datasourceTypes\"].map((p: any) => {\n return p;\n }),\n objectType: item[\"objectType\"],\n policyRules: basePolicyRuleUnionArraySerializer(item[\"policyRules\"]),\n };\n}\n\nexport function backupPolicyDeserializer(item: any): BackupPolicy {\n return {\n datasourceTypes: item[\"datasourceTypes\"].map((p: any) => {\n return p;\n }),\n objectType: item[\"objectType\"],\n policyRules: basePolicyRuleUnionArrayDeserializer(item[\"policyRules\"]),\n };\n}\n\nexport function basePolicyRuleUnionArraySerializer(result: Array<BasePolicyRuleUnion>): any[] {\n return result.map((item) => {\n return basePolicyRuleUnionSerializer(item);\n });\n}\n\nexport function basePolicyRuleUnionArrayDeserializer(result: Array<BasePolicyRuleUnion>): any[] {\n return result.map((item) => {\n return basePolicyRuleUnionDeserializer(item);\n });\n}\n\n/** BasePolicy Rule */\nexport interface BasePolicyRule {\n name: string;\n objectType: string;\n}\n\nexport function basePolicyRuleSerializer(item: BasePolicyRule): any {\n return { name: item[\"name\"], objectType: item[\"objectType\"] };\n}\n\nexport function basePolicyRuleDeserializer(item: any): BasePolicyRule {\n return {\n name: item[\"name\"],\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for BasePolicyRuleUnion */\nexport type BasePolicyRuleUnion = AzureBackupRule | AzureRetentionRule | BasePolicyRule;\n\nexport function basePolicyRuleUnionSerializer(item: BasePolicyRuleUnion): any {\n switch (item.objectType) {\n case \"AzureBackupRule\":\n return azureBackupRuleSerializer(item as AzureBackupRule);\n\n case \"AzureRetentionRule\":\n return azureRetentionRuleSerializer(item as AzureRetentionRule);\n\n default:\n return basePolicyRuleSerializer(item);\n }\n}\n\nexport function basePolicyRuleUnionDeserializer(item: any): BasePolicyRuleUnion {\n switch (item[\"objectType\"]) {\n case \"AzureBackupRule\":\n return azureBackupRuleDeserializer(item as AzureBackupRule);\n\n case \"AzureRetentionRule\":\n return azureRetentionRuleDeserializer(item as AzureRetentionRule);\n\n default:\n return basePolicyRuleDeserializer(item);\n }\n}\n\n/** Azure backup rule */\nexport interface AzureBackupRule extends BasePolicyRule {\n /** BackupParameters base */\n backupParameters?: BackupParametersUnion;\n /** DataStoreInfo base */\n dataStore: DataStoreInfoBase;\n /** Trigger context */\n trigger: TriggerContextUnion;\n objectType: \"AzureBackupRule\";\n}\n\nexport function azureBackupRuleSerializer(item: AzureBackupRule): any {\n return {\n name: item[\"name\"],\n objectType: item[\"objectType\"],\n backupParameters: !item[\"backupParameters\"]\n ? item[\"backupParameters\"]\n : backupParametersUnionSerializer(item[\"backupParameters\"]),\n dataStore: dataStoreInfoBaseSerializer(item[\"dataStore\"]),\n trigger: triggerContextUnionSerializer(item[\"trigger\"]),\n };\n}\n\nexport function azureBackupRuleDeserializer(item: any): AzureBackupRule {\n return {\n name: item[\"name\"],\n objectType: item[\"objectType\"],\n backupParameters: !item[\"backupParameters\"]\n ? item[\"backupParameters\"]\n : backupParametersUnionDeserializer(item[\"backupParameters\"]),\n dataStore: dataStoreInfoBaseDeserializer(item[\"dataStore\"]),\n trigger: triggerContextUnionDeserializer(item[\"trigger\"]),\n };\n}\n\n/** BackupParameters base */\nexport interface BackupParameters {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: AzureBackupParams */\n objectType: string;\n}\n\nexport function backupParametersSerializer(item: BackupParameters): any {\n return { objectType: item[\"objectType\"] };\n}\n\nexport function backupParametersDeserializer(item: any): BackupParameters {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for BackupParametersUnion */\nexport type BackupParametersUnion = AzureBackupParams | BackupParameters;\n\nexport function backupParametersUnionSerializer(item: BackupParametersUnion): any {\n switch (item.objectType) {\n case \"AzureBackupParams\":\n return azureBackupParamsSerializer(item as AzureBackupParams);\n\n default:\n return backupParametersSerializer(item);\n }\n}\n\nexport function backupParametersUnionDeserializer(item: any): BackupParametersUnion {\n switch (item[\"objectType\"]) {\n case \"AzureBackupParams\":\n return azureBackupParamsDeserializer(item as AzureBackupParams);\n\n default:\n return backupParametersDeserializer(item);\n }\n}\n\n/** Azure backup parameters */\nexport interface AzureBackupParams extends BackupParameters {\n /** BackupType ; Full/Incremental etc */\n backupType: string;\n /** Type of the specific object - used for deserializing */\n objectType: \"AzureBackupParams\";\n}\n\nexport function azureBackupParamsSerializer(item: AzureBackupParams): any {\n return { objectType: item[\"objectType\"], backupType: item[\"backupType\"] };\n}\n\nexport function azureBackupParamsDeserializer(item: any): AzureBackupParams {\n return {\n objectType: item[\"objectType\"],\n backupType: item[\"backupType\"],\n };\n}\n\n/** DataStoreInfo base */\nexport interface DataStoreInfoBase {\n /** type of datastore; Operational/Vault/Archive */\n dataStoreType: DataStoreTypes;\n /** Type of Datasource object, used to initialize the right inherited type */\n objectType: string;\n}\n\nexport function dataStoreInfoBaseSerializer(item: DataStoreInfoBase): any {\n return { dataStoreType: item[\"dataStoreType\"], objectType: item[\"objectType\"] };\n}\n\nexport function dataStoreInfoBaseDeserializer(item: any): DataStoreInfoBase {\n return {\n dataStoreType: item[\"dataStoreType\"],\n objectType: item[\"objectType\"],\n };\n}\n\n/** Trigger context */\nexport interface TriggerContext {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: AdhocBasedTriggerContext, ScheduleBasedTriggerContext */\n objectType: string;\n}\n\nexport function triggerContextSerializer(item: TriggerContext): any {\n return { objectType: item[\"objectType\"] };\n}\n\nexport function triggerContextDeserializer(item: any): TriggerContext {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for TriggerContextUnion */\nexport type TriggerContextUnion =\n | AdhocBasedTriggerContext\n | ScheduleBasedTriggerContext\n | TriggerContext;\n\nexport function triggerContextUnionSerializer(item: TriggerContextUnion): any {\n switch (item.objectType) {\n case \"AdhocBasedTriggerContext\":\n return adhocBasedTriggerContextSerializer(item as AdhocBasedTriggerContext);\n\n case \"ScheduleBasedTriggerContext\":\n return scheduleBasedTriggerContextSerializer(item as ScheduleBasedTriggerContext);\n\n default:\n return triggerContextSerializer(item);\n }\n}\n\nexport function triggerContextUnionDeserializer(item: any): TriggerContextUnion {\n switch (item[\"objectType\"]) {\n case \"AdhocBasedTriggerContext\":\n return adhocBasedTriggerContextDeserializer(item as AdhocBasedTriggerContext);\n\n case \"ScheduleBasedTriggerContext\":\n return scheduleBasedTriggerContextDeserializer(item as ScheduleBasedTriggerContext);\n\n default:\n return triggerContextDeserializer(item);\n }\n}\n\n/** Adhoc trigger context */\nexport interface AdhocBasedTriggerContext extends TriggerContext {\n /** Tagging Criteria containing retention tag for adhoc backup. */\n taggingCriteria: AdhocBasedTaggingCriteria;\n /** Type of the specific object - used for deserializing */\n objectType: \"AdhocBasedTriggerContext\";\n}\n\nexport function adhocBasedTriggerContextSerializer(item: AdhocBasedTriggerContext): any {\n return {\n objectType: item[\"objectType\"],\n taggingCriteria: adhocBasedTaggingCriteriaSerializer(item[\"taggingCriteria\"]),\n };\n}\n\nexport function adhocBasedTriggerContextDeserializer(item: any): AdhocBasedTriggerContext {\n return {\n objectType: item[\"objectType\"],\n taggingCriteria: adhocBasedTaggingCriteriaDeserializer(item[\"taggingCriteria\"]),\n };\n}\n\n/** Adhoc backup tagging criteria */\nexport interface AdhocBasedTaggingCriteria {\n /** Retention tag information */\n tagInfo?: RetentionTag;\n}\n\nexport function adhocBasedTaggingCriteriaSerializer(item: AdhocBasedTaggingCriteria): any {\n return { tagInfo: !item[\"tagInfo\"] ? item[\"tagInfo\"] : retentionTagSerializer(item[\"tagInfo\"]) };\n}\n\nexport function adhocBasedTaggingCriteriaDeserializer(item: any): AdhocBasedTaggingCriteria {\n return {\n tagInfo: !item[\"tagInfo\"] ? item[\"tagInfo\"] : retentionTagDeserializer(item[\"tagInfo\"]),\n };\n}\n\n/** Retention tag */\nexport interface RetentionTag {\n /** Retention Tag version. */\n readonly eTag?: string;\n /** Retention Tag version. */\n readonly id?: string;\n /** Retention Tag Name to relate it to retention rule. */\n tagName: string;\n}\n\nexport function retentionTagSerializer(item: RetentionTag): any {\n return { tagName: item[\"tagName\"] };\n}\n\nexport function retentionTagDeserializer(item: any): RetentionTag {\n return {\n eTag: item[\"eTag\"],\n id: item[\"id\"],\n tagName: item[\"tagName\"],\n };\n}\n\n/** Schedule based trigger context */\nexport interface ScheduleBasedTriggerContext extends TriggerContext {\n /** Schedule for this backup */\n schedule: BackupSchedule;\n /** List of tags that can be applicable for given schedule. */\n taggingCriteria: TaggingCriteria[];\n /** Type of the specific object - used for deserializing */\n objectType: \"ScheduleBasedTriggerContext\";\n}\n\nexport function scheduleBasedTriggerContextSerializer(item: ScheduleBasedTriggerContext): any {\n return {\n objectType: item[\"objectType\"],\n schedule: backupScheduleSerializer(item[\"schedule\"]),\n taggingCriteria: taggingCriteriaArraySerializer(item[\"taggingCriteria\"]),\n };\n}\n\nexport function scheduleBasedTriggerContextDeserializer(item: any): ScheduleBasedTriggerContext {\n return {\n objectType: item[\"objectType\"],\n schedule: backupScheduleDeserializer(item[\"schedule\"]),\n taggingCriteria: taggingCriteriaArrayDeserializer(item[\"taggingCriteria\"]),\n };\n}\n\n/** Schedule for backup */\nexport interface BackupSchedule {\n /**\n * Repeating time intervals that define the backup schedule.\n *\n * Each value must follow the format: `R/YYYY-MM-DDThh:mm:ss[.fff][Z|(+/-)hh:mm]/Duration`\n *\n * Only the exact formats listed below are supported. Other ISO 8601 variations are not accepted.\n *\n * Supported time formats:\n * - `Thh:mm:ss.fff` (with milliseconds)\n * - `Thh:mm:ss` (with seconds)\n * - `Thh:mm` (hours and minutes only)\n *\n * A timezone indicator (`Z`, `+hh:mm`, or `-hh:mm`) may be appended to any of the above.\n *\n * Unsupported formats include compact notation such as `T1430`, `T143045`, or `T14.5`.\n *\n * Examples:\n * - `R/2023-10-15T14:30:00Z/P1W`\n * - `R/2023-10-15T14:30:45.123+05:30/P1D`\n * - `R/2023-10-15T14:30Z/P1D`\n */\n repeatingTimeIntervals: string[];\n /**\n * Time Zone for a schedule.\n *\n * Supported timezone indicators include:\n * - 'Z' for UTC\n * - '+00:00'\n * - '+05:30'\n * - '-08:00'\n *\n * Examples:\n * - 2023-10-15T14:30:45Z\n * - 2023-10-15T14:30:45.123+05:30\n * - 2023-10-15T14:30-08:00\n */\n timeZone?: string;\n}\n\nexport function backupScheduleSerializer(item: BackupSchedule): any {\n return {\n repeatingTimeIntervals: item[\"repeatingTimeIntervals\"].map((p: any) => {\n return p;\n }),\n timeZone: item[\"timeZone\"],\n };\n}\n\nexport function backupScheduleDeserializer(item: any): BackupSchedule {\n return {\n repeatingTimeIntervals: item[\"repeatingTimeIntervals\"].map((p: any) => {\n return p;\n }),\n timeZone: item[\"timeZone\"],\n };\n}\n\nexport function taggingCriteriaArraySerializer(result: Array<TaggingCriteria>): any[] {\n return result.map((item) => {\n return taggingCriteriaSerializer(item);\n });\n}\n\nexport function taggingCriteriaArrayDeserializer(result: Array<TaggingCriteria>): any[] {\n return result.map((item) => {\n return taggingCriteriaDeserializer(item);\n });\n}\n\n/** Tagging criteria */\nexport interface TaggingCriteria {\n /** Criteria which decides whether the tag can be applied to a triggered backup. */\n criteria?: BackupCriteriaUnion[];\n /** Specifies if tag is default. */\n isDefault: boolean;\n /** Retention Tag priority. */\n taggingPriority: number;\n /** Retention tag information */\n tagInfo: RetentionTag;\n}\n\nexport function taggingCriteriaSerializer(item: TaggingCriteria): any {\n return {\n criteria: !item[\"criteria\"]\n ? item[\"criteria\"]\n : backupCriteriaUnionArraySerializer(item[\"criteria\"]),\n isDefault: item[\"isDefault\"],\n taggingPriority: item[\"taggingPriority\"],\n tagInfo: retentionTagSerializer(item[\"tagInfo\"]),\n };\n}\n\nexport function taggingCriteriaDeserializer(item: any): TaggingCriteria {\n return {\n criteria: !item[\"criteria\"]\n ? item[\"criteria\"]\n : backupCriteriaUnionArrayDeserializer(item[\"criteria\"]),\n isDefault: item[\"isDefault\"],\n taggingPriority: item[\"taggingPriority\"],\n tagInfo: retentionTagDeserializer(item[\"tagInfo\"]),\n };\n}\n\nexport function backupCriteriaUnionArraySerializer(result: Array<BackupCriteriaUnion>): any[] {\n return result.map((item) => {\n return backupCriteriaUnionSerializer(item);\n });\n}\n\nexport function backupCriteriaUnionArrayDeserializer(result: Array<BackupCriteriaUnion>): any[] {\n return result.map((item) => {\n return backupCriteriaUnionDeserializer(item);\n });\n}\n\n/** BackupCriteria base class */\nexport interface BackupCriteria {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: ScheduleBasedBackupCriteria */\n objectType: string;\n}\n\nexport function backupCriteriaSerializer(item: BackupCriteria): any {\n return { objectType: item[\"objectType\"] };\n}\n\nexport function backupCriteriaDeserializer(item: any): BackupCriteria {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for BackupCriteriaUnion */\nexport type BackupCriteriaUnion = ScheduleBasedBackupCriteria | BackupCriteria;\n\nexport function backupCriteriaUnionSerializer(item: BackupCriteriaUnion): any {\n switch (item.objectType) {\n case \"ScheduleBasedBackupCriteria\":\n return scheduleBasedBackupCriteriaSerializer(item as ScheduleBasedBackupCriteria);\n\n default:\n return backupCriteriaSerializer(item);\n }\n}\n\nexport function backupCriteriaUnionDeserializer(item: any): BackupCriteriaUnion {\n switch (item[\"objectType\"]) {\n case \"ScheduleBasedBackupCriteria\":\n return scheduleBasedBackupCriteriaDeserializer(item as ScheduleBasedBackupCriteria);\n\n default:\n return backupCriteriaDeserializer(item);\n }\n}\n\n/** Schedule based backup criteria */\nexport interface ScheduleBasedBackupCriteria extends BackupCriteria {\n /**\n * it contains absolute values like \"AllBackup\" / \"FirstOfDay\" / \"FirstOfWeek\" / \"FirstOfMonth\"\n * and should be part of AbsoluteMarker enum\n */\n absoluteCriteria?: AbsoluteMarker[];\n /** This is day of the month from 1 to 28 other wise last of month */\n daysOfMonth?: Day[];\n /** It should be Sunday/Monday/T..../Saturday */\n daysOfTheWeek?: DayOfWeek[];\n /** It should be January/February/....../December */\n monthsOfYear?: Month[];\n /** List of schedule times for backup */\n scheduleTimes?: Date[];\n /** It should be First/Second/Third/Fourth/Last */\n weeksOfTheMonth?: WeekNumber[];\n /** Type of the specific object - used for deserializing */\n objectType: \"ScheduleBasedBackupCriteria\";\n}\n\nexport function scheduleBasedBackupCriteriaSerializer(item: ScheduleBasedBackupCriteria): any {\n return {\n objectType: item[\"objectType\"],\n absoluteCriteria: !item[\"absoluteCriteria\"]\n ? item[\"absoluteCriteria\"]\n : item[\"absoluteCriteria\"].map((p: any) => {\n return p;\n }),\n daysOfMonth: !item[\"daysOfMonth\"]\n ? item[\"daysOfMonth\"]\n : dayArraySerializer(item[\"daysOfMonth\"]),\n daysOfTheWeek: !item[\"daysOfTheWeek\"]\n ? item[\"daysOfTheWeek\"]\n : item[\"daysOfTheWeek\"].map((p: any) => {\n return p;\n }),\n monthsOfYear: !item[\"monthsOfYear\"]\n ? item[\"monthsOfYear\"]\n : item[\"monthsOfYear\"].map((p: any) => {\n return p;\n }),\n scheduleTimes: !item[\"scheduleTimes\"]\n ? item[\"scheduleTimes\"]\n : item[\"scheduleTimes\"].map((p: any) => {\n return p.toISOString();\n }),\n weeksOfTheMonth: !item[\"weeksOfTheMonth\"]\n ? item[\"weeksOfTheMonth\"]\n : item[\"weeksOfTheMonth\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function scheduleBasedBackupCriteriaDeserializer(item: any): ScheduleBasedBackupCriteria {\n return {\n objectType: item[\"objectType\"],\n absoluteCriteria: !item[\"absoluteCriteria\"]\n ? item[\"absoluteCriteria\"]\n : item[\"absoluteCriteria\"].map((p: any) => {\n return p;\n }),\n daysOfMonth: !item[\"daysOfMonth\"]\n ? item[\"daysOfMonth\"]\n : dayArrayDeserializer(item[\"daysOfMonth\"]),\n daysOfTheWeek: !item[\"daysOfTheWeek\"]\n ? item[\"daysOfTheWeek\"]\n : item[\"daysOfTheWeek\"].map((p: any) => {\n return p;\n }),\n monthsOfYear: !item[\"monthsOfYear\"]\n ? item[\"monthsOfYear\"]\n : item[\"monthsOfYear\"].map((p: any) => {\n return p;\n }),\n scheduleTimes: !item[\"scheduleTimes\"]\n ? item[\"scheduleTimes\"]\n : item[\"scheduleTimes\"].map((p: any) => {\n return new Date(p);\n }),\n weeksOfTheMonth: !item[\"weeksOfTheMonth\"]\n ? item[\"weeksOfTheMonth\"]\n : item[\"weeksOfTheMonth\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Known values of {@link AbsoluteMarker} that the service accepts. */\nexport enum KnownAbsoluteMarker {\n /** AllBackup */\n AllBackup = \"AllBackup\",\n /** FirstOfDay */\n FirstOfDay = \"FirstOfDay\",\n /** FirstOfMonth */\n FirstOfMonth = \"FirstOfMonth\",\n /** FirstOfWeek */\n FirstOfWeek = \"FirstOfWeek\",\n /** FirstOfYear */\n FirstOfYear = \"FirstOfYear\",\n}\n\n/** Type of AbsoluteMarker */\nexport type AbsoluteMarker = string;\n\nexport function dayArraySerializer(result: Array<Day>): any[] {\n return result.map((item) => {\n return daySerializer(item);\n });\n}\n\nexport function dayArrayDeserializer(result: Array<Day>): any[] {\n return result.map((item) => {\n return dayDeserializer(item);\n });\n}\n\n/** Day of the week */\nexport interface Day {\n /** Date of the month */\n date?: number;\n /** Whether Date is last date of month */\n isLast?: boolean;\n}\n\nexport function daySerializer(item: Day): any {\n return { date: item[\"date\"], isLast: item[\"isLast\"] };\n}\n\nexport function dayDeserializer(item: any): Day {\n return {\n date: item[\"date\"],\n isLast: item[\"isLast\"],\n };\n}\n\n/** Known values of {@link DayOfWeek} that the service accepts. */\nexport enum KnownDayOfWeek {\n /** Friday */\n Friday = \"Friday\",\n /** Monday */\n Monday = \"Monday\",\n /** Saturday */\n Saturday = \"Saturday\",\n /** Sunday */\n Sunday = \"Sunday\",\n /** Thursday */\n Thursday = \"Thursday\",\n /** Tuesday */\n Tuesday = \"Tuesday\",\n /** Wednesday */\n Wednesday = \"Wednesday\",\n}\n\n/** Type of DayOfWeek */\nexport type DayOfWeek = string;\n\n/** Known values of {@link Month} that the service accepts. */\nexport enum KnownMonth {\n /** April */\n April = \"April\",\n /** August */\n August = \"August\",\n /** December */\n December = \"December\",\n /** February */\n February = \"February\",\n /** January */\n January = \"January\",\n /** July */\n July = \"July\",\n /** June */\n June = \"June\",\n /** March */\n March = \"March\",\n /** May */\n May = \"May\",\n /** November */\n November = \"November\",\n /** October */\n October = \"October\",\n /** September */\n September = \"September\",\n}\n\n/** Type of Month */\nexport type Month = string;\n\n/** Known values of {@link WeekNumber} that the service accepts. */\nexport enum KnownWeekNumber {\n /** First */\n First = \"First\",\n /** Fourth */\n Fourth = \"Fourth\",\n /** Last */\n Last = \"Last\",\n /** Second */\n Second = \"Second\",\n /** Third */\n Third = \"Third\",\n}\n\n/** Type of WeekNumber */\nexport type WeekNumber = string;\n\n/** Azure retention rule */\nexport interface AzureRetentionRule extends BasePolicyRule {\n isDefault?: boolean;\n lifecycles: SourceLifeCycle[];\n objectType: \"AzureRetentionRule\";\n}\n\nexport function azureRetentionRuleSerializer(item: AzureRetentionRule): any {\n return {\n name: item[\"name\"],\n objectType: item[\"objectType\"],\n isDefault: item[\"isDefault\"],\n lifecycles: sourceLifeCycleArraySerializer(item[\"lifecycles\"]),\n };\n}\n\nexport function azureRetentionRuleDeserializer(item: any): AzureRetentionRule {\n return {\n name: item[\"name\"],\n objectType: item[\"objectType\"],\n isDefault: item[\"isDefault\"],\n lifecycles: sourceLifeCycleArrayDeserializer(item[\"lifecycles\"]),\n };\n}\n\nexport function sourceLifeCycleArraySerializer(result: Array<SourceLifeCycle>): any[] {\n return result.map((item) => {\n return sourceLifeCycleSerializer(item);\n });\n}\n\nexport function sourceLifeCycleArrayDeserializer(result: Array<SourceLifeCycle>): any[] {\n return result.map((item) => {\n return sourceLifeCycleDeserializer(item);\n });\n}\n\n/** Source LifeCycle */\nexport interface SourceLifeCycle {\n /** Delete Option */\n deleteAfter: DeleteOptionUnion;\n /** DataStoreInfo base */\n sourceDataStore: DataStoreInfoBase;\n targetDataStoreCopySettings?: TargetCopySetting[];\n}\n\nexport function sourceLifeCycleSerializer(item: SourceLifeCycle): any {\n return {\n deleteAfter: deleteOptionUnionSerializer(item[\"deleteAfter\"]),\n sourceDataStore: dataStoreInfoBaseSerializer(item[\"sourceDataStore\"]),\n targetDataStoreCopySettings: !item[\"targetDataStoreCopySettings\"]\n ? item[\"targetDataStoreCopySettings\"]\n : targetCopySettingArraySerializer(item[\"targetDataStoreCopySettings\"]),\n };\n}\n\nexport function sourceLifeCycleDeserializer(item: any): SourceLifeCycle {\n return {\n deleteAfter: deleteOptionUnionDeserializer(item[\"deleteAfter\"]),\n sourceDataStore: dataStoreInfoBaseDeserializer(item[\"sourceDataStore\"]),\n targetDataStoreCopySettings: !item[\"targetDataStoreCopySettings\"]\n ? item[\"targetDataStoreCopySettings\"]\n : targetCopySettingArrayDeserializer(item[\"targetDataStoreCopySettings\"]),\n };\n}\n\n/** Delete Option */\nexport interface DeleteOption {\n /** Duration of deletion after given timespan */\n duration: string;\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: AbsoluteDeleteOption */\n objectType: string;\n}\n\nexport function deleteOptionSerializer(item: DeleteOption): any {\n return { duration: item[\"duration\"], objectType: item[\"objectType\"] };\n}\n\nexport function deleteOptionDeserializer(item: any): DeleteOption {\n return {\n duration: item[\"duration\"],\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for DeleteOptionUnion */\nexport type DeleteOptionUnion = AbsoluteDeleteOption | DeleteOption;\n\nexport function deleteOptionUnionSerializer(item: DeleteOptionUnion): any {\n switch (item.objectType) {\n case \"AbsoluteDeleteOption\":\n return absoluteDeleteOptionSerializer(item as AbsoluteDeleteOption);\n\n default:\n return deleteOptionSerializer(item);\n }\n}\n\nexport function deleteOptionUnionDeserializer(item: any): DeleteOptionUnion {\n switch (item[\"objectType\"]) {\n case \"AbsoluteDeleteOption\":\n return absoluteDeleteOptionDeserializer(item as AbsoluteDeleteOption);\n\n default:\n return deleteOptionDeserializer(item);\n }\n}\n\n/** Delete option with duration */\nexport interface AbsoluteDeleteOption extends DeleteOption {\n /** Type of the specific object - used for deserializing */\n objectType: \"AbsoluteDeleteOption\";\n}\n\nexport function absoluteDeleteOptionSerializer(item: AbsoluteDeleteOption): any {\n return { duration: item[\"duration\"], objectType: item[\"objectType\"] };\n}\n\nexport function absoluteDeleteOptionDeserializer(item: any): AbsoluteDeleteOption {\n return {\n duration: item[\"duration\"],\n objectType: item[\"objectType\"],\n };\n}\n\nexport function targetCopySettingArraySerializer(result: Array<TargetCopySetting>): any[] {\n return result.map((item) => {\n return targetCopySettingSerializer(item);\n });\n}\n\nexport function targetCopySettingArrayDeserializer(result: Array<TargetCopySetting>): any[] {\n return result.map((item) => {\n return targetCopySettingDeserializer(item);\n });\n}\n\n/** Target copy settings */\nexport interface TargetCopySetting {\n /** It can be CustomCopyOption or ImmediateCopyOption. */\n copyAfter: CopyOptionUnion;\n /** Info of target datastore */\n dataStore: DataStoreInfoBase;\n}\n\nexport function targetCopySettingSerializer(item: TargetCopySetting): any {\n return {\n copyAfter: copyOptionUnionSerializer(item[\"copyAfter\"]),\n dataStore: dataStoreInfoBaseSerializer(item[\"dataStore\"]),\n };\n}\n\nexport function targetCopySettingDeserializer(item: any): TargetCopySetting {\n return {\n copyAfter: copyOptionUnionDeserializer(item[\"copyAfter\"]),\n dataStore: dataStoreInfoBaseDeserializer(item[\"dataStore\"]),\n };\n}\n\n/** Options to copy */\nexport interface CopyOption {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: CopyOnExpiryOption, CustomCopyOption, ImmediateCopyOption */\n objectType: string;\n}\n\nexport function copyOptionSerializer(item: CopyOption): any {\n return { objectType: item[\"objectType\"] };\n}\n\nexport function copyOptionDeserializer(item: any): CopyOption {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for CopyOptionUnion */\nexport type CopyOptionUnion =\n | CopyOnExpiryOption\n | CustomCopyOption\n | ImmediateCopyOption\n | CopyOption;\n\nexport function copyOptionUnionSerializer(item: CopyOptionUnion): any {\n switch (item.objectType) {\n case \"CopyOnExpiryOption\":\n return copyOnExpiryOptionSerializer(item as CopyOnExpiryOption);\n\n case \"CustomCopyOption\":\n return customCopyOptionSerializer(item as CustomCopyOption);\n\n case \"ImmediateCopyOption\":\n return immediateCopyOptionSerializer(item as ImmediateCopyOption);\n\n default:\n return copyOptionSerializer(item);\n }\n}\n\nexport function copyOptionUnionDeserializer(item: any): CopyOptionUnion {\n switch (item[\"objectType\"]) {\n case \"CopyOnExpiryOption\":\n return copyOnExpiryOptionDeserializer(item as CopyOnExpiryOption);\n\n case \"CustomCopyOption\":\n return customCopyOptionDeserializer(item as CustomCopyOption);\n\n case \"ImmediateCopyOption\":\n return immediateCopyOptionDeserializer(item as ImmediateCopyOption);\n\n default:\n return copyOptionDeserializer(item);\n }\n}\n\n/** Copy on Expiry Option */\nexport interface CopyOnExpiryOption extends CopyOption {\n /** Type of the specific object - used for deserializing */\n objectType: \"CopyOnExpiryOption\";\n}\n\nexport function copyOnExpiryOptionSerializer(item: CopyOnExpiryOption): any {\n return { objectType: item[\"objectType\"] };\n}\n\nexport function copyOnExpiryOptionDeserializer(item: any): CopyOnExpiryOption {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Duration based custom options to copy */\nexport interface CustomCopyOption extends CopyOption {\n /** Data copied after given timespan */\n duration?: string;\n /** Type of the specific object - used for deserializing */\n objectType: \"CustomCopyOption\";\n}\n\nexport function customCopyOptionSerializer(item: CustomCopyOption): any {\n return { objectType: item[\"objectType\"], duration: item[\"duration\"] };\n}\n\nexport function customCopyOptionDeserializer(item: any): CustomCopyOption {\n return {\n objectType: item[\"objectType\"],\n duration: item[\"duration\"],\n };\n}\n\n/** Immediate copy Option */\nexport interface ImmediateCopyOption extends CopyOption {\n /** Type of the specific object - used for deserializing */\n objectType: \"ImmediateCopyOption\";\n}\n\nexport function immediateCopyOptionSerializer(item: ImmediateCopyOption): any {\n return { objectType: item[\"objectType\"] };\n}\n\nexport function immediateCopyOptionDeserializer(item: any): ImmediateCopyOption {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** List of BaseBackupPolicy resources */\nexport interface _BaseBackupPolicyResourceList extends DppResourceList {\n /** List of resources. */\n value?: BaseBackupPolicyResource[];\n}\n\nexport function _baseBackupPolicyResourceListDeserializer(\n item: any,\n): _BaseBackupPolicyResourceList {\n return {\n nextLink: item[\"nextLink\"],\n value: !item[\"value\"]\n ? item[\"value\"]\n : baseBackupPolicyResourceArrayDeserializer(item[\"value\"]),\n };\n}\n\nexport function baseBackupPolicyResourceArraySerializer(\n result: Array<BaseBackupPolicyResource>,\n): any[] {\n return result.map((item) => {\n return baseBackupPolicyResourceSerializer(item);\n });\n}\n\nexport function baseBackupPolicyResourceArrayDeserializer(\n result: Array<BaseBackupPolicyResource>,\n): any[] {\n return result.map((item) => {\n return baseBackupPolicyResourceDeserializer(item);\n });\n}\n\n/** List Restore Ranges Request */\nexport interface AzureBackupFindRestorableTimeRangesRequest {\n /** Gets or sets the type of the source data store. */\n sourceDataStoreType: RestoreSourceDataStoreType;\n /** Start time for the List Restore Ranges request. ISO 8601 format. */\n startTime?: string;\n /** End time for the List Restore Ranges request. ISO 8601 format. */\n endTime?: string;\n}\n\nexport function azureBackupFindRestorableTimeRangesRequestSerializer(\n item: AzureBackupFindRestorableTimeRangesRequest,\n): any {\n return {\n sourceDataStoreType: item[\"sourceDataStoreType\"],\n startTime: item[\"startTime\"],\n endTime: item[\"endTime\"],\n };\n}\n\n/** Gets or sets the type of the source data store. */\nexport enum KnownRestoreSourceDataStoreType {\n /** OperationalStore */\n OperationalStore = \"OperationalStore\",\n /** VaultStore */\n VaultStore = \"VaultStore\",\n /** ArchiveStore */\n ArchiveStore = \"ArchiveStore\",\n}\n\n/**\n * Gets or sets the type of the source data store. \\\n * {@link KnownRestoreSourceDataStoreType} can be used interchangeably with RestoreSourceDataStoreType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **OperationalStore** \\\n * **VaultStore** \\\n * **ArchiveStore**\n */\nexport type RestoreSourceDataStoreType = string;\n\n/** List Restore Ranges Response */\nexport interface AzureBackupFindRestorableTimeRangesResponseResource extends DppResource {\n /** AzureBackupFindRestorableTimeRangesResponseResource properties */\n properties?: AzureBackupFindRestorableTimeRangesResponse;\n}\n\nexport function azureBackupFindRestorableTimeRangesResponseResourceDeserializer(\n item: any,\n): AzureBackupFindRestorableTimeRangesResponseResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : azureBackupFindRestorableTimeRangesResponseDeserializer(item[\"properties\"]),\n };\n}\n\n/** List Restore Ranges Response */\nexport interface AzureBackupFindRestorableTimeRangesResponse {\n /** Returns the Restore Ranges available on the Backup Instance. */\n restorableTimeRanges?: RestorableTimeRange[];\n objectType?: string;\n}\n\nexport function azureBackupFindRestorableTimeRangesResponseDeserializer(\n item: any,\n): AzureBackupFindRestorableTimeRangesResponse {\n return {\n restorableTimeRanges: !item[\"restorableTimeRanges\"]\n ? item[\"restorableTimeRanges\"]\n : restorableTimeRangeArrayDeserializer(item[\"restorableTimeRanges\"]),\n objectType: item[\"objectType\"],\n };\n}\n\nexport function restorableTimeRangeArrayDeserializer(result: Array<RestorableTimeRange>): any[] {\n return result.map((item) => {\n return restorableTimeRangeDeserializer(item);\n });\n}\n\n/** model interface RestorableTimeRange */\nexport interface RestorableTimeRange {\n /** Start time for the available restore range */\n startTime: string;\n /** End time for the available restore range */\n endTime: string;\n objectType?: string;\n}\n\nexport function restorableTimeRangeDeserializer(item: any): RestorableTimeRange {\n return {\n startTime: item[\"startTime\"],\n endTime: item[\"endTime\"],\n objectType: item[\"objectType\"],\n };\n}\n\n/** Resource class */\nexport interface DppResource {\n /** Resource Id represents the complete path to the resource. */\n readonly id?: string;\n /** Resource name associated with the resource. */\n readonly name?: string;\n /** Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/... */\n readonly type?: string;\n /** Metadata pertaining to creation and last modification of the resource. */\n readonly systemData?: SystemData;\n}\n\nexport function dppResourceDeserializer(item: any): DppResource {\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/** Azure backup recoveryPoint resource */\nexport interface AzureBackupRecoveryPointResource extends ProxyResource {\n /** AzureBackupRecoveryPointResource properties */\n properties?: AzureBackupRecoveryPointUnion;\n}\n\nexport function azureBackupRecoveryPointResourceDeserializer(\n item: any,\n): AzureBackupRecoveryPointResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : azureBackupRecoveryPointUnionDeserializer(item[\"properties\"]),\n };\n}\n\n/** Azure backup recoveryPoint */\nexport interface AzureBackupRecoveryPoint {\n objectType: string;\n}\n\nexport function azureBackupRecoveryPointDeserializer(item: any): AzureBackupRecoveryPoint {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for AzureBackupRecoveryPointUnion */\nexport type AzureBackupRecoveryPointUnion =\n | AzureBackupDiscreteRecoveryPoint\n | AzureBackupRecoveryPoint;\n\nexport function azureBackupRecoveryPointUnionDeserializer(\n item: any,\n): AzureBackupRecoveryPointUnion {\n switch (item[\"objectType\"]) {\n case \"AzureBackupDiscreteRecoveryPoint\":\n return azureBackupDiscreteRecoveryPointDeserializer(item as AzureBackupDiscreteRecoveryPoint);\n\n default:\n return azureBackupRecoveryPointDeserializer(item);\n }\n}\n\n/** Azure backup discrete RecoveryPoint */\nexport interface AzureBackupDiscreteRecoveryPoint extends AzureBackupRecoveryPoint {\n friendlyName?: string;\n recoveryPointDataStoresDetails?: RecoveryPointDataStoreDetails[];\n recoveryPointTime: Date;\n policyName?: string;\n policyVersion?: string;\n recoveryPointId?: string;\n recoveryPointType?: string;\n retentionTagName?: string;\n retentionTagVersion?: string;\n readonly expiryTime?: Date;\n /** Specifies recovery point completeness. Partial (i.e., only some of the intended items were backed up), or Completed (i.e., ALL intended items were backed up). */\n recoveryPointState?: RecoveryPointCompletionState;\n objectType: \"AzureBackupDiscreteRecoveryPoint\";\n}\n\nexport function azureBackupDiscreteRecoveryPointDeserializer(\n item: any,\n): AzureBackupDiscreteRecoveryPoint {\n return {\n objectType: item[\"objectType\"],\n friendlyName: item[\"friendlyName\"],\n recoveryPointDataStoresDetails: !item[\"recoveryPointDataStoresDetails\"]\n ? item[\"recoveryPointDataStoresDetails\"]\n : recoveryPointDataStoreDetailsArrayDeserializer(item[\"recoveryPointDataStoresDetails\"]),\n recoveryPointTime: new Date(item[\"recoveryPointTime\"]),\n policyName: item[\"policyName\"],\n policyVersion: item[\"policyVersion\"],\n recoveryPointId: item[\"recoveryPointId\"],\n recoveryPointType: item[\"recoveryPointType\"],\n retentionTagName: item[\"retentionTagName\"],\n retentionTagVersion: item[\"retentionTagVersion\"],\n expiryTime: !item[\"expiryTime\"] ? item[\"expiryTime\"] : new Date(item[\"expiryTime\"]),\n recoveryPointState: item[\"recoveryPointState\"],\n };\n}\n\nexport function recoveryPointDataStoreDetailsArrayDeserializer(\n result: Array<RecoveryPointDataStoreDetails>,\n): any[] {\n return result.map((item) => {\n return recoveryPointDataStoreDetailsDeserializer(item);\n });\n}\n\n/** RecoveryPoint datastore details */\nexport interface RecoveryPointDataStoreDetails {\n creationTime?: Date;\n expiryTime?: Date;\n id?: string;\n metaData?: string;\n state?: string;\n type?: string;\n visible?: boolean;\n readonly rehydrationExpiryTime?: Date;\n readonly rehydrationStatus?: RehydrationStatus;\n}\n\nexport function recoveryPointDataStoreDetailsDeserializer(\n item: any,\n): RecoveryPointDataStoreDetails {\n return {\n creationTime: !item[\"creationTime\"] ? item[\"creationTime\"] : new Date(item[\"creationTime\"]),\n expiryTime: !item[\"expiryTime\"] ? item[\"expiryTime\"] : new Date(item[\"expiryTime\"]),\n id: item[\"id\"],\n metaData: item[\"metaData\"],\n state: item[\"state\"],\n type: item[\"type\"],\n visible: item[\"visible\"],\n rehydrationExpiryTime: !item[\"rehydrationExpiryTime\"]\n ? item[\"rehydrationExpiryTime\"]\n : new Date(item[\"rehydrationExpiryTime\"]),\n rehydrationStatus: item[\"rehydrationStatus\"],\n };\n}\n\n/** Known values of {@link RehydrationStatus} that the service accepts. */\nexport enum KnownRehydrationStatus {\n /** CREATE_IN_PROGRESS */\n CreateINProgress = \"CREATE_IN_PROGRESS\",\n /** COMPLETED */\n Completed = \"COMPLETED\",\n /** DELETE_IN_PROGRESS */\n DeleteINProgress = \"DELETE_IN_PROGRESS\",\n /** DELETED */\n Deleted = \"DELETED\",\n /** FAILED */\n Failed = \"FAILED\",\n}\n\n/** Type of RehydrationStatus */\nexport type RehydrationStatus = string;\n\n/** Specifies recovery point completeness. Partial (i.e., only some of the intended items were backed up), or Completed (i.e., ALL intended items were backed up). */\nexport enum KnownRecoveryPointCompletionState {\n /** Completed */\n Completed = \"Completed\",\n /** Partial */\n Partial = \"Partial\",\n}\n\n/**\n * Specifies recovery point completeness. Partial (i.e., only some of the intended items were backed up), or Completed (i.e., ALL intended items were backed up). \\\n * {@link KnownRecoveryPointCompletionState} can be used interchangeably with RecoveryPointCompletionState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Completed** \\\n * **Partial**\n */\nexport type RecoveryPointCompletionState = string;\n\n/** Azure backup recoveryPoint resource list */\nexport interface _AzureBackupRecoveryPointResourceList extends DppResourceList {\n /** List of resources. */\n value?: AzureBackupRecoveryPointResource[];\n}\n\nexport function _azureBackupRecoveryPointResourceListDeserializer(\n item: any,\n): _AzureBackupRecoveryPointResourceList {\n return {\n nextLink: item[\"nextLink\"],\n value: !item[\"value\"]\n ? item[\"value\"]\n : azureBackupRecoveryPointResourceArrayDeserializer(item[\"value\"]),\n };\n}\n\nexport function azureBackupRecoveryPointResourceArrayDeserializer(\n result: Array<AzureBackupRecoveryPointResource>,\n): any[] {\n return result.map((item) => {\n return azureBackupRecoveryPointResourceDeserializer(item);\n });\n}\n\n/** AzureBackup Job Resource Class */\nexport interface AzureBackupJobResource extends ProxyResource {\n /** AzureBackupJobResource properties */\n properties?: AzureBackupJob;\n}\n\nexport function azureBackupJobResourceDeserializer(item: any): AzureBackupJobResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : azureBackupJobDeserializer(item[\"properties\"]),\n };\n}\n\n/** AzureBackup Job Class */\nexport interface AzureBackupJob {\n /** Job Activity Id */\n activityID: string;\n /** Name of the Backup Instance */\n backupInstanceFriendlyName: string;\n /** ARM ID of the Backup Instance */\n readonly backupInstanceId?: string;\n /** ARM ID of the DataSource */\n dataSourceId: string;\n /** Location of the DataSource */\n dataSourceLocation: string;\n /** User Friendly Name of the DataSource */\n dataSourceName: string;\n /** Data Source Set Name of the DataSource */\n dataSourceSetName?: string;\n /** Type of DataSource */\n dataSourceType: string;\n /** Total run time of the job. ISO 8601 format. */\n duration?: string;\n /** EndTime of the job(in UTC) */\n readonly endTime?: Date;\n /** A List, detailing the errors related to the job */\n readonly errorDetails?: UserFacingError[];\n /** Extended Information about the job */\n readonly extendedInfo?: JobExtendedInfo;\n /** Indicated that whether the job is adhoc(true) or scheduled(false) */\n isUserTriggered: boolean;\n /** It indicates the type of Job i.e. Backup:full/log/diff ;Restore:ALR/OLR; Tiering:Backup/Archive ; Management:ConfigureProtection/UnConfigure */\n operation: string;\n /** It indicates the type of Job i.e. Backup/Restore/Tiering/Management */\n operationCategory: string;\n /** ARM ID of the policy */\n readonly policyId?: string;\n /** Name of the policy */\n readonly policyName?: string;\n /** Indicated whether progress is enabled for the job */\n progressEnabled: boolean;\n /** Url which contains job's progress */\n readonly progressUrl?: string;\n /** Priority to be used for rehydration */\n readonly rehydrationPriority?: string;\n /** It indicates the sub type of operation i.e. in case of Restore it can be ALR/OLR */\n readonly restoreType?: string;\n /** Resource Group Name of the Datasource */\n sourceResourceGroup: string;\n /** SubscriptionId corresponding to the DataSource */\n sourceSubscriptionID: string;\n /** StartTime of the job(in UTC) */\n startTime: Date;\n /** Status of the job like InProgress/Completed/Failed/Cancelled/CompletedWithWarnings/Cancelling/Paused */\n status: string;\n /** Subscription Id of the corresponding backup vault */\n subscriptionId: string;\n /** List of supported actions */\n supportedActions: string[];\n /** Name of the vault */\n vaultName: string;\n etag?: string;\n sourceDataStoreName?: string;\n destinationDataStoreName?: string;\n}\n\nexport function azureBackupJobDeserializer(item: any): AzureBackupJob {\n return {\n activityID: item[\"activityID\"],\n backupInstanceFriendlyName: item[\"backupInstanceFriendlyName\"],\n backupInstanceId: item[\"backupInstanceId\"],\n dataSourceId: item[\"dataSourceId\"],\n dataSourceLocation: item[\"dataSourceLocation\"],\n dataSourceName: item[\"dataSourceName\"],\n dataSourceSetName: item[\"dataSourceSetName\"],\n dataSourceType: item[\"dataSourceType\"],\n duration: item[\"duration\"],\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n errorDetails: !item[\"errorDetails\"]\n ? item[\"errorDetails\"]\n : userFacingErrorArrayDeserializer(item[\"errorDetails\"]),\n extendedInfo: !item[\"extendedInfo\"]\n ? item[\"extendedInfo\"]\n : jobExtendedInfoDeserializer(item[\"extendedInfo\"]),\n isUserTriggered: item[\"isUserTriggered\"],\n operation: item[\"operation\"],\n operationCategory: item[\"operationCategory\"],\n policyId: item[\"policyId\"],\n policyName: item[\"policyName\"],\n progressEnabled: item[\"progressEnabled\"],\n progressUrl: item[\"progressUrl\"],\n rehydrationPriority: item[\"rehydrationPriority\"],\n restoreType: item[\"restoreType\"],\n sourceResourceGroup: item[\"sourceResourceGroup\"],\n sourceSubscriptionID: item[\"sourceSubscriptionID\"],\n startTime: new Date(item[\"startTime\"]),\n status: item[\"status\"],\n subscriptionId: item[\"subscriptionId\"],\n supportedActions: item[\"supportedActions\"].map((p: any) => {\n return p;\n }),\n vaultName: item[\"vaultName\"],\n etag: item[\"etag\"],\n sourceDataStoreName: item[\"sourceDataStoreName\"],\n destinationDataStoreName: item[\"destinationDataStoreName\"],\n };\n}\n\n/** Extended Information about the job */\nexport interface JobExtendedInfo {\n /** Job's Additional Details */\n additionalDetails?: Record<string, string>;\n /** State of the Backup Instance */\n readonly backupInstanceState?: string;\n /** Number of bytes transferred */\n readonly dataTransferredInBytes?: number;\n /** Destination where restore is done */\n readonly recoveryDestination?: string;\n /** Details of the Source Recovery Point */\n readonly sourceRecoverPoint?: RestoreJobRecoveryPointDetails;\n /** List of Sub Tasks of the job */\n readonly subTasks?: JobSubTask[];\n /** Details of the Target Recovery Point */\n readonly targetRecoverPoint?: RestoreJobRecoveryPointDetails;\n /** A List, detailing the warnings related to the job */\n readonly warningDetails?: UserFacingWarningDetail[];\n}\n\nexport function jobExtendedInfoDeserializer(item: any): JobExtendedInfo {\n return {\n additionalDetails: !item[\"additionalDetails\"]\n ? item[\"additionalDetails\"]\n : Object.fromEntries(\n Object.entries(item[\"additionalDetails\"]).map(([k, p]: [string, any]) => [k, p]),\n ),\n backupInstanceState: item[\"backupInstanceState\"],\n dataTransferredInBytes: item[\"dataTransferredInBytes\"],\n recoveryDestination: item[\"recoveryDestination\"],\n sourceRecoverPoint: !item[\"sourceRecoverPoint\"]\n ? item[\"sourceRecoverPoint\"]\n : restoreJobRecoveryPointDetailsDeserializer(item[\"sourceRecoverPoint\"]),\n subTasks: !item[\"subTasks\"] ? item[\"subTasks\"] : jobSubTaskArrayDeserializer(item[\"subTasks\"]),\n targetRecoverPoint: !item[\"targetRecoverPoint\"]\n ? item[\"targetRecoverPoint\"]\n : restoreJobRecoveryPointDetailsDeserializer(item[\"targetRecoverPoint\"]),\n warningDetails: !item[\"warningDetails\"]\n ? item[\"warningDetails\"]\n : userFacingWarningDetailArrayDeserializer(item[\"warningDetails\"]),\n };\n}\n\n/** model interface RestoreJobRecoveryPointDetails */\nexport interface RestoreJobRecoveryPointDetails {\n recoveryPointID?: string;\n recoveryPointTime?: Date;\n}\n\nexport function restoreJobRecoveryPointDetailsDeserializer(\n item: any,\n): RestoreJobRecoveryPointDetails {\n return {\n recoveryPointID: item[\"recoveryPointID\"],\n recoveryPointTime: !item[\"recoveryPointTime\"]\n ? item[\"recoveryPointTime\"]\n : new Date(item[\"recoveryPointTime\"]),\n };\n}\n\nexport function jobSubTaskArrayDeserializer(result: Array<JobSubTask>): any[] {\n return result.map((item) => {\n return jobSubTaskDeserializer(item);\n });\n}\n\n/** Details of Job's Sub Task */\nexport interface JobSubTask {\n /** Additional details of Sub Tasks */\n additionalDetails?: Record<string, string>;\n /** Task Id of the Sub Task */\n taskId: number;\n /** Name of the Sub Task */\n taskName: string;\n /** Progress of the Sub Task */\n readonly taskProgress?: string;\n /** Status of the Sub Task */\n taskStatus: string;\n}\n\nexport function jobSubTaskDeserializer(item: any): JobSubTask {\n return {\n additionalDetails: !item[\"additionalDetails\"]\n ? item[\"additionalDetails\"]\n : Object.fromEntries(\n Object.entries(item[\"additionalDetails\"]).map(([k, p]: [string, any]) => [k, p]),\n ),\n taskId: item[\"taskId\"],\n taskName: item[\"taskName\"],\n taskProgress: item[\"taskProgress\"],\n taskStatus: item[\"taskStatus\"],\n };\n}\n\nexport function userFacingWarningDetailArrayDeserializer(\n result: Array<UserFacingWarningDetail>,\n): any[] {\n return result.map((item) => {\n return userFacingWarningDetailDeserializer(item);\n });\n}\n\n/** Warning object used by layers that have access to localized content, and propagate that to user */\nexport interface UserFacingWarningDetail {\n /** Name of resource for which warning is raised. */\n resourceName?: string;\n /** Error details for the warning. */\n warning: UserFacingError;\n}\n\nexport function userFacingWarningDetailDeserializer(item: any): UserFacingWarningDetail {\n return {\n resourceName: item[\"resourceName\"],\n warning: userFacingErrorDeserializer(item[\"warning\"]),\n };\n}\n\n/** List of AzureBackup Job resources */\nexport interface _AzureBackupJobResourceList extends DppResourceList {\n /** List of resources. */\n value?: AzureBackupJobResource[];\n}\n\nexport function _azureBackupJobResourceListDeserializer(item: any): _AzureBackupJobResourceList {\n return {\n nextLink: item[\"nextLink\"],\n value: !item[\"value\"] ? item[\"value\"] : azureBackupJobResourceArrayDeserializer(item[\"value\"]),\n };\n}\n\nexport function azureBackupJobResourceArrayDeserializer(\n result: Array<AzureBackupJobResource>,\n): any[] {\n return result.map((item) => {\n return azureBackupJobResourceDeserializer(item);\n });\n}\n\n/** Deleted Backup Instance */\nexport interface DeletedBackupInstanceResource extends ProxyResource {\n /** DeletedBackupInstanceResource properties */\n properties?: DeletedBackupInstance;\n}\n\nexport function deletedBackupInstanceResourceDeserializer(\n item: any,\n): DeletedBackupInstanceResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : deletedBackupInstanceDeserializer(item[\"properties\"]),\n };\n}\n\n/** Deleted Backup Instance */\nexport interface DeletedBackupInstance extends BackupInstance {\n /** Deletion info of Backup Instance */\n readonly deletionInfo?: DeletionInfo;\n}\n\nexport function deletedBackupInstanceDeserializer(item: any): DeletedBackupInstance {\n return {\n friendlyName: item[\"friendlyName\"],\n dataSourceInfo: datasourceDeserializer(item[\"dataSourceInfo\"]),\n dataSourceSetInfo: !item[\"dataSourceSetInfo\"]\n ? item[\"dataSourceSetInfo\"]\n : datasourceSetDeserializer(item[\"dataSourceSetInfo\"]),\n policyInfo: policyInfoDeserializer(item[\"policyInfo\"]),\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n protectionStatus: !item[\"protectionStatus\"]\n ? item[\"protectionStatus\"]\n : protectionStatusDetailsDeserializer(item[\"protectionStatus\"]),\n currentProtectionState: item[\"currentProtectionState\"],\n protectionErrorDetails: !item[\"protectionErrorDetails\"]\n ? item[\"protectionErrorDetails\"]\n : userFacingErrorDeserializer(item[\"protectionErrorDetails\"]),\n provisioningState: item[\"provisioningState\"],\n datasourceAuthCredentials: !item[\"datasourceAuthCredentials\"]\n ? item[\"datasourceAuthCredentials\"]\n : authCredentialsUnionDeserializer(item[\"datasourceAuthCredentials\"]),\n validationType: item[\"validationType\"],\n identityDetails: !item[\"identityDetails\"]\n ? item[\"identityDetails\"]\n : identityDetailsDeserializer(item[\"identityDetails\"]),\n objectType: item[\"objectType\"],\n deletionInfo: !item[\"deletionInfo\"]\n ? item[\"deletionInfo\"]\n : deletionInfoDeserializer(item[\"deletionInfo\"]),\n };\n}\n\n/** Deletion Info */\nexport interface DeletionInfo {\n /** Specifies time of deletion */\n readonly deletionTime?: string;\n /** Specifies billing end date */\n readonly billingEndDate?: string;\n /** Specifies purge time */\n readonly scheduledPurgeTime?: string;\n /** Delete activity ID for troubleshooting purpose */\n readonly deleteActivityID?: string;\n}\n\nexport function deletionInfoDeserializer(item: any): DeletionInfo {\n return {\n deletionTime: item[\"deletionTime\"],\n billingEndDate: item[\"billingEndDate\"],\n scheduledPurgeTime: item[\"scheduledPurgeTime\"],\n deleteActivityID: item[\"deleteActivityID\"],\n };\n}\n\n/** List of DeletedBackupInstance resources */\nexport interface _DeletedBackupInstanceResourceList extends DppResourceList {\n /** List of resources. */\n value?: DeletedBackupInstanceResource[];\n}\n\nexport function _deletedBackupInstanceResourceListDeserializer(\n item: any,\n): _DeletedBackupInstanceResourceList {\n return {\n nextLink: item[\"nextLink\"],\n value: !item[\"value\"]\n ? item[\"value\"]\n : deletedBackupInstanceResourceArrayDeserializer(item[\"value\"]),\n };\n}\n\nexport function deletedBackupInstanceResourceArrayDeserializer(\n result: Array<DeletedBackupInstanceResource>,\n): any[] {\n return result.map((item) => {\n return deletedBackupInstanceResourceDeserializer(item);\n });\n}\n\n/** ResourceGuardProxyBaseResource object, used for response and request bodies for ResourceGuardProxy APIs */\nexport interface ResourceGuardProxyBaseResource extends ProxyResource {\n /** ResourceGuardProxyBaseResource properties */\n properties?: ResourceGuardProxyBase;\n}\n\nexport function resourceGuardProxyBaseResourceSerializer(\n item: ResourceGuardProxyBaseResource,\n): any {\n return {\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : resourceGuardProxyBaseSerializer(item[\"properties\"]),\n };\n}\n\nexport function resourceGuardProxyBaseResourceDeserializer(\n item: any,\n): ResourceGuardProxyBaseResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : resourceGuardProxyBaseDeserializer(item[\"properties\"]),\n };\n}\n\n/** ResourceGuardProxyBase object, used in ResourceGuardProxyBaseResource */\nexport interface ResourceGuardProxyBase {\n resourceGuardResourceId?: string;\n resourceGuardOperationDetails?: ResourceGuardOperationDetail[];\n lastUpdatedTime?: string;\n description?: string;\n}\n\nexport function resourceGuardProxyBaseSerializer(item: ResourceGuardProxyBase): any {\n return {\n resourceGuardResourceId: item[\"resourceGuardResourceId\"],\n resourceGuardOperationDetails: !item[\"resourceGuardOperationDetails\"]\n ? item[\"resourceGuardOperationDetails\"]\n : resourceGuardOperationDetailArraySerializer(item[\"resourceGuardOperationDetails\"]),\n lastUpdatedTime: item[\"lastUpdatedTime\"],\n description: item[\"description\"],\n };\n}\n\nexport function resourceGuardProxyBaseDeserializer(item: any): ResourceGuardProxyBase {\n return {\n resourceGuardResourceId: item[\"resourceGuardResourceId\"],\n resourceGuardOperationDetails: !item[\"resourceGuardOperationDetails\"]\n ? item[\"resourceGuardOperationDetails\"]\n : resourceGuardOperationDetailArrayDeserializer(item[\"resourceGuardOperationDetails\"]),\n lastUpdatedTime: item[\"lastUpdatedTime\"],\n description: item[\"description\"],\n };\n}\n\nexport function resourceGuardOperationDetailArraySerializer(\n result: Array<ResourceGuardOperationDetail>,\n): any[] {\n return result.map((item) => {\n return resourceGuardOperationDetailSerializer(item);\n });\n}\n\nexport function resourceGuardOperationDetailArrayDeserializer(\n result: Array<ResourceGuardOperationDetail>,\n): any[] {\n return result.map((item) => {\n return resourceGuardOperationDetailDeserializer(item);\n });\n}\n\n/** VaultCritical Operation protected by a resource guard */\nexport interface ResourceGuardOperationDetail {\n vaultCriticalOperation?: string;\n defaultResourceRequest?: string;\n}\n\nexport function resourceGuardOperationDetailSerializer(item: ResourceGuardOperationDetail): any {\n return {\n vaultCriticalOperation: item[\"vaultCriticalOperation\"],\n defaultResourceRequest: item[\"defaultResourceRequest\"],\n };\n}\n\nexport function resourceGuardOperationDetailDeserializer(item: any): ResourceGuardOperationDetail {\n return {\n vaultCriticalOperation: item[\"vaultCriticalOperation\"],\n defaultResourceRequest: item[\"defaultResourceRequest\"],\n };\n}\n\n/** List of ResourceGuardProxyBase resources */\nexport interface _ResourceGuardProxyBaseResourceList extends DppResourceList {\n /** List of resources. */\n value?: ResourceGuardProxyBaseResource[];\n}\n\nexport function _resourceGuardProxyBaseResourceListDeserializer(\n item: any,\n): _ResourceGuardProxyBaseResourceList {\n return {\n nextLink: item[\"nextLink\"],\n value: !item[\"value\"]\n ? item[\"value\"]\n : resourceGuardProxyBaseResourceArrayDeserializer(item[\"value\"]),\n };\n}\n\nexport function resourceGuardProxyBaseResourceArraySerializer(\n result: Array<ResourceGuardProxyBaseResource>,\n): any[] {\n return result.map((item) => {\n return resourceGuardProxyBaseResourceSerializer(item);\n });\n}\n\nexport function resourceGuardProxyBaseResourceArrayDeserializer(\n result: Array<ResourceGuardProxyBaseResource>,\n): any[] {\n return result.map((item) => {\n return resourceGuardProxyBaseResourceDeserializer(item);\n });\n}\n\n/** Request body of unlock delete API. */\nexport interface UnlockDeleteRequest {\n /** ResourceGuardOperationRequests on which LAC check will be performed */\n resourceGuardOperationRequests?: string[];\n resourceToBeDeleted?: string;\n}\n\nexport function unlockDeleteRequestSerializer(item: UnlockDeleteRequest): any {\n return {\n resourceGuardOperationRequests: !item[\"resourceGuardOperationRequests\"]\n ? item[\"resourceGuardOperationRequests\"]\n : item[\"resourceGuardOperationRequests\"].map((p: any) => {\n return p;\n }),\n resourceToBeDeleted: item[\"resourceToBeDeleted\"],\n };\n}\n\n/** Response of Unlock Delete API. */\nexport interface UnlockDeleteResponse {\n /** This is the time when unlock delete privileges will get expired. */\n unlockDeleteExpiryTime?: string;\n}\n\nexport function unlockDeleteResponseDeserializer(item: any): UnlockDeleteResponse {\n return {\n unlockDeleteExpiryTime: item[\"unlockDeleteExpiryTime\"],\n };\n}\n\n/** Base class for Backup Feature support */\nexport interface FeatureValidationRequestBase {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: FeatureValidationRequest */\n objectType: string;\n}\n\nexport function featureValidationRequestBaseSerializer(item: FeatureValidationRequestBase): any {\n return { objectType: item[\"objectType\"] };\n}\n\n/** Alias for FeatureValidationRequestBaseUnion */\nexport type FeatureValidationRequestBaseUnion =\n | FeatureValidationRequest\n | FeatureValidationRequestBase;\n\nexport function featureValidationRequestBaseUnionSerializer(\n item: FeatureValidationRequestBaseUnion,\n): any {\n switch (item.objectType) {\n case \"FeatureValidationRequest\":\n return featureValidationRequestSerializer(item as FeatureValidationRequest);\n\n default:\n return featureValidationRequestBaseSerializer(item);\n }\n}\n\n/** Base class for feature object */\nexport interface FeatureValidationRequest extends FeatureValidationRequestBase {\n /** backup support feature type. */\n featureType?: FeatureType;\n /** backup support feature name. */\n featureName?: string;\n /** Type of the specific object - used for deserializing */\n objectType: \"FeatureValidationRequest\";\n}\n\nexport function featureValidationRequestSerializer(item: FeatureValidationRequest): any {\n return {\n objectType: item[\"objectType\"],\n featureType: item[\"featureType\"],\n featureName: item[\"featureName\"],\n };\n}\n\n/** backup support feature type. */\nexport enum KnownFeatureType {\n /** Invalid */\n Invalid = \"Invalid\",\n /** DataSourceType */\n DataSourceType = \"DataSourceType\",\n}\n\n/**\n * backup support feature type. \\\n * {@link KnownFeatureType} can be used interchangeably with FeatureType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Invalid** \\\n * **DataSourceType**\n */\nexport type FeatureType = string;\n\n/** Base class for Backup Feature support */\nexport interface FeatureValidationResponseBase {\n /** Type of the specific object - used for deserializing */\n /** The discriminator possible values: FeatureValidationResponse */\n objectType: string;\n}\n\nexport function featureValidationResponseBaseDeserializer(\n item: any,\n): FeatureValidationResponseBase {\n return {\n objectType: item[\"objectType\"],\n };\n}\n\n/** Alias for FeatureValidationResponseBaseUnion */\nexport type FeatureValidationResponseBaseUnion =\n | FeatureValidationResponse\n | FeatureValidationResponseBase;\n\nexport function featureValidationResponseBaseUnionDeserializer(\n item: any,\n): FeatureValidationResponseBaseUnion {\n switch (item[\"objectType\"]) {\n case \"FeatureValidationResponse\":\n return featureValidationResponseDeserializer(item as FeatureValidationResponse);\n\n default:\n return featureValidationResponseBaseDeserializer(item);\n }\n}\n\n/** Feature Validation Response */\nexport interface FeatureValidationResponse extends FeatureValidationResponseBase {\n /** backup support feature type. */\n featureType?: FeatureType;\n /** Response features */\n features?: SupportedFeature[];\n /** Type of the specific object - used for deserializing */\n objectType: \"FeatureValidationResponse\";\n}\n\nexport function featureValidationResponseDeserializer(item: any): FeatureValidationResponse {\n return {\n objectType: item[\"objectType\"],\n featureType: item[\"featureType\"],\n features: !item[\"features\"]\n ? item[\"features\"]\n : supportedFeatureArrayDeserializer(item[\"features\"]),\n };\n}\n\nexport function supportedFeatureArrayDeserializer(result: Array<SupportedFeature>): any[] {\n return result.map((item) => {\n return supportedFeatureDeserializer(item);\n });\n}\n\n/** Elements class for feature request */\nexport interface SupportedFeature {\n /** support feature type. */\n featureName?: string;\n /** feature support status */\n supportStatus?: FeatureSupportStatus;\n /** support feature type. */\n exposureControlledFeatures?: string[];\n}\n\nexport function supportedFeatureDeserializer(item: any): SupportedFeature {\n return {\n featureName: item[\"featureName\"],\n supportStatus: item[\"supportStatus\"],\n exposureControlledFeatures: !item[\"exposureControlledFeatures\"]\n ? item[\"exposureControlledFeatures\"]\n : item[\"exposureControlledFeatures\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** feature support status */\nexport enum KnownFeatureSupportStatus {\n /** Invalid */\n Invalid = \"Invalid\",\n /** NotSupported */\n NotSupported = \"NotSupported\",\n /** AlphaPreview */\n AlphaPreview = \"AlphaPreview\",\n /** PrivatePreview */\n PrivatePreview = \"PrivatePreview\",\n /** PublicPreview */\n PublicPreview = \"PublicPreview\",\n /** GenerallyAvailable */\n GenerallyAvailable = \"GenerallyAvailable\",\n}\n\n/**\n * feature support status \\\n * {@link KnownFeatureSupportStatus} can be used interchangeably with FeatureSupportStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Invalid** \\\n * **NotSupported** \\\n * **AlphaPreview** \\\n * **PrivatePreview** \\\n * **PublicPreview** \\\n * **GenerallyAvailable**\n */\nexport type FeatureSupportStatus = string;\n\n/**\n * Information about BI whose secondary RecoveryPoints are requested\n * Source region and\n * BI ARM path\n */\nexport interface FetchSecondaryRPsRequestParameters {\n /** Source region in which BackupInstance is located */\n sourceRegion?: string;\n /** ARM Path of BackupInstance */\n sourceBackupInstanceId?: string;\n}\n\nexport function fetchSecondaryRPsRequestParametersSerializer(\n item: FetchSecondaryRPsRequestParameters,\n): any {\n return {\n sourceRegion: item[\"sourceRegion\"],\n sourceBackupInstanceId: item[\"sourceBackupInstanceId\"],\n };\n}\n\n/** Details of CRR Job to be fetched */\nexport interface CrossRegionRestoreJobRequest {\n sourceRegion: string;\n sourceBackupVaultId: string;\n jobId: string;\n}\n\nexport function crossRegionRestoreJobRequestSerializer(item: CrossRegionRestoreJobRequest): any {\n return {\n sourceRegion: item[\"sourceRegion\"],\n sourceBackupVaultId: item[\"sourceBackupVaultId\"],\n jobId: item[\"jobId\"],\n };\n}\n\n/** Details of Backup Vault for which CRR Jobs are to be fetched */\nexport interface CrossRegionRestoreJobsRequest {\n sourceRegion: string;\n sourceBackupVaultId: string;\n}\n\nexport function crossRegionRestoreJobsRequestSerializer(item: CrossRegionRestoreJobsRequest): any {\n return { sourceRegion: item[\"sourceRegion\"], sourceBackupVaultId: item[\"sourceBackupVaultId\"] };\n}\n\n/** The available API versions. */\nexport enum KnownVersions {\n /** The 2025-07-01 API version. */\n V20250701 = \"2025-07-01\",\n /** The 2025-09-01 API version. */\n V20250901 = \"2025-09-01\",\n /** The 2026-03-01 API version. */\n V20260301 = \"2026-03-01\",\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAA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",
6
+ "names": ["KnownOrigin", "KnownActionType", "KnownResourcePropertiesObjectType", "KnownDataStoreTypes", "KnownAKSVolumeTypes", "KnownBlobBackupRuleMode", "KnownBlobBackupPatternType", "KnownStatus", "KnownCurrentProtectionState", "KnownSecretStoreType", "KnownValidationType", "KnownCreatedByType", "KnownRehydrationPriority", "KnownRecoveryOption", "KnownPersistentVolumeRestoreMode", "KnownExistingResourcePolicy", "KnownRestoreTargetLocationType", "KnownSourceDataStoreType", "KnownSyncType", "KnownAlertsState", "KnownProvisioningState", "KnownResourceMoveState", "KnownSoftDeleteState", "KnownImmutabilityState", "KnownEncryptionState", "KnownIdentityType", "KnownInfrastructureEncryptionState", "KnownStorageSettingStoreTypes", "KnownStorageSettingTypes", "KnownCrossSubscriptionRestoreState", "KnownCrossRegionRestoreState", "KnownSecureScoreLevel", "KnownBcdrSecurityLevel", "KnownAbsoluteMarker", "KnownDayOfWeek", "KnownMonth", "KnownWeekNumber", "KnownRestoreSourceDataStoreType", "KnownRehydrationStatus", "KnownRecoveryPointCompletionState", "KnownFeatureType", "KnownFeatureSupportStatus", "KnownVersions"]
7
+ }