@azure/arm-computeschedule 1.2.0-beta.1 → 2.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 (361) hide show
  1. package/dist/browser/api/computeScheduleContext.d.ts +6 -6
  2. package/dist/browser/api/computeScheduleContext.js +4 -23
  3. package/dist/browser/api/computeScheduleContext.js.map +1 -1
  4. package/dist/browser/api/index.d.ts +2 -1
  5. package/dist/browser/api/index.js +1 -1
  6. package/dist/browser/api/index.js.map +1 -1
  7. package/dist/browser/api/occurrenceExtension/index.d.ts +1 -1
  8. package/dist/browser/api/occurrenceExtension/index.js.map +1 -1
  9. package/dist/browser/api/occurrenceExtension/operations.d.ts +5 -5
  10. package/dist/browser/api/occurrenceExtension/operations.js +11 -14
  11. package/dist/browser/api/occurrenceExtension/operations.js.map +1 -1
  12. package/dist/browser/api/occurrenceExtension/options.d.ts +1 -1
  13. package/dist/browser/api/occurrenceExtension/options.js.map +1 -1
  14. package/dist/browser/api/occurrences/index.d.ts +1 -1
  15. package/dist/browser/api/occurrences/index.js.map +1 -1
  16. package/dist/browser/api/occurrences/operations.d.ts +6 -6
  17. package/dist/browser/api/occurrences/operations.js +27 -37
  18. package/dist/browser/api/occurrences/operations.js.map +1 -1
  19. package/dist/browser/api/occurrences/options.d.ts +1 -1
  20. package/dist/browser/api/occurrences/options.js.map +1 -1
  21. package/dist/browser/api/operations/index.d.ts +1 -1
  22. package/dist/browser/api/operations/index.js.map +1 -1
  23. package/dist/browser/api/operations/operations.d.ts +5 -5
  24. package/dist/browser/api/operations/operations.js +9 -8
  25. package/dist/browser/api/operations/operations.js.map +1 -1
  26. package/dist/browser/api/operations/options.d.ts +1 -1
  27. package/dist/browser/api/operations/options.js.map +1 -1
  28. package/dist/browser/api/scheduledActionExtension/index.d.ts +1 -1
  29. package/dist/browser/api/scheduledActionExtension/index.js.map +1 -1
  30. package/dist/browser/api/scheduledActionExtension/operations.d.ts +5 -5
  31. package/dist/browser/api/scheduledActionExtension/operations.js +11 -14
  32. package/dist/browser/api/scheduledActionExtension/operations.js.map +1 -1
  33. package/dist/browser/api/scheduledActionExtension/options.d.ts +1 -1
  34. package/dist/browser/api/scheduledActionExtension/options.js.map +1 -1
  35. package/dist/browser/api/scheduledActions/index.d.ts +2 -2
  36. package/dist/browser/api/scheduledActions/index.js +1 -1
  37. package/dist/browser/api/scheduledActions/index.js.map +1 -1
  38. package/dist/browser/api/scheduledActions/operations.d.ts +16 -17
  39. package/dist/browser/api/scheduledActions/operations.js +142 -264
  40. package/dist/browser/api/scheduledActions/operations.js.map +1 -1
  41. package/dist/browser/api/scheduledActions/options.d.ts +4 -1
  42. package/dist/browser/api/scheduledActions/options.js.map +1 -1
  43. package/dist/browser/classic/index.d.ts +5 -5
  44. package/dist/browser/classic/index.js.map +1 -1
  45. package/dist/browser/classic/occurrenceExtension/index.d.ts +4 -4
  46. package/dist/browser/classic/occurrenceExtension/index.js.map +1 -1
  47. package/dist/browser/classic/occurrences/index.d.ts +5 -5
  48. package/dist/browser/classic/occurrences/index.js.map +1 -1
  49. package/dist/browser/classic/operations/index.d.ts +4 -4
  50. package/dist/browser/classic/operations/index.js.map +1 -1
  51. package/dist/browser/classic/scheduledActionExtension/index.d.ts +4 -4
  52. package/dist/browser/classic/scheduledActionExtension/index.js.map +1 -1
  53. package/dist/browser/classic/scheduledActions/index.d.ts +11 -14
  54. package/dist/browser/classic/scheduledActions/index.js +2 -1
  55. package/dist/browser/classic/scheduledActions/index.js.map +1 -1
  56. package/dist/browser/computeScheduleClient.d.ts +10 -10
  57. package/dist/browser/computeScheduleClient.js +14 -6
  58. package/dist/browser/computeScheduleClient.js.map +1 -1
  59. package/dist/browser/index.d.ts +17 -13
  60. package/dist/browser/index.js +1 -1
  61. package/dist/browser/index.js.map +1 -1
  62. package/dist/browser/models/index.d.ts +2 -1
  63. package/dist/browser/models/index.js +1 -1
  64. package/dist/browser/models/index.js.map +1 -1
  65. package/dist/browser/models/models.d.ts +1627 -44
  66. package/dist/browser/models/models.js +1185 -38
  67. package/dist/browser/models/models.js.map +1 -1
  68. package/dist/browser/restorePollerHelpers.d.ts +4 -4
  69. package/dist/browser/restorePollerHelpers.js +10 -10
  70. package/dist/browser/restorePollerHelpers.js.map +1 -1
  71. package/dist/browser/static-helpers/cloudSettingHelpers.d.ts +10 -1
  72. package/dist/browser/static-helpers/cloudSettingHelpers.js +10 -1
  73. package/dist/browser/static-helpers/cloudSettingHelpers.js.map +1 -1
  74. package/dist/browser/static-helpers/pagingHelpers.d.ts +3 -1
  75. package/dist/browser/static-helpers/pagingHelpers.js +28 -3
  76. package/dist/browser/static-helpers/pagingHelpers.js.map +1 -1
  77. package/dist/browser/static-helpers/pollingHelpers.d.ts +7 -3
  78. package/dist/browser/static-helpers/pollingHelpers.js +19 -3
  79. package/dist/browser/static-helpers/pollingHelpers.js.map +1 -1
  80. package/dist/browser/static-helpers/urlTemplate.js +41 -10
  81. package/dist/browser/static-helpers/urlTemplate.js.map +1 -1
  82. package/dist/commonjs/api/computeScheduleContext.d.ts +6 -6
  83. package/dist/commonjs/api/computeScheduleContext.js +43 -44
  84. package/dist/commonjs/api/computeScheduleContext.js.map +7 -1
  85. package/dist/commonjs/api/index.d.ts +2 -1
  86. package/dist/commonjs/api/index.js +28 -8
  87. package/dist/commonjs/api/index.js.map +7 -1
  88. package/dist/commonjs/api/occurrenceExtension/index.d.ts +1 -1
  89. package/dist/commonjs/api/occurrenceExtension/index.js +28 -8
  90. package/dist/commonjs/api/occurrenceExtension/index.js.map +7 -1
  91. package/dist/commonjs/api/occurrenceExtension/operations.d.ts +5 -5
  92. package/dist/commonjs/api/occurrenceExtension/operations.js +69 -40
  93. package/dist/commonjs/api/occurrenceExtension/operations.js.map +7 -1
  94. package/dist/commonjs/api/occurrenceExtension/options.d.ts +1 -1
  95. package/dist/commonjs/api/occurrenceExtension/options.js +16 -5
  96. package/dist/commonjs/api/occurrenceExtension/options.js.map +7 -1
  97. package/dist/commonjs/api/occurrences/index.d.ts +1 -1
  98. package/dist/commonjs/api/occurrences/index.js +36 -12
  99. package/dist/commonjs/api/occurrences/index.js.map +7 -1
  100. package/dist/commonjs/api/occurrences/operations.d.ts +6 -6
  101. package/dist/commonjs/api/occurrences/operations.js +231 -166
  102. package/dist/commonjs/api/occurrences/operations.js.map +7 -1
  103. package/dist/commonjs/api/occurrences/options.d.ts +1 -1
  104. package/dist/commonjs/api/occurrences/options.js +16 -5
  105. package/dist/commonjs/api/occurrences/options.js.map +7 -1
  106. package/dist/commonjs/api/operations/index.d.ts +1 -1
  107. package/dist/commonjs/api/operations/index.js +28 -8
  108. package/dist/commonjs/api/operations/index.js.map +7 -1
  109. package/dist/commonjs/api/operations/operations.d.ts +5 -5
  110. package/dist/commonjs/api/operations/operations.js +66 -33
  111. package/dist/commonjs/api/operations/operations.js.map +7 -1
  112. package/dist/commonjs/api/operations/options.d.ts +1 -1
  113. package/dist/commonjs/api/operations/options.js +16 -5
  114. package/dist/commonjs/api/operations/options.js.map +7 -1
  115. package/dist/commonjs/api/scheduledActionExtension/index.d.ts +1 -1
  116. package/dist/commonjs/api/scheduledActionExtension/index.js +28 -8
  117. package/dist/commonjs/api/scheduledActionExtension/index.js.map +7 -1
  118. package/dist/commonjs/api/scheduledActionExtension/operations.d.ts +5 -5
  119. package/dist/commonjs/api/scheduledActionExtension/operations.js +69 -40
  120. package/dist/commonjs/api/scheduledActionExtension/operations.js.map +7 -1
  121. package/dist/commonjs/api/scheduledActionExtension/options.d.ts +1 -1
  122. package/dist/commonjs/api/scheduledActionExtension/options.js +16 -5
  123. package/dist/commonjs/api/scheduledActionExtension/options.js.map +7 -1
  124. package/dist/commonjs/api/scheduledActions/index.d.ts +2 -2
  125. package/dist/commonjs/api/scheduledActions/index.js +78 -32
  126. package/dist/commonjs/api/scheduledActions/index.js.map +7 -1
  127. package/dist/commonjs/api/scheduledActions/operations.d.ts +16 -17
  128. package/dist/commonjs/api/scheduledActions/operations.js +1048 -878
  129. package/dist/commonjs/api/scheduledActions/operations.js.map +7 -1
  130. package/dist/commonjs/api/scheduledActions/options.d.ts +4 -1
  131. package/dist/commonjs/api/scheduledActions/options.js +16 -5
  132. package/dist/commonjs/api/scheduledActions/options.js.map +7 -1
  133. package/dist/commonjs/classic/index.d.ts +5 -5
  134. package/dist/commonjs/classic/index.js +16 -5
  135. package/dist/commonjs/classic/index.js.map +7 -1
  136. package/dist/commonjs/classic/occurrenceExtension/index.d.ts +4 -4
  137. package/dist/commonjs/classic/occurrenceExtension/index.js +34 -13
  138. package/dist/commonjs/classic/occurrenceExtension/index.js.map +7 -1
  139. package/dist/commonjs/classic/occurrences/index.d.ts +5 -5
  140. package/dist/commonjs/classic/occurrences/index.js +38 -17
  141. package/dist/commonjs/classic/occurrences/index.js.map +7 -1
  142. package/dist/commonjs/classic/operations/index.d.ts +4 -4
  143. package/dist/commonjs/classic/operations/index.js +34 -13
  144. package/dist/commonjs/classic/operations/index.js.map +7 -1
  145. package/dist/commonjs/classic/scheduledActionExtension/index.d.ts +4 -4
  146. package/dist/commonjs/classic/scheduledActionExtension/index.js +34 -13
  147. package/dist/commonjs/classic/scheduledActionExtension/index.js.map +7 -1
  148. package/dist/commonjs/classic/scheduledActions/index.d.ts +11 -14
  149. package/dist/commonjs/classic/scheduledActions/index.js +59 -37
  150. package/dist/commonjs/classic/scheduledActions/index.js.map +7 -1
  151. package/dist/commonjs/computeScheduleClient.d.ts +10 -10
  152. package/dist/commonjs/computeScheduleClient.js +67 -42
  153. package/dist/commonjs/computeScheduleClient.js.map +7 -1
  154. package/dist/commonjs/index.d.ts +17 -13
  155. package/dist/commonjs/index.js +143 -31
  156. package/dist/commonjs/index.js.map +7 -1
  157. package/dist/commonjs/logger.js +29 -8
  158. package/dist/commonjs/logger.js.map +7 -1
  159. package/dist/commonjs/models/index.d.ts +2 -1
  160. package/dist/commonjs/models/index.js +134 -25
  161. package/dist/commonjs/models/index.js.map +7 -1
  162. package/dist/commonjs/models/models.d.ts +1627 -44
  163. package/dist/commonjs/models/models.js +2030 -921
  164. package/dist/commonjs/models/models.js.map +7 -1
  165. package/dist/commonjs/restorePollerHelpers.d.ts +4 -4
  166. package/dist/commonjs/restorePollerHelpers.js +99 -89
  167. package/dist/commonjs/restorePollerHelpers.js.map +7 -1
  168. package/dist/commonjs/static-helpers/cloudSettingHelpers.d.ts +10 -1
  169. package/dist/commonjs/static-helpers/cloudSettingHelpers.js +50 -31
  170. package/dist/commonjs/static-helpers/cloudSettingHelpers.js.map +7 -1
  171. package/dist/commonjs/static-helpers/pagingHelpers.d.ts +3 -1
  172. package/dist/commonjs/static-helpers/pagingHelpers.js +125 -103
  173. package/dist/commonjs/static-helpers/pagingHelpers.js.map +7 -1
  174. package/dist/commonjs/static-helpers/pollingHelpers.d.ts +7 -3
  175. package/dist/commonjs/static-helpers/pollingHelpers.js +95 -76
  176. package/dist/commonjs/static-helpers/pollingHelpers.js.map +7 -1
  177. package/dist/commonjs/static-helpers/urlTemplate.js +167 -142
  178. package/dist/commonjs/static-helpers/urlTemplate.js.map +7 -1
  179. package/dist/commonjs/tsdoc-metadata.json +1 -1
  180. package/dist/esm/api/computeScheduleContext.d.ts +6 -6
  181. package/dist/esm/api/computeScheduleContext.js +4 -23
  182. package/dist/esm/api/computeScheduleContext.js.map +1 -1
  183. package/dist/esm/api/index.d.ts +2 -1
  184. package/dist/esm/api/index.js +1 -1
  185. package/dist/esm/api/index.js.map +1 -1
  186. package/dist/esm/api/occurrenceExtension/index.d.ts +1 -1
  187. package/dist/esm/api/occurrenceExtension/index.js.map +1 -1
  188. package/dist/esm/api/occurrenceExtension/operations.d.ts +5 -5
  189. package/dist/esm/api/occurrenceExtension/operations.js +11 -14
  190. package/dist/esm/api/occurrenceExtension/operations.js.map +1 -1
  191. package/dist/esm/api/occurrenceExtension/options.d.ts +1 -1
  192. package/dist/esm/api/occurrenceExtension/options.js.map +1 -1
  193. package/dist/esm/api/occurrences/index.d.ts +1 -1
  194. package/dist/esm/api/occurrences/index.js.map +1 -1
  195. package/dist/esm/api/occurrences/operations.d.ts +6 -6
  196. package/dist/esm/api/occurrences/operations.js +27 -37
  197. package/dist/esm/api/occurrences/operations.js.map +1 -1
  198. package/dist/esm/api/occurrences/options.d.ts +1 -1
  199. package/dist/esm/api/occurrences/options.js.map +1 -1
  200. package/dist/esm/api/operations/index.d.ts +1 -1
  201. package/dist/esm/api/operations/index.js.map +1 -1
  202. package/dist/esm/api/operations/operations.d.ts +5 -5
  203. package/dist/esm/api/operations/operations.js +9 -8
  204. package/dist/esm/api/operations/operations.js.map +1 -1
  205. package/dist/esm/api/operations/options.d.ts +1 -1
  206. package/dist/esm/api/operations/options.js.map +1 -1
  207. package/dist/esm/api/scheduledActionExtension/index.d.ts +1 -1
  208. package/dist/esm/api/scheduledActionExtension/index.js.map +1 -1
  209. package/dist/esm/api/scheduledActionExtension/operations.d.ts +5 -5
  210. package/dist/esm/api/scheduledActionExtension/operations.js +11 -14
  211. package/dist/esm/api/scheduledActionExtension/operations.js.map +1 -1
  212. package/dist/esm/api/scheduledActionExtension/options.d.ts +1 -1
  213. package/dist/esm/api/scheduledActionExtension/options.js.map +1 -1
  214. package/dist/esm/api/scheduledActions/index.d.ts +2 -2
  215. package/dist/esm/api/scheduledActions/index.js +1 -1
  216. package/dist/esm/api/scheduledActions/index.js.map +1 -1
  217. package/dist/esm/api/scheduledActions/operations.d.ts +16 -17
  218. package/dist/esm/api/scheduledActions/operations.js +142 -264
  219. package/dist/esm/api/scheduledActions/operations.js.map +1 -1
  220. package/dist/esm/api/scheduledActions/options.d.ts +4 -1
  221. package/dist/esm/api/scheduledActions/options.js.map +1 -1
  222. package/dist/esm/classic/index.d.ts +5 -5
  223. package/dist/esm/classic/index.js.map +1 -1
  224. package/dist/esm/classic/occurrenceExtension/index.d.ts +4 -4
  225. package/dist/esm/classic/occurrenceExtension/index.js.map +1 -1
  226. package/dist/esm/classic/occurrences/index.d.ts +5 -5
  227. package/dist/esm/classic/occurrences/index.js.map +1 -1
  228. package/dist/esm/classic/operations/index.d.ts +4 -4
  229. package/dist/esm/classic/operations/index.js.map +1 -1
  230. package/dist/esm/classic/scheduledActionExtension/index.d.ts +4 -4
  231. package/dist/esm/classic/scheduledActionExtension/index.js.map +1 -1
  232. package/dist/esm/classic/scheduledActions/index.d.ts +11 -14
  233. package/dist/esm/classic/scheduledActions/index.js +2 -1
  234. package/dist/esm/classic/scheduledActions/index.js.map +1 -1
  235. package/dist/esm/computeScheduleClient.d.ts +10 -10
  236. package/dist/esm/computeScheduleClient.js +14 -6
  237. package/dist/esm/computeScheduleClient.js.map +1 -1
  238. package/dist/esm/index.d.ts +17 -13
  239. package/dist/esm/index.js +1 -1
  240. package/dist/esm/index.js.map +1 -1
  241. package/dist/esm/models/index.d.ts +2 -1
  242. package/dist/esm/models/index.js +1 -1
  243. package/dist/esm/models/index.js.map +1 -1
  244. package/dist/esm/models/models.d.ts +1627 -44
  245. package/dist/esm/models/models.js +1185 -38
  246. package/dist/esm/models/models.js.map +1 -1
  247. package/dist/esm/restorePollerHelpers.d.ts +4 -4
  248. package/dist/esm/restorePollerHelpers.js +10 -10
  249. package/dist/esm/restorePollerHelpers.js.map +1 -1
  250. package/dist/esm/static-helpers/cloudSettingHelpers.d.ts +10 -1
  251. package/dist/esm/static-helpers/cloudSettingHelpers.js +10 -1
  252. package/dist/esm/static-helpers/cloudSettingHelpers.js.map +1 -1
  253. package/dist/esm/static-helpers/pagingHelpers.d.ts +3 -1
  254. package/dist/esm/static-helpers/pagingHelpers.js +28 -3
  255. package/dist/esm/static-helpers/pagingHelpers.js.map +1 -1
  256. package/dist/esm/static-helpers/pollingHelpers.d.ts +7 -3
  257. package/dist/esm/static-helpers/pollingHelpers.js +19 -3
  258. package/dist/esm/static-helpers/pollingHelpers.js.map +1 -1
  259. package/dist/esm/static-helpers/urlTemplate.js +41 -10
  260. package/dist/esm/static-helpers/urlTemplate.js.map +1 -1
  261. package/package.json +36 -78
  262. package/dist/react-native/api/computeScheduleContext.d.ts +0 -22
  263. package/dist/react-native/api/computeScheduleContext.js +0 -43
  264. package/dist/react-native/api/computeScheduleContext.js.map +0 -1
  265. package/dist/react-native/api/index.d.ts +0 -2
  266. package/dist/react-native/api/index.js +0 -4
  267. package/dist/react-native/api/index.js.map +0 -1
  268. package/dist/react-native/api/occurrenceExtension/index.d.ts +0 -3
  269. package/dist/react-native/api/occurrenceExtension/index.js +0 -4
  270. package/dist/react-native/api/occurrenceExtension/index.js.map +0 -1
  271. package/dist/react-native/api/occurrenceExtension/operations.d.ts +0 -10
  272. package/dist/react-native/api/occurrenceExtension/operations.js +0 -39
  273. package/dist/react-native/api/occurrenceExtension/operations.js.map +0 -1
  274. package/dist/react-native/api/occurrenceExtension/options.d.ts +0 -5
  275. package/dist/react-native/api/occurrenceExtension/options.js +0 -4
  276. package/dist/react-native/api/occurrenceExtension/options.js.map +0 -1
  277. package/dist/react-native/api/occurrences/index.d.ts +0 -3
  278. package/dist/react-native/api/occurrences/index.js +0 -4
  279. package/dist/react-native/api/occurrences/index.js.map +0 -1
  280. package/dist/react-native/api/occurrences/operations.d.ts +0 -27
  281. package/dist/react-native/api/occurrences/operations.js +0 -177
  282. package/dist/react-native/api/occurrences/operations.js.map +0 -1
  283. package/dist/react-native/api/occurrences/options.d.ts +0 -19
  284. package/dist/react-native/api/occurrences/options.js +0 -4
  285. package/dist/react-native/api/occurrences/options.js.map +0 -1
  286. package/dist/react-native/api/operations/index.d.ts +0 -3
  287. package/dist/react-native/api/operations/index.js +0 -4
  288. package/dist/react-native/api/operations/index.js.map +0 -1
  289. package/dist/react-native/api/operations/operations.d.ts +0 -10
  290. package/dist/react-native/api/operations/operations.js +0 -34
  291. package/dist/react-native/api/operations/operations.js.map +0 -1
  292. package/dist/react-native/api/operations/options.d.ts +0 -5
  293. package/dist/react-native/api/operations/options.js +0 -4
  294. package/dist/react-native/api/operations/options.js.map +0 -1
  295. package/dist/react-native/api/scheduledActionExtension/index.d.ts +0 -3
  296. package/dist/react-native/api/scheduledActionExtension/index.js +0 -4
  297. package/dist/react-native/api/scheduledActionExtension/index.js.map +0 -1
  298. package/dist/react-native/api/scheduledActionExtension/operations.d.ts +0 -10
  299. package/dist/react-native/api/scheduledActionExtension/operations.js +0 -39
  300. package/dist/react-native/api/scheduledActionExtension/operations.js.map +0 -1
  301. package/dist/react-native/api/scheduledActionExtension/options.d.ts +0 -5
  302. package/dist/react-native/api/scheduledActionExtension/options.js +0 -4
  303. package/dist/react-native/api/scheduledActionExtension/options.js.map +0 -1
  304. package/dist/react-native/api/scheduledActions/index.d.ts +0 -3
  305. package/dist/react-native/api/scheduledActions/index.js +0 -4
  306. package/dist/react-native/api/scheduledActions/index.js.map +0 -1
  307. package/dist/react-native/api/scheduledActions/operations.d.ts +0 -112
  308. package/dist/react-native/api/scheduledActions/operations.js +0 -889
  309. package/dist/react-native/api/scheduledActions/operations.js.map +0 -1
  310. package/dist/react-native/api/scheduledActions/options.d.ts +0 -81
  311. package/dist/react-native/api/scheduledActions/options.js +0 -4
  312. package/dist/react-native/api/scheduledActions/options.js.map +0 -1
  313. package/dist/react-native/classic/index.d.ts +0 -6
  314. package/dist/react-native/classic/index.js +0 -4
  315. package/dist/react-native/classic/index.js.map +0 -1
  316. package/dist/react-native/classic/occurrenceExtension/index.d.ts +0 -11
  317. package/dist/react-native/classic/occurrenceExtension/index.js +0 -14
  318. package/dist/react-native/classic/occurrenceExtension/index.js.map +0 -1
  319. package/dist/react-native/classic/occurrences/index.d.ts +0 -20
  320. package/dist/react-native/classic/occurrences/index.js +0 -18
  321. package/dist/react-native/classic/occurrences/index.js.map +0 -1
  322. package/dist/react-native/classic/operations/index.d.ts +0 -11
  323. package/dist/react-native/classic/operations/index.js +0 -14
  324. package/dist/react-native/classic/operations/index.js.map +0 -1
  325. package/dist/react-native/classic/scheduledActionExtension/index.d.ts +0 -11
  326. package/dist/react-native/classic/scheduledActionExtension/index.js +0 -14
  327. package/dist/react-native/classic/scheduledActionExtension/index.js.map +0 -1
  328. package/dist/react-native/classic/scheduledActions/index.d.ts +0 -65
  329. package/dist/react-native/classic/scheduledActions/index.js +0 -38
  330. package/dist/react-native/classic/scheduledActions/index.js.map +0 -1
  331. package/dist/react-native/computeScheduleClient.d.ts +0 -27
  332. package/dist/react-native/computeScheduleClient.js +0 -41
  333. package/dist/react-native/computeScheduleClient.js.map +0 -1
  334. package/dist/react-native/index.d.ts +0 -15
  335. package/dist/react-native/index.js +0 -8
  336. package/dist/react-native/index.js.map +0 -1
  337. package/dist/react-native/logger.d.ts +0 -2
  338. package/dist/react-native/logger.js +0 -5
  339. package/dist/react-native/logger.js.map +0 -1
  340. package/dist/react-native/models/index.d.ts +0 -2
  341. package/dist/react-native/models/index.js +0 -4
  342. package/dist/react-native/models/index.js.map +0 -1
  343. package/dist/react-native/models/models.d.ts +0 -1142
  344. package/dist/react-native/models/models.js +0 -992
  345. package/dist/react-native/models/models.js.map +0 -1
  346. package/dist/react-native/package.json +0 -3
  347. package/dist/react-native/restorePollerHelpers.d.ts +0 -21
  348. package/dist/react-native/restorePollerHelpers.js +0 -97
  349. package/dist/react-native/restorePollerHelpers.js.map +0 -1
  350. package/dist/react-native/static-helpers/cloudSettingHelpers.d.ts +0 -13
  351. package/dist/react-native/static-helpers/cloudSettingHelpers.js +0 -29
  352. package/dist/react-native/static-helpers/cloudSettingHelpers.js.map +0 -1
  353. package/dist/react-native/static-helpers/pagingHelpers.d.ts +0 -72
  354. package/dist/react-native/static-helpers/pagingHelpers.js +0 -118
  355. package/dist/react-native/static-helpers/pagingHelpers.js.map +0 -1
  356. package/dist/react-native/static-helpers/pollingHelpers.d.ts +0 -30
  357. package/dist/react-native/static-helpers/pollingHelpers.js +0 -79
  358. package/dist/react-native/static-helpers/pollingHelpers.js.map +0 -1
  359. package/dist/react-native/static-helpers/urlTemplate.d.ts +0 -5
  360. package/dist/react-native/static-helpers/urlTemplate.js +0 -169
  361. package/dist/react-native/static-helpers/urlTemplate.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"models.js","sourceRoot":"","sources":["../../../src/models/models.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { ErrorModel } from \"@azure-rest/core-client\";\n\n/** A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results. */\nexport interface _OperationListResult {\n /** The Operation items on this page */\n value: Operation[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _operationListResultDeserializer(item: any): _OperationListResult {\n return {\n value: operationArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function operationArrayDeserializer(result: Array<Operation>): any[] {\n return result.map((item) => {\n return operationDeserializer(item);\n });\n}\n\n/** Details of a REST API operation, returned from the Resource Provider Operations API */\nexport interface Operation {\n /** The name of the operation, as per Resource-Based Access Control (RBAC). Examples: \"Microsoft.Compute/virtualMachines/write\", \"Microsoft.Compute/virtualMachines/capture/action\" */\n readonly name?: string;\n /** Whether the operation applies to data-plane. This is \"true\" for data-plane operations and \"false\" for Azure Resource Manager/control-plane operations. */\n readonly isDataAction?: boolean;\n /** Localized display information for this particular operation. */\n display?: OperationDisplay;\n /** The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is \"user,system\" */\n readonly origin?: Origin;\n /** Extensible enum. Indicates the action type. \"Internal\" refers to actions that are for internal only APIs. */\n readonly actionType?: ActionType;\n}\n\nexport function operationDeserializer(item: any): Operation {\n return {\n name: item[\"name\"],\n isDataAction: item[\"isDataAction\"],\n display: !item[\"display\"] ? item[\"display\"] : operationDisplayDeserializer(item[\"display\"]),\n origin: item[\"origin\"],\n actionType: item[\"actionType\"],\n };\n}\n\n/** Localized display information for and operation. */\nexport interface OperationDisplay {\n /** The localized friendly form of the resource provider name, e.g. \"Microsoft Monitoring Insights\" or \"Microsoft Compute\". */\n readonly provider?: string;\n /** The localized friendly name of the resource type related to this operation. E.g. \"Virtual Machines\" or \"Job Schedule Collections\". */\n readonly resource?: string;\n /** The concise, localized friendly name for the operation; suitable for dropdowns. E.g. \"Create or Update Virtual Machine\", \"Restart Virtual Machine\". */\n readonly operation?: string;\n /** The short, localized friendly description of the operation; suitable for tool tips and detailed views. */\n readonly description?: string;\n}\n\nexport function operationDisplayDeserializer(item: any): OperationDisplay {\n return {\n provider: item[\"provider\"],\n resource: item[\"resource\"],\n operation: item[\"operation\"],\n description: item[\"description\"],\n };\n}\n\n/** The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is \"user,system\" */\nexport enum KnownOrigin {\n /** Indicates the operation is initiated by a user. */\n User = \"user\",\n /** Indicates the operation is initiated by a system. */\n System = \"system\",\n /** Indicates the operation is initiated by a user or system. */\n UserSystem = \"user,system\",\n}\n\n/**\n * The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is \"user,system\" \\\n * {@link KnownOrigin} can be used interchangeably with Origin,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **user**: Indicates the operation is initiated by a user. \\\n * **system**: Indicates the operation is initiated by a system. \\\n * **user,system**: Indicates the operation is initiated by a user or system.\n */\nexport type Origin = string;\n\n/** Extensible enum. Indicates the action type. \"Internal\" refers to actions that are for internal only APIs. */\nexport enum KnownActionType {\n /** Actions are for internal-only APIs. */\n Internal = \"Internal\",\n}\n\n/**\n * Extensible enum. Indicates the action type. \"Internal\" refers to actions that are for internal only APIs. \\\n * {@link KnownActionType} can be used interchangeably with ActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Internal**: Actions are for internal-only APIs.\n */\nexport type ActionType = string;\n\n/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. */\nexport interface ErrorResponse {\n /** The error object. */\n error?: ErrorDetail;\n}\n\nexport function errorResponseDeserializer(item: any): ErrorResponse {\n return {\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n };\n}\n\n/** The error detail. */\nexport interface ErrorDetail {\n /** The error code. */\n readonly code?: string;\n /** The error message. */\n readonly message?: string;\n /** The error target. */\n readonly target?: string;\n /** The error details. */\n readonly details?: ErrorDetail[];\n /** The error additional info. */\n readonly additionalInfo?: ErrorAdditionalInfo[];\n}\n\nexport function errorDetailDeserializer(item: any): ErrorDetail {\n return {\n code: item[\"code\"],\n message: item[\"message\"],\n target: item[\"target\"],\n details: !item[\"details\"] ? item[\"details\"] : errorDetailArrayDeserializer(item[\"details\"]),\n additionalInfo: !item[\"additionalInfo\"]\n ? item[\"additionalInfo\"]\n : errorAdditionalInfoArrayDeserializer(item[\"additionalInfo\"]),\n };\n}\n\nexport function errorDetailArrayDeserializer(result: Array<ErrorDetail>): any[] {\n return result.map((item) => {\n return errorDetailDeserializer(item);\n });\n}\n\nexport function errorAdditionalInfoArrayDeserializer(result: Array<ErrorAdditionalInfo>): any[] {\n return result.map((item) => {\n return errorAdditionalInfoDeserializer(item);\n });\n}\n\n/** The resource management error additional info. */\nexport interface ErrorAdditionalInfo {\n /** The additional info type. */\n readonly type?: string;\n /** The additional info. */\n readonly info?: any;\n}\n\nexport function errorAdditionalInfoDeserializer(item: any): ErrorAdditionalInfo {\n return {\n type: item[\"type\"],\n info: item[\"info\"],\n };\n}\n\n/** The deallocate request for resources */\nexport interface SubmitDeallocateRequest {\n /** The schedule for the request */\n schedule: Schedule;\n /** The execution parameters for the request */\n executionParameters: ExecutionParameters;\n /** The resources for the request */\n resources: Resources;\n /** CorrelationId item */\n correlationId: string;\n}\n\nexport function submitDeallocateRequestSerializer(item: SubmitDeallocateRequest): any {\n return {\n schedule: scheduleSerializer(item[\"schedule\"]),\n executionParameters: executionParametersSerializer(item[\"executionParameters\"]),\n resources: resourcesSerializer(item[\"resources\"]),\n correlationid: item[\"correlationId\"],\n };\n}\n\n/** The schedule details for the user request */\nexport interface Schedule {\n /** The deadline for the operation */\n deadline?: string;\n /** The deadline for the operation */\n userRequestDeadline?: string;\n /** The timezone for the operation */\n timezone?: string;\n /** The timezone for the operation */\n userRequestTimezone?: string;\n /** The deadlinetype of the operation, this can either be InitiateAt or CompleteBy */\n deadlineType: DeadlineType;\n}\n\nexport function scheduleSerializer(item: Schedule): any {\n return {\n deadline: item[\"deadline\"],\n deadLine: item[\"userRequestDeadline\"],\n timezone: item[\"timezone\"],\n timeZone: item[\"userRequestTimezone\"],\n deadlineType: item[\"deadlineType\"],\n };\n}\n\n/** The types of deadlines supported by ScheduledActions */\nexport enum KnownDeadlineType {\n /** Default value of Unknown. */\n Unknown = \"Unknown\",\n /** Initiate the operation at the given deadline. */\n InitiateAt = \"InitiateAt\",\n /** Complete the operation by the given deadline. */\n CompleteBy = \"CompleteBy\",\n}\n\n/**\n * The types of deadlines supported by ScheduledActions \\\n * {@link KnownDeadlineType} can be used interchangeably with DeadlineType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Unknown**: Default value of Unknown. \\\n * **InitiateAt**: Initiate the operation at the given deadline. \\\n * **CompleteBy**: Complete the operation by the given deadline.\n */\nexport type DeadlineType = string;\n\n/** Extra details needed to run the user's request */\nexport interface ExecutionParameters {\n /** Details that could optimize the user's request */\n optimizationPreference?: OptimizationPreference;\n /** Retry policy the user can pass */\n retryPolicy?: RetryPolicy;\n}\n\nexport function executionParametersSerializer(item: ExecutionParameters): any {\n return {\n optimizationPreference: item[\"optimizationPreference\"],\n retryPolicy: !item[\"retryPolicy\"]\n ? item[\"retryPolicy\"]\n : retryPolicySerializer(item[\"retryPolicy\"]),\n };\n}\n\nexport function executionParametersDeserializer(item: any): ExecutionParameters {\n return {\n optimizationPreference: item[\"optimizationPreference\"],\n retryPolicy: !item[\"retryPolicy\"]\n ? item[\"retryPolicy\"]\n : retryPolicyDeserializer(item[\"retryPolicy\"]),\n };\n}\n\n/** The preferences customers can select to optimize their requests to ScheduledActions */\nexport enum KnownOptimizationPreference {\n /** Optimize while considering cost savings */\n Cost = \"Cost\",\n /** Optimize while considering availability of resources */\n Availability = \"Availability\",\n /** Optimize while considering a balance of cost and availability */\n CostAvailabilityBalanced = \"CostAvailabilityBalanced\",\n}\n\n/**\n * The preferences customers can select to optimize their requests to ScheduledActions \\\n * {@link KnownOptimizationPreference} can be used interchangeably with OptimizationPreference,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Cost**: Optimize while considering cost savings \\\n * **Availability**: Optimize while considering availability of resources \\\n * **CostAvailabilityBalanced**: Optimize while considering a balance of cost and availability\n */\nexport type OptimizationPreference = string;\n\n/** The retry policy for the user request */\nexport interface RetryPolicy {\n /** Retry count for user request */\n retryCount?: number;\n /** Retry window in minutes for user request */\n retryWindowInMinutes?: number;\n}\n\nexport function retryPolicySerializer(item: RetryPolicy): any {\n return {\n retryCount: item[\"retryCount\"],\n retryWindowInMinutes: item[\"retryWindowInMinutes\"],\n };\n}\n\nexport function retryPolicyDeserializer(item: any): RetryPolicy {\n return {\n retryCount: item[\"retryCount\"],\n retryWindowInMinutes: item[\"retryWindowInMinutes\"],\n };\n}\n\n/** The resources needed for the user request */\nexport interface Resources {\n /** The resource ids used for the request */\n ids: string[];\n}\n\nexport function resourcesSerializer(item: Resources): any {\n return {\n ids: item[\"ids\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** The response from a deallocate request */\nexport interface DeallocateResourceOperationResponse {\n /** The description of the operation response */\n description: string;\n /** The type of resources used in the deallocate request eg virtual machines */\n type: string;\n /** The location of the deallocate request eg westus */\n location: string;\n /** The results from the deallocate request if no errors exist */\n results?: ResourceOperation[];\n}\n\nexport function deallocateResourceOperationResponseDeserializer(\n item: any,\n): DeallocateResourceOperationResponse {\n return {\n description: item[\"description\"],\n type: item[\"type\"],\n location: item[\"location\"],\n results: !item[\"results\"]\n ? item[\"results\"]\n : resourceOperationArrayDeserializer(item[\"results\"]),\n };\n}\n\nexport function resourceOperationArrayDeserializer(result: Array<ResourceOperation>): any[] {\n return result.map((item) => {\n return resourceOperationDeserializer(item);\n });\n}\n\n/** High level response from an operation on a resource */\nexport interface ResourceOperation {\n /** Unique identifier for the resource involved in the operation, eg ArmId */\n resourceId?: string;\n /** Resource level error code if it exists */\n errorCode?: string;\n /** Resource level error details if they exist */\n errorDetails?: string;\n /** Details of the operation performed on a resource */\n operation?: ResourceOperationDetails;\n}\n\nexport function resourceOperationDeserializer(item: any): ResourceOperation {\n return {\n resourceId: item[\"resourceId\"],\n errorCode: item[\"errorCode\"],\n errorDetails: item[\"errorDetails\"],\n operation: !item[\"operation\"]\n ? item[\"operation\"]\n : resourceOperationDetailsDeserializer(item[\"operation\"]),\n };\n}\n\n/** The details of a response from an operation on a resource */\nexport interface ResourceOperationDetails {\n /** Operation identifier for the unique operation */\n operationId: string;\n /** Unique identifier for the resource involved in the operation, eg ArmId */\n resourceId?: string;\n /** Type of operation performed on the resources */\n opType?: ResourceOperationType;\n /** Subscription id attached to the request */\n subscriptionId?: string;\n /** Deadline for the operation */\n deadline?: string;\n /** Type of deadline of the operation */\n deadlineType?: DeadlineType;\n /** Current state of the operation */\n state?: OperationState;\n /** Timezone for the operation */\n timezone?: string;\n /** Timezone for the operation */\n operationTimezone?: string;\n /** Operation level errors if they exist */\n resourceOperationError?: ResourceOperationError;\n /** Time the operation was complete if errors are null */\n completedAt?: string;\n /** Retry policy the user can pass */\n retryPolicy?: RetryPolicy;\n}\n\nexport function resourceOperationDetailsDeserializer(item: any): ResourceOperationDetails {\n return {\n operationId: item[\"operationId\"],\n resourceId: item[\"resourceId\"],\n opType: item[\"opType\"],\n subscriptionId: item[\"subscriptionId\"],\n deadline: item[\"deadline\"],\n deadlineType: item[\"deadlineType\"],\n state: item[\"state\"],\n timezone: item[\"timezone\"],\n operationTimezone: item[\"timeZone\"],\n resourceOperationError: !item[\"resourceOperationError\"]\n ? item[\"resourceOperationError\"]\n : resourceOperationErrorDeserializer(item[\"resourceOperationError\"]),\n completedAt: item[\"completedAt\"],\n retryPolicy: !item[\"retryPolicy\"]\n ? item[\"retryPolicy\"]\n : retryPolicyDeserializer(item[\"retryPolicy\"]),\n };\n}\n\n/** The kind of operation types that can be performed on resources using ScheduledActions */\nexport enum KnownResourceOperationType {\n /** The default value for this enum type */\n Unknown = \"Unknown\",\n /** Start operations on the resources */\n Start = \"Start\",\n /** Deallocate operations on the resources */\n Deallocate = \"Deallocate\",\n /** Hibernate operations on the resources */\n Hibernate = \"Hibernate\",\n}\n\n/**\n * The kind of operation types that can be performed on resources using ScheduledActions \\\n * {@link KnownResourceOperationType} can be used interchangeably with ResourceOperationType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Unknown**: The default value for this enum type \\\n * **Start**: Start operations on the resources \\\n * **Deallocate**: Deallocate operations on the resources \\\n * **Hibernate**: Hibernate operations on the resources\n */\nexport type ResourceOperationType = string;\n\n/** Values that define the states of operations in Scheduled Actions */\nexport enum KnownOperationState {\n /** The default value for the operation state enum */\n Unknown = \"Unknown\",\n /** Operations that are pending scheduling */\n PendingScheduling = \"PendingScheduling\",\n /** Operations that have been scheduled */\n Scheduled = \"Scheduled\",\n /** Operations that are waiting to be executed */\n PendingExecution = \"PendingExecution\",\n /** Operations that are in the process of being executed */\n Executing = \"Executing\",\n /** Operations that suceeded */\n Succeeded = \"Succeeded\",\n /** Operations that have failed */\n Failed = \"Failed\",\n /** Operations that have been Cancelled by the user */\n Cancelled = \"Cancelled\",\n /** Operations that are blocked */\n Blocked = \"Blocked\",\n}\n\n/**\n * Values that define the states of operations in Scheduled Actions \\\n * {@link KnownOperationState} can be used interchangeably with OperationState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Unknown**: The default value for the operation state enum \\\n * **PendingScheduling**: Operations that are pending scheduling \\\n * **Scheduled**: Operations that have been scheduled \\\n * **PendingExecution**: Operations that are waiting to be executed \\\n * **Executing**: Operations that are in the process of being executed \\\n * **Succeeded**: Operations that suceeded \\\n * **Failed**: Operations that have failed \\\n * **Cancelled**: Operations that have been Cancelled by the user \\\n * **Blocked**: Operations that are blocked\n */\nexport type OperationState = string;\n\n/** These describe errors that occur at the resource level */\nexport interface ResourceOperationError {\n /** Code for the error eg 404, 500 */\n errorCode: string;\n /** Detailed message about the error */\n errorDetails: string;\n}\n\nexport function resourceOperationErrorDeserializer(item: any): ResourceOperationError {\n return {\n errorCode: item[\"errorCode\"],\n errorDetails: item[\"errorDetails\"],\n };\n}\n\n/** This is the request for hibernate */\nexport interface SubmitHibernateRequest {\n /** The schedule for the request */\n schedule: Schedule;\n /** The execution parameters for the request */\n executionParameters: ExecutionParameters;\n /** The resources for the request */\n resources: Resources;\n /** CorrelationId item */\n correlationId: string;\n}\n\nexport function submitHibernateRequestSerializer(item: SubmitHibernateRequest): any {\n return {\n schedule: scheduleSerializer(item[\"schedule\"]),\n executionParameters: executionParametersSerializer(item[\"executionParameters\"]),\n resources: resourcesSerializer(item[\"resources\"]),\n correlationid: item[\"correlationId\"],\n };\n}\n\n/** The response from a Hibernate request */\nexport interface HibernateResourceOperationResponse {\n /** The description of the operation response */\n description: string;\n /** The type of resources used in the Hibernate request eg virtual machines */\n type: string;\n /** The location of the Hibernate request eg westus */\n location: string;\n /** The results from the Hibernate request if no errors exist */\n results?: ResourceOperation[];\n}\n\nexport function hibernateResourceOperationResponseDeserializer(\n item: any,\n): HibernateResourceOperationResponse {\n return {\n description: item[\"description\"],\n type: item[\"type\"],\n location: item[\"location\"],\n results: !item[\"results\"]\n ? item[\"results\"]\n : resourceOperationArrayDeserializer(item[\"results\"]),\n };\n}\n\n/** This is the request for start */\nexport interface SubmitStartRequest {\n /** The schedule for the request */\n schedule: Schedule;\n /** The execution parameters for the request */\n executionParameters: ExecutionParameters;\n /** The resources for the request */\n resources: Resources;\n /** CorrelationId item */\n correlationId: string;\n}\n\nexport function submitStartRequestSerializer(item: SubmitStartRequest): any {\n return {\n schedule: scheduleSerializer(item[\"schedule\"]),\n executionParameters: executionParametersSerializer(item[\"executionParameters\"]),\n resources: resourcesSerializer(item[\"resources\"]),\n correlationid: item[\"correlationId\"],\n };\n}\n\n/** The response from a start request */\nexport interface StartResourceOperationResponse {\n /** The description of the operation response */\n description: string;\n /** The type of resources used in the start request eg virtual machines */\n type: string;\n /** The location of the start request eg westus */\n location: string;\n /** The results from the start request if no errors exist */\n results?: ResourceOperation[];\n}\n\nexport function startResourceOperationResponseDeserializer(\n item: any,\n): StartResourceOperationResponse {\n return {\n description: item[\"description\"],\n type: item[\"type\"],\n location: item[\"location\"],\n results: !item[\"results\"]\n ? item[\"results\"]\n : resourceOperationArrayDeserializer(item[\"results\"]),\n };\n}\n\n/** The ExecuteDeallocateRequest request for executeDeallocate operations */\nexport interface ExecuteDeallocateRequest {\n /** The execution parameters for the request */\n executionParameters: ExecutionParameters;\n /** The resources for the request */\n resources: Resources;\n /** CorrelationId item */\n correlationId: string;\n}\n\nexport function executeDeallocateRequestSerializer(item: ExecuteDeallocateRequest): any {\n return {\n executionParameters: executionParametersSerializer(item[\"executionParameters\"]),\n resources: resourcesSerializer(item[\"resources\"]),\n correlationid: item[\"correlationId\"],\n };\n}\n\n/** The ExecuteHibernateRequest request for executeHibernate operations */\nexport interface ExecuteHibernateRequest {\n /** The execution parameters for the request */\n executionParameters: ExecutionParameters;\n /** The resources for the request */\n resources: Resources;\n /** CorrelationId item */\n correlationId: string;\n}\n\nexport function executeHibernateRequestSerializer(item: ExecuteHibernateRequest): any {\n return {\n executionParameters: executionParametersSerializer(item[\"executionParameters\"]),\n resources: resourcesSerializer(item[\"resources\"]),\n correlationid: item[\"correlationId\"],\n };\n}\n\n/** The ExecuteStartRequest request for executeStart operations */\nexport interface ExecuteStartRequest {\n /** The execution parameters for the request */\n executionParameters: ExecutionParameters;\n /** The resources for the request */\n resources: Resources;\n /** CorrelationId item */\n correlationId: string;\n}\n\nexport function executeStartRequestSerializer(item: ExecuteStartRequest): any {\n return {\n executionParameters: executionParametersSerializer(item[\"executionParameters\"]),\n resources: resourcesSerializer(item[\"resources\"]),\n correlationid: item[\"correlationId\"],\n };\n}\n\n/** The ExecuteCreateRequest request for create operations */\nexport interface ExecuteCreateRequest {\n /** resource creation payload */\n resourceConfigParameters: ResourceProvisionPayload;\n /** The execution parameters for the request */\n executionParameters: ExecutionParameters;\n /** CorrelationId item */\n correlationid?: string;\n}\n\nexport function executeCreateRequestSerializer(item: ExecuteCreateRequest): any {\n return {\n resourceConfigParameters: resourceProvisionPayloadSerializer(item[\"resourceConfigParameters\"]),\n executionParameters: executionParametersSerializer(item[\"executionParameters\"]),\n correlationid: item[\"correlationid\"],\n };\n}\n\n/** Resource creation data model */\nexport interface ResourceProvisionPayload {\n /** JSON object that contains VM properties that are common across all VMs in this batch (if you want to create 100 VMs in this request, and they all have same vmSize, then include vmSize in baseProfile) */\n baseProfile?: Record<string, any>;\n /** JSON array, that contains VM properties that should to be overridden for each VM in the batch (if you want to create 100 VMs, they all need a distinct computerName property, you pass computerNames for each VM in batch in this array), service will merge baseProfile with VM specific overrides and create a merged VMProfile. */\n resourceOverrides?: Record<string, any>[];\n /** Number of VMs to be created */\n resourceCount: number;\n /** if resourceOverrides doesn't contain \"name\", service will create name based of prefix and ResourceCount e.g. resourceprefix-0,resourceprefix-1.. */\n resourcePrefix?: string;\n}\n\nexport function resourceProvisionPayloadSerializer(item: ResourceProvisionPayload): any {\n return {\n baseProfile: item[\"baseProfile\"],\n resourceOverrides: !item[\"resourceOverrides\"]\n ? item[\"resourceOverrides\"]\n : item[\"resourceOverrides\"].map((p: any) => {\n return p;\n }),\n resourceCount: item[\"resourceCount\"],\n resourcePrefix: item[\"resourcePrefix\"],\n };\n}\n\n/** The response from a create request */\nexport interface CreateResourceOperationResponse {\n /** The description of the operation response */\n description: string;\n /** The type of resources used in the create request eg virtual machines */\n type: string;\n /** The location of the start request eg westus */\n location: string;\n /** The results from the start request if no errors exist */\n results?: ResourceOperation[];\n}\n\nexport function createResourceOperationResponseDeserializer(\n item: any,\n): CreateResourceOperationResponse {\n return {\n description: item[\"description\"],\n type: item[\"type\"],\n location: item[\"location\"],\n results: !item[\"results\"]\n ? item[\"results\"]\n : resourceOperationArrayDeserializer(item[\"results\"]),\n };\n}\n\n/** The ExecuteDeleteRequest for delete VM operation */\nexport interface ExecuteDeleteRequest {\n /** The execution parameters for the request */\n executionParameters: ExecutionParameters;\n /** The resources for the request */\n resources: Resources;\n /** CorrelationId item */\n correlationid?: string;\n /** Forced delete resource item */\n forceDeletion?: boolean;\n}\n\nexport function executeDeleteRequestSerializer(item: ExecuteDeleteRequest): any {\n return {\n executionParameters: executionParametersSerializer(item[\"executionParameters\"]),\n resources: resourcesSerializer(item[\"resources\"]),\n correlationid: item[\"correlationid\"],\n forceDeletion: item[\"forceDeletion\"],\n };\n}\n\n/** The response from a delete request */\nexport interface DeleteResourceOperationResponse {\n /** The description of the operation response */\n description: string;\n /** The type of resources used in the delete request eg virtual machines */\n type: string;\n /** The location of the start request eg westus */\n location: string;\n /** The results from the start request if no errors exist */\n results?: ResourceOperation[];\n}\n\nexport function deleteResourceOperationResponseDeserializer(\n item: any,\n): DeleteResourceOperationResponse {\n return {\n description: item[\"description\"],\n type: item[\"type\"],\n location: item[\"location\"],\n results: !item[\"results\"]\n ? item[\"results\"]\n : resourceOperationArrayDeserializer(item[\"results\"]),\n };\n}\n\n/** This is the request to get operation status using operationids */\nexport interface GetOperationStatusRequest {\n /** The list of operation ids to get the status of */\n operationIds: string[];\n /** CorrelationId item */\n correlationId: string;\n}\n\nexport function getOperationStatusRequestSerializer(item: GetOperationStatusRequest): any {\n return {\n operationIds: item[\"operationIds\"].map((p: any) => {\n return p;\n }),\n correlationid: item[\"correlationId\"],\n };\n}\n\n/** This is the response from a get operations status request */\nexport interface GetOperationStatusResponse {\n /** An array of resource operations based on their operation ids */\n results: ResourceOperation[];\n}\n\nexport function getOperationStatusResponseDeserializer(item: any): GetOperationStatusResponse {\n return {\n results: resourceOperationArrayDeserializer(item[\"results\"]),\n };\n}\n\n/** This is the request to cancel running operations in scheduled actions using the operation ids */\nexport interface CancelOperationsRequest {\n /** The list of operation ids to cancel operations on */\n operationIds: string[];\n /** CorrelationId item */\n correlationId: string;\n}\n\nexport function cancelOperationsRequestSerializer(item: CancelOperationsRequest): any {\n return {\n operationIds: item[\"operationIds\"].map((p: any) => {\n return p;\n }),\n correlationid: item[\"correlationId\"],\n };\n}\n\n/** This is the response from a cancel operations request */\nexport interface CancelOperationsResponse {\n /** An array of resource operations that were successfully cancelled */\n results: ResourceOperation[];\n}\n\nexport function cancelOperationsResponseDeserializer(item: any): CancelOperationsResponse {\n return {\n results: resourceOperationArrayDeserializer(item[\"results\"]),\n };\n}\n\n/** This is the request to get errors per vm operations */\nexport interface GetOperationErrorsRequest {\n /** The list of operation ids to query errors of */\n operationIds: string[];\n}\n\nexport function getOperationErrorsRequestSerializer(item: GetOperationErrorsRequest): any {\n return {\n operationIds: item[\"operationIds\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** This is the response from a get operations errors request */\nexport interface GetOperationErrorsResponse {\n /** An array of operationids and their corresponding errors if any */\n results: OperationErrorsResult[];\n}\n\nexport function getOperationErrorsResponseDeserializer(item: any): GetOperationErrorsResponse {\n return {\n results: operationErrorsResultArrayDeserializer(item[\"results\"]),\n };\n}\n\nexport function operationErrorsResultArrayDeserializer(\n result: Array<OperationErrorsResult>,\n): any[] {\n return result.map((item) => {\n return operationErrorsResultDeserializer(item);\n });\n}\n\n/** This is the first level of operation errors from the request when clients get errors per vm operation */\nexport interface OperationErrorsResult {\n /** The operationId identifying a vm operation */\n operationId?: string;\n /** The creation time of the error result */\n creationTime?: string;\n /** The activation time of a vm operation */\n activationTime?: string;\n /** The completion time of the operation if the operation was completed */\n completedAt?: string;\n /** A list of errors associated with the operationid */\n operationErrors?: OperationErrorDetails[];\n /** Request level error code */\n requestErrorCode?: string;\n /** Request level error details */\n requestErrorDetails?: string;\n}\n\nexport function operationErrorsResultDeserializer(item: any): OperationErrorsResult {\n return {\n operationId: item[\"operationId\"],\n creationTime: item[\"creationTime\"],\n activationTime: item[\"activationTime\"],\n completedAt: item[\"completedAt\"],\n operationErrors: !item[\"operationErrors\"]\n ? item[\"operationErrors\"]\n : operationErrorDetailsArrayDeserializer(item[\"operationErrors\"]),\n requestErrorCode: item[\"requestErrorCode\"],\n requestErrorDetails: item[\"requestErrorDetails\"],\n };\n}\n\nexport function operationErrorDetailsArrayDeserializer(\n result: Array<OperationErrorDetails>,\n): any[] {\n return result.map((item) => {\n return operationErrorDetailsDeserializer(item);\n });\n}\n\n/** This defines a list of operation errors associated with a unique operationId */\nexport interface OperationErrorDetails {\n /** The error code of the operation */\n errorCode: string;\n /** The error details of the operation */\n errorDetails: string;\n /** The timestamp of the error occurence */\n timestamp?: string;\n /** The timestamp of the error occurence */\n errorDetailsTimestamp?: string;\n /** The compute operationid of the Start/Deallocate/Hibernate request */\n azureOperationName?: string;\n /** The compute operationid of the Start/Deallocate/Hibernate request */\n crpOperationId?: string;\n}\n\nexport function operationErrorDetailsDeserializer(item: any): OperationErrorDetails {\n return {\n errorCode: item[\"errorCode\"],\n errorDetails: item[\"errorDetails\"],\n timestamp: item[\"timestamp\"],\n errorDetailsTimestamp: item[\"timeStamp\"],\n azureOperationName: item[\"azureOperationName\"],\n crpOperationId: item[\"crpOperationId\"],\n };\n}\n\n/** The scheduled action resource */\nexport interface ScheduledAction extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: ScheduledActionProperties;\n}\n\nexport function scheduledActionSerializer(item: ScheduledAction): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : scheduledActionPropertiesSerializer(item[\"properties\"]),\n };\n}\n\nexport function scheduledActionDeserializer(item: any): ScheduledAction {\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 : scheduledActionPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Scheduled action properties */\nexport interface ScheduledActionProperties {\n /** The type of resource the scheduled action is targeting */\n resourceType: ResourceType;\n /** The action the scheduled action should perform in the resources */\n actionType: ScheduledActionType;\n /** The time which the scheduled action is supposed to start running */\n startTime: string;\n /** The time when the scheduled action is supposed to stop scheduling */\n endTime?: string;\n /** The schedule the scheduled action is supposed to follow */\n schedule: ScheduledActionsSchedule;\n /** The notification settings for the scheduled action */\n notificationSettings: NotificationProperties[];\n /** Tell if the scheduled action is disabled or not */\n disabled?: boolean;\n /** The status of the last provisioning operation performed on the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function scheduledActionPropertiesSerializer(item: ScheduledActionProperties): any {\n return {\n resourceType: item[\"resourceType\"],\n actionType: item[\"actionType\"],\n startTime: item[\"startTime\"],\n endTime: item[\"endTime\"],\n schedule: scheduledActionsScheduleSerializer(item[\"schedule\"]),\n notificationSettings: notificationPropertiesArraySerializer(item[\"notificationSettings\"]),\n disabled: item[\"disabled\"],\n };\n}\n\nexport function scheduledActionPropertiesDeserializer(item: any): ScheduledActionProperties {\n return {\n resourceType: item[\"resourceType\"],\n actionType: item[\"actionType\"],\n startTime: item[\"startTime\"],\n endTime: item[\"endTime\"],\n schedule: scheduledActionsScheduleDeserializer(item[\"schedule\"]),\n notificationSettings: notificationPropertiesArrayDeserializer(item[\"notificationSettings\"]),\n disabled: item[\"disabled\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The type of resource being targeted */\nexport enum KnownResourceType {\n /** Resources defined are Virtual Machines */\n VirtualMachine = \"VirtualMachine\",\n /** Resources defined are Virtual Machines Scale Sets */\n VirtualMachineScaleSet = \"VirtualMachineScaleSet\",\n}\n\n/**\n * The type of resource being targeted \\\n * {@link KnownResourceType} can be used interchangeably with ResourceType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **VirtualMachine**: Resources defined are Virtual Machines \\\n * **VirtualMachineScaleSet**: Resources defined are Virtual Machines Scale Sets\n */\nexport type ResourceType = string;\n\n/** Specify which action user wants to be performed on the resources */\nexport enum KnownScheduledActionType {\n /** Perform a start action on the specified resources */\n Start = \"Start\",\n /** Perform a deallocate action on the specified resources */\n Deallocate = \"Deallocate\",\n /** Perform hibernate and deallocate on the specified resources */\n Hibernate = \"Hibernate\",\n}\n\n/**\n * Specify which action user wants to be performed on the resources \\\n * {@link KnownScheduledActionType} can be used interchangeably with ScheduledActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Start**: Perform a start action on the specified resources \\\n * **Deallocate**: Perform a deallocate action on the specified resources \\\n * **Hibernate**: Perform hibernate and deallocate on the specified resources\n */\nexport type ScheduledActionType = string;\n\n/** Specify the schedule in which the scheduled action is supposed to follow */\nexport interface ScheduledActionsSchedule {\n /** The time the scheduled action is supposed to run on */\n scheduledTime: string;\n /** The timezone the scheduled time is specified on */\n timeZone: string;\n /** The week days the scheduled action is supposed to run on */\n requestedWeekDays: WeekDay[];\n /** The months the scheduled action is supposed to run on */\n requestedMonths: Month[];\n /** The days of the month the scheduled action is supposed to run on. If empty, it means it will run on every day of the month. */\n requestedDaysOfTheMonth: number[];\n /** The execution parameters the scheduled action is supposed to follow */\n executionParameters?: ExecutionParameters;\n /** The type of deadline the scheduled action is supposed to follow for the schedule. If no value is passed, it will default to InitiateAt. */\n deadlineType?: DeadlineType;\n}\n\nexport function scheduledActionsScheduleSerializer(item: ScheduledActionsSchedule): any {\n return {\n scheduledTime: item[\"scheduledTime\"],\n timeZone: item[\"timeZone\"],\n requestedWeekDays: item[\"requestedWeekDays\"].map((p: any) => {\n return p;\n }),\n requestedMonths: item[\"requestedMonths\"].map((p: any) => {\n return p;\n }),\n requestedDaysOfTheMonth: item[\"requestedDaysOfTheMonth\"].map((p: any) => {\n return p;\n }),\n executionParameters: !item[\"executionParameters\"]\n ? item[\"executionParameters\"]\n : executionParametersSerializer(item[\"executionParameters\"]),\n deadlineType: item[\"deadlineType\"],\n };\n}\n\nexport function scheduledActionsScheduleDeserializer(item: any): ScheduledActionsSchedule {\n return {\n scheduledTime: item[\"scheduledTime\"],\n timeZone: item[\"timeZone\"],\n requestedWeekDays: item[\"requestedWeekDays\"].map((p: any) => {\n return p;\n }),\n requestedMonths: item[\"requestedMonths\"].map((p: any) => {\n return p;\n }),\n requestedDaysOfTheMonth: item[\"requestedDaysOfTheMonth\"].map((p: any) => {\n return p;\n }),\n executionParameters: !item[\"executionParameters\"]\n ? item[\"executionParameters\"]\n : executionParametersDeserializer(item[\"executionParameters\"]),\n deadlineType: item[\"deadlineType\"],\n };\n}\n\n/** Representation of the possible selection of days in a week in a gregorian calendar */\nexport enum KnownWeekDay {\n /** Monday weekday. */\n Monday = \"Monday\",\n /** Tuesday weekday. */\n Tuesday = \"Tuesday\",\n /** Wednesday weekday. */\n Wednesday = \"Wednesday\",\n /** Thursday weekday. */\n Thursday = \"Thursday\",\n /** Friday weekday. */\n Friday = \"Friday\",\n /** Saturday weekday. */\n Saturday = \"Saturday\",\n /** Sunday weekday. */\n Sunday = \"Sunday\",\n /** All week days */\n All = \"All\",\n}\n\n/**\n * Representation of the possible selection of days in a week in a gregorian calendar \\\n * {@link KnownWeekDay} can be used interchangeably with WeekDay,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Monday**: Monday weekday. \\\n * **Tuesday**: Tuesday weekday. \\\n * **Wednesday**: Wednesday weekday. \\\n * **Thursday**: Thursday weekday. \\\n * **Friday**: Friday weekday. \\\n * **Saturday**: Saturday weekday. \\\n * **Sunday**: Sunday weekday. \\\n * **All**: All week days\n */\nexport type WeekDay = string;\n\n/** Representation of the months available selection in a gregorian calendar */\nexport enum KnownMonth {\n /** The January month. */\n January = \"January\",\n /** The February month. */\n February = \"February\",\n /** The March month. */\n March = \"March\",\n /** The April month. */\n April = \"April\",\n /** The May month. */\n May = \"May\",\n /** The June month. */\n June = \"June\",\n /** The July month. */\n July = \"July\",\n /** The August month. */\n August = \"August\",\n /** The September month. */\n September = \"September\",\n /** The October month. */\n October = \"October\",\n /** The November month. */\n November = \"November\",\n /** The December month. */\n December = \"December\",\n /** All months */\n All = \"All\",\n}\n\n/**\n * Representation of the months available selection in a gregorian calendar \\\n * {@link KnownMonth} can be used interchangeably with Month,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **January**: The January month. \\\n * **February**: The February month. \\\n * **March**: The March month. \\\n * **April**: The April month. \\\n * **May**: The May month. \\\n * **June**: The June month. \\\n * **July**: The July month. \\\n * **August**: The August month. \\\n * **September**: The September month. \\\n * **October**: The October month. \\\n * **November**: The November month. \\\n * **December**: The December month. \\\n * **All**: All months\n */\nexport type Month = string;\n\nexport function notificationPropertiesArraySerializer(\n result: Array<NotificationProperties>,\n): any[] {\n return result.map((item) => {\n return notificationPropertiesSerializer(item);\n });\n}\n\nexport function notificationPropertiesArrayDeserializer(\n result: Array<NotificationProperties>,\n): any[] {\n return result.map((item) => {\n return notificationPropertiesDeserializer(item);\n });\n}\n\n/** The information about notifications to be send to about upcoming operations. */\nexport interface NotificationProperties {\n /** Where the notification should be sent. For email, it should follow email format. */\n destination: string;\n /** Type of notification to be sent. */\n type: NotificationType;\n /** The language the notification should be sent on. */\n language: Language;\n /** Tells if the notification is enabled or not. */\n disabled?: boolean;\n}\n\nexport function notificationPropertiesSerializer(item: NotificationProperties): any {\n return {\n destination: item[\"destination\"],\n type: item[\"type\"],\n language: item[\"language\"],\n disabled: item[\"disabled\"],\n };\n}\n\nexport function notificationPropertiesDeserializer(item: any): NotificationProperties {\n return {\n destination: item[\"destination\"],\n type: item[\"type\"],\n language: item[\"language\"],\n disabled: item[\"disabled\"],\n };\n}\n\n/** The type of notification supported */\nexport enum KnownNotificationType {\n /** Notify through e-mail */\n Email = \"Email\",\n}\n\n/**\n * The type of notification supported \\\n * {@link KnownNotificationType} can be used interchangeably with NotificationType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Email**: Notify through e-mail\n */\nexport type NotificationType = string;\n\n/** The notification languages currently supported */\nexport enum KnownLanguage {\n /** American english language */\n EnUs = \"en-us\",\n}\n\n/**\n * The notification languages currently supported \\\n * {@link KnownLanguage} can be used interchangeably with Language,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **en-us**: American english language\n */\nexport type Language = string;\n\n/** Provisioning state */\nexport enum KnownProvisioningState {\n /** Resource has been created. */\n Succeeded = \"Succeeded\",\n /** Resource creation failed. */\n Failed = \"Failed\",\n /** Resource creation was canceled. */\n Canceled = \"Canceled\",\n /** Resource is being deleted. */\n Deleting = \"Deleting\",\n}\n\n/**\n * Provisioning state \\\n * {@link KnownProvisioningState} can be used interchangeably with ProvisioningState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Succeeded**: Resource has been created. \\\n * **Failed**: Resource creation failed. \\\n * **Canceled**: Resource creation was canceled. \\\n * **Deleting**: Resource is being deleted.\n */\nexport type ProvisioningState = string;\n\n/** The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location' */\nexport interface TrackedResource extends Resource {\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The geo-location where the resource lives */\n location: string;\n}\n\nexport function trackedResourceSerializer(item: TrackedResource): any {\n return { tags: item[\"tags\"], location: item[\"location\"] };\n}\n\nexport function trackedResourceDeserializer(item: any): TrackedResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n tags: item[\"tags\"],\n location: item[\"location\"],\n };\n}\n\n/** Common fields that are returned in the response for all Azure Resource Manager resources */\nexport interface Resource {\n /** Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} */\n readonly id?: string;\n /** The name of the resource */\n readonly name?: string;\n /** The type of the resource. E.g. \"Microsoft.Compute/virtualMachines\" or \"Microsoft.Storage/storageAccounts\" */\n readonly type?: string;\n /** Azure Resource Manager metadata containing createdBy and modifiedBy information. */\n readonly systemData?: SystemData;\n}\n\nexport function resourceSerializer(item: Resource): any {\n return item;\n}\n\nexport function resourceDeserializer(item: any): Resource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n };\n}\n\n/** Metadata pertaining to creation and last modification of the resource. */\nexport interface SystemData {\n /** The identity that created the resource. */\n createdBy?: string;\n /** The type of identity that created the resource. */\n createdByType?: CreatedByType;\n /** The timestamp of resource creation (UTC). */\n createdAt?: Date;\n /** The identity that last modified the resource. */\n lastModifiedBy?: string;\n /** The type of identity that last modified the resource. */\n lastModifiedByType?: CreatedByType;\n /** The timestamp of resource last modification (UTC) */\n lastModifiedAt?: Date;\n}\n\nexport function systemDataDeserializer(item: any): SystemData {\n return {\n createdBy: item[\"createdBy\"],\n createdByType: item[\"createdByType\"],\n createdAt: !item[\"createdAt\"] ? item[\"createdAt\"] : new Date(item[\"createdAt\"]),\n lastModifiedBy: item[\"lastModifiedBy\"],\n lastModifiedByType: item[\"lastModifiedByType\"],\n lastModifiedAt: !item[\"lastModifiedAt\"]\n ? item[\"lastModifiedAt\"]\n : new Date(item[\"lastModifiedAt\"]),\n };\n}\n\n/** The kind of entity that created the resource. */\nexport enum KnownCreatedByType {\n /** The entity was created by a user. */\n User = \"User\",\n /** The entity was created by an application. */\n Application = \"Application\",\n /** The entity was created by a managed identity. */\n ManagedIdentity = \"ManagedIdentity\",\n /** The entity was created by a key. */\n Key = \"Key\",\n}\n\n/**\n * The kind of entity that created the resource. \\\n * {@link KnownCreatedByType} can be used interchangeably with CreatedByType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **User**: The entity was created by a user. \\\n * **Application**: The entity was created by an application. \\\n * **ManagedIdentity**: The entity was created by a managed identity. \\\n * **Key**: The entity was created by a key.\n */\nexport type CreatedByType = string;\n\n/** The provisioning state of a resource type. */\nexport enum KnownResourceProvisioningState {\n /** Resource has been created. */\n Succeeded = \"Succeeded\",\n /** Resource creation failed. */\n Failed = \"Failed\",\n /** Resource creation was canceled. */\n Canceled = \"Canceled\",\n}\n\n/**\n * The provisioning state of a resource type. \\\n * {@link KnownResourceProvisioningState} can be used interchangeably with ResourceProvisioningState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Succeeded**: Resource has been created. \\\n * **Failed**: Resource creation failed. \\\n * **Canceled**: Resource creation was canceled.\n */\nexport type ResourceProvisioningState = string;\n\n/** The type used for update operations of the ScheduledAction. */\nexport interface ScheduledActionUpdate {\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The resource-specific properties for this resource. */\n properties?: ScheduledActionUpdateProperties;\n}\n\nexport function scheduledActionUpdateSerializer(item: ScheduledActionUpdate): any {\n return {\n tags: item[\"tags\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : scheduledActionUpdatePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** The updatable properties of the ScheduledAction. */\nexport interface ScheduledActionUpdateProperties {\n /** The type of resource the scheduled action is targeting */\n resourceType?: ResourceType;\n /** The action the scheduled action should perform in the resources */\n actionType?: ScheduledActionType;\n /** The time which the scheduled action is supposed to start running */\n startTime?: string;\n /** The time when the scheduled action is supposed to stop scheduling */\n endTime?: string;\n /** The schedule the scheduled action is supposed to follow */\n schedule?: ScheduledActionsSchedule;\n /** The notification settings for the scheduled action */\n notificationSettings?: NotificationProperties[];\n /** Tell if the scheduled action is disabled or not */\n disabled?: boolean;\n}\n\nexport function scheduledActionUpdatePropertiesSerializer(\n item: ScheduledActionUpdateProperties,\n): any {\n return {\n resourceType: item[\"resourceType\"],\n actionType: item[\"actionType\"],\n startTime: item[\"startTime\"],\n endTime: item[\"endTime\"],\n schedule: !item[\"schedule\"]\n ? item[\"schedule\"]\n : scheduledActionsScheduleSerializer(item[\"schedule\"]),\n notificationSettings: !item[\"notificationSettings\"]\n ? item[\"notificationSettings\"]\n : notificationPropertiesArraySerializer(item[\"notificationSettings\"]),\n disabled: item[\"disabled\"],\n };\n}\n\n/** The response of a ScheduledAction list operation. */\nexport interface _ScheduledActionListResult {\n /** The ScheduledAction items on this page */\n value: ScheduledAction[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _scheduledActionListResultDeserializer(item: any): _ScheduledActionListResult {\n return {\n value: scheduledActionArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function scheduledActionArraySerializer(result: Array<ScheduledAction>): any[] {\n return result.map((item) => {\n return scheduledActionSerializer(item);\n });\n}\n\nexport function scheduledActionArrayDeserializer(result: Array<ScheduledAction>): any[] {\n return result.map((item) => {\n return scheduledActionDeserializer(item);\n });\n}\n\n/** Paged collection of ScheduledActionResource items */\nexport interface _ResourceListResponse {\n /** The ScheduledActionResource items on this page */\n value: ScheduledActionResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _resourceListResponseDeserializer(item: any): _ResourceListResponse {\n return {\n value: scheduledActionResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function scheduledActionResourceArrayDeserializer(\n result: Array<ScheduledActionResource>,\n): any[] {\n return result.map((item) => {\n return scheduledActionResourceDeserializer(item);\n });\n}\n\n/** Represents an scheduled action resource metadata. */\nexport interface ScheduledActionResource {\n /** The name of the resource */\n readonly name: string;\n /** The compute RP resource id of the resource in the scheduled actions scope. */\n readonly id: string;\n /** The type of resource */\n readonly type?: string;\n /**\n * The ARM Id of the resource.\n * \"subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Compute/virtualMachines/{vmName}\"\n */\n resourceId: string;\n /** The desired notification settings for the specified resource. */\n notificationSettings?: NotificationProperties[];\n}\n\nexport function scheduledActionResourceDeserializer(item: any): ScheduledActionResource {\n return {\n name: item[\"name\"],\n id: item[\"id\"],\n type: item[\"type\"],\n resourceId: item[\"resourceId\"],\n notificationSettings: !item[\"notificationSettings\"]\n ? item[\"notificationSettings\"]\n : notificationPropertiesArrayDeserializer(item[\"notificationSettings\"]),\n };\n}\n\n/** Request model to attach a list of scheduled action resources. */\nexport interface ResourceAttachRequest {\n /** List of resources to be attached/patched */\n resources: ScheduledActionResourceCreate[];\n}\n\nexport function resourceAttachRequestSerializer(item: ResourceAttachRequest): any {\n return {\n resources: scheduledActionResourceCreateArraySerializer(item[\"resources\"]),\n };\n}\n\nexport function scheduledActionResourceCreateArraySerializer(\n result: Array<ScheduledActionResourceCreate>,\n): any[] {\n return result.map((item) => {\n return scheduledActionResourceCreateSerializer(item);\n });\n}\n\n/** Represents an scheduled action resource metadata. */\nexport interface ScheduledActionResourceCreate {\n /**\n * The ARM Id of the resource.\n * \"subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Compute/virtualMachines/{vmName}\"\n */\n resourceId: string;\n /** The desired notification settings for the specified resource. */\n notificationSettings?: NotificationProperties[];\n}\n\nexport function scheduledActionResourceCreateSerializer(item: ScheduledActionResourceCreate): any {\n return {\n resourceId: item[\"resourceId\"],\n notificationSettings: !item[\"notificationSettings\"]\n ? item[\"notificationSettings\"]\n : notificationPropertiesArraySerializer(item[\"notificationSettings\"]),\n };\n}\n\n/** The response from scheduled action resource requests, which contains the status of each resource */\nexport interface RecurringActionsResourceOperationResult {\n /** The total number of resources operated on */\n totalResources: number;\n /** The resource status of for each resource */\n resourcesStatuses: ResourceStatus[];\n}\n\nexport function recurringActionsResourceOperationResultDeserializer(\n item: any,\n): RecurringActionsResourceOperationResult {\n return {\n totalResources: item[\"totalResources\"],\n resourcesStatuses: resourceStatusArrayDeserializer(item[\"resourcesStatuses\"]),\n };\n}\n\nexport function resourceStatusArrayDeserializer(result: Array<ResourceStatus>): any[] {\n return result.map((item) => {\n return resourceStatusDeserializer(item);\n });\n}\n\n/** The status of a resource after a resource level operation was performed */\nexport interface ResourceStatus {\n /** The arm identifier of the resource */\n resourceId: string;\n /** The state the resource is currently on */\n status: ResourceOperationStatus;\n /** Errors encountered while trying to perform */\n error?: ErrorModel;\n}\n\nexport function resourceStatusDeserializer(item: any): ResourceStatus {\n return {\n resourceId: item[\"resourceId\"],\n status: item[\"status\"],\n error: !item[\"error\"] ? item[\"error\"] : item[\"error\"],\n };\n}\n\n/** The state the resource is on after the resource operation is applied */\nexport enum KnownResourceOperationStatus {\n /** The resource operation was successful */\n Succeeded = \"Succeeded\",\n /** The resource operation has failed. */\n Failed = \"Failed\",\n}\n\n/**\n * The state the resource is on after the resource operation is applied \\\n * {@link KnownResourceOperationStatus} can be used interchangeably with ResourceOperationStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Succeeded**: The resource operation was successful \\\n * **Failed**: The resource operation has failed.\n */\nexport type ResourceOperationStatus = string;\n\n/** Request model to detach a list of scheduled action resources. */\nexport interface ResourceDetachRequest {\n /** List of resources to be detached */\n resources: string[];\n}\n\nexport function resourceDetachRequestSerializer(item: ResourceDetachRequest): any {\n return {\n resources: item[\"resources\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Request model perform a resource operation in a list of resources */\nexport interface ResourcePatchRequest {\n /** The list of resources we watch to patch */\n resources: ScheduledActionResourceCreate[];\n}\n\nexport function resourcePatchRequestSerializer(item: ResourcePatchRequest): any {\n return {\n resources: scheduledActionResourceCreateArraySerializer(item[\"resources\"]),\n };\n}\n\n/** The request to cancel an occurrence. */\nexport interface CancelOccurrenceRequest {\n /** The resources the cancellation should act on. If no resource is passed in the list, Scheduled Action will cancel the occurrence for all resources. */\n resourceIds: string[];\n}\n\nexport function cancelOccurrenceRequestSerializer(item: CancelOccurrenceRequest): any {\n return {\n resourceIds: item[\"resourceIds\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Concrete proxy resource types can be created by aliasing this type using a specific property type. */\nexport interface Occurrence extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: OccurrenceProperties;\n}\n\nexport function occurrenceDeserializer(item: any): Occurrence {\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 : occurrencePropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Properties for an occurrence */\nexport interface OccurrenceProperties {\n /** The time the occurrence is scheduled for. This value can be changed by calling the delay API */\n readonly scheduledTime: Date;\n /** The result for occurrences that achieved a terminal state */\n readonly resultSummary: OccurrenceResultSummary;\n /** The aggregated provisioning state of the occurrence */\n readonly provisioningState?: OccurrenceState;\n}\n\nexport function occurrencePropertiesDeserializer(item: any): OccurrenceProperties {\n return {\n scheduledTime: new Date(item[\"scheduledTime\"]),\n resultSummary: occurrenceResultSummaryDeserializer(item[\"resultSummary\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The summarized provisioning result of an occurrence */\nexport interface OccurrenceResultSummary {\n /** The total number of resources that the occurrence was supposed to act on. */\n total: number;\n /** The summarized status of the resources. */\n statuses: ResourceResultSummary[];\n}\n\nexport function occurrenceResultSummaryDeserializer(item: any): OccurrenceResultSummary {\n return {\n total: item[\"total\"],\n statuses: resourceResultSummaryArrayDeserializer(item[\"statuses\"]),\n };\n}\n\nexport function resourceResultSummaryArrayDeserializer(\n result: Array<ResourceResultSummary>,\n): any[] {\n return result.map((item) => {\n return resourceResultSummaryDeserializer(item);\n });\n}\n\n/** The status of the resources */\nexport interface ResourceResultSummary {\n /** The error code for those resources. In case of success, code is populated with Success. */\n code: string;\n /** The number of resources that the code applies to. */\n count: number;\n /** The error details for the resources. Not populated on success cases. */\n errorDetails?: ErrorModel;\n}\n\nexport function resourceResultSummaryDeserializer(item: any): ResourceResultSummary {\n return {\n code: item[\"code\"],\n count: item[\"count\"],\n errorDetails: !item[\"errorDetails\"] ? item[\"errorDetails\"] : item[\"errorDetails\"],\n };\n}\n\n/** The state the occurrence is at a given time */\nexport enum KnownOccurrenceState {\n /** The occurrence was created */\n Created = \"Created\",\n /** The occurrence is being rescheduled */\n Rescheduling = \"Rescheduling\",\n /** The occurrence has been scheduled */\n Scheduled = \"Scheduled\",\n /** The occurrence has successfully ran */\n Succeeded = \"Succeeded\",\n /** The occurrence has failed during its scheduling */\n Failed = \"Failed\",\n /** The occurrence is going through cancellation */\n Cancelling = \"Cancelling\",\n /** The occurrence has been canceled */\n Canceled = \"Canceled\",\n}\n\n/**\n * The state the occurrence is at a given time \\\n * {@link KnownOccurrenceState} can be used interchangeably with OccurrenceState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Created**: The occurrence was created \\\n * **Rescheduling**: The occurrence is being rescheduled \\\n * **Scheduled**: The occurrence has been scheduled \\\n * **Succeeded**: The occurrence has successfully ran \\\n * **Failed**: The occurrence has failed during its scheduling \\\n * **Cancelling**: The occurrence is going through cancellation \\\n * **Canceled**: The occurrence has been canceled\n */\nexport type OccurrenceState = string;\n\n/** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */\nexport interface ProxyResource extends Resource {}\n\nexport function proxyResourceDeserializer(item: any): ProxyResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n };\n}\n\n/** The response of a ScheduledActionResources list operation. */\nexport interface _ScheduledActionResourcesListResult {\n /** The ScheduledActionResources items on this page */\n value: ScheduledActionResources[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _scheduledActionResourcesListResultDeserializer(\n item: any,\n): _ScheduledActionResourcesListResult {\n return {\n value: scheduledActionResourcesArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function scheduledActionResourcesArrayDeserializer(\n result: Array<ScheduledActionResources>,\n): any[] {\n return result.map((item) => {\n return scheduledActionResourcesDeserializer(item);\n });\n}\n\n/** The scheduled action extension */\nexport interface ScheduledActionResources extends ExtensionResource {\n /** The resource-specific properties for this resource. */\n properties?: ScheduledActionProperties;\n}\n\nexport function scheduledActionResourcesDeserializer(item: any): ScheduledActionResources {\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 : scheduledActionPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** The base extension resource. */\nexport interface ExtensionResource extends Resource {}\n\nexport function extensionResourceDeserializer(item: any): ExtensionResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n };\n}\n\n/** The response of a Occurrence list operation. */\nexport interface _OccurrenceListResult {\n /** The Occurrence items on this page */\n value: Occurrence[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _occurrenceListResultDeserializer(item: any): _OccurrenceListResult {\n return {\n value: occurrenceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function occurrenceArrayDeserializer(result: Array<Occurrence>): any[] {\n return result.map((item) => {\n return occurrenceDeserializer(item);\n });\n}\n\n/** Paged collection of OccurrenceResource items */\nexport interface _OccurrenceResourceListResponse {\n /** The OccurrenceResource items on this page */\n value: OccurrenceResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _occurrenceResourceListResponseDeserializer(\n item: any,\n): _OccurrenceResourceListResponse {\n return {\n value: occurrenceResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function occurrenceResourceArrayDeserializer(result: Array<OccurrenceResource>): any[] {\n return result.map((item) => {\n return occurrenceResourceDeserializer(item);\n });\n}\n\n/** Represents an scheduled action resource metadata. */\nexport interface OccurrenceResource {\n /** The name of the resource */\n readonly name: string;\n /** The compute RP resource id of the resource in the scheduled actions scope. */\n readonly id: string;\n /** The type of resource */\n readonly type?: string;\n /**\n * The ARM Id of the resource.\n * \"subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Compute/virtualMachines/{vmName}\"\n */\n resourceId: string;\n /** The desired notification settings for the specified resource. */\n notificationSettings?: NotificationProperties[];\n /** The time the occurrence is scheduled for the resource. */\n readonly scheduledTime: Date;\n /** The current state of the resource */\n readonly provisioningState?: ResourceProvisioningState;\n /** Error details for the resource. Only populated if resource is in failed state. */\n readonly errorDetails?: ErrorModel;\n}\n\nexport function occurrenceResourceDeserializer(item: any): OccurrenceResource {\n return {\n name: item[\"name\"],\n id: item[\"id\"],\n type: item[\"type\"],\n resourceId: item[\"resourceId\"],\n notificationSettings: !item[\"notificationSettings\"]\n ? item[\"notificationSettings\"]\n : notificationPropertiesArrayDeserializer(item[\"notificationSettings\"]),\n scheduledTime: new Date(item[\"scheduledTime\"]),\n provisioningState: item[\"provisioningState\"],\n errorDetails: !item[\"errorDetails\"] ? item[\"errorDetails\"] : item[\"errorDetails\"],\n };\n}\n\n/** Request to ask for a delay in an occurrence, delay should be set to client local time eg (ACST) 2025-05-30T22:03:00+09:30, (PST) 2025-05-30T06:35:00-07:00 */\nexport interface DelayRequest {\n /** The exact time to delay the operations to */\n delay: string;\n /** The resources that should be delayed. If empty, the delay will apply to the all resources in the occurrence. */\n resourceIds: string[];\n}\n\nexport function delayRequestSerializer(item: DelayRequest): any {\n return {\n delay: item[\"delay\"],\n resourceIds: item[\"resourceIds\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** The response of a OccurrenceExtensionResource list operation. */\nexport interface _OccurrenceExtensionResourceListResult {\n /** The OccurrenceExtensionResource items on this page */\n value: OccurrenceExtensionResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _occurrenceExtensionResourceListResultDeserializer(\n item: any,\n): _OccurrenceExtensionResourceListResult {\n return {\n value: occurrenceExtensionResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function occurrenceExtensionResourceArrayDeserializer(\n result: Array<OccurrenceExtensionResource>,\n): any[] {\n return result.map((item) => {\n return occurrenceExtensionResourceDeserializer(item);\n });\n}\n\n/** The scheduled action extension */\nexport interface OccurrenceExtensionResource extends ExtensionResource {\n /** The resource-specific properties for this resource. */\n properties?: OccurrenceExtensionProperties;\n}\n\nexport function occurrenceExtensionResourceDeserializer(item: any): OccurrenceExtensionResource {\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 : occurrenceExtensionPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** The properties of the occurrence extension */\nexport interface OccurrenceExtensionProperties {\n /**\n * The ARM Id of the resource.\n * \"subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Compute/virtualMachines/{vmName}\"\n */\n resourceId: string;\n /** The desired notification settings for the specified resource. */\n notificationSettings?: NotificationProperties[];\n /** The time the occurrence is scheduled for the resource. Specified in UTC. */\n readonly scheduledTime: Date;\n /** The current state of the resource */\n readonly provisioningState?: ResourceProvisioningState;\n /** Error details for the resource. Only populated if resource is in failed state. */\n readonly errorDetails?: ErrorModel;\n /** The arm identifier of the scheduled action the occurrence belongs to */\n scheduledActionId: string;\n}\n\nexport function occurrenceExtensionPropertiesDeserializer(\n item: any,\n): OccurrenceExtensionProperties {\n return {\n resourceId: item[\"resourceId\"],\n notificationSettings: !item[\"notificationSettings\"]\n ? item[\"notificationSettings\"]\n : notificationPropertiesArrayDeserializer(item[\"notificationSettings\"]),\n scheduledTime: new Date(item[\"scheduledTime\"]),\n provisioningState: item[\"provisioningState\"],\n errorDetails: !item[\"errorDetails\"] ? item[\"errorDetails\"] : item[\"errorDetails\"],\n scheduledActionId: item[\"scheduledActionId\"],\n };\n}\n\n/** ComputeSchedule API versions */\nexport enum KnownVersions {\n /** 2024-08-15-preview version */\n V20240815Preview = \"2024-08-15-preview\",\n /** 2024-10-01 version */\n \"V2024-10-01\" = \"2024-10-01\",\n /** 2025-05-01 version */\n V20250501 = \"2025-05-01\",\n /** 2025-04-15-preview version */\n V20250415Preview = \"2025-04-15-preview\",\n}\n"]}
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../../../src/models/models.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { ErrorModel } from \"@azure-rest/core-client\";\n\n/**\n * This file contains only generated model types and their (de)serializers.\n * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input.\n */\n/* eslint-disable @typescript-eslint/naming-convention */\n/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n/** A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results. */\nexport interface _OperationListResult {\n /** The Operation items on this page */\n value: Operation[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _operationListResultDeserializer(item: any): _OperationListResult {\n return {\n value: operationArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function operationArrayDeserializer(result: Array<Operation>): any[] {\n return result.map((item) => {\n return operationDeserializer(item);\n });\n}\n\n/** Details of a REST API operation, returned from the Resource Provider Operations API */\nexport interface Operation {\n /** The name of the operation, as per Resource-Based Access Control (RBAC). Examples: \"Microsoft.Compute/virtualMachines/write\", \"Microsoft.Compute/virtualMachines/capture/action\" */\n readonly name?: string;\n /** Whether the operation applies to data-plane. This is \"true\" for data-plane operations and \"false\" for Azure Resource Manager/control-plane operations. */\n readonly isDataAction?: boolean;\n /** Localized display information for this particular operation. */\n display?: OperationDisplay;\n /** The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is \"user,system\" */\n readonly origin?: Origin;\n /** Extensible enum. Indicates the action type. \"Internal\" refers to actions that are for internal only APIs. */\n readonly actionType?: ActionType;\n}\n\nexport function operationDeserializer(item: any): Operation {\n return {\n name: item[\"name\"],\n isDataAction: item[\"isDataAction\"],\n display: !item[\"display\"] ? item[\"display\"] : operationDisplayDeserializer(item[\"display\"]),\n origin: item[\"origin\"],\n actionType: item[\"actionType\"],\n };\n}\n\n/** Localized display information for an operation. */\nexport interface OperationDisplay {\n /** The localized friendly form of the resource provider name, e.g. \"Microsoft Monitoring Insights\" or \"Microsoft Compute\". */\n readonly provider?: string;\n /** The localized friendly name of the resource type related to this operation. E.g. \"Virtual Machines\" or \"Job Schedule Collections\". */\n readonly resource?: string;\n /** The concise, localized friendly name for the operation; suitable for dropdowns. E.g. \"Create or Update Virtual Machine\", \"Restart Virtual Machine\". */\n readonly operation?: string;\n /** The short, localized friendly description of the operation; suitable for tool tips and detailed views. */\n readonly description?: string;\n}\n\nexport function operationDisplayDeserializer(item: any): OperationDisplay {\n return {\n provider: item[\"provider\"],\n resource: item[\"resource\"],\n operation: item[\"operation\"],\n description: item[\"description\"],\n };\n}\n\n/** The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is \"user,system\" */\nexport enum KnownOrigin {\n /** Indicates the operation is initiated by a user. */\n User = \"user\",\n /** Indicates the operation is initiated by a system. */\n System = \"system\",\n /** Indicates the operation is initiated by a user or system. */\n UserSystem = \"user,system\",\n}\n\n/**\n * The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is \"user,system\" \\\n * {@link KnownOrigin} can be used interchangeably with Origin,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **user**: Indicates the operation is initiated by a user. \\\n * **system**: Indicates the operation is initiated by a system. \\\n * **user,system**: Indicates the operation is initiated by a user or system.\n */\nexport type Origin = string;\n\n/** Extensible enum. Indicates the action type. \"Internal\" refers to actions that are for internal only APIs. */\nexport enum KnownActionType {\n /** Actions are for internal-only APIs. */\n Internal = \"Internal\",\n}\n\n/**\n * Extensible enum. Indicates the action type. \"Internal\" refers to actions that are for internal only APIs. \\\n * {@link KnownActionType} can be used interchangeably with ActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Internal**: Actions are for internal-only APIs.\n */\nexport type ActionType = string;\n\n/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. */\nexport interface ErrorResponse {\n /** The error object. */\n error?: ErrorDetail;\n}\n\nexport function errorResponseDeserializer(item: any): ErrorResponse {\n return {\n error: !item[\"error\"] ? item[\"error\"] : errorDetailDeserializer(item[\"error\"]),\n };\n}\n\n/** The error detail. */\nexport interface ErrorDetail {\n /** The error code. */\n readonly code?: string;\n /** The error message. */\n readonly message?: string;\n /** The error target. */\n readonly target?: string;\n /** The error details. */\n readonly details?: ErrorDetail[];\n /** The error additional info. */\n readonly additionalInfo?: ErrorAdditionalInfo[];\n}\n\nexport function errorDetailDeserializer(item: any): ErrorDetail {\n return {\n code: item[\"code\"],\n message: item[\"message\"],\n target: item[\"target\"],\n details: !item[\"details\"] ? item[\"details\"] : errorDetailArrayDeserializer(item[\"details\"]),\n additionalInfo: !item[\"additionalInfo\"]\n ? item[\"additionalInfo\"]\n : errorAdditionalInfoArrayDeserializer(item[\"additionalInfo\"]),\n };\n}\n\nexport function errorDetailArrayDeserializer(result: Array<ErrorDetail>): any[] {\n return result.map((item) => {\n return errorDetailDeserializer(item);\n });\n}\n\nexport function errorAdditionalInfoArrayDeserializer(result: Array<ErrorAdditionalInfo>): any[] {\n return result.map((item) => {\n return errorAdditionalInfoDeserializer(item);\n });\n}\n\n/** The resource management error additional info. */\nexport interface ErrorAdditionalInfo {\n /** The additional info type. */\n readonly type?: string;\n /** The additional info. */\n readonly info?: any;\n}\n\nexport function errorAdditionalInfoDeserializer(item: any): ErrorAdditionalInfo {\n return {\n type: item[\"type\"],\n info: item[\"info\"],\n };\n}\n\n/** The deallocate request for resources */\nexport interface SubmitDeallocateRequest {\n /** The schedule for the request */\n schedule: Schedule;\n /** The execution parameters for the request */\n executionParameters: ExecutionParameters;\n /** The resources for the request */\n resources: Resources;\n /** CorrelationId item */\n correlationId: string;\n}\n\nexport function submitDeallocateRequestSerializer(item: SubmitDeallocateRequest): any {\n return {\n schedule: scheduleSerializer(item[\"schedule\"]),\n executionParameters: executionParametersSerializer(item[\"executionParameters\"]),\n resources: resourcesSerializer(item[\"resources\"]),\n correlationid: item[\"correlationId\"],\n };\n}\n\n/** The schedule details for the user request */\nexport interface Schedule {\n /** The deadline for the operation */\n deadline?: string;\n /** The deadline for the operation */\n userRequestDeadline?: string;\n /** The timezone for the operation */\n timezone?: string;\n /** The timezone for the operation */\n userRequestTimezone?: string;\n /** The deadlinetype of the operation, this can either be InitiateAt or CompleteBy */\n deadlineType: DeadlineType;\n}\n\nexport function scheduleSerializer(item: Schedule): any {\n return {\n deadline: item[\"deadline\"],\n deadLine: item[\"userRequestDeadline\"],\n timezone: item[\"timezone\"],\n timeZone: item[\"userRequestTimezone\"],\n deadlineType: item[\"deadlineType\"],\n };\n}\n\n/** The types of deadlines supported by ScheduledActions */\nexport enum KnownDeadlineType {\n /** Default value of Unknown. */\n Unknown = \"Unknown\",\n /** Initiate the operation at the given deadline. */\n InitiateAt = \"InitiateAt\",\n /** Complete the operation by the given deadline. */\n CompleteBy = \"CompleteBy\",\n}\n\n/**\n * The types of deadlines supported by ScheduledActions \\\n * {@link KnownDeadlineType} can be used interchangeably with DeadlineType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Unknown**: Default value of Unknown. \\\n * **InitiateAt**: Initiate the operation at the given deadline. \\\n * **CompleteBy**: Complete the operation by the given deadline.\n */\nexport type DeadlineType = string;\n\n/** Extra details needed to run the user's request */\nexport interface ExecutionParameters {\n /** Details that could optimize the user's request */\n optimizationPreference?: OptimizationPreference;\n /** Retry policy the user can pass */\n retryPolicy?: RetryPolicy;\n}\n\nexport function executionParametersSerializer(item: ExecutionParameters): any {\n return {\n optimizationPreference: item[\"optimizationPreference\"],\n retryPolicy: !item[\"retryPolicy\"]\n ? item[\"retryPolicy\"]\n : retryPolicySerializer(item[\"retryPolicy\"]),\n };\n}\n\nexport function executionParametersDeserializer(item: any): ExecutionParameters {\n return {\n optimizationPreference: item[\"optimizationPreference\"],\n retryPolicy: !item[\"retryPolicy\"]\n ? item[\"retryPolicy\"]\n : retryPolicyDeserializer(item[\"retryPolicy\"]),\n };\n}\n\n/** The preferences customers can select to optimize their requests to ScheduledActions */\nexport enum KnownOptimizationPreference {\n /** Optimize while considering cost savings */\n Cost = \"Cost\",\n /** Optimize while considering availability of resources */\n Availability = \"Availability\",\n /** Optimize while considering a balance of cost and availability */\n CostAvailabilityBalanced = \"CostAvailabilityBalanced\",\n}\n\n/**\n * The preferences customers can select to optimize their requests to ScheduledActions \\\n * {@link KnownOptimizationPreference} can be used interchangeably with OptimizationPreference,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Cost**: Optimize while considering cost savings \\\n * **Availability**: Optimize while considering availability of resources \\\n * **CostAvailabilityBalanced**: Optimize while considering a balance of cost and availability\n */\nexport type OptimizationPreference = string;\n\n/** The retry policy for the user request */\nexport interface RetryPolicy {\n /** Retry count for user request */\n retryCount?: number;\n /** Retry window in minutes for user request */\n retryWindowInMinutes?: number;\n /** Action to take on failure */\n onFailureAction?: ResourceOperationType;\n}\n\nexport function retryPolicySerializer(item: RetryPolicy): any {\n return {\n retryCount: item[\"retryCount\"],\n retryWindowInMinutes: item[\"retryWindowInMinutes\"],\n onFailureAction: item[\"onFailureAction\"],\n };\n}\n\nexport function retryPolicyDeserializer(item: any): RetryPolicy {\n return {\n retryCount: item[\"retryCount\"],\n retryWindowInMinutes: item[\"retryWindowInMinutes\"],\n onFailureAction: item[\"onFailureAction\"],\n };\n}\n\n/** The kind of operation types that can be performed on resources using ScheduledActions */\nexport enum KnownResourceOperationType {\n /** The default value for this enum type */\n Unknown = \"Unknown\",\n /** Start operations on the resources */\n Start = \"Start\",\n /** Deallocate operations on the resources */\n Deallocate = \"Deallocate\",\n /** Hibernate operations on the resources */\n Hibernate = \"Hibernate\",\n /** Create operations on the resources */\n Create = \"Create\",\n /** Delete operations on the resources */\n Delete = \"Delete\",\n}\n\n/**\n * The kind of operation types that can be performed on resources using ScheduledActions \\\n * {@link KnownResourceOperationType} can be used interchangeably with ResourceOperationType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Unknown**: The default value for this enum type \\\n * **Start**: Start operations on the resources \\\n * **Deallocate**: Deallocate operations on the resources \\\n * **Hibernate**: Hibernate operations on the resources \\\n * **Create**: Create operations on the resources \\\n * **Delete**: Delete operations on the resources\n */\nexport type ResourceOperationType = string;\n\n/** The resources needed for the user request */\nexport interface Resources {\n /** The resource ids used for the request */\n ids: string[];\n}\n\nexport function resourcesSerializer(item: Resources): any {\n return {\n ids: item[\"ids\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** The response from a deallocate request */\nexport interface DeallocateResourceOperationResponse {\n /** The description of the operation response */\n description: string;\n /** The type of resources used in the deallocate request eg virtual machines */\n type: string;\n /** The location of the deallocate request eg westus */\n location: string;\n /** The results from the deallocate request if no errors exist */\n results?: ResourceOperation[];\n}\n\nexport function deallocateResourceOperationResponseDeserializer(\n item: any,\n): DeallocateResourceOperationResponse {\n return {\n description: item[\"description\"],\n type: item[\"type\"],\n location: item[\"location\"],\n results: !item[\"results\"]\n ? item[\"results\"]\n : resourceOperationArrayDeserializer(item[\"results\"]),\n };\n}\n\nexport function resourceOperationArrayDeserializer(result: Array<ResourceOperation>): any[] {\n return result.map((item) => {\n return resourceOperationDeserializer(item);\n });\n}\n\n/** High level response from an operation on a resource */\nexport interface ResourceOperation {\n /** Unique identifier for the resource involved in the operation, eg ArmId */\n resourceId?: string;\n /** Resource level error code if it exists */\n errorCode?: string;\n /** Resource level error details if they exist */\n errorDetails?: string;\n /** Details of the operation performed on a resource */\n operation?: ResourceOperationDetails;\n}\n\nexport function resourceOperationDeserializer(item: any): ResourceOperation {\n return {\n resourceId: item[\"resourceId\"],\n errorCode: item[\"errorCode\"],\n errorDetails: item[\"errorDetails\"],\n operation: !item[\"operation\"]\n ? item[\"operation\"]\n : resourceOperationDetailsDeserializer(item[\"operation\"]),\n };\n}\n\n/** The details of a response from an operation on a resource */\nexport interface ResourceOperationDetails {\n /** Operation identifier for the unique operation */\n operationId: string;\n /** Unique identifier for the resource involved in the operation, eg ArmId */\n resourceId?: string;\n /** Type of operation performed on the resources */\n opType?: ResourceOperationType;\n /** Subscription id attached to the request */\n subscriptionId?: string;\n /** Deadline for the operation */\n deadline?: string;\n /** Type of deadline of the operation */\n deadlineType?: DeadlineType;\n /** Current state of the operation */\n state?: OperationState;\n /** Timezone for the operation */\n timezone?: string;\n /** Timezone for the operation */\n operationTimezone?: string;\n /** Operation level errors if they exist */\n resourceOperationError?: ResourceOperationError;\n /** Fallback operation details if a fallback was performed */\n fallbackOperationInfo?: FallbackOperationInfo;\n /** Time the operation was complete if errors are null */\n completedAt?: string;\n /** Retry policy the user can pass */\n retryPolicy?: RetryPolicy;\n}\n\nexport function resourceOperationDetailsDeserializer(item: any): ResourceOperationDetails {\n return {\n operationId: item[\"operationId\"],\n resourceId: item[\"resourceId\"],\n opType: item[\"opType\"],\n subscriptionId: item[\"subscriptionId\"],\n deadline: item[\"deadline\"],\n deadlineType: item[\"deadlineType\"],\n state: item[\"state\"],\n timezone: item[\"timezone\"],\n operationTimezone: item[\"timeZone\"],\n resourceOperationError: !item[\"resourceOperationError\"]\n ? item[\"resourceOperationError\"]\n : resourceOperationErrorDeserializer(item[\"resourceOperationError\"]),\n fallbackOperationInfo: !item[\"fallbackOperationInfo\"]\n ? item[\"fallbackOperationInfo\"]\n : fallbackOperationInfoDeserializer(item[\"fallbackOperationInfo\"]),\n completedAt: item[\"completedAt\"],\n retryPolicy: !item[\"retryPolicy\"]\n ? item[\"retryPolicy\"]\n : retryPolicyDeserializer(item[\"retryPolicy\"]),\n };\n}\n\n/** Values that define the states of operations in Scheduled Actions */\nexport enum KnownOperationState {\n /** The default value for the operation state enum */\n Unknown = \"Unknown\",\n /** Operations that are pending scheduling */\n PendingScheduling = \"PendingScheduling\",\n /** Operations that have been scheduled */\n Scheduled = \"Scheduled\",\n /** Operations that are waiting to be executed */\n PendingExecution = \"PendingExecution\",\n /** Operations that are in the process of being executed */\n Executing = \"Executing\",\n /** Operations that suceeded */\n Succeeded = \"Succeeded\",\n /** Operations that have failed */\n Failed = \"Failed\",\n /** Operations that have been Cancelled by the user */\n Cancelled = \"Cancelled\",\n /** Operations that are blocked */\n Blocked = \"Blocked\",\n}\n\n/**\n * Values that define the states of operations in Scheduled Actions \\\n * {@link KnownOperationState} can be used interchangeably with OperationState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Unknown**: The default value for the operation state enum \\\n * **PendingScheduling**: Operations that are pending scheduling \\\n * **Scheduled**: Operations that have been scheduled \\\n * **PendingExecution**: Operations that are waiting to be executed \\\n * **Executing**: Operations that are in the process of being executed \\\n * **Succeeded**: Operations that suceeded \\\n * **Failed**: Operations that have failed \\\n * **Cancelled**: Operations that have been Cancelled by the user \\\n * **Blocked**: Operations that are blocked\n */\nexport type OperationState = string;\n\n/** These describe errors that occur at the resource level */\nexport interface ResourceOperationError {\n /** Code for the error eg 404, 500 */\n errorCode: string;\n /** Detailed message about the error */\n errorDetails: string;\n}\n\nexport function resourceOperationErrorDeserializer(item: any): ResourceOperationError {\n return {\n errorCode: item[\"errorCode\"],\n errorDetails: item[\"errorDetails\"],\n };\n}\n\n/** Describes the fallback operation that was performed */\nexport interface FallbackOperationInfo {\n /** The last operation type that was performed as a fallback */\n lastOpType: ResourceOperationType;\n /** The status of the fallback operation */\n status: string;\n /** The error code if the fallback operation failed */\n error?: ResourceOperationError;\n}\n\nexport function fallbackOperationInfoDeserializer(item: any): FallbackOperationInfo {\n return {\n lastOpType: item[\"lastOpType\"],\n status: item[\"status\"],\n error: !item[\"error\"] ? item[\"error\"] : resourceOperationErrorDeserializer(item[\"error\"]),\n };\n}\n\n/** This is the request for hibernate */\nexport interface SubmitHibernateRequest {\n /** The schedule for the request */\n schedule: Schedule;\n /** The execution parameters for the request */\n executionParameters: ExecutionParameters;\n /** The resources for the request */\n resources: Resources;\n /** CorrelationId item */\n correlationId: string;\n}\n\nexport function submitHibernateRequestSerializer(item: SubmitHibernateRequest): any {\n return {\n schedule: scheduleSerializer(item[\"schedule\"]),\n executionParameters: executionParametersSerializer(item[\"executionParameters\"]),\n resources: resourcesSerializer(item[\"resources\"]),\n correlationid: item[\"correlationId\"],\n };\n}\n\n/** The response from a Hibernate request */\nexport interface HibernateResourceOperationResponse {\n /** The description of the operation response */\n description: string;\n /** The type of resources used in the Hibernate request eg virtual machines */\n type: string;\n /** The location of the Hibernate request eg westus */\n location: string;\n /** The results from the Hibernate request if no errors exist */\n results?: ResourceOperation[];\n}\n\nexport function hibernateResourceOperationResponseDeserializer(\n item: any,\n): HibernateResourceOperationResponse {\n return {\n description: item[\"description\"],\n type: item[\"type\"],\n location: item[\"location\"],\n results: !item[\"results\"]\n ? item[\"results\"]\n : resourceOperationArrayDeserializer(item[\"results\"]),\n };\n}\n\n/** This is the request for start */\nexport interface SubmitStartRequest {\n /** The schedule for the request */\n schedule: Schedule;\n /** The execution parameters for the request */\n executionParameters: ExecutionParameters;\n /** The resources for the request */\n resources: Resources;\n /** CorrelationId item */\n correlationId: string;\n}\n\nexport function submitStartRequestSerializer(item: SubmitStartRequest): any {\n return {\n schedule: scheduleSerializer(item[\"schedule\"]),\n executionParameters: executionParametersSerializer(item[\"executionParameters\"]),\n resources: resourcesSerializer(item[\"resources\"]),\n correlationid: item[\"correlationId\"],\n };\n}\n\n/** The response from a start request */\nexport interface StartResourceOperationResponse {\n /** The description of the operation response */\n description: string;\n /** The type of resources used in the start request eg virtual machines */\n type: string;\n /** The location of the start request eg westus */\n location: string;\n /** The results from the start request if no errors exist */\n results?: ResourceOperation[];\n}\n\nexport function startResourceOperationResponseDeserializer(\n item: any,\n): StartResourceOperationResponse {\n return {\n description: item[\"description\"],\n type: item[\"type\"],\n location: item[\"location\"],\n results: !item[\"results\"]\n ? item[\"results\"]\n : resourceOperationArrayDeserializer(item[\"results\"]),\n };\n}\n\n/** The ExecuteDeallocateRequest request for executeDeallocate operations */\nexport interface ExecuteDeallocateRequest {\n /** The execution parameters for the request */\n executionParameters: ExecutionParameters;\n /** The resources for the request */\n resources: Resources;\n /** CorrelationId item */\n correlationId: string;\n}\n\nexport function executeDeallocateRequestSerializer(item: ExecuteDeallocateRequest): any {\n return {\n executionParameters: executionParametersSerializer(item[\"executionParameters\"]),\n resources: resourcesSerializer(item[\"resources\"]),\n correlationid: item[\"correlationId\"],\n };\n}\n\n/** The ExecuteHibernateRequest request for executeHibernate operations */\nexport interface ExecuteHibernateRequest {\n /** The execution parameters for the request */\n executionParameters: ExecutionParameters;\n /** The resources for the request */\n resources: Resources;\n /** CorrelationId item */\n correlationId: string;\n}\n\nexport function executeHibernateRequestSerializer(item: ExecuteHibernateRequest): any {\n return {\n executionParameters: executionParametersSerializer(item[\"executionParameters\"]),\n resources: resourcesSerializer(item[\"resources\"]),\n correlationid: item[\"correlationId\"],\n };\n}\n\n/** The ExecuteStartRequest request for executeStart operations */\nexport interface ExecuteStartRequest {\n /** The execution parameters for the request */\n executionParameters: ExecutionParameters;\n /** The resources for the request */\n resources: Resources;\n /** CorrelationId item */\n correlationId: string;\n}\n\nexport function executeStartRequestSerializer(item: ExecuteStartRequest): any {\n return {\n executionParameters: executionParametersSerializer(item[\"executionParameters\"]),\n resources: resourcesSerializer(item[\"resources\"]),\n correlationid: item[\"correlationId\"],\n };\n}\n\n/** The ExecuteCreateFlexRequest request for executeCreateFlex operations */\nexport interface ExecuteCreateFlexRequest {\n /** Resource creation payload with flex properties */\n resourceConfigParameters: ResourceProvisionFlexPayload;\n /** The execution parameters for the request */\n executionParameters: ExecutionParameters;\n /** Correlationid item */\n correlationId?: string;\n}\n\nexport function executeCreateFlexRequestSerializer(item: ExecuteCreateFlexRequest): any {\n return {\n resourceConfigParameters: resourceProvisionFlexPayloadSerializer(\n item[\"resourceConfigParameters\"],\n ),\n executionParameters: executionParametersSerializer(item[\"executionParameters\"]),\n correlationid: item[\"correlationId\"],\n };\n}\n\n/** Resource creation data model for flex VM provisioning */\nexport interface ResourceProvisionFlexPayload {\n /** JSON object that contains VM properties that are common across all VMs in this batch */\n virtualMachineBaseProfile?: BulkVMConfiguration;\n /** JSON array that contains VM properties that should be overridden for each VM in the batch */\n virtualMachineOverrides?: BulkVMConfiguration[];\n /** Number of VMs to be created */\n resourceCount: number;\n /** If resourceOverrides doesn't contain name, service will create name based on prefix and resourceCount */\n resourcePrefix?: string;\n /** The flex properties for flexible VM creation */\n flexProperties: FlexProperties;\n}\n\nexport function resourceProvisionFlexPayloadSerializer(item: ResourceProvisionFlexPayload): any {\n return {\n virtualMachineBaseProfile: !item[\"virtualMachineBaseProfile\"]\n ? item[\"virtualMachineBaseProfile\"]\n : bulkVMConfigurationSerializer(item[\"virtualMachineBaseProfile\"]),\n virtualMachineOverrides: !item[\"virtualMachineOverrides\"]\n ? item[\"virtualMachineOverrides\"]\n : bulkVMConfigurationArraySerializer(item[\"virtualMachineOverrides\"]),\n resourceCount: item[\"resourceCount\"],\n resourcePrefix: item[\"resourcePrefix\"],\n flexProperties: flexPropertiesSerializer(item[\"flexProperties\"]),\n };\n}\n\n/** Specifies the configuration for a virtual machine operation */\nexport interface BulkVMConfiguration {\n /** Identifier for created virtual machine. If not passed, it will be created from resource prefix. */\n name?: string;\n /** Specifies the Microsoft.Compute API version to use when creating underlying Virtual Machines. */\n computeApiVersion?: string;\n /** Resource group name for the virtual machine. */\n resourceGroupName?: string;\n /** The availability zones. */\n zones?: string[];\n /** The marketplace image plan used for the virtual machine. */\n plan?: Plan;\n /** The identity of the virtual machine, if configured. */\n identity?: VirtualMachineIdentity;\n /** The extended location of the Virtual Machine. */\n extendedLocation?: ExtendedLocation;\n /** Placement constraints for virtual machine hardware placement. */\n placement?: Placement;\n /** Resource tags to apply to the virtual machines created by this bulk action. */\n tags?: Record<string, string>;\n /** Specifies the properties of the virtual machine to be created. */\n properties?: BulkActionVMProperties;\n /** Virtual Machine Extensions Array to be applied to the Virtual Machines. */\n vmExtensions?: BulkActionVMExtension[];\n}\n\nexport function bulkVMConfigurationSerializer(item: BulkVMConfiguration): any {\n return {\n name: item[\"name\"],\n computeApiVersion: item[\"computeApiVersion\"] ?? \"2026-04-15-preview\",\n resourceGroupName: item[\"resourceGroupName\"],\n zones: !item[\"zones\"]\n ? item[\"zones\"]\n : item[\"zones\"].map((p: any) => {\n return p;\n }),\n plan: !item[\"plan\"] ? item[\"plan\"] : planSerializer(item[\"plan\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : virtualMachineIdentitySerializer(item[\"identity\"]),\n extendedLocation: !item[\"extendedLocation\"]\n ? item[\"extendedLocation\"]\n : extendedLocationSerializer(item[\"extendedLocation\"]),\n placement: !item[\"placement\"] ? item[\"placement\"] : placementSerializer(item[\"placement\"]),\n tags: item[\"tags\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : bulkActionVMPropertiesSerializer(item[\"properties\"]),\n vmExtensions: !item[\"vmExtensions\"]\n ? item[\"vmExtensions\"]\n : bulkActionVMExtensionArraySerializer(item[\"vmExtensions\"]),\n };\n}\n\n/** Plan for the resource. */\nexport interface Plan {\n /** A user defined name of the 3rd Party Artifact that is being procured. */\n name: string;\n /** The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic */\n publisher: string;\n /** The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding. */\n product: string;\n /** A publisher provided promotion code as provisioned in Data Market for the said product/artifact. */\n promotionCode?: string;\n /** The version of the desired product/artifact. */\n version?: string;\n}\n\nexport function planSerializer(item: Plan): any {\n return {\n name: item[\"name\"],\n publisher: item[\"publisher\"],\n product: item[\"product\"],\n promotionCode: item[\"promotionCode\"],\n version: item[\"version\"],\n };\n}\n\n/** Identity for the virtual machine. */\nexport interface VirtualMachineIdentity {\n /** The principal id of virtual machine identity. This property will only be provided for a system assigned identity. */\n readonly principalId?: string;\n /** The tenant id associated with the virtual machine. This property will only be provided for a system assigned identity. */\n readonly tenantId?: string;\n /** The type of identity used for the virtual machine. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine. */\n type?: ResourceIdentityType;\n /** The list of user identities associated with the Virtual Machine. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. */\n userAssignedIdentities?: Record<string, UserAssignedIdentitiesValue>;\n}\n\nexport function virtualMachineIdentitySerializer(item: VirtualMachineIdentity): any {\n return {\n type: item[\"type\"],\n userAssignedIdentities: !item[\"userAssignedIdentities\"]\n ? item[\"userAssignedIdentities\"]\n : userAssignedIdentitiesValueRecordSerializer(item[\"userAssignedIdentities\"]),\n };\n}\n\n/** The type of identity used for the virtual machine scale set. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine scale set. */\nexport type ResourceIdentityType =\n | \"SystemAssigned\"\n | \"UserAssigned\"\n | \"SystemAssigned, UserAssigned\"\n | \"None\";\n\nexport function userAssignedIdentitiesValueRecordSerializer(\n item: Record<string, UserAssignedIdentitiesValue>,\n): Record<string, any> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : userAssignedIdentitiesValueSerializer(item[key]);\n });\n return result;\n}\n\n/** model interface UserAssignedIdentitiesValue */\nexport interface UserAssignedIdentitiesValue {\n /** The principal id of user assigned identity. */\n readonly principalId?: string;\n /** The client id of user assigned identity. */\n readonly clientId?: string;\n}\n\nexport function userAssignedIdentitiesValueSerializer(_item: UserAssignedIdentitiesValue): any {\n return {};\n}\n\n/** The complex type of the extended location. */\nexport interface ExtendedLocation {\n /** The name of the extended location. */\n name: string;\n /** The type of the extended location. */\n type: ExtendedLocationType;\n}\n\nexport function extendedLocationSerializer(item: ExtendedLocation): any {\n return { name: item[\"name\"], type: item[\"type\"] };\n}\n\n/** The supported ExtendedLocation types. */\nexport enum KnownExtendedLocationType {\n /** Azure Edge Zones location type */\n EdgeZone = \"EdgeZone\",\n /** Azure Custom Locations type */\n CustomLocation = \"CustomLocation\",\n}\n\n/**\n * The supported ExtendedLocation types. \\\n * {@link KnownExtendedLocationType} can be used interchangeably with ExtendedLocationType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **EdgeZone**: Azure Edge Zones location type \\\n * **CustomLocation**: Azure Custom Locations type\n */\nexport type ExtendedLocationType = string;\n\n/** Describes the user-defined constraints for resource hardware placement. */\nexport interface Placement {\n /** Specifies the policy for resource's placement in availability zone. Possible values are: **Any** (used for Virtual Machines), **Auto** (used for Virtual Machine Scale Sets) - An availability zone will be automatically picked by system as part of resource creation. */\n zonePlacementPolicy?: ZonePlacementPolicyType;\n /** This property supplements the 'zonePlacementPolicy' property. If 'zonePlacementPolicy' is set to 'Any'/'Auto', availability zone selected by the system must be present in the list of availability zones passed with 'includeZones'. If 'includeZones' is not provided, all availability zones in region will be considered for selection. */\n includeZones?: string[];\n /** This property supplements the 'zonePlacementPolicy' property. If 'zonePlacementPolicy' is set to 'Any'/'Auto', availability zone selected by the system must not be present in the list of availability zones passed with 'excludeZones'. If 'excludeZones' is not provided, all availability zones in region will be considered for selection. */\n excludeZones?: string[];\n}\n\nexport function placementSerializer(item: Placement): any {\n return {\n zonePlacementPolicy: item[\"zonePlacementPolicy\"],\n includeZones: !item[\"includeZones\"]\n ? item[\"includeZones\"]\n : item[\"includeZones\"].map((p: any) => {\n return p;\n }),\n excludeZones: !item[\"excludeZones\"]\n ? item[\"excludeZones\"]\n : item[\"excludeZones\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Specifies the policy for resource's placement in availability zone. Possible values are: **Any** (used for Virtual Machines), **Auto** (used for Virtual Machine Scale Sets) - An availability zone will be automatically picked by system as part of resource creation. */\nexport enum KnownZonePlacementPolicyType {\n /** Any */\n Any = \"Any\",\n /** The platform automatically selects an availability zone based on the request. */\n Auto = \"Auto\",\n}\n\n/**\n * Specifies the policy for resource's placement in availability zone. Possible values are: **Any** (used for Virtual Machines), **Auto** (used for Virtual Machine Scale Sets) - An availability zone will be automatically picked by system as part of resource creation. \\\n * {@link KnownZonePlacementPolicyType} can be used interchangeably with ZonePlacementPolicyType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Any** \\\n * **Auto**: The platform automatically selects an availability zone based on the request.\n */\nexport type ZonePlacementPolicyType = string;\n\n/** Describes the properties of a Virtual Machine for create. */\nexport interface BulkActionVMProperties {\n /** Specifies Redeploy, Reboot and ScheduledEventsAdditionalPublishingTargets Scheduled Event related configurations for the virtual machine. */\n scheduledEventsPolicy?: ScheduledEventsPolicy;\n /** Specifies the storage settings for the virtual machine disks. */\n storageProfile?: StorageProfile;\n /** Specifies additional capabilities enabled or disabled on the virtual machine. */\n additionalCapabilities?: AdditionalCapabilities;\n /** Specifies the operating system settings used while creating the virtual machine. Some of the settings cannot be changed once VM is provisioned. */\n osProfile?: OSProfile;\n /** Specifies the network interfaces of the virtual machine. */\n networkProfile?: NetworkProfile;\n /** Specifies the hardware profile for the virtual machine. */\n hardwareProfile?: HardwareProfile;\n /** Specifies the Security related profile settings for the virtual machine. */\n securityProfile?: SecurityProfile;\n /** Specifies the boot diagnostic settings state. Minimum compute api-version: 2015-06-15. */\n diagnosticsProfile?: DiagnosticsProfile;\n /** Specifies that the image or disk that is being used was licensed on-premises. <br><br> Possible values for Windows Server operating system are: <br><br> Windows_Client <br><br> Windows_Server <br><br> Possible values for Linux Server operating system are: <br><br> RHEL_BYOS (for RHEL) <br><br> SLES_BYOS (for SUSE) <br><br> For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing) <br><br> [Azure Hybrid Use Benefit for Linux Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux) <br><br> Minimum api-version: 2015-06-15 */\n licenseType?: string;\n /** Specifies the time alloted for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. The default value is 90 minutes (PT1H30M). Minimum compute api-version: 2020-06-01. */\n extensionsTimeBudget?: string;\n /** Specifies Scheduled Event related configurations. */\n scheduledEventsProfile?: ScheduledEventsProfile;\n /** UserData for the VM, which must be base-64 encoded. Customer should not pass any secrets in here. Minimum compute api-version: 2021-03-01. */\n userData?: string;\n /** Specifies information about the capacity reservation that is used to allocate virtual machine. Minimum compute api-version: 2021-04-01. */\n capacityReservation?: CapacityReservationProfile;\n /** Specifies the gallery applications that should be made available to the VM. */\n applicationProfile?: ApplicationProfile;\n}\n\nexport function bulkActionVMPropertiesSerializer(item: BulkActionVMProperties): any {\n return {\n scheduledEventsPolicy: !item[\"scheduledEventsPolicy\"]\n ? item[\"scheduledEventsPolicy\"]\n : scheduledEventsPolicySerializer(item[\"scheduledEventsPolicy\"]),\n storageProfile: !item[\"storageProfile\"]\n ? item[\"storageProfile\"]\n : storageProfileSerializer(item[\"storageProfile\"]),\n additionalCapabilities: !item[\"additionalCapabilities\"]\n ? item[\"additionalCapabilities\"]\n : additionalCapabilitiesSerializer(item[\"additionalCapabilities\"]),\n osProfile: !item[\"osProfile\"] ? item[\"osProfile\"] : osProfileSerializer(item[\"osProfile\"]),\n networkProfile: !item[\"networkProfile\"]\n ? item[\"networkProfile\"]\n : networkProfileSerializer(item[\"networkProfile\"]),\n hardwareProfile: !item[\"hardwareProfile\"]\n ? item[\"hardwareProfile\"]\n : hardwareProfileSerializer(item[\"hardwareProfile\"]),\n securityProfile: !item[\"securityProfile\"]\n ? item[\"securityProfile\"]\n : securityProfileSerializer(item[\"securityProfile\"]),\n diagnosticsProfile: !item[\"diagnosticsProfile\"]\n ? item[\"diagnosticsProfile\"]\n : diagnosticsProfileSerializer(item[\"diagnosticsProfile\"]),\n licenseType: item[\"licenseType\"],\n extensionsTimeBudget: item[\"extensionsTimeBudget\"],\n scheduledEventsProfile: !item[\"scheduledEventsProfile\"]\n ? item[\"scheduledEventsProfile\"]\n : scheduledEventsProfileSerializer(item[\"scheduledEventsProfile\"]),\n userData: item[\"userData\"],\n capacityReservation: !item[\"capacityReservation\"]\n ? item[\"capacityReservation\"]\n : capacityReservationProfileSerializer(item[\"capacityReservation\"]),\n applicationProfile: !item[\"applicationProfile\"]\n ? item[\"applicationProfile\"]\n : applicationProfileSerializer(item[\"applicationProfile\"]),\n };\n}\n\n/** Specifies Redeploy, Reboot and ScheduledEventsAdditionalPublishingTargets Scheduled Event related configurations. */\nexport interface ScheduledEventsPolicy {\n /** The configuration parameters used while creating userInitiatedRedeploy scheduled event setting creation. */\n userInitiatedRedeploy?: UserInitiatedRedeploy;\n /** The configuration parameters used while creating userInitiatedReboot scheduled event setting creation. */\n userInitiatedReboot?: UserInitiatedReboot;\n /** The configuration parameters used while publishing scheduledEventsAdditionalPublishingTargets. */\n scheduledEventsAdditionalPublishingTargets?: ScheduledEventsAdditionalPublishingTargets;\n /** The configuration parameters used while creating AllInstancesDown scheduled event setting creation. */\n allInstancesDown?: AllInstancesDown;\n}\n\nexport function scheduledEventsPolicySerializer(item: ScheduledEventsPolicy): any {\n return {\n userInitiatedRedeploy: !item[\"userInitiatedRedeploy\"]\n ? item[\"userInitiatedRedeploy\"]\n : userInitiatedRedeploySerializer(item[\"userInitiatedRedeploy\"]),\n userInitiatedReboot: !item[\"userInitiatedReboot\"]\n ? item[\"userInitiatedReboot\"]\n : userInitiatedRebootSerializer(item[\"userInitiatedReboot\"]),\n scheduledEventsAdditionalPublishingTargets: !item[\"scheduledEventsAdditionalPublishingTargets\"]\n ? item[\"scheduledEventsAdditionalPublishingTargets\"]\n : scheduledEventsAdditionalPublishingTargetsSerializer(\n item[\"scheduledEventsAdditionalPublishingTargets\"],\n ),\n allInstancesDown: !item[\"allInstancesDown\"]\n ? item[\"allInstancesDown\"]\n : allInstancesDownSerializer(item[\"allInstancesDown\"]),\n };\n}\n\n/** Specifies Redeploy related Scheduled Event related configurations. */\nexport interface UserInitiatedRedeploy {\n /** Specifies Redeploy Scheduled Event related configurations. */\n automaticallyApprove?: boolean;\n}\n\nexport function userInitiatedRedeploySerializer(item: UserInitiatedRedeploy): any {\n return { automaticallyApprove: item[\"automaticallyApprove\"] };\n}\n\n/** Specifies Reboot related Scheduled Event related configurations. */\nexport interface UserInitiatedReboot {\n /** Specifies Reboot Scheduled Event related configurations. */\n automaticallyApprove?: boolean;\n}\n\nexport function userInitiatedRebootSerializer(item: UserInitiatedReboot): any {\n return { automaticallyApprove: item[\"automaticallyApprove\"] };\n}\n\n/** Specifies additional publishing targets for scheduled events. */\nexport interface ScheduledEventsAdditionalPublishingTargets {\n /** The configuration parameters used while creating eventGridAndResourceGraph Scheduled Event setting. */\n eventGridAndResourceGraph?: EventGridAndResourceGraph;\n}\n\nexport function scheduledEventsAdditionalPublishingTargetsSerializer(\n item: ScheduledEventsAdditionalPublishingTargets,\n): any {\n return {\n eventGridAndResourceGraph: !item[\"eventGridAndResourceGraph\"]\n ? item[\"eventGridAndResourceGraph\"]\n : eventGridAndResourceGraphSerializer(item[\"eventGridAndResourceGraph\"]),\n };\n}\n\n/** Specifies eventGridAndResourceGraph related Scheduled Event related configurations. */\nexport interface EventGridAndResourceGraph {\n /** Specifies if event grid and resource graph is enabled for Scheduled event related configurations. */\n enable?: boolean;\n /** Specifies the api-version to determine which Scheduled Events configuration schema version will be delivered. */\n scheduledEventsApiVersion?: string;\n}\n\nexport function eventGridAndResourceGraphSerializer(item: EventGridAndResourceGraph): any {\n return {\n enable: item[\"enable\"],\n scheduledEventsApiVersion: item[\"scheduledEventsApiVersion\"] ?? \"2026-04-15-preview\",\n };\n}\n\n/** Specifies if Scheduled Events should be auto-approved when all instances are down. */\nexport interface AllInstancesDown {\n /** Specifies if Scheduled Events should be auto-approved when all instances are down. Its default value is true. */\n automaticallyApprove?: boolean;\n}\n\nexport function allInstancesDownSerializer(item: AllInstancesDown): any {\n return { automaticallyApprove: item[\"automaticallyApprove\"] };\n}\n\n/** Specifies the storage settings for the virtual machine disks. */\nexport interface StorageProfile {\n /** Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. */\n imageReference?: ImageReference;\n /** Specifies information about the operating system disk used by the virtual machine. For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview). */\n osDisk?: OSDisk;\n /** Specifies the parameters that are used to add a data disk to a virtual machine. For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview). */\n dataDisks?: DataDisk[];\n /** Specifies the disk controller type configured for the VM. **Note:** This property will be set to the default disk controller type if not specified provided virtual machine is being created with 'hyperVGeneration' set to V2 based on the capabilities of the operating system disk and VM size from the the specified minimum api version. You need to deallocate the VM before updating its disk controller type unless you are updating the VM size in the VM configuration which implicitly deallocates and reallocates the VM. Minimum api-version: 2022-08-01. */\n diskControllerType?: DiskControllerTypes;\n}\n\nexport function storageProfileSerializer(item: StorageProfile): any {\n return {\n imageReference: !item[\"imageReference\"]\n ? item[\"imageReference\"]\n : imageReferenceSerializer(item[\"imageReference\"]),\n osDisk: !item[\"osDisk\"] ? item[\"osDisk\"] : osDiskSerializer(item[\"osDisk\"]),\n dataDisks: !item[\"dataDisks\"] ? item[\"dataDisks\"] : dataDiskArraySerializer(item[\"dataDisks\"]),\n diskControllerType: item[\"diskControllerType\"],\n };\n}\n\n/** Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set. */\nexport interface ImageReference extends SubResource {\n /** The image publisher. */\n publisher?: string;\n /** Specifies the offer of the platform image or marketplace image used to create the virtual machine. */\n offer?: string;\n /** The image SKU. */\n sku?: string;\n /** Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available. Please do not use field 'version' for gallery image deployment, gallery image should always use 'id' field for deployment, to use 'latest' version of gallery image, just set '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageName}' in the 'id' field without version input. */\n version?: string;\n /** Specified the shared gallery image unique id for vm deployment. This can be fetched from shared gallery image GET call. */\n sharedGalleryImageId?: string;\n /** Specified the community gallery image unique id for vm deployment. This can be fetched from community gallery image GET call. */\n communityGalleryImageId?: string;\n}\n\nexport function imageReferenceSerializer(item: ImageReference): any {\n return {\n id: item[\"id\"],\n publisher: item[\"publisher\"],\n offer: item[\"offer\"],\n sku: item[\"sku\"],\n version: item[\"version\"],\n sharedGalleryImageId: item[\"sharedGalleryImageId\"],\n communityGalleryImageId: item[\"communityGalleryImageId\"],\n };\n}\n\n/** Specifies information about the operating system disk used by the virtual machine. For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview). */\nexport interface OSDisk {\n /** This property allows you to specify the type of the OS that is included in the disk if creating a VM from user-image or a specialized VHD. Possible values are: Windows, Linux. */\n osType?: OperatingSystemTypes;\n /** Specifies the encryption settings for the OS Disk. Minimum compute api-version: 2015-06-15. */\n encryptionSettings?: DiskEncryptionSettings;\n /** The disk name. */\n name?: string;\n /** The virtual hard disk. */\n vhd?: VirtualHardDisk;\n /** The source user image virtual hard disk. The virtual hard disk will be copied before being attached to the virtual machine. If SourceImage is provided, the destination virtual hard drive must not exist. */\n image?: VirtualHardDisk;\n /** Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The defaulting behavior is: None for Standard storage. ReadOnly for Premium storage. */\n caching?: CachingTypes;\n /** Specifies whether writeAccelerator should be enabled or disabled on the disk. */\n writeAcceleratorEnabled?: boolean;\n /** Specifies the ephemeral Disk Settings for the operating system disk used by the virtual machine. */\n diffDiskSettings?: DiffDiskSettings;\n /** Specifies how the virtual machine disk should be created. Possible values are Attach, FromImage. If you are using a platform image, you should also use the imageReference element described above. If you are using a marketplace image, you should also use the plan element previously described. */\n createOption: DiskCreateOptionTypes;\n /** Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image. The property 'diskSizeGB' is the number of bytes x 1024^3 for the disk and the value cannot be larger than 1023. */\n diskSizeGB?: number;\n /** The managed disk parameters. */\n managedDisk?: ManagedDiskParameters;\n /** Specifies whether OS Disk should be deleted or detached upon VM deletion. Possible values are: Delete, Detach. The default value is set to Detach. For an ephemeral OS Disk, the default value is set to Delete. The user cannot change the delete option for an ephemeral OS Disk. */\n deleteOption?: DiskDeleteOptionTypes;\n}\n\nexport function osDiskSerializer(item: OSDisk): any {\n return {\n osType: item[\"osType\"],\n encryptionSettings: !item[\"encryptionSettings\"]\n ? item[\"encryptionSettings\"]\n : diskEncryptionSettingsSerializer(item[\"encryptionSettings\"]),\n name: item[\"name\"],\n vhd: !item[\"vhd\"] ? item[\"vhd\"] : virtualHardDiskSerializer(item[\"vhd\"]),\n image: !item[\"image\"] ? item[\"image\"] : virtualHardDiskSerializer(item[\"image\"]),\n caching: item[\"caching\"],\n writeAcceleratorEnabled: item[\"writeAcceleratorEnabled\"],\n diffDiskSettings: !item[\"diffDiskSettings\"]\n ? item[\"diffDiskSettings\"]\n : diffDiskSettingsSerializer(item[\"diffDiskSettings\"]),\n createOption: item[\"createOption\"],\n diskSizeGB: item[\"diskSizeGB\"],\n managedDisk: !item[\"managedDisk\"]\n ? item[\"managedDisk\"]\n : managedDiskParametersSerializer(item[\"managedDisk\"]),\n deleteOption: item[\"deleteOption\"],\n };\n}\n\n/** This property allows you to specify the supported type of the OS that application is built for. Possible values are: **Windows,** **Linux.** */\nexport enum KnownOperatingSystemTypes {\n /** Windows OS */\n Windows = \"Windows\",\n /** Linux OS */\n Linux = \"Linux\",\n}\n\n/**\n * This property allows you to specify the supported type of the OS that application is built for. Possible values are: **Windows,** **Linux.** \\\n * {@link KnownOperatingSystemTypes} can be used interchangeably with OperatingSystemTypes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Windows**: Windows OS \\\n * **Linux**: Linux OS\n */\nexport type OperatingSystemTypes = string;\n\n/** Describes a Encryption Settings for a Disk */\nexport interface DiskEncryptionSettings {\n /** Specifies the location of the disk encryption key, which is a Key Vault Secret. */\n diskEncryptionKey?: KeyVaultSecretReference;\n /** Specifies the location of the key encryption key in Key Vault. */\n keyEncryptionKey?: KeyVaultKeyReference;\n /** Specifies whether disk encryption should be enabled on the virtual machine. */\n enabled?: boolean;\n}\n\nexport function diskEncryptionSettingsSerializer(item: DiskEncryptionSettings): any {\n return {\n diskEncryptionKey: !item[\"diskEncryptionKey\"]\n ? item[\"diskEncryptionKey\"]\n : keyVaultSecretReferenceSerializer(item[\"diskEncryptionKey\"]),\n keyEncryptionKey: !item[\"keyEncryptionKey\"]\n ? item[\"keyEncryptionKey\"]\n : keyVaultKeyReferenceSerializer(item[\"keyEncryptionKey\"]),\n enabled: item[\"enabled\"],\n };\n}\n\n/** Describes a reference to Key Vault Secret */\nexport interface KeyVaultSecretReference {\n /** The URL referencing a secret in a Key Vault. */\n secretUrl: string;\n /** The relative URL of the Key Vault containing the secret. */\n sourceVault: SubResource;\n}\n\nexport function keyVaultSecretReferenceSerializer(item: KeyVaultSecretReference): any {\n return { secretUrl: item[\"secretUrl\"], sourceVault: subResourceSerializer(item[\"sourceVault\"]) };\n}\n\n/** Describes a reference to a sub-resource. */\nexport interface SubResource {\n /** The ID of the sub-resource. */\n id?: string;\n}\n\nexport function subResourceSerializer(item: SubResource): any {\n return { id: item[\"id\"] };\n}\n\n/** Describes a reference to Key Vault Key */\nexport interface KeyVaultKeyReference {\n /** The URL referencing a key encryption key in Key Vault. */\n keyUrl: string;\n /** The relative URL of the Key Vault containing the key. */\n sourceVault: SubResource;\n}\n\nexport function keyVaultKeyReferenceSerializer(item: KeyVaultKeyReference): any {\n return { keyUrl: item[\"keyUrl\"], sourceVault: subResourceSerializer(item[\"sourceVault\"]) };\n}\n\n/** Describes the uri of a disk. */\nexport interface VirtualHardDisk {\n /** Specifies the virtual hard disk's uri. */\n uri?: string;\n}\n\nexport function virtualHardDiskSerializer(item: VirtualHardDisk): any {\n return { uri: item[\"uri\"] };\n}\n\n/** Specifies the caching requirements. Possible values are: **None,** **ReadOnly,** **ReadWrite.** The default values are: **None for Standard storage. ReadOnly for Premium storage** */\nexport enum KnownCachingTypes {\n /** Caching type:None */\n None = \"None\",\n /** Caching type:ReadOnly */\n ReadOnly = \"ReadOnly\",\n /** Caching type:ReadWrite */\n ReadWrite = \"ReadWrite\",\n}\n\n/**\n * Specifies the caching requirements. Possible values are: **None,** **ReadOnly,** **ReadWrite.** The default values are: **None for Standard storage. ReadOnly for Premium storage** \\\n * {@link KnownCachingTypes} can be used interchangeably with CachingTypes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **None**: Caching type:None \\\n * **ReadOnly**: Caching type:ReadOnly \\\n * **ReadWrite**: Caching type:ReadWrite\n */\nexport type CachingTypes = string;\n\n/** Describes the parameters of ephemeral disk settings that can be specified for operating system disk. Note: The ephemeral disk settings can only be specified for managed disk. */\nexport interface DiffDiskSettings {\n /** Specifies the ephemeral disk settings for operating system disk. */\n option?: DiffDiskOptions;\n /** Specifies the ephemeral disk placement for operating system disk. Possible values are: CacheDisk, ResourceDisk, NvmeDisk. The defaulting behavior is: CacheDisk if one is configured for the VM size otherwise ResourceDisk or NvmeDisk is used. Minimum api-version for NvmeDisk: 2024-03-01. */\n placement?: DiffDiskPlacement;\n}\n\nexport function diffDiskSettingsSerializer(item: DiffDiskSettings): any {\n return { option: item[\"option\"], placement: item[\"placement\"] };\n}\n\n/** Specifies the ephemeral disk option for operating system disk. */\nexport enum KnownDiffDiskOptions {\n /** Local Ephemeral disk option: Local */\n Local = \"Local\",\n}\n\n/**\n * Specifies the ephemeral disk option for operating system disk. \\\n * {@link KnownDiffDiskOptions} can be used interchangeably with DiffDiskOptions,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Local**: Local Ephemeral disk option: Local\n */\nexport type DiffDiskOptions = string;\n\n/** Specifies the ephemeral disk placement for operating system disk. This property can be used by user in the request to choose the location i.e, cache disk, resource disk or nvme disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer Ephemeral OS disk size requirements for Windows VM at https://docs.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VM at https://docs.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements. Minimum api-version for NvmeDisk: 2024-03-01. */\nexport enum KnownDiffDiskPlacement {\n /** CacheDisk disk placement */\n CacheDisk = \"CacheDisk\",\n /** ResourceDisk disk placement */\n ResourceDisk = \"ResourceDisk\",\n /** NvmeDisk disk placement */\n NvmeDisk = \"NvmeDisk\",\n}\n\n/**\n * Specifies the ephemeral disk placement for operating system disk. This property can be used by user in the request to choose the location i.e, cache disk, resource disk or nvme disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer Ephemeral OS disk size requirements for Windows VM at https://docs.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VM at https://docs.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements. Minimum api-version for NvmeDisk: 2024-03-01. \\\n * {@link KnownDiffDiskPlacement} can be used interchangeably with DiffDiskPlacement,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **CacheDisk**: CacheDisk disk placement \\\n * **ResourceDisk**: ResourceDisk disk placement \\\n * **NvmeDisk**: NvmeDisk disk placement\n */\nexport type DiffDiskPlacement = string;\n\n/** Specifies how the virtual machine disk should be created. Possible values are **Attach:** This value is used when you are using a specialized disk to create the virtual machine. **FromImage:** This value is used when you are using an image to create the virtual machine. If you are using a platform image, you should also use the imageReference element described above. If you are using a marketplace image, you should also use the plan element previously described. **Empty:** This value is used when creating an empty data disk. **Copy:** This value is used to create a data disk from a snapshot or another disk. **Restore:** This value is used to create a data disk from a disk restore point. */\nexport enum KnownDiskCreateOptionTypes {\n /** Create disk FromImage */\n FromImage = \"FromImage\",\n /** Empty value */\n Empty = \"Empty\",\n /** Create disk by Attach */\n Attach = \"Attach\",\n /** Create disk by Copy */\n Copy = \"Copy\",\n /** Create disk by Restore */\n Restore = \"Restore\",\n}\n\n/**\n * Specifies how the virtual machine disk should be created. Possible values are **Attach:** This value is used when you are using a specialized disk to create the virtual machine. **FromImage:** This value is used when you are using an image to create the virtual machine. If you are using a platform image, you should also use the imageReference element described above. If you are using a marketplace image, you should also use the plan element previously described. **Empty:** This value is used when creating an empty data disk. **Copy:** This value is used to create a data disk from a snapshot or another disk. **Restore:** This value is used to create a data disk from a disk restore point. \\\n * {@link KnownDiskCreateOptionTypes} can be used interchangeably with DiskCreateOptionTypes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **FromImage**: Create disk FromImage \\\n * **Empty**: Empty value \\\n * **Attach**: Create disk by Attach \\\n * **Copy**: Create disk by Copy \\\n * **Restore**: Create disk by Restore\n */\nexport type DiskCreateOptionTypes = string;\n\n/** The parameters of a managed disk. */\nexport interface ManagedDiskParameters extends SubResource {\n /** Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk. */\n storageAccountType?: StorageAccountTypes;\n /** Specifies the customer managed disk encryption set resource id for the managed disk. */\n diskEncryptionSet?: DiskEncryptionSetParameters;\n /** Specifies the security profile for the managed disk. */\n securityProfile?: VMDiskSecurityProfile;\n}\n\nexport function managedDiskParametersSerializer(item: ManagedDiskParameters): any {\n return {\n id: item[\"id\"],\n storageAccountType: item[\"storageAccountType\"],\n diskEncryptionSet: !item[\"diskEncryptionSet\"]\n ? item[\"diskEncryptionSet\"]\n : diskEncryptionSetParametersSerializer(item[\"diskEncryptionSet\"]),\n securityProfile: !item[\"securityProfile\"]\n ? item[\"securityProfile\"]\n : vmDiskSecurityProfileSerializer(item[\"securityProfile\"]),\n };\n}\n\n/** Specifies the storage account type for the managed disk. Managed OS disk storage account type can only be set when you create the scale set. NOTE: UltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk. Standard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS uses Premium SSD. UltraSSD_LRS uses Ultra disk. Premium_ZRS uses Premium SSD zone redundant storage. StandardSSD_ZRS uses Standard SSD zone redundant storage. For more information regarding disks supported for Windows Virtual Machines, refer to https://docs.microsoft.com/azure/virtual-machines/windows/disks-types and, for Linux Virtual Machines, refer to https://docs.microsoft.com/azure/virtual-machines/linux/disks-types */\nexport enum KnownStorageAccountTypes {\n /** Standard_LRS storage account type */\n StandardLRS = \"Standard_LRS\",\n /** Premium_LRS storage account type */\n PremiumLRS = \"Premium_LRS\",\n /** StandardSSD_LRS storage account type */\n StandardSSDLRS = \"StandardSSD_LRS\",\n /** UltraSSD_LRS storage account type */\n UltraSSDLRS = \"UltraSSD_LRS\",\n /** Premium_ZRS storage account type */\n PremiumZRS = \"Premium_ZRS\",\n /** StandardSSD_ZRS storage account type */\n StandardSSDZRS = \"StandardSSD_ZRS\",\n /** PremiumV2_LRS storage account type */\n PremiumV2LRS = \"PremiumV2_LRS\",\n}\n\n/**\n * Specifies the storage account type for the managed disk. Managed OS disk storage account type can only be set when you create the scale set. NOTE: UltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk. Standard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS uses Premium SSD. UltraSSD_LRS uses Ultra disk. Premium_ZRS uses Premium SSD zone redundant storage. StandardSSD_ZRS uses Standard SSD zone redundant storage. For more information regarding disks supported for Windows Virtual Machines, refer to https://docs.microsoft.com/azure/virtual-machines/windows/disks-types and, for Linux Virtual Machines, refer to https://docs.microsoft.com/azure/virtual-machines/linux/disks-types \\\n * {@link KnownStorageAccountTypes} can be used interchangeably with StorageAccountTypes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Standard_LRS**: Standard_LRS storage account type \\\n * **Premium_LRS**: Premium_LRS storage account type \\\n * **StandardSSD_LRS**: StandardSSD_LRS storage account type \\\n * **UltraSSD_LRS**: UltraSSD_LRS storage account type \\\n * **Premium_ZRS**: Premium_ZRS storage account type \\\n * **StandardSSD_ZRS**: StandardSSD_ZRS storage account type \\\n * **PremiumV2_LRS**: PremiumV2_LRS storage account type\n */\nexport type StorageAccountTypes = string;\n\n/** Describes the parameter of customer managed disk encryption set resource id that can be specified for disk. **Note:** The disk encryption set resource id can only be specified for managed disk. Please refer https://aka.ms/mdssewithcmkoverview for more details. */\nexport interface DiskEncryptionSetParameters extends SubResource {}\n\nexport function diskEncryptionSetParametersSerializer(item: DiskEncryptionSetParameters): any {\n return { id: item[\"id\"] };\n}\n\n/** Specifies the security profile settings for the managed disk. **Note:** It can only be set for Confidential VMs. */\nexport interface VMDiskSecurityProfile {\n /** Specifies the EncryptionType of the managed disk. It is set to DiskWithVMGuestState for encryption of the managed disk along with VMGuestState blob, VMGuestStateOnly for encryption of just the VMGuestState blob, and NonPersistedTPM for not persisting firmware state in the VMGuestState blob.. **Note:** It can be set for only Confidential VMs. */\n securityEncryptionType?: SecurityEncryptionTypes;\n /** Specifies the customer managed disk encryption set resource id for the managed disk that is used for Customer Managed Key encrypted ConfidentialVM OS Disk and VMGuest blob. */\n diskEncryptionSet?: DiskEncryptionSetParameters;\n}\n\nexport function vmDiskSecurityProfileSerializer(item: VMDiskSecurityProfile): any {\n return {\n securityEncryptionType: item[\"securityEncryptionType\"],\n diskEncryptionSet: !item[\"diskEncryptionSet\"]\n ? item[\"diskEncryptionSet\"]\n : diskEncryptionSetParametersSerializer(item[\"diskEncryptionSet\"]),\n };\n}\n\n/** Specifies the EncryptionType of the managed disk. It is set to DiskWithVMGuestState for encryption of the managed disk along with VMGuestState blob, VMGuestStateOnly for encryption of just the VMGuestState blob, and NonPersistedTPM for not persisting firmware state in the VMGuestState blob.. **Note:** It can be set for only Confidential VMs. */\nexport enum KnownSecurityEncryptionTypes {\n /** VMGuestStateOnly encryption */\n VMGuestStateOnly = \"VMGuestStateOnly\",\n /** DiskWithVMGuestState encryption */\n DiskWithVMGuestState = \"DiskWithVMGuestState\",\n /** NonPersistedTPM encryption */\n NonPersistedTPM = \"NonPersistedTPM\",\n}\n\n/**\n * Specifies the EncryptionType of the managed disk. It is set to DiskWithVMGuestState for encryption of the managed disk along with VMGuestState blob, VMGuestStateOnly for encryption of just the VMGuestState blob, and NonPersistedTPM for not persisting firmware state in the VMGuestState blob.. **Note:** It can be set for only Confidential VMs. \\\n * {@link KnownSecurityEncryptionTypes} can be used interchangeably with SecurityEncryptionTypes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **VMGuestStateOnly**: VMGuestStateOnly encryption \\\n * **DiskWithVMGuestState**: DiskWithVMGuestState encryption \\\n * **NonPersistedTPM**: NonPersistedTPM encryption\n */\nexport type SecurityEncryptionTypes = string;\n\n/** Specifies the behavior of the managed disk when the VM gets deleted, for example whether the managed disk is deleted or detached. Supported values are: **Delete.** If this value is used, the managed disk is deleted when VM gets deleted. **Detach.** If this value is used, the managed disk is retained after VM gets deleted. Minimum api-version: 2021-03-01. */\nexport enum KnownDiskDeleteOptionTypes {\n /** Delete the disk upon VM deletion */\n Delete = \"Delete\",\n /** Detach the disk upon VM deletion */\n Detach = \"Detach\",\n}\n\n/**\n * Specifies the behavior of the managed disk when the VM gets deleted, for example whether the managed disk is deleted or detached. Supported values are: **Delete.** If this value is used, the managed disk is deleted when VM gets deleted. **Detach.** If this value is used, the managed disk is retained after VM gets deleted. Minimum api-version: 2021-03-01. \\\n * {@link KnownDiskDeleteOptionTypes} can be used interchangeably with DiskDeleteOptionTypes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Delete**: Delete the disk upon VM deletion \\\n * **Detach**: Detach the disk upon VM deletion\n */\nexport type DiskDeleteOptionTypes = string;\n\nexport function dataDiskArraySerializer(result: Array<DataDisk>): any[] {\n return result.map((item) => {\n return dataDiskSerializer(item);\n });\n}\n\n/** Describes a data disk. */\nexport interface DataDisk {\n /** Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM. */\n lun: number;\n /** The disk name. */\n name?: string;\n /** The virtual hard disk. */\n vhd?: VirtualHardDisk;\n /** The source user image virtual hard disk. The virtual hard disk will be copied before being attached to the virtual machine. If SourceImage is provided, the destination virtual hard drive must not exist. */\n image?: VirtualHardDisk;\n /** Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The defaulting behavior is: None for Standard storage. ReadOnly for Premium storage. */\n caching?: CachingTypes;\n /** Specifies whether writeAccelerator should be enabled or disabled on the disk. */\n writeAcceleratorEnabled?: boolean;\n /** Specifies how the virtual machine disk should be created. Possible values are Attach, FromImage, Empty, Copy, Restore. */\n createOption: DiskCreateOptionTypes;\n /** Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image. The property 'diskSizeGB' is the number of bytes x 1024^3 for the disk and the value cannot be larger than 1023. */\n diskSizeGB?: number;\n /** The managed disk parameters. */\n managedDisk?: ManagedDiskParameters;\n /** The source resource identifier. It can be a snapshot, or disk restore point from which to create a disk. */\n sourceResource?: ApiEntityReference;\n /** Specifies whether the data disk is in process of detachment from the VirtualMachine/VirtualMachineScaleset. */\n toBeDetached?: boolean;\n /** Specifies the detach behavior to be used while detaching a disk or which is already in the process of detachment from the virtual machine. Supported values: ForceDetach. This feature is still in preview. To force-detach a data disk update toBeDetached to 'true' along with setting detachOption: 'ForceDetach'. */\n detachOption?: DiskDetachOptionTypes;\n /** Specifies whether data disk should be deleted or detached upon VM deletion. Possible values are: Delete, Detach. The default value is set to Detach. */\n deleteOption?: DiskDeleteOptionTypes;\n}\n\nexport function dataDiskSerializer(item: DataDisk): any {\n return {\n lun: item[\"lun\"],\n name: item[\"name\"],\n vhd: !item[\"vhd\"] ? item[\"vhd\"] : virtualHardDiskSerializer(item[\"vhd\"]),\n image: !item[\"image\"] ? item[\"image\"] : virtualHardDiskSerializer(item[\"image\"]),\n caching: item[\"caching\"],\n writeAcceleratorEnabled: item[\"writeAcceleratorEnabled\"],\n createOption: item[\"createOption\"],\n diskSizeGB: item[\"diskSizeGB\"],\n managedDisk: !item[\"managedDisk\"]\n ? item[\"managedDisk\"]\n : managedDiskParametersSerializer(item[\"managedDisk\"]),\n sourceResource: !item[\"sourceResource\"]\n ? item[\"sourceResource\"]\n : apiEntityReferenceSerializer(item[\"sourceResource\"]),\n toBeDetached: item[\"toBeDetached\"],\n detachOption: item[\"detachOption\"],\n deleteOption: item[\"deleteOption\"],\n };\n}\n\n/** The API entity reference. */\nexport interface ApiEntityReference {\n /** The ARM resource id in the form of /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/... */\n id?: string;\n}\n\nexport function apiEntityReferenceSerializer(item: ApiEntityReference): any {\n return { id: item[\"id\"] };\n}\n\n/** Specifies the detach behavior to be used while detaching a disk or which is already in the process of detachment from the virtual machine. Supported values are: **ForceDetach.** detachOption: **ForceDetach** is applicable only for managed data disks. If a previous detachment attempt of the data disk did not complete due to an unexpected failure from the virtual machine and the disk is still not released then use force-detach as a last resort option to detach the disk forcibly from the VM. All writes might not have been flushed when using this detach behavior. **This feature is still in preview**. To force-detach a data disk update toBeDetached to 'true' along with setting detachOption: 'ForceDetach'. */\nexport enum KnownDiskDetachOptionTypes {\n /** ForceDetach the disk */\n ForceDetach = \"ForceDetach\",\n}\n\n/**\n * Specifies the detach behavior to be used while detaching a disk or which is already in the process of detachment from the virtual machine. Supported values are: **ForceDetach.** detachOption: **ForceDetach** is applicable only for managed data disks. If a previous detachment attempt of the data disk did not complete due to an unexpected failure from the virtual machine and the disk is still not released then use force-detach as a last resort option to detach the disk forcibly from the VM. All writes might not have been flushed when using this detach behavior. **This feature is still in preview**. To force-detach a data disk update toBeDetached to 'true' along with setting detachOption: 'ForceDetach'. \\\n * {@link KnownDiskDetachOptionTypes} can be used interchangeably with DiskDetachOptionTypes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ForceDetach**: ForceDetach the disk\n */\nexport type DiskDetachOptionTypes = string;\n\n/** Specifies the disk controller type configured for the VM and VirtualMachineScaleSet. This property is only supported for virtual machines whose operating system disk and VM sku supports Generation 2 (https://docs.microsoft.com/en-us/azure/virtual-machines/generation-2), please check the HyperVGenerations capability returned as part of VM sku capabilities in the response of Microsoft.Compute SKUs api for the region contains V2 (https://docs.microsoft.com/rest/api/compute/resourceskus/list). For more information about Disk Controller Types supported please refer to https://aka.ms/azure-diskcontrollertypes. */\nexport enum KnownDiskControllerTypes {\n /** SCSI disk controller type */\n Scsi = \"SCSI\",\n /** NVMe disk controller type */\n NVMe = \"NVMe\",\n}\n\n/**\n * Specifies the disk controller type configured for the VM and VirtualMachineScaleSet. This property is only supported for virtual machines whose operating system disk and VM sku supports Generation 2 (https://docs.microsoft.com/en-us/azure/virtual-machines/generation-2), please check the HyperVGenerations capability returned as part of VM sku capabilities in the response of Microsoft.Compute SKUs api for the region contains V2 (https://docs.microsoft.com/rest/api/compute/resourceskus/list). For more information about Disk Controller Types supported please refer to https://aka.ms/azure-diskcontrollertypes. \\\n * {@link KnownDiskControllerTypes} can be used interchangeably with DiskControllerTypes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **SCSI**: SCSI disk controller type \\\n * **NVMe**: NVMe disk controller type\n */\nexport type DiskControllerTypes = string;\n\n/** Enables or disables a capability on the virtual machine or virtual machine scale set. */\nexport interface AdditionalCapabilities {\n /** The flag that enables or disables a capability to have one or more managed data disks with UltraSSD_LRS storage account type on the VM or VMSS. Managed disks with storage account type UltraSSD_LRS can be added to a virtual machine or virtual machine scale set only if this property is enabled. */\n ultraSSDEnabled?: boolean;\n /** The flag that enables or disables hibernation capability on the VM. */\n hibernationEnabled?: boolean;\n}\n\nexport function additionalCapabilitiesSerializer(item: AdditionalCapabilities): any {\n return {\n ultraSSDEnabled: item[\"ultraSSDEnabled\"],\n hibernationEnabled: item[\"hibernationEnabled\"],\n };\n}\n\n/** Specifies the operating system settings for the virtual machine. Some of the settings cannot be changed once VM is provisioned. */\nexport interface OSProfile {\n /** Specifies the host OS name of the virtual machine. This name cannot be updated after the VM is created. **Max-length (Windows):** 15 characters. **Max-length (Linux):** 64 characters. For naming conventions and restrictions see [Azure infrastructure services implementation guidelines](https://docs.microsoft.com/azure/azure-resource-manager/management/resource-name-rules). */\n computerName?: string;\n /** Specifies the name of the administrator account. <br><br> This property cannot be updated after the VM is created. <br><br> **Windows-only restriction:** Cannot end in \".\" <br><br> **Disallowed values:** \"administrator\", \"admin\", \"user\", \"user1\", \"test\", \"user2\", \"test1\", \"user3\", \"admin1\", \"1\", \"123\", \"a\", \"actuser\", \"adm\", \"admin2\", \"aspnet\", \"backup\", \"console\", \"david\", \"guest\", \"john\", \"owner\", \"root\", \"server\", \"sql\", \"support\", \"support_388945a0\", \"sys\", \"test2\", \"test3\", \"user4\", \"user5\". <br><br> **Minimum-length (Linux):** 1 character <br><br> **Max-length (Linux):** 64 characters <br><br> **Max-length (Windows):** 20 characters. */\n adminUsername?: string;\n /** Specifies the password of the administrator account. <br><br> **Minimum-length (Windows):** 8 characters <br><br> **Minimum-length (Linux):** 6 characters <br><br> **Max-length (Windows):** 123 characters <br><br> **Max-length (Linux):** 72 characters <br><br> **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled <br> Has lower characters <br>Has upper characters <br> Has a digit <br> Has a special character (Regex match [\\W_]) <br><br> **Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\", \"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\", \"Password22\", \"iloveyou!\" <br><br> For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp) <br><br> For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection) */\n adminPassword?: string;\n /** Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes. **Note: Do not pass any secrets or passwords in customData property.** This property cannot be updated after the VM is created. The property 'customData' is passed to the VM to be saved as a file, for more information see [Custom Data on Azure VMs](https://azure.microsoft.com/blog/custom-data-and-cloud-init-on-windows-azure/). For using cloud-init for your Linux VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/linux/using-cloud-init). */\n customData?: string;\n /** Specifies Windows operating system settings on the virtual machine. */\n windowsConfiguration?: WindowsConfiguration;\n /** Specifies the Linux operating system settings on the virtual machine. For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros). */\n linuxConfiguration?: LinuxConfiguration;\n /** Specifies set of certificates that should be installed onto the virtual machine. To install certificates on a virtual machine it is recommended to use the [Azure Key Vault virtual machine extension for Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) or the [Azure Key Vault virtual machine extension for Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). */\n secrets?: VaultSecretGroup[];\n /** Specifies whether extension operations should be allowed on the virtual machine. This may only be set to False when no extensions are present on the virtual machine. */\n allowExtensionOperations?: boolean;\n /** Optional property which must either be set to True or omitted. */\n requireGuestProvisionSignal?: boolean;\n}\n\nexport function osProfileSerializer(item: OSProfile): any {\n return {\n computerName: item[\"computerName\"],\n adminUsername: item[\"adminUsername\"],\n adminPassword: item[\"adminPassword\"],\n customData: item[\"customData\"],\n windowsConfiguration: !item[\"windowsConfiguration\"]\n ? item[\"windowsConfiguration\"]\n : windowsConfigurationSerializer(item[\"windowsConfiguration\"]),\n linuxConfiguration: !item[\"linuxConfiguration\"]\n ? item[\"linuxConfiguration\"]\n : linuxConfigurationSerializer(item[\"linuxConfiguration\"]),\n secrets: !item[\"secrets\"] ? item[\"secrets\"] : vaultSecretGroupArraySerializer(item[\"secrets\"]),\n allowExtensionOperations: item[\"allowExtensionOperations\"],\n requireGuestProvisionSignal: item[\"requireGuestProvisionSignal\"],\n };\n}\n\n/** Specifies Windows operating system settings on the virtual machine. */\nexport interface WindowsConfiguration {\n /** Indicates whether virtual machine agent should be provisioned on the virtual machine. When this property is not specified in the request body, it is set to true by default. This will ensure that VM Agent is installed on the VM so that extensions can be added to the VM later. */\n provisionVMAgent?: boolean;\n /** Indicates whether Automatic Updates is enabled for the Windows virtual machine. Default value is true. For virtual machine scale sets, this property can be updated and updates will take effect on OS reprovisioning. */\n enableAutomaticUpdates?: boolean;\n /** Specifies the time zone of the virtual machine. e.g. \"Pacific Standard Time\". Possible values can be [TimeZoneInfo.Id](https://docs.microsoft.com/dotnet/api/system.timezoneinfo.id?#System_TimeZoneInfo_Id) value from time zones returned by [TimeZoneInfo.GetSystemTimeZones](https://docs.microsoft.com/dotnet/api/system.timezoneinfo.getsystemtimezones). */\n timeZone?: string;\n /** Specifies additional base-64 encoded XML formatted information that can be included in the Unattend.xml file, which is used by Windows Setup. */\n additionalUnattendContent?: AdditionalUnattendContent[];\n /** [Preview Feature] Specifies settings related to VM Guest Patching on Windows. */\n patchSettings?: PatchSettings;\n /** Specifies the Windows Remote Management listeners. This enables remote Windows PowerShell. */\n winRM?: WinRMConfiguration;\n}\n\nexport function windowsConfigurationSerializer(item: WindowsConfiguration): any {\n return {\n provisionVMAgent: item[\"provisionVMAgent\"],\n enableAutomaticUpdates: item[\"enableAutomaticUpdates\"],\n timeZone: item[\"timeZone\"],\n additionalUnattendContent: !item[\"additionalUnattendContent\"]\n ? item[\"additionalUnattendContent\"]\n : additionalUnattendContentArraySerializer(item[\"additionalUnattendContent\"]),\n patchSettings: !item[\"patchSettings\"]\n ? item[\"patchSettings\"]\n : patchSettingsSerializer(item[\"patchSettings\"]),\n winRM: !item[\"winRM\"] ? item[\"winRM\"] : winRMConfigurationSerializer(item[\"winRM\"]),\n };\n}\n\nexport function additionalUnattendContentArraySerializer(\n result: Array<AdditionalUnattendContent>,\n): any[] {\n return result.map((item) => {\n return additionalUnattendContentSerializer(item);\n });\n}\n\n/** Specifies additional XML formatted information that can be included in the Unattend.xml file, which is used by Windows Setup. Contents are defined by setting name, component name, and the pass in which the content is applied. */\nexport interface AdditionalUnattendContent {\n /** The pass name. Currently, the only allowable value is OobeSystem. */\n passName?: \"OobeSystem\";\n /** The component name. Currently, the only allowable value is Microsoft-Windows-Shell-Setup. */\n componentName?: \"Microsoft-Windows-Shell-Setup\";\n /** Specifies the name of the setting to which the content applies. Possible values are: FirstLogonCommands and AutoLogon. */\n settingName?: SettingNames;\n /** Specifies the XML formatted content that is added to the unattend.xml file for the specified path and component. The XML must be less than 4KB and must include the root element for the setting or feature that is being inserted. */\n content?: string;\n}\n\nexport function additionalUnattendContentSerializer(item: AdditionalUnattendContent): any {\n return {\n passName: item[\"passName\"],\n componentName: item[\"componentName\"],\n settingName: item[\"settingName\"],\n content: item[\"content\"],\n };\n}\n\n/** Specifies the name of the setting to which the content applies. Possible values are: FirstLogonCommands and AutoLogon. */\nexport enum KnownSettingNames {\n /** AutoLogon mode */\n AutoLogon = \"AutoLogon\",\n /** FirstLogonCommands mode */\n FirstLogonCommands = \"FirstLogonCommands\",\n}\n\n/**\n * Specifies the name of the setting to which the content applies. Possible values are: FirstLogonCommands and AutoLogon. \\\n * {@link KnownSettingNames} can be used interchangeably with SettingNames,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **AutoLogon**: AutoLogon mode \\\n * **FirstLogonCommands**: FirstLogonCommands mode\n */\nexport type SettingNames = string;\n\n/** Specifies settings related to VM Guest Patching on Windows. */\nexport interface PatchSettings {\n /** Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual machines associated to virtual machine scale set with OrchestrationMode as Flexible.<br /><br /> Possible values are:<br /><br /> **Manual** - You control the application of patches to a virtual machine. You do this by applying patches manually inside the VM. In this mode, automatic updates are disabled; the property WindowsConfiguration.enableAutomaticUpdates must be false<br /><br /> **AutomaticByOS** - The virtual machine will automatically be updated by the OS. The property WindowsConfiguration.enableAutomaticUpdates must be true. <br /><br /> **AutomaticByPlatform** - the virtual machine will automatically updated by the platform. The properties provisionVMAgent and WindowsConfiguration.enableAutomaticUpdates must be true */\n patchMode?: WindowsVMGuestPatchMode;\n /** Enables customers to patch their Azure VMs without requiring a reboot. For enableHotpatching, the 'provisionVMAgent' must be set to true and 'patchMode' must be set to 'AutomaticByPlatform'. */\n enableHotpatching?: boolean;\n /** Specifies the mode of VM Guest patch assessment for the IaaS virtual machine.<br /><br /> Possible values are:<br /><br /> **ImageDefault** - You control the timing of patch assessments on a virtual machine.<br /><br /> **AutomaticByPlatform** - The platform will trigger periodic patch assessments. The property provisionVMAgent must be true. */\n assessmentMode?: WindowsPatchAssessmentMode;\n /** Specifies additional settings for patch mode AutomaticByPlatform in VM Guest Patching on Windows. */\n automaticByPlatformSettings?: WindowsVMGuestPatchAutomaticByPlatformSettings;\n}\n\nexport function patchSettingsSerializer(item: PatchSettings): any {\n return {\n patchMode: item[\"patchMode\"],\n enableHotpatching: item[\"enableHotpatching\"],\n assessmentMode: item[\"assessmentMode\"],\n automaticByPlatformSettings: !item[\"automaticByPlatformSettings\"]\n ? item[\"automaticByPlatformSettings\"]\n : windowsVMGuestPatchAutomaticByPlatformSettingsSerializer(\n item[\"automaticByPlatformSettings\"],\n ),\n };\n}\n\n/** Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual machines associated to virtual machine scale set with OrchestrationMode as Flexible.<br /><br /> Possible values are:<br /><br /> **Manual** - You control the application of patches to a virtual machine. You do this by applying patches manually inside the VM. In this mode, automatic updates are disabled; the property WindowsConfiguration.enableAutomaticUpdates must be false<br /><br /> **AutomaticByOS** - The virtual machine will automatically be updated by the OS. The property WindowsConfiguration.enableAutomaticUpdates must be true. <br /><br /> **AutomaticByPlatform** - the virtual machine will automatically updated by the platform. The properties provisionVMAgent and WindowsConfiguration.enableAutomaticUpdates must be true */\nexport enum KnownWindowsVMGuestPatchMode {\n /** Manual VM guest patch mode */\n Manual = \"Manual\",\n /** AutomaticByOS VM guest patch mode */\n AutomaticByOS = \"AutomaticByOS\",\n /** AutomaticByPlatform VM guest patch mode */\n AutomaticByPlatform = \"AutomaticByPlatform\",\n}\n\n/**\n * Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual machines associated to virtual machine scale set with OrchestrationMode as Flexible.<br /><br /> Possible values are:<br /><br /> **Manual** - You control the application of patches to a virtual machine. You do this by applying patches manually inside the VM. In this mode, automatic updates are disabled; the property WindowsConfiguration.enableAutomaticUpdates must be false<br /><br /> **AutomaticByOS** - The virtual machine will automatically be updated by the OS. The property WindowsConfiguration.enableAutomaticUpdates must be true. <br /><br /> **AutomaticByPlatform** - the virtual machine will automatically updated by the platform. The properties provisionVMAgent and WindowsConfiguration.enableAutomaticUpdates must be true \\\n * {@link KnownWindowsVMGuestPatchMode} can be used interchangeably with WindowsVMGuestPatchMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Manual**: Manual VM guest patch mode \\\n * **AutomaticByOS**: AutomaticByOS VM guest patch mode \\\n * **AutomaticByPlatform**: AutomaticByPlatform VM guest patch mode\n */\nexport type WindowsVMGuestPatchMode = string;\n\n/** Specifies the mode of VM Guest patch assessment for the IaaS virtual machine.<br /><br /> Possible values are:<br /><br /> **ImageDefault** - You control the timing of patch assessments on a virtual machine.<br /><br /> **AutomaticByPlatform** - The platform will trigger periodic patch assessments. The property provisionVMAgent must be true. */\nexport enum KnownWindowsPatchAssessmentMode {\n /** ImageDefault patch assessment mode */\n ImageDefault = \"ImageDefault\",\n /** AutomaticByPlatform patch assessment mode */\n AutomaticByPlatform = \"AutomaticByPlatform\",\n}\n\n/**\n * Specifies the mode of VM Guest patch assessment for the IaaS virtual machine.<br /><br /> Possible values are:<br /><br /> **ImageDefault** - You control the timing of patch assessments on a virtual machine.<br /><br /> **AutomaticByPlatform** - The platform will trigger periodic patch assessments. The property provisionVMAgent must be true. \\\n * {@link KnownWindowsPatchAssessmentMode} can be used interchangeably with WindowsPatchAssessmentMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ImageDefault**: ImageDefault patch assessment mode \\\n * **AutomaticByPlatform**: AutomaticByPlatform patch assessment mode\n */\nexport type WindowsPatchAssessmentMode = string;\n\n/** Specifies additional settings to be applied when patch mode AutomaticByPlatform is selected in Windows patch settings. */\nexport interface WindowsVMGuestPatchAutomaticByPlatformSettings {\n /** Specifies the reboot setting for all AutomaticByPlatform patch installation operations. */\n rebootSetting?: WindowsVMGuestPatchAutomaticByPlatformRebootSetting;\n /** Enables customer to schedule patching without accidental upgrades */\n bypassPlatformSafetyChecksOnUserSchedule?: boolean;\n}\n\nexport function windowsVMGuestPatchAutomaticByPlatformSettingsSerializer(\n item: WindowsVMGuestPatchAutomaticByPlatformSettings,\n): any {\n return {\n rebootSetting: item[\"rebootSetting\"],\n bypassPlatformSafetyChecksOnUserSchedule: item[\"bypassPlatformSafetyChecksOnUserSchedule\"],\n };\n}\n\n/** Specifies the reboot setting for all AutomaticByPlatform patch installation operations. */\nexport enum KnownWindowsVMGuestPatchAutomaticByPlatformRebootSetting {\n /** Reboot setting for Unknown */\n Unknown = \"Unknown\",\n /** Reboot setting for IfRequired */\n IfRequired = \"IfRequired\",\n /** Reboot setting for Never */\n Never = \"Never\",\n /** Reboot setting for Always */\n Always = \"Always\",\n}\n\n/**\n * Specifies the reboot setting for all AutomaticByPlatform patch installation operations. \\\n * {@link KnownWindowsVMGuestPatchAutomaticByPlatformRebootSetting} can be used interchangeably with WindowsVMGuestPatchAutomaticByPlatformRebootSetting,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Unknown**: Reboot setting for Unknown \\\n * **IfRequired**: Reboot setting for IfRequired \\\n * **Never**: Reboot setting for Never \\\n * **Always**: Reboot setting for Always\n */\nexport type WindowsVMGuestPatchAutomaticByPlatformRebootSetting = string;\n\n/** Describes Windows Remote Management configuration of the VM */\nexport interface WinRMConfiguration {\n /** The list of Windows Remote Management listeners */\n listeners?: WinRMListener[];\n}\n\nexport function winRMConfigurationSerializer(item: WinRMConfiguration): any {\n return {\n listeners: !item[\"listeners\"]\n ? item[\"listeners\"]\n : winRMListenerArraySerializer(item[\"listeners\"]),\n };\n}\n\nexport function winRMListenerArraySerializer(result: Array<WinRMListener>): any[] {\n return result.map((item) => {\n return winRMListenerSerializer(item);\n });\n}\n\n/** Describes Protocol and thumbprint of Windows Remote Management listener */\nexport interface WinRMListener {\n /** Specifies the protocol of WinRM listener. Possible values are: **http,** **https.** */\n protocol?: ProtocolTypes;\n /** This is the URL of a certificate that has been uploaded to Key Vault as a secret. For adding a secret to the Key Vault, see [Add a key or secret to the key vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). In this case, your certificate needs to be the Base64 encoding of the following JSON Object which is encoded in UTF-8: <br><br> {<br> \"data\":\"<Base64-encoded-certificate>\",<br> \"dataType\":\"pfx\",<br> \"password\":\"<pfx-file-password>\"<br>} <br> To install certificates on a virtual machine it is recommended to use the [Azure Key Vault virtual machine extension for Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) or the [Azure Key Vault virtual machine extension for Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). */\n certificateUrl?: string;\n}\n\nexport function winRMListenerSerializer(item: WinRMListener): any {\n return { protocol: item[\"protocol\"], certificateUrl: item[\"certificateUrl\"] };\n}\n\n/** Specifies the protocol of WinRM listener. Possible values are: **http,** **https.** */\nexport enum KnownProtocolTypes {\n /** Http protocol */\n Http = \"Http\",\n /** Https protocol */\n Https = \"Https\",\n}\n\n/**\n * Specifies the protocol of WinRM listener. Possible values are: **http,** **https.** \\\n * {@link KnownProtocolTypes} can be used interchangeably with ProtocolTypes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Http**: Http protocol \\\n * **Https**: Https protocol\n */\nexport type ProtocolTypes = string;\n\n/** Specifies the Linux operating system settings on the virtual machine. For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros). */\nexport interface LinuxConfiguration {\n /** Specifies whether password authentication should be disabled. */\n disablePasswordAuthentication?: boolean;\n /** Specifies the ssh key configuration for a Linux OS. */\n ssh?: SshConfiguration;\n /** Indicates whether virtual machine agent should be provisioned on the virtual machine. When this property is not specified in the request body, default behavior is to set it to true. This will ensure that VM Agent is installed on the VM so that extensions can be added to the VM later. */\n provisionVMAgent?: boolean;\n /** [Preview Feature] Specifies settings related to VM Guest Patching on Linux. */\n patchSettings?: LinuxPatchSettings;\n /** Indicates whether VMAgent Platform Updates is enabled for the Linux virtual machine. Default value is false. */\n enableVMAgentPlatformUpdates?: boolean;\n}\n\nexport function linuxConfigurationSerializer(item: LinuxConfiguration): any {\n return {\n disablePasswordAuthentication: item[\"disablePasswordAuthentication\"],\n ssh: !item[\"ssh\"] ? item[\"ssh\"] : sshConfigurationSerializer(item[\"ssh\"]),\n provisionVMAgent: item[\"provisionVMAgent\"],\n patchSettings: !item[\"patchSettings\"]\n ? item[\"patchSettings\"]\n : linuxPatchSettingsSerializer(item[\"patchSettings\"]),\n enableVMAgentPlatformUpdates: item[\"enableVMAgentPlatformUpdates\"],\n };\n}\n\n/** SSH configuration for Linux based VMs running on Azure */\nexport interface SshConfiguration {\n /** The list of SSH public keys used to authenticate with linux based VMs. */\n publicKeys?: SshPublicKey[];\n}\n\nexport function sshConfigurationSerializer(item: SshConfiguration): any {\n return {\n publicKeys: !item[\"publicKeys\"]\n ? item[\"publicKeys\"]\n : sshPublicKeyArraySerializer(item[\"publicKeys\"]),\n };\n}\n\nexport function sshPublicKeyArraySerializer(result: Array<SshPublicKey>): any[] {\n return result.map((item) => {\n return sshPublicKeySerializer(item);\n });\n}\n\n/** Contains information about SSH certificate public key and the path on the Linux VM where the public key is placed. */\nexport interface SshPublicKey {\n /** Specifies the full path on the created VM where ssh public key is stored. If the file already exists, the specified key is appended to the file. Example: /home/user/.ssh/authorized_keys */\n path?: string;\n /** SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys, see [Create SSH keys on Linux and Mac for Linux VMs in Azure]https://docs.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed). */\n keyData?: string;\n}\n\nexport function sshPublicKeySerializer(item: SshPublicKey): any {\n return { path: item[\"path\"], keyData: item[\"keyData\"] };\n}\n\n/** Specifies settings related to VM Guest Patching on Linux. */\nexport interface LinuxPatchSettings {\n /** Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual machines associated to virtual machine scale set with OrchestrationMode as Flexible.<br /><br /> Possible values are:<br /><br /> **ImageDefault** - The virtual machine's default patching configuration is used. <br /><br /> **AutomaticByPlatform** - The virtual machine will be automatically updated by the platform. The property provisionVMAgent must be true */\n patchMode?: LinuxVMGuestPatchMode;\n /** Specifies the mode of VM Guest Patch Assessment for the IaaS virtual machine.<br /><br /> Possible values are:<br /><br /> **ImageDefault** - You control the timing of patch assessments on a virtual machine. <br /><br /> **AutomaticByPlatform** - The platform will trigger periodic patch assessments. The property provisionVMAgent must be true. */\n assessmentMode?: LinuxPatchAssessmentMode;\n /** Specifies additional settings for patch mode AutomaticByPlatform in VM Guest Patching on Linux. */\n automaticByPlatformSettings?: LinuxVMGuestPatchAutomaticByPlatformSettings;\n}\n\nexport function linuxPatchSettingsSerializer(item: LinuxPatchSettings): any {\n return {\n patchMode: item[\"patchMode\"],\n assessmentMode: item[\"assessmentMode\"],\n automaticByPlatformSettings: !item[\"automaticByPlatformSettings\"]\n ? item[\"automaticByPlatformSettings\"]\n : linuxVMGuestPatchAutomaticByPlatformSettingsSerializer(item[\"automaticByPlatformSettings\"]),\n };\n}\n\n/** Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual machines associated to virtual machine scale set with OrchestrationMode as Flexible.<br /><br /> Possible values are:<br /><br /> **ImageDefault** - The virtual machine's default patching configuration is used. <br /><br /> **AutomaticByPlatform** - The virtual machine will be automatically updated by the platform. The property provisionVMAgent must be true */\nexport enum KnownLinuxVMGuestPatchMode {\n /** ImageDefault linux VM guest patch mode */\n ImageDefault = \"ImageDefault\",\n /** AutomaticByPlatform linux VM guest patch mode */\n AutomaticByPlatform = \"AutomaticByPlatform\",\n}\n\n/**\n * Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual machines associated to virtual machine scale set with OrchestrationMode as Flexible.<br /><br /> Possible values are:<br /><br /> **ImageDefault** - The virtual machine's default patching configuration is used. <br /><br /> **AutomaticByPlatform** - The virtual machine will be automatically updated by the platform. The property provisionVMAgent must be true \\\n * {@link KnownLinuxVMGuestPatchMode} can be used interchangeably with LinuxVMGuestPatchMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ImageDefault**: ImageDefault linux VM guest patch mode \\\n * **AutomaticByPlatform**: AutomaticByPlatform linux VM guest patch mode\n */\nexport type LinuxVMGuestPatchMode = string;\n\n/** Specifies the mode of VM Guest Patch Assessment for the IaaS virtual machine.<br /><br /> Possible values are:<br /><br /> **ImageDefault** - You control the timing of patch assessments on a virtual machine. <br /><br /> **AutomaticByPlatform** - The platform will trigger periodic patch assessments. The property provisionVMAgent must be true. */\nexport enum KnownLinuxPatchAssessmentMode {\n /** ImageDefault mode */\n ImageDefault = \"ImageDefault\",\n /** AutomaticByPlatform mode */\n AutomaticByPlatform = \"AutomaticByPlatform\",\n}\n\n/**\n * Specifies the mode of VM Guest Patch Assessment for the IaaS virtual machine.<br /><br /> Possible values are:<br /><br /> **ImageDefault** - You control the timing of patch assessments on a virtual machine. <br /><br /> **AutomaticByPlatform** - The platform will trigger periodic patch assessments. The property provisionVMAgent must be true. \\\n * {@link KnownLinuxPatchAssessmentMode} can be used interchangeably with LinuxPatchAssessmentMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ImageDefault**: ImageDefault mode \\\n * **AutomaticByPlatform**: AutomaticByPlatform mode\n */\nexport type LinuxPatchAssessmentMode = string;\n\n/** Specifies additional settings to be applied when patch mode AutomaticByPlatform is selected in Linux patch settings. */\nexport interface LinuxVMGuestPatchAutomaticByPlatformSettings {\n /** Specifies the reboot setting for all AutomaticByPlatform patch installation operations. */\n rebootSetting?: LinuxVMGuestPatchAutomaticByPlatformRebootSetting;\n /** Enables customer to schedule patching without accidental upgrades */\n bypassPlatformSafetyChecksOnUserSchedule?: boolean;\n}\n\nexport function linuxVMGuestPatchAutomaticByPlatformSettingsSerializer(\n item: LinuxVMGuestPatchAutomaticByPlatformSettings,\n): any {\n return {\n rebootSetting: item[\"rebootSetting\"],\n bypassPlatformSafetyChecksOnUserSchedule: item[\"bypassPlatformSafetyChecksOnUserSchedule\"],\n };\n}\n\n/** Specifies the reboot setting for all AutomaticByPlatform patch installation operations. */\nexport enum KnownLinuxVMGuestPatchAutomaticByPlatformRebootSetting {\n /** Unknown reboot setting */\n Unknown = \"Unknown\",\n /** Reboot if required */\n IfRequired = \"IfRequired\",\n /** Never reboot */\n Never = \"Never\",\n /** Always reboot */\n Always = \"Always\",\n}\n\n/**\n * Specifies the reboot setting for all AutomaticByPlatform patch installation operations. \\\n * {@link KnownLinuxVMGuestPatchAutomaticByPlatformRebootSetting} can be used interchangeably with LinuxVMGuestPatchAutomaticByPlatformRebootSetting,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Unknown**: Unknown reboot setting \\\n * **IfRequired**: Reboot if required \\\n * **Never**: Never reboot \\\n * **Always**: Always reboot\n */\nexport type LinuxVMGuestPatchAutomaticByPlatformRebootSetting = string;\n\nexport function vaultSecretGroupArraySerializer(result: Array<VaultSecretGroup>): any[] {\n return result.map((item) => {\n return vaultSecretGroupSerializer(item);\n });\n}\n\n/** Describes a set of certificates which are all in the same Key Vault. */\nexport interface VaultSecretGroup {\n /** The relative URL of the Key Vault containing all of the certificates in VaultCertificates. */\n sourceVault?: SubResource;\n /** The list of key vault references in SourceVault which contain certificates. */\n vaultCertificates?: VaultCertificate[];\n}\n\nexport function vaultSecretGroupSerializer(item: VaultSecretGroup): any {\n return {\n sourceVault: !item[\"sourceVault\"]\n ? item[\"sourceVault\"]\n : subResourceSerializer(item[\"sourceVault\"]),\n vaultCertificates: !item[\"vaultCertificates\"]\n ? item[\"vaultCertificates\"]\n : vaultCertificateArraySerializer(item[\"vaultCertificates\"]),\n };\n}\n\nexport function vaultCertificateArraySerializer(result: Array<VaultCertificate>): any[] {\n return result.map((item) => {\n return vaultCertificateSerializer(item);\n });\n}\n\n/** Describes a single certificate reference in a Key Vault, and where the certificate should reside on the VM. */\nexport interface VaultCertificate {\n /** This is the URL of a certificate that has been uploaded to Key Vault as a secret. For adding a secret to the Key Vault, see [Add a key or secret to the key vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). In this case, your certificate needs to be It is the Base64 encoding of the following JSON Object which is encoded in UTF-8: <br><br> {<br> 'data':'<Base64-encoded-certificate>',<br> 'dataType':'pfx',<br> 'password':'<pfx-file-password>'<br>} <br> To install certificates on a virtual machine it is recommended to use the [Azure Key Vault virtual machine extension for Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) or the [Azure Key Vault virtual machine extension for Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). */\n certificateUrl?: string;\n /** For Windows VMs, specifies the certificate store on the Virtual Machine to which the certificate should be added. The specified certificate store is implicitly in the LocalMachine account. For Linux VMs, the certificate file is placed under the /var/lib/waagent directory, with the file name <UppercaseThumbprint>.crt for the X509 certificate file and <UppercaseThumbprint>.prv for private key. Both of these files are .pem formatted. */\n certificateStore?: string;\n}\n\nexport function vaultCertificateSerializer(item: VaultCertificate): any {\n return { certificateUrl: item[\"certificateUrl\"], certificateStore: item[\"certificateStore\"] };\n}\n\n/** Specifies the network interfaces or the networking configuration of the virtual machine. */\nexport interface NetworkProfile {\n /** Specifies the list of resource Ids for the network interfaces associated with the virtual machine. */\n networkInterfaces?: NetworkInterfaceReference[];\n /** specifies the Microsoft.Network API version used when creating networking resources in the Network Interface Configurations */\n networkApiVersion?: NetworkApiVersion;\n /** Specifies the networking configurations that will be used to create the virtual machine networking resources. */\n networkInterfaceConfigurations?: VirtualMachineNetworkInterfaceConfiguration[];\n}\n\nexport function networkProfileSerializer(item: NetworkProfile): any {\n return {\n networkInterfaces: !item[\"networkInterfaces\"]\n ? item[\"networkInterfaces\"]\n : networkInterfaceReferenceArraySerializer(item[\"networkInterfaces\"]),\n networkApiVersion: item[\"networkApiVersion\"] ?? \"2026-04-15-preview\",\n networkInterfaceConfigurations: !item[\"networkInterfaceConfigurations\"]\n ? item[\"networkInterfaceConfigurations\"]\n : virtualMachineNetworkInterfaceConfigurationArraySerializer(\n item[\"networkInterfaceConfigurations\"],\n ),\n };\n}\n\nexport function networkInterfaceReferenceArraySerializer(\n result: Array<NetworkInterfaceReference>,\n): any[] {\n return result.map((item) => {\n return networkInterfaceReferenceSerializer(item);\n });\n}\n\n/** Describes a network interface reference. */\nexport interface NetworkInterfaceReference extends SubResource {\n /** Describes a network interface reference properties. */\n properties?: NetworkInterfaceReferenceProperties;\n}\n\nexport function networkInterfaceReferenceSerializer(item: NetworkInterfaceReference): any {\n return {\n id: item[\"id\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : networkInterfaceReferencePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** Describes a network interface reference properties. */\nexport interface NetworkInterfaceReferenceProperties {\n /** Specifies the primary network interface in case the virtual machine has more than 1 network interface. */\n primary?: boolean;\n /** Specify what happens to the network interface when the VM is deleted */\n deleteOption?: DeleteOptions;\n}\n\nexport function networkInterfaceReferencePropertiesSerializer(\n item: NetworkInterfaceReferenceProperties,\n): any {\n return { primary: item[\"primary\"], deleteOption: item[\"deleteOption\"] };\n}\n\n/** Specify what happens to the network interface when the VM is deleted */\nexport enum KnownDeleteOptions {\n /** Delete network interface when the VM is deleted */\n Delete = \"Delete\",\n /** Detach network interface when the VM is deleted */\n Detach = \"Detach\",\n}\n\n/**\n * Specify what happens to the network interface when the VM is deleted \\\n * {@link KnownDeleteOptions} can be used interchangeably with DeleteOptions,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Delete**: Delete network interface when the VM is deleted \\\n * **Detach**: Detach network interface when the VM is deleted\n */\nexport type DeleteOptions = string;\n\n/** Specifies the Microsoft.Network API version used when creating networking resources in the Network Interface Configurations */\nexport enum KnownNetworkApiVersion {\n /** 2020-11-01 version */\n NetworkApiVersion20201101 = \"2020-11-01\",\n /** 2022-11-01 version */\n NetworkApiVersion20221101 = \"2022-11-01\",\n}\n\n/**\n * Specifies the Microsoft.Network API version used when creating networking resources in the Network Interface Configurations \\\n * {@link KnownNetworkApiVersion} can be used interchangeably with NetworkApiVersion,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **2020-11-01**: 2020-11-01 version \\\n * **2022-11-01**: 2022-11-01 version\n */\nexport type NetworkApiVersion = string;\n\nexport function virtualMachineNetworkInterfaceConfigurationArraySerializer(\n result: Array<VirtualMachineNetworkInterfaceConfiguration>,\n): any[] {\n return result.map((item) => {\n return virtualMachineNetworkInterfaceConfigurationSerializer(item);\n });\n}\n\n/** Describes a virtual machine network interface configurations. */\nexport interface VirtualMachineNetworkInterfaceConfiguration {\n /** The network interface configuration name. */\n name: string;\n /** Describes a virtual machine network profile's IP configuration. */\n properties?: VirtualMachineNetworkInterfaceConfigurationProperties;\n /** Resource tags applied to the networkInterface address created by this NetworkInterfaceConfiguration */\n tags?: Record<string, string>;\n}\n\nexport function virtualMachineNetworkInterfaceConfigurationSerializer(\n item: VirtualMachineNetworkInterfaceConfiguration,\n): any {\n return {\n name: item[\"name\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : virtualMachineNetworkInterfaceConfigurationPropertiesSerializer(item[\"properties\"]),\n tags: item[\"tags\"],\n };\n}\n\n/** Describes a virtual machine network profile's IP configuration. */\nexport interface VirtualMachineNetworkInterfaceConfigurationProperties {\n /** Specifies the primary network interface in case the virtual machine has more than 1 network interface. */\n primary?: boolean;\n /** Specify what happens to the network interface when the VM is deleted */\n deleteOption?: DeleteOptions;\n /** Specifies whether the network interface is accelerated networking-enabled. */\n enableAcceleratedNetworking?: boolean;\n /** Specifies whether the network interface is disabled for tcp state tracking. */\n disableTcpStateTracking?: boolean;\n /** Specifies whether the network interface is FPGA networking-enabled. */\n enableFpga?: boolean;\n /** Whether IP forwarding enabled on this NIC. */\n enableIPForwarding?: boolean;\n /** The network security group. */\n networkSecurityGroup?: SubResource;\n /** The dns settings to be applied on the network interfaces. */\n dnsSettings?: VirtualMachineNetworkInterfaceDnsSettingsConfiguration;\n /** Specifies the IP configurations of the network interface. */\n ipConfigurations: VirtualMachineNetworkInterfaceIPConfiguration[];\n /** The DSCP configuration for the network interface. */\n dscpConfiguration?: SubResource;\n /** Specifies whether the Auxiliary mode is enabled for the Network Interface resource. */\n auxiliaryMode?: NetworkInterfaceAuxiliaryMode;\n /** Specifies whether the Auxiliary sku is enabled for the Network Interface resource. */\n auxiliarySku?: NetworkInterfaceAuxiliarySku;\n}\n\nexport function virtualMachineNetworkInterfaceConfigurationPropertiesSerializer(\n item: VirtualMachineNetworkInterfaceConfigurationProperties,\n): any {\n return {\n primary: item[\"primary\"],\n deleteOption: item[\"deleteOption\"],\n enableAcceleratedNetworking: item[\"enableAcceleratedNetworking\"],\n disableTcpStateTracking: item[\"disableTcpStateTracking\"],\n enableFpga: item[\"enableFpga\"],\n enableIPForwarding: item[\"enableIPForwarding\"],\n networkSecurityGroup: !item[\"networkSecurityGroup\"]\n ? item[\"networkSecurityGroup\"]\n : subResourceSerializer(item[\"networkSecurityGroup\"]),\n dnsSettings: !item[\"dnsSettings\"]\n ? item[\"dnsSettings\"]\n : virtualMachineNetworkInterfaceDnsSettingsConfigurationSerializer(item[\"dnsSettings\"]),\n ipConfigurations: virtualMachineNetworkInterfaceIPConfigurationArraySerializer(\n item[\"ipConfigurations\"],\n ),\n dscpConfiguration: !item[\"dscpConfiguration\"]\n ? item[\"dscpConfiguration\"]\n : subResourceSerializer(item[\"dscpConfiguration\"]),\n auxiliaryMode: item[\"auxiliaryMode\"],\n auxiliarySku: item[\"auxiliarySku\"],\n };\n}\n\n/** Describes a virtual machines network configuration's DNS settings. */\nexport interface VirtualMachineNetworkInterfaceDnsSettingsConfiguration {\n /** List of DNS servers IP addresses */\n dnsServers?: string[];\n}\n\nexport function virtualMachineNetworkInterfaceDnsSettingsConfigurationSerializer(\n item: VirtualMachineNetworkInterfaceDnsSettingsConfiguration,\n): any {\n return {\n dnsServers: !item[\"dnsServers\"]\n ? item[\"dnsServers\"]\n : item[\"dnsServers\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function virtualMachineNetworkInterfaceIPConfigurationArraySerializer(\n result: Array<VirtualMachineNetworkInterfaceIPConfiguration>,\n): any[] {\n return result.map((item) => {\n return virtualMachineNetworkInterfaceIPConfigurationSerializer(item);\n });\n}\n\n/** Describes a virtual machine network profile's IP configuration. */\nexport interface VirtualMachineNetworkInterfaceIPConfiguration {\n /** The IP configuration name. */\n name: string;\n /** Describes a virtual machine network interface IP configuration properties. */\n properties?: VirtualMachineNetworkInterfaceIPConfigurationProperties;\n}\n\nexport function virtualMachineNetworkInterfaceIPConfigurationSerializer(\n item: VirtualMachineNetworkInterfaceIPConfiguration,\n): any {\n return {\n name: item[\"name\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : virtualMachineNetworkInterfaceIPConfigurationPropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** Describes a virtual machine network interface IP configuration properties. */\nexport interface VirtualMachineNetworkInterfaceIPConfigurationProperties {\n /** Specifies the identifier of the subnet. */\n subnet?: SubResource;\n /** Specifies the primary network interface in case the virtual machine has more than 1 network interface. */\n primary?: boolean;\n /** The publicIPAddressConfiguration. */\n publicIPAddressConfiguration?: VirtualMachinePublicIPAddressConfiguration;\n /** Available from Api-Version 2017-03-30 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'. */\n privateIPAddressVersion?: IPVersions;\n /** Specifies an array of references to application security group. */\n applicationSecurityGroups?: SubResource[];\n /** Specifies an array of references to backend address pools of application gateways. A virtual machine can reference backend address pools of multiple application gateways. Multiple virtual machines cannot use the same application gateway. */\n applicationGatewayBackendAddressPools?: SubResource[];\n /** Specifies an array of references to backend address pools of load balancers. A virtual machine can reference backend address pools of one public and one internal load balancer. [Multiple virtual machines cannot use the same basic sku load balancer]. */\n loadBalancerBackendAddressPools?: SubResource[];\n}\n\nexport function virtualMachineNetworkInterfaceIPConfigurationPropertiesSerializer(\n item: VirtualMachineNetworkInterfaceIPConfigurationProperties,\n): any {\n return {\n subnet: !item[\"subnet\"] ? item[\"subnet\"] : subResourceSerializer(item[\"subnet\"]),\n primary: item[\"primary\"],\n publicIPAddressConfiguration: !item[\"publicIPAddressConfiguration\"]\n ? item[\"publicIPAddressConfiguration\"]\n : virtualMachinePublicIPAddressConfigurationSerializer(item[\"publicIPAddressConfiguration\"]),\n privateIPAddressVersion: item[\"privateIPAddressVersion\"],\n applicationSecurityGroups: !item[\"applicationSecurityGroups\"]\n ? item[\"applicationSecurityGroups\"]\n : subResourceArraySerializer(item[\"applicationSecurityGroups\"]),\n applicationGatewayBackendAddressPools: !item[\"applicationGatewayBackendAddressPools\"]\n ? item[\"applicationGatewayBackendAddressPools\"]\n : subResourceArraySerializer(item[\"applicationGatewayBackendAddressPools\"]),\n loadBalancerBackendAddressPools: !item[\"loadBalancerBackendAddressPools\"]\n ? item[\"loadBalancerBackendAddressPools\"]\n : subResourceArraySerializer(item[\"loadBalancerBackendAddressPools\"]),\n };\n}\n\n/** Describes a virtual machines IP Configuration's PublicIPAddress configuration */\nexport interface VirtualMachinePublicIPAddressConfiguration {\n /** The publicIP address configuration name. */\n name: string;\n /** Describes a virtual machines IP Configuration's PublicIPAddress configuration */\n properties?: VirtualMachinePublicIPAddressConfigurationProperties;\n /** Describes the public IP Sku. It can only be set with OrchestrationMode as Flexible. */\n sku?: PublicIPAddressSku;\n /** Resource tags applied to the publicIP address created by this PublicIPAddressConfiguration */\n tags?: Record<string, string>;\n}\n\nexport function virtualMachinePublicIPAddressConfigurationSerializer(\n item: VirtualMachinePublicIPAddressConfiguration,\n): any {\n return {\n name: item[\"name\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : virtualMachinePublicIPAddressConfigurationPropertiesSerializer(item[\"properties\"]),\n sku: !item[\"sku\"] ? item[\"sku\"] : publicIPAddressSkuSerializer(item[\"sku\"]),\n tags: item[\"tags\"],\n };\n}\n\n/** Describes a virtual machines IP Configuration's PublicIPAddress configuration */\nexport interface VirtualMachinePublicIPAddressConfigurationProperties {\n /** The idle timeout of the public IP address. */\n idleTimeoutInMinutes?: number;\n /** Specify what happens to the public IP address when the VM is deleted */\n deleteOption?: DeleteOptions;\n /** The dns settings to be applied on the publicIP addresses . */\n dnsSettings?: VirtualMachinePublicIPAddressDnsSettingsConfiguration;\n /** The list of IP tags associated with the public IP address. */\n ipTags?: VirtualMachineIpTag[];\n /** The PublicIPPrefix from which to allocate publicIP addresses. */\n publicIPPrefix?: SubResource;\n /** Available from Api-Version 2019-07-01 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'. */\n publicIPAddressVersion?: IPVersions;\n /** Specify the public IP allocation type */\n publicIPAllocationMethod?: PublicIPAllocationMethod;\n}\n\nexport function virtualMachinePublicIPAddressConfigurationPropertiesSerializer(\n item: VirtualMachinePublicIPAddressConfigurationProperties,\n): any {\n return {\n idleTimeoutInMinutes: item[\"idleTimeoutInMinutes\"],\n deleteOption: item[\"deleteOption\"],\n dnsSettings: !item[\"dnsSettings\"]\n ? item[\"dnsSettings\"]\n : virtualMachinePublicIPAddressDnsSettingsConfigurationSerializer(item[\"dnsSettings\"]),\n ipTags: !item[\"ipTags\"] ? item[\"ipTags\"] : virtualMachineIpTagArraySerializer(item[\"ipTags\"]),\n publicIPPrefix: !item[\"publicIPPrefix\"]\n ? item[\"publicIPPrefix\"]\n : subResourceSerializer(item[\"publicIPPrefix\"]),\n publicIPAddressVersion: item[\"publicIPAddressVersion\"],\n publicIPAllocationMethod: item[\"publicIPAllocationMethod\"],\n };\n}\n\n/** Describes a virtual machines network configuration's DNS settings. */\nexport interface VirtualMachinePublicIPAddressDnsSettingsConfiguration {\n /** The Domain name label prefix of the PublicIPAddress resources that will be created. The generated name label is the concatenation of the domain name label and vm network profile unique ID. */\n domainNameLabel: string;\n /** The Domain name label scope of the PublicIPAddress resources that will be created. The generated name label is the concatenation of the hashed domain name label with policy according to the domain name label scope and vm network profile unique ID. */\n domainNameLabelScope?: DomainNameLabelScopeTypes;\n}\n\nexport function virtualMachinePublicIPAddressDnsSettingsConfigurationSerializer(\n item: VirtualMachinePublicIPAddressDnsSettingsConfiguration,\n): any {\n return {\n domainNameLabel: item[\"domainNameLabel\"],\n domainNameLabelScope: item[\"domainNameLabelScope\"],\n };\n}\n\n/** The Domain name label scope.The concatenation of the hashed domain name label that generated according to the policy from domain name label scope and vm index will be the domain name labels of the PublicIPAddress resources that will be created */\nexport enum KnownDomainNameLabelScopeTypes {\n /** TenantReuse scope type */\n TenantReuse = \"TenantReuse\",\n /** SubscriptionReuse scope type */\n SubscriptionReuse = \"SubscriptionReuse\",\n /** ResourceGroupReuse scope type */\n ResourceGroupReuse = \"ResourceGroupReuse\",\n /** NoReuse scope type */\n NoReuse = \"NoReuse\",\n}\n\n/**\n * The Domain name label scope.The concatenation of the hashed domain name label that generated according to the policy from domain name label scope and vm index will be the domain name labels of the PublicIPAddress resources that will be created \\\n * {@link KnownDomainNameLabelScopeTypes} can be used interchangeably with DomainNameLabelScopeTypes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **TenantReuse**: TenantReuse scope type \\\n * **SubscriptionReuse**: SubscriptionReuse scope type \\\n * **ResourceGroupReuse**: ResourceGroupReuse scope type \\\n * **NoReuse**: NoReuse scope type\n */\nexport type DomainNameLabelScopeTypes = string;\n\nexport function virtualMachineIpTagArraySerializer(result: Array<VirtualMachineIpTag>): any[] {\n return result.map((item) => {\n return virtualMachineIpTagSerializer(item);\n });\n}\n\n/** Contains the IP tag associated with the public IP address. */\nexport interface VirtualMachineIpTag {\n /** IP tag type. Example: FirstPartyUsage. */\n ipTagType?: string;\n /** IP tag associated with the public IP. Example: SQL, Storage etc. */\n tag?: string;\n}\n\nexport function virtualMachineIpTagSerializer(item: VirtualMachineIpTag): any {\n return { ipTagType: item[\"ipTagType\"], tag: item[\"tag\"] };\n}\n\n/** Available from compute Api-Version 2017-03-30 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'. */\nexport enum KnownIPVersions {\n /** IPv4 version */\n IPv4 = \"IPv4\",\n /** IPv6 version */\n IPv6 = \"IPv6\",\n}\n\n/**\n * Available from compute Api-Version 2017-03-30 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'. \\\n * {@link KnownIPVersions} can be used interchangeably with IPVersions,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **IPv4**: IPv4 version \\\n * **IPv6**: IPv6 version\n */\nexport type IPVersions = string;\n\n/** Specify the public IP allocation type */\nexport enum KnownPublicIPAllocationMethod {\n /** Dynamic IP allocation */\n Dynamic = \"Dynamic\",\n /** Static IP allocation */\n Static = \"Static\",\n}\n\n/**\n * Specify the public IP allocation type \\\n * {@link KnownPublicIPAllocationMethod} can be used interchangeably with PublicIPAllocationMethod,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Dynamic**: Dynamic IP allocation \\\n * **Static**: Static IP allocation\n */\nexport type PublicIPAllocationMethod = string;\n\n/** Describes the public IP Sku. It can only be set with OrchestrationMode as Flexible. */\nexport interface PublicIPAddressSku {\n /** Specify public IP sku name */\n name?: PublicIPAddressSkuName;\n /** Specify public IP sku tier */\n tier?: PublicIPAddressSkuTier;\n}\n\nexport function publicIPAddressSkuSerializer(item: PublicIPAddressSku): any {\n return { name: item[\"name\"], tier: item[\"tier\"] };\n}\n\n/** Specify public IP sku name */\nexport enum KnownPublicIPAddressSkuName {\n /** Basic IP sku name */\n Basic = \"Basic\",\n /** Standard IP sku name */\n Standard = \"Standard\",\n}\n\n/**\n * Specify public IP sku name \\\n * {@link KnownPublicIPAddressSkuName} can be used interchangeably with PublicIPAddressSkuName,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Basic**: Basic IP sku name \\\n * **Standard**: Standard IP sku name\n */\nexport type PublicIPAddressSkuName = string;\n\n/** Specify public IP sku tier */\nexport enum KnownPublicIPAddressSkuTier {\n /** Regional IP address sku tier */\n Regional = \"Regional\",\n /** Global IP address sku tier */\n Global = \"Global\",\n}\n\n/**\n * Specify public IP sku tier \\\n * {@link KnownPublicIPAddressSkuTier} can be used interchangeably with PublicIPAddressSkuTier,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Regional**: Regional IP address sku tier \\\n * **Global**: Global IP address sku tier\n */\nexport type PublicIPAddressSkuTier = string;\n\nexport function subResourceArraySerializer(result: Array<SubResource>): any[] {\n return result.map((item) => {\n return subResourceSerializer(item);\n });\n}\n\n/** Specifies whether the Auxiliary mode is enabled for the Network Interface resource. */\nexport enum KnownNetworkInterfaceAuxiliaryMode {\n /** None mode */\n None = \"None\",\n /** AcceleratedConnections mode */\n AcceleratedConnections = \"AcceleratedConnections\",\n /** Floating mode */\n Floating = \"Floating\",\n}\n\n/**\n * Specifies whether the Auxiliary mode is enabled for the Network Interface resource. \\\n * {@link KnownNetworkInterfaceAuxiliaryMode} can be used interchangeably with NetworkInterfaceAuxiliaryMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **None**: None mode \\\n * **AcceleratedConnections**: AcceleratedConnections mode \\\n * **Floating**: Floating mode\n */\nexport type NetworkInterfaceAuxiliaryMode = string;\n\n/** Specifies whether the Auxiliary sku is enabled for the Network Interface resource. */\nexport enum KnownNetworkInterfaceAuxiliarySku {\n /** None: None sku */\n None = \"None\",\n /** A1 sku */\n A1 = \"A1\",\n /** A2 sku */\n A2 = \"A2\",\n /** A4 sku */\n A4 = \"A4\",\n /** A8 sku */\n A8 = \"A8\",\n}\n\n/**\n * Specifies whether the Auxiliary sku is enabled for the Network Interface resource. \\\n * {@link KnownNetworkInterfaceAuxiliarySku} can be used interchangeably with NetworkInterfaceAuxiliarySku,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **None**: None: None sku \\\n * **A1**: A1 sku \\\n * **A2**: A2 sku \\\n * **A4**: A4 sku \\\n * **A8**: A8 sku\n */\nexport type NetworkInterfaceAuxiliarySku = string;\n\n/** Specifies the hardware profile for the virtual machine. */\nexport interface HardwareProfile {\n /** Specifies the size of the virtual machine. The enum data type is currently deprecated and will be removed by December 23rd 2023. The recommended way to get the list of available sizes is using these APIs: [List all available virtual machine sizes in an availability set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes), [List all available virtual machine sizes in a region]( https://docs.microsoft.com/rest/api/compute/resourceskus/list), [List all available virtual machine sizes for resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes). For more information about virtual machine sizes, see [Sizes for virtual machines](https://docs.microsoft.com/azure/virtual-machines/sizes). The available VM sizes depend on region and availability set. */\n vmSize?: string;\n /** Specifies the properties for customizing the size of the virtual machine. Minimum api-version: 2021-07-01. This feature is still in preview mode and is not supported for VirtualMachineScaleSet. Please follow the instructions in [VM Customization](https://aka.ms/vmcustomization) for more details. */\n vmSizeProperties?: VmSizeProperties;\n}\n\nexport function hardwareProfileSerializer(item: HardwareProfile): any {\n return {\n vmSize: item[\"vmSize\"],\n vmSizeProperties: !item[\"vmSizeProperties\"]\n ? item[\"vmSizeProperties\"]\n : vmSizePropertiesSerializer(item[\"vmSizeProperties\"]),\n };\n}\n\n/** Specifies VM Size Property settings on the virtual machine. */\nexport interface VmSizeProperties {\n /** Specifies the number of vCPUs available for the VM. When this property is not specified in the request body the default behavior is to set it to the value of vCPUs available for that VM size exposed in api response of [List all available virtual machine sizes in a region](https://docs.microsoft.com/en-us/rest/api/compute/resource-skus/list). */\n vCpusAvailable?: number;\n /** Specifies the vCPU to physical core ratio. When this property is not specified in the request body the default behavior is set to the value of vCPUsPerCore for the VM Size exposed in api response of [List all available virtual machine sizes in a region](https://docs.microsoft.com/en-us/rest/api/compute/resource-skus/list). **Setting this property to 1 also means that hyper-threading is disabled.** */\n vCpusPerCore?: number;\n}\n\nexport function vmSizePropertiesSerializer(item: VmSizeProperties): any {\n return { vCpusAvailable: item[\"vCpusAvailable\"], vCpusPerCore: item[\"vCpusPerCore\"] };\n}\n\n/** Specifies the Security profile settings for the virtual machine or virtual machine scale set. */\nexport interface SecurityProfile {\n /** Specifies the security settings like secure boot and vTPM used while creating the virtual machine. Minimum compute api-version: 2020-12-01. */\n uefiSettings?: UefiSettings;\n /** This property can be used by user in the request to enable or disable the Host Encryption for the virtual machine or virtual machine scale set. This will enable the encryption for all the disks including Resource/Temp disk at host itself. The default behavior is: The Encryption at host will be disabled unless this property is set to true for the resource. */\n encryptionAtHost?: boolean;\n /** Specifies the SecurityType of the virtual machine. It has to be set to any specified value to enable UefiSettings. The default behavior is: UefiSettings will not be enabled unless this property is set. */\n securityType?: SecurityTypes;\n /** Specifies the Managed Identity used by ADE to get access token for keyvault operations. */\n encryptionIdentity?: EncryptionIdentity;\n /** Specifies ProxyAgent settings while creating the virtual machine. Minimum compute api-version: 2023-09-01. */\n proxyAgentSettings?: ProxyAgentSettings;\n}\n\nexport function securityProfileSerializer(item: SecurityProfile): any {\n return {\n uefiSettings: !item[\"uefiSettings\"]\n ? item[\"uefiSettings\"]\n : uefiSettingsSerializer(item[\"uefiSettings\"]),\n encryptionAtHost: item[\"encryptionAtHost\"],\n securityType: item[\"securityType\"],\n encryptionIdentity: !item[\"encryptionIdentity\"]\n ? item[\"encryptionIdentity\"]\n : encryptionIdentitySerializer(item[\"encryptionIdentity\"]),\n proxyAgentSettings: !item[\"proxyAgentSettings\"]\n ? item[\"proxyAgentSettings\"]\n : proxyAgentSettingsSerializer(item[\"proxyAgentSettings\"]),\n };\n}\n\n/** Specifies the security settings like secure boot and vTPM used while creating the virtual machine. Minimum api-version: 2020-12-01. */\nexport interface UefiSettings {\n /** Specifies whether secure boot should be enabled on the virtual machine. Minimum compute api-version: 2020-12-01. */\n secureBootEnabled?: boolean;\n /** Specifies whether vTPM should be enabled on the virtual machine. Minimum compute api-version: 2020-12-01. */\n vTpmEnabled?: boolean;\n}\n\nexport function uefiSettingsSerializer(item: UefiSettings): any {\n return { secureBootEnabled: item[\"secureBootEnabled\"], vTpmEnabled: item[\"vTpmEnabled\"] };\n}\n\n/** Specifies the SecurityType of the virtual machine. It has to be set to any specified value to enable UefiSettings. The default behavior is: UefiSettings will not be enabled unless this property is set. */\nexport enum KnownSecurityTypes {\n /** TrustedLaunch security type */\n TrustedLaunch = \"TrustedLaunch\",\n /** ConfidentialVM security type */\n ConfidentialVM = \"ConfidentialVM\",\n}\n\n/**\n * Specifies the SecurityType of the virtual machine. It has to be set to any specified value to enable UefiSettings. The default behavior is: UefiSettings will not be enabled unless this property is set. \\\n * {@link KnownSecurityTypes} can be used interchangeably with SecurityTypes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **TrustedLaunch**: TrustedLaunch security type \\\n * **ConfidentialVM**: ConfidentialVM security type\n */\nexport type SecurityTypes = string;\n\n/** Specifies the Managed Identity used by ADE to get access token for keyvault operations. */\nexport interface EncryptionIdentity {\n /** Specifies ARM Resource ID of one of the user identities associated with the VM. */\n userAssignedIdentityResourceId?: string;\n}\n\nexport function encryptionIdentitySerializer(item: EncryptionIdentity): any {\n return { userAssignedIdentityResourceId: item[\"userAssignedIdentityResourceId\"] };\n}\n\n/** Specifies ProxyAgent settings for the virtual machine or virtual machine scale set. Minimum api-version: 2023-09-01. */\nexport interface ProxyAgentSettings {\n /** Specifies whether ProxyAgent feature should be enabled on the virtual machine or virtual machine scale set. */\n enabled?: boolean;\n /** Specifies the mode that ProxyAgent will execute on. Warning: this property has been deprecated, please specify 'mode' under particular hostendpoint setting. */\n mode?: Mode;\n /** Increase the value of this property allows users to reset the key used for securing communication channel between guest and host. */\n keyIncarnationId?: number;\n /** Specifies the Wire Server endpoint settings while creating the virtual machine or virtual machine scale set. Minimum api-version: 2024-03-01. */\n wireServer?: HostEndpointSettings;\n /** Specifies the IMDS endpoint settings while creating the virtual machine or virtual machine scale set. Minimum api-version: 2024-03-01. */\n imds?: HostEndpointSettings;\n /** Specify whether to implicitly install the ProxyAgent Extension. This option is currently applicable only for Linux Os. */\n addProxyAgentExtension?: boolean;\n}\n\nexport function proxyAgentSettingsSerializer(item: ProxyAgentSettings): any {\n return {\n enabled: item[\"enabled\"],\n mode: item[\"mode\"],\n keyIncarnationId: item[\"keyIncarnationId\"],\n wireServer: !item[\"wireServer\"]\n ? item[\"wireServer\"]\n : hostEndpointSettingsSerializer(item[\"wireServer\"]),\n imds: !item[\"imds\"] ? item[\"imds\"] : hostEndpointSettingsSerializer(item[\"imds\"]),\n addProxyAgentExtension: item[\"addProxyAgentExtension\"],\n };\n}\n\n/** Specifies the mode that ProxyAgent will execute on if the feature is enabled. ProxyAgent will start to audit or monitor but not enforce access control over requests to host endpoints in Audit mode, while in Enforce mode it will enforce access control. The default value is Enforce mode. */\nexport enum KnownMode {\n /** Audit mode */\n Audit = \"Audit\",\n /** Enforce mode */\n Enforce = \"Enforce\",\n}\n\n/**\n * Specifies the mode that ProxyAgent will execute on if the feature is enabled. ProxyAgent will start to audit or monitor but not enforce access control over requests to host endpoints in Audit mode, while in Enforce mode it will enforce access control. The default value is Enforce mode. \\\n * {@link KnownMode} can be used interchangeably with Mode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Audit**: Audit mode \\\n * **Enforce**: Enforce mode\n */\nexport type Mode = string;\n\n/** Specifies particular host endpoint settings. */\nexport interface HostEndpointSettings {\n /** Specifies the execution mode. In Audit mode, the system acts as if it is enforcing the access control policy, including emitting access denial entries in the logs but it does not actually deny any requests to host endpoints. In Enforce mode, the system will enforce the access control and it is the recommended mode of operation. */\n mode?: Modes;\n /** Specifies the InVMAccessControlProfileVersion resource id in the format of /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/inVMAccessControlProfiles/{profile}/versions/{version} */\n inVMAccessControlProfileReferenceId?: string;\n}\n\nexport function hostEndpointSettingsSerializer(item: HostEndpointSettings): any {\n return {\n mode: item[\"mode\"],\n inVMAccessControlProfileReferenceId: item[\"inVMAccessControlProfileReferenceId\"],\n };\n}\n\n/** Specifies the execution mode. In Audit mode, the system acts as if it is enforcing the access control policy, including emitting access denial entries in the logs but it does not actually deny any requests to host endpoints. In Enforce mode, the system will enforce the access control and it is the recommended mode of operation. */\nexport enum KnownModes {\n /** Audit mode */\n Audit = \"Audit\",\n /** Enforce mode */\n Enforce = \"Enforce\",\n /** Disabled mode */\n Disabled = \"Disabled\",\n}\n\n/**\n * Specifies the execution mode. In Audit mode, the system acts as if it is enforcing the access control policy, including emitting access denial entries in the logs but it does not actually deny any requests to host endpoints. In Enforce mode, the system will enforce the access control and it is the recommended mode of operation. \\\n * {@link KnownModes} can be used interchangeably with Modes,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Audit**: Audit mode \\\n * **Enforce**: Enforce mode \\\n * **Disabled**: Disabled mode\n */\nexport type Modes = string;\n\n/** Specifies the boot diagnostic settings state. Minimum compute api-version: 2015-06-15. */\nexport interface DiagnosticsProfile {\n /** Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. **NOTE**: If storageUri is being specified then ensure that the storage account is in the same region and subscription as the VM. You can easily view the output of your console log. Azure also enables you to see a screenshot of the VM from the hypervisor. */\n bootDiagnostics?: BootDiagnostics;\n}\n\nexport function diagnosticsProfileSerializer(item: DiagnosticsProfile): any {\n return {\n bootDiagnostics: !item[\"bootDiagnostics\"]\n ? item[\"bootDiagnostics\"]\n : bootDiagnosticsSerializer(item[\"bootDiagnostics\"]),\n };\n}\n\n/** Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. You can easily view the output of your console log. Azure also enables you to see a screenshot of the VM from the hypervisor. */\nexport interface BootDiagnostics {\n /** Whether boot diagnostics should be enabled on the Virtual Machine. */\n enabled?: boolean;\n /** Uri of the storage account to use for placing the console output and screenshot. If storageUri is not specified while enabling boot diagnostics, managed storage will be used. */\n storageUri?: string;\n}\n\nexport function bootDiagnosticsSerializer(item: BootDiagnostics): any {\n return { enabled: item[\"enabled\"], storageUri: item[\"storageUri\"] };\n}\n\n/** Profile for the scheduled events. */\nexport interface ScheduledEventsProfile {\n /** Specifies Terminate Scheduled Event related configurations. */\n terminateNotificationProfile?: TerminateNotificationProfile;\n /** Specifies OS Image Scheduled Event related configurations. */\n osImageNotificationProfile?: OSImageNotificationProfile;\n}\n\nexport function scheduledEventsProfileSerializer(item: ScheduledEventsProfile): any {\n return {\n terminateNotificationProfile: !item[\"terminateNotificationProfile\"]\n ? item[\"terminateNotificationProfile\"]\n : terminateNotificationProfileSerializer(item[\"terminateNotificationProfile\"]),\n osImageNotificationProfile: !item[\"osImageNotificationProfile\"]\n ? item[\"osImageNotificationProfile\"]\n : osImageNotificationProfileSerializer(item[\"osImageNotificationProfile\"]),\n };\n}\n\n/** Profile properties for the Terminate Scheduled event. */\nexport interface TerminateNotificationProfile {\n /** Configurable length of time a Virtual Machine being deleted will have to potentially approve the Terminate Scheduled Event before the event is auto approved (timed out). The configuration must be specified in ISO 8601 format, the default value is 5 minutes (PT5M) */\n notBeforeTimeout?: string;\n /** Specifies whether the Terminate Scheduled event is enabled or disabled. */\n enable?: boolean;\n}\n\nexport function terminateNotificationProfileSerializer(item: TerminateNotificationProfile): any {\n return { notBeforeTimeout: item[\"notBeforeTimeout\"], enable: item[\"enable\"] };\n}\n\n/** Profile for the OS Image Scheduled event. */\nexport interface OSImageNotificationProfile {\n /** Length of time a Virtual Machine being reimaged or having its OS upgraded will have to potentially approve the OS Image Scheduled Event before the event is auto approved (timed out). The configuration is specified in ISO 8601 format, and the value must be 15 minutes (PT15M) */\n notBeforeTimeout?: string;\n /** Specifies whether the OS Image Scheduled event is enabled or disabled. */\n enable?: boolean;\n}\n\nexport function osImageNotificationProfileSerializer(item: OSImageNotificationProfile): any {\n return { notBeforeTimeout: item[\"notBeforeTimeout\"], enable: item[\"enable\"] };\n}\n\n/** The parameters of a capacity reservation Profile. */\nexport interface CapacityReservationProfile {\n /** Specifies the capacity reservation group resource id that should be used for allocating the virtual machine provided enough capacity has been reserved. Please refer to https://aka.ms/CapacityReservation for more details. */\n capacityReservationGroup?: SubResource;\n}\n\nexport function capacityReservationProfileSerializer(item: CapacityReservationProfile): any {\n return {\n capacityReservationGroup: !item[\"capacityReservationGroup\"]\n ? item[\"capacityReservationGroup\"]\n : subResourceSerializer(item[\"capacityReservationGroup\"]),\n };\n}\n\n/** Contains the list of gallery applications that should be made available to the VM */\nexport interface ApplicationProfile {\n /** Specifies the gallery applications that should be made available to the VM */\n galleryApplications?: VMGalleryApplication[];\n}\n\nexport function applicationProfileSerializer(item: ApplicationProfile): any {\n return {\n galleryApplications: !item[\"galleryApplications\"]\n ? item[\"galleryApplications\"]\n : vmGalleryApplicationArraySerializer(item[\"galleryApplications\"]),\n };\n}\n\nexport function vmGalleryApplicationArraySerializer(result: Array<VMGalleryApplication>): any[] {\n return result.map((item) => {\n return vmGalleryApplicationSerializer(item);\n });\n}\n\n/** Specifies the required information to reference a compute gallery application version */\nexport interface VMGalleryApplication {\n /** Optional, Specifies a passthrough value for more generic context. */\n tags?: string;\n /** Optional, Specifies the order in which the packages have to be installed */\n order?: number;\n /** Specifies the GalleryApplicationVersion resource id on the form of /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{application}/versions/{version} */\n packageReferenceId: string;\n /** Optional, Specifies the uri to an azure blob that will replace the default configuration for the package if provided */\n configurationReference?: string;\n /** Optional, If true, any failure for any operation in the VmApplication will fail the deployment */\n treatFailureAsDeploymentFailure?: boolean;\n /** If set to true, when a new Gallery Application version is available in PIR/SIG, it will be automatically updated for the VM/VMSS */\n enableAutomaticUpgrade?: boolean;\n}\n\nexport function vmGalleryApplicationSerializer(item: VMGalleryApplication): any {\n return {\n tags: item[\"tags\"],\n order: item[\"order\"],\n packageReferenceId: item[\"packageReferenceId\"],\n configurationReference: item[\"configurationReference\"],\n treatFailureAsDeploymentFailure: item[\"treatFailureAsDeploymentFailure\"],\n enableAutomaticUpgrade: item[\"enableAutomaticUpgrade\"],\n };\n}\n\nexport function bulkActionVMExtensionArraySerializer(result: Array<BulkActionVMExtension>): any[] {\n return result.map((item) => {\n return bulkActionVMExtensionSerializer(item);\n });\n}\n\n/** Defines a virtual machine extension. */\nexport interface BulkActionVMExtension {\n /** The name of the virtual machine extension. */\n name: string;\n /** Properties of the virtual machine extension. */\n properties: BulkActionVmExtensionProperties;\n}\n\nexport function bulkActionVMExtensionSerializer(item: BulkActionVMExtension): any {\n return {\n name: item[\"name\"],\n properties: bulkActionVmExtensionPropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** Describes the properties of a Virtual Machine Extension. */\nexport interface BulkActionVmExtensionProperties {\n /** How the extension handler should be forced to update even if the extension configuration has not changed. */\n forceUpdateTag?: string;\n /** The name of the extension handler publisher. */\n publisher?: string;\n /** Specifies the type of the extension; an example is 'CustomScriptExtension'. */\n type?: string;\n /** Specifies the version of the script handler. */\n typeHandlerVersion?: string;\n /** Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true. */\n autoUpgradeMinorVersion?: boolean;\n /** Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available. */\n enableAutomaticUpgrade?: boolean;\n /** JSON formatted public settings for the extension. */\n settings?: Record<string, any>;\n /** The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all. */\n protectedSettings?: Record<string, any>;\n /** Indicates whether failures stemming from the extension will be suppressed (Operational failures such as not connecting to the VM will not be suppressed regardless of this value). The default is false. */\n suppressFailures?: boolean;\n /** The extensions protected settings that are passed by reference, and consumed from key vault */\n protectedSettingsFromKeyVault?: KeyVaultSecretReference;\n /** Collection of extension names after which this extension needs to be provisioned. */\n provisionAfterExtensions?: string[];\n}\n\nexport function bulkActionVmExtensionPropertiesSerializer(\n item: BulkActionVmExtensionProperties,\n): any {\n return {\n forceUpdateTag: item[\"forceUpdateTag\"],\n publisher: item[\"publisher\"],\n type: item[\"type\"],\n typeHandlerVersion: item[\"typeHandlerVersion\"],\n autoUpgradeMinorVersion: item[\"autoUpgradeMinorVersion\"],\n enableAutomaticUpgrade: item[\"enableAutomaticUpgrade\"],\n settings: item[\"settings\"],\n protectedSettings: item[\"protectedSettings\"],\n suppressFailures: item[\"suppressFailures\"],\n protectedSettingsFromKeyVault: !item[\"protectedSettingsFromKeyVault\"]\n ? item[\"protectedSettingsFromKeyVault\"]\n : keyVaultSecretReferenceSerializer(item[\"protectedSettingsFromKeyVault\"]),\n provisionAfterExtensions: !item[\"provisionAfterExtensions\"]\n ? item[\"provisionAfterExtensions\"]\n : item[\"provisionAfterExtensions\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function bulkVMConfigurationArraySerializer(result: Array<BulkVMConfiguration>): any[] {\n return result.map((item) => {\n return bulkVMConfigurationSerializer(item);\n });\n}\n\n/** The flex properties for flexible VM creation */\nexport interface FlexProperties {\n /** The list of VM size profiles to use for flex creation */\n vmSizeProfiles: VmSizeProfile[];\n /** The operating system type for the VMs */\n osType: OsType;\n /** The priority profile for VM allocation */\n priorityProfile: PriorityProfile;\n /** The zone allocation policy for distributing VMs across availability zones */\n zoneAllocationPolicy?: ZoneAllocationPolicy;\n}\n\nexport function flexPropertiesSerializer(item: FlexProperties): any {\n return {\n vmSizeProfiles: vmSizeProfileArraySerializer(item[\"vmSizeProfiles\"]),\n osType: item[\"osType\"],\n priorityProfile: priorityProfileSerializer(item[\"priorityProfile\"]),\n zoneAllocationPolicy: !item[\"zoneAllocationPolicy\"]\n ? item[\"zoneAllocationPolicy\"]\n : zoneAllocationPolicySerializer(item[\"zoneAllocationPolicy\"]),\n };\n}\n\nexport function vmSizeProfileArraySerializer(result: Array<VmSizeProfile>): any[] {\n return result.map((item) => {\n return vmSizeProfileSerializer(item);\n });\n}\n\n/** A VM size profile with a name and rank for flex VM creation */\nexport interface VmSizeProfile {\n /** The name of the VM size, eg Standard_D2ads_v5 */\n name: string;\n /** The rank of this VM size in the priority order */\n rank?: number;\n}\n\nexport function vmSizeProfileSerializer(item: VmSizeProfile): any {\n return { name: item[\"name\"], rank: item[\"rank\"] };\n}\n\n/** The supported operating system types for flex VM creation */\nexport enum KnownOsType {\n /** Windows operating system */\n Windows = \"Windows\",\n /** Linux operating system */\n Linux = \"Linux\",\n}\n\n/**\n * The supported operating system types for flex VM creation \\\n * {@link KnownOsType} can be used interchangeably with OsType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Windows**: Windows operating system \\\n * **Linux**: Linux operating system\n */\nexport type OsType = string;\n\n/** The priority profile for flex VM creation */\nexport interface PriorityProfile {\n /** The priority type for VM allocation */\n type?: PriorityType;\n /** The allocation strategy for VM size selection */\n allocationStrategy?: AllocationStrategy;\n}\n\nexport function priorityProfileSerializer(item: PriorityProfile): any {\n return { type: item[\"type\"], allocationStrategy: item[\"allocationStrategy\"] };\n}\n\n/** The priority type for VM allocation */\nexport enum KnownPriorityType {\n /** Regular priority VMs */\n Regular = \"Regular\",\n /** Spot priority VMs */\n Spot = \"Spot\",\n}\n\n/**\n * The priority type for VM allocation \\\n * {@link KnownPriorityType} can be used interchangeably with PriorityType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Regular**: Regular priority VMs \\\n * **Spot**: Spot priority VMs\n */\nexport type PriorityType = string;\n\n/** The allocation strategy for VM size selection */\nexport enum KnownAllocationStrategy {\n /** Platform prioritizes VM sizes with the lowest hourly cost */\n LowestPrice = \"LowestPrice\",\n /** Customer specifies a rank for each VM size, platform uses VM sizes in rank order */\n Prioritized = \"Prioritized\",\n /** Platform prioritizes VM sizes with the highest available capacity first */\n CapacityOptimized = \"CapacityOptimized\",\n}\n\n/**\n * The allocation strategy for VM size selection \\\n * {@link KnownAllocationStrategy} can be used interchangeably with AllocationStrategy,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **LowestPrice**: Platform prioritizes VM sizes with the lowest hourly cost \\\n * **Prioritized**: Customer specifies a rank for each VM size, platform uses VM sizes in rank order \\\n * **CapacityOptimized**: Platform prioritizes VM sizes with the highest available capacity first\n */\nexport type AllocationStrategy = string;\n\n/** The zone allocation policy for distributing VMs across availability zones */\nexport interface ZoneAllocationPolicy {\n /** The distribution strategy for zone allocation */\n distributionStrategy: DistributionStrategy;\n /** The zone preferences for allocation priority */\n zonePreferences?: ZonePreference[];\n}\n\nexport function zoneAllocationPolicySerializer(item: ZoneAllocationPolicy): any {\n return {\n distributionStrategy: item[\"distributionStrategy\"],\n zonePreferences: !item[\"zonePreferences\"]\n ? item[\"zonePreferences\"]\n : zonePreferenceArraySerializer(item[\"zonePreferences\"]),\n };\n}\n\n/** The distribution strategy for zone allocation */\nexport enum KnownDistributionStrategy {\n /** Platform attempts to place as many VMs as possible in a single zone, falls back to multiple zones if needed */\n BestEffortSingleZone = \"BestEffortSingleZone\",\n /** Platform uses customer-provided zone rankings to allocate VMs */\n Prioritized = \"Prioritized\",\n /** Platform attempts to evenly distribute VMs across all available zones with best effort */\n BestEffortBalanced = \"BestEffortBalanced\",\n /** Platform must evenly distribute VMs across zones, request is rejected if exact balance cannot be achieved */\n StrictBalanced = \"StrictBalanced\",\n}\n\n/**\n * The distribution strategy for zone allocation \\\n * {@link KnownDistributionStrategy} can be used interchangeably with DistributionStrategy,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **BestEffortSingleZone**: Platform attempts to place as many VMs as possible in a single zone, falls back to multiple zones if needed \\\n * **Prioritized**: Platform uses customer-provided zone rankings to allocate VMs \\\n * **BestEffortBalanced**: Platform attempts to evenly distribute VMs across all available zones with best effort \\\n * **StrictBalanced**: Platform must evenly distribute VMs across zones, request is rejected if exact balance cannot be achieved\n */\nexport type DistributionStrategy = string;\n\nexport function zonePreferenceArraySerializer(result: Array<ZonePreference>): any[] {\n return result.map((item) => {\n return zonePreferenceSerializer(item);\n });\n}\n\n/** A zone preference with a zone identifier and rank */\nexport interface ZonePreference {\n /** The zone identifier */\n zone: string;\n /** The rank of this zone in the priority order */\n rank?: number;\n}\n\nexport function zonePreferenceSerializer(item: ZonePreference): any {\n return { zone: item[\"zone\"], rank: item[\"rank\"] };\n}\n\n/** The response from a create flex request */\nexport interface CreateFlexResourceOperationResponse {\n /** The description of the operation response */\n description: string;\n /** The type of resources used in the create flex request eg virtual machines */\n type: string;\n /** The location of the create flex request eg westus */\n location: string;\n /** The results from the create flex request if no errors exist */\n results?: ResourceOperation[];\n}\n\nexport function createFlexResourceOperationResponseDeserializer(\n item: any,\n): CreateFlexResourceOperationResponse {\n return {\n description: item[\"description\"],\n type: item[\"type\"],\n location: item[\"location\"],\n results: !item[\"results\"]\n ? item[\"results\"]\n : resourceOperationArrayDeserializer(item[\"results\"]),\n };\n}\n\n/** The ExecuteCreateRequest request for create operations */\nexport interface ExecuteCreateRequest {\n /** resource creation payload */\n resourceConfigParameters: ResourceProvisionPayload;\n /** The execution parameters for the request */\n executionParameters: ExecutionParameters;\n /** CorrelationId item */\n correlationId?: string;\n}\n\nexport function executeCreateRequestSerializer(item: ExecuteCreateRequest): any {\n return {\n resourceConfigParameters: resourceProvisionPayloadSerializer(item[\"resourceConfigParameters\"]),\n executionParameters: executionParametersSerializer(item[\"executionParameters\"]),\n correlationid: item[\"correlationId\"],\n };\n}\n\n/** Resource creation data model */\nexport interface ResourceProvisionPayload {\n /** Virtual machine profile object that contains VM properties that are common across all VMs in this batch (if you want to create 100 VMs in this request, and they all have same vmSize, then include vmSize in baseProfile) */\n virtualMachineBaseProfile?: BulkVMConfiguration;\n /** Virtual machine profile array that contains VM properties that needs to be overridden for each VM in the batch (if you want to create 100 VMs, they all need a distinct computerName property, you pass computerNames for each VM in batch in this array), service will merge baseProfile with VM specific overrides and create a merged VMProfile. */\n virtualMachineOverrides?: BulkVMConfiguration[];\n /** Number of VMs to be created */\n resourceCount: number;\n /** if resourceOverrides doesn't contain \"name\", service will create name based of prefix and ResourceCount e.g. resourceprefix-0,resourceprefix-1.. */\n resourcePrefix?: string;\n}\n\nexport function resourceProvisionPayloadSerializer(item: ResourceProvisionPayload): any {\n return {\n virtualMachineBaseProfile: !item[\"virtualMachineBaseProfile\"]\n ? item[\"virtualMachineBaseProfile\"]\n : bulkVMConfigurationSerializer(item[\"virtualMachineBaseProfile\"]),\n virtualMachineOverrides: !item[\"virtualMachineOverrides\"]\n ? item[\"virtualMachineOverrides\"]\n : bulkVMConfigurationArraySerializer(item[\"virtualMachineOverrides\"]),\n resourceCount: item[\"resourceCount\"],\n resourcePrefix: item[\"resourcePrefix\"],\n };\n}\n\n/** The response from a create request */\nexport interface CreateResourceOperationResponse {\n /** The description of the operation response */\n description: string;\n /** The type of resources used in the create request eg virtual machines */\n type: string;\n /** The location of the start request eg westus */\n location: string;\n /** The results from the start request if no errors exist */\n results?: ResourceOperation[];\n}\n\nexport function createResourceOperationResponseDeserializer(\n item: any,\n): CreateResourceOperationResponse {\n return {\n description: item[\"description\"],\n type: item[\"type\"],\n location: item[\"location\"],\n results: !item[\"results\"]\n ? item[\"results\"]\n : resourceOperationArrayDeserializer(item[\"results\"]),\n };\n}\n\n/** The ExecuteDeleteRequest for delete VM operation */\nexport interface ExecuteDeleteRequest {\n /** The execution parameters for the request */\n executionParameters: ExecutionParameters;\n /** The resources for the request */\n resources: Resources;\n /** CorrelationId item */\n correlationId?: string;\n /** Forced delete resource item */\n forceDeletion?: boolean;\n}\n\nexport function executeDeleteRequestSerializer(item: ExecuteDeleteRequest): any {\n return {\n executionParameters: executionParametersSerializer(item[\"executionParameters\"]),\n resources: resourcesSerializer(item[\"resources\"]),\n correlationid: item[\"correlationId\"],\n forceDeletion: item[\"forceDeletion\"],\n };\n}\n\n/** The response from a delete request */\nexport interface DeleteResourceOperationResponse {\n /** The description of the operation response */\n description: string;\n /** The type of resources used in the delete request eg virtual machines */\n type: string;\n /** The location of the start request eg westus */\n location: string;\n /** The results from the start request if no errors exist */\n results?: ResourceOperation[];\n}\n\nexport function deleteResourceOperationResponseDeserializer(\n item: any,\n): DeleteResourceOperationResponse {\n return {\n description: item[\"description\"],\n type: item[\"type\"],\n location: item[\"location\"],\n results: !item[\"results\"]\n ? item[\"results\"]\n : resourceOperationArrayDeserializer(item[\"results\"]),\n };\n}\n\n/** This is the request to get operation status using operationids */\nexport interface GetOperationStatusRequest {\n /** The list of operation ids to get the status of */\n operationIds: string[];\n /** CorrelationId item */\n correlationId: string;\n}\n\nexport function getOperationStatusRequestSerializer(item: GetOperationStatusRequest): any {\n return {\n operationIds: item[\"operationIds\"].map((p: any) => {\n return p;\n }),\n correlationid: item[\"correlationId\"],\n };\n}\n\n/** This is the response from a get operations status request */\nexport interface GetOperationStatusResponse {\n /** An array of resource operations based on their operation ids */\n results: ResourceOperation[];\n}\n\nexport function getOperationStatusResponseDeserializer(item: any): GetOperationStatusResponse {\n return {\n results: resourceOperationArrayDeserializer(item[\"results\"]),\n };\n}\n\n/** This is the request to cancel running operations in scheduled actions using the operation ids */\nexport interface CancelOperationsRequest {\n /** The list of operation ids to cancel operations on */\n operationIds: string[];\n /** CorrelationId item */\n correlationId: string;\n}\n\nexport function cancelOperationsRequestSerializer(item: CancelOperationsRequest): any {\n return {\n operationIds: item[\"operationIds\"].map((p: any) => {\n return p;\n }),\n correlationid: item[\"correlationId\"],\n };\n}\n\n/** This is the response from a cancel operations request */\nexport interface CancelOperationsResponse {\n /** An array of resource operations that were successfully cancelled */\n results: ResourceOperation[];\n}\n\nexport function cancelOperationsResponseDeserializer(item: any): CancelOperationsResponse {\n return {\n results: resourceOperationArrayDeserializer(item[\"results\"]),\n };\n}\n\n/** This is the request to get errors per vm operations */\nexport interface GetOperationErrorsRequest {\n /** The list of operation ids to query errors of */\n operationIds: string[];\n}\n\nexport function getOperationErrorsRequestSerializer(item: GetOperationErrorsRequest): any {\n return {\n operationIds: item[\"operationIds\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** This is the response from a get operations errors request */\nexport interface GetOperationErrorsResponse {\n /** An array of operationids and their corresponding errors if any */\n results: OperationErrorsResult[];\n}\n\nexport function getOperationErrorsResponseDeserializer(item: any): GetOperationErrorsResponse {\n return {\n results: operationErrorsResultArrayDeserializer(item[\"results\"]),\n };\n}\n\nexport function operationErrorsResultArrayDeserializer(\n result: Array<OperationErrorsResult>,\n): any[] {\n return result.map((item) => {\n return operationErrorsResultDeserializer(item);\n });\n}\n\n/** This is the first level of operation errors from the request when clients get errors per vm operation */\nexport interface OperationErrorsResult {\n /** The operationId identifying a vm operation */\n operationId?: string;\n /** The creation time of the error result */\n creationTime?: string;\n /** The activation time of a vm operation */\n activationTime?: string;\n /** The completion time of the operation if the operation was completed */\n completedAt?: string;\n /** A list of errors associated with the operationid */\n operationErrors?: OperationErrorDetails[];\n /** Request level error code */\n requestErrorCode?: string;\n /** Request level error details */\n requestErrorDetails?: string;\n}\n\nexport function operationErrorsResultDeserializer(item: any): OperationErrorsResult {\n return {\n operationId: item[\"operationId\"],\n creationTime: item[\"creationTime\"],\n activationTime: item[\"activationTime\"],\n completedAt: item[\"completedAt\"],\n operationErrors: !item[\"operationErrors\"]\n ? item[\"operationErrors\"]\n : operationErrorDetailsArrayDeserializer(item[\"operationErrors\"]),\n requestErrorCode: item[\"requestErrorCode\"],\n requestErrorDetails: item[\"requestErrorDetails\"],\n };\n}\n\nexport function operationErrorDetailsArrayDeserializer(\n result: Array<OperationErrorDetails>,\n): any[] {\n return result.map((item) => {\n return operationErrorDetailsDeserializer(item);\n });\n}\n\n/** This defines a list of operation errors associated with a unique operationId */\nexport interface OperationErrorDetails {\n /** The error code of the operation */\n errorCode: string;\n /** The error details of the operation */\n errorDetails: string;\n /** The timestamp of the error occurence */\n timestamp?: string;\n /** The timestamp of the error occurence */\n errorDetailsTimestamp?: string;\n /** The compute operationid of the Start/Deallocate/Hibernate request */\n azureOperationName?: string;\n /** The compute operationid of the Start/Deallocate/Hibernate request */\n crpOperationId?: string;\n}\n\nexport function operationErrorDetailsDeserializer(item: any): OperationErrorDetails {\n return {\n errorCode: item[\"errorCode\"],\n errorDetails: item[\"errorDetails\"],\n timestamp: item[\"timestamp\"],\n errorDetailsTimestamp: item[\"timeStamp\"],\n azureOperationName: item[\"azureOperationName\"],\n crpOperationId: item[\"crpOperationId\"],\n };\n}\n\n/** The scheduled action resource */\nexport interface ScheduledAction extends TrackedResource {\n /** The resource-specific properties for this resource. */\n properties?: ScheduledActionProperties;\n}\n\nexport function scheduledActionSerializer(item: ScheduledAction): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : scheduledActionPropertiesSerializer(item[\"properties\"]),\n };\n}\n\nexport function scheduledActionDeserializer(item: any): ScheduledAction {\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 : scheduledActionPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Scheduled action properties */\nexport interface ScheduledActionProperties {\n /** The type of resource the scheduled action is targeting */\n resourceType: ResourceType;\n /** The action the scheduled action should perform in the resources */\n actionType: ScheduledActionType;\n /** The time which the scheduled action is supposed to start running */\n startTime: string;\n /** The time when the scheduled action is supposed to stop scheduling */\n endTime?: string;\n /** The schedule the scheduled action is supposed to follow */\n schedule: ScheduledActionsSchedule;\n /** The notification settings for the scheduled action */\n notificationSettings: NotificationProperties[];\n /** Tell if the scheduled action is disabled or not */\n disabled?: boolean;\n /** The status of the last provisioning operation performed on the resource. */\n readonly provisioningState?: ProvisioningState;\n}\n\nexport function scheduledActionPropertiesSerializer(item: ScheduledActionProperties): any {\n return {\n resourceType: item[\"resourceType\"],\n actionType: item[\"actionType\"],\n startTime: item[\"startTime\"],\n endTime: item[\"endTime\"],\n schedule: scheduledActionsScheduleSerializer(item[\"schedule\"]),\n notificationSettings: notificationPropertiesArraySerializer(item[\"notificationSettings\"]),\n disabled: item[\"disabled\"],\n };\n}\n\nexport function scheduledActionPropertiesDeserializer(item: any): ScheduledActionProperties {\n return {\n resourceType: item[\"resourceType\"],\n actionType: item[\"actionType\"],\n startTime: item[\"startTime\"],\n endTime: item[\"endTime\"],\n schedule: scheduledActionsScheduleDeserializer(item[\"schedule\"]),\n notificationSettings: notificationPropertiesArrayDeserializer(item[\"notificationSettings\"]),\n disabled: item[\"disabled\"],\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The type of resource being targeted */\nexport enum KnownResourceType {\n /** Resources defined are Virtual Machines */\n VirtualMachine = \"VirtualMachine\",\n /** Resources defined are Virtual Machines Scale Sets */\n VirtualMachineScaleSet = \"VirtualMachineScaleSet\",\n}\n\n/**\n * The type of resource being targeted \\\n * {@link KnownResourceType} can be used interchangeably with ResourceType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **VirtualMachine**: Resources defined are Virtual Machines \\\n * **VirtualMachineScaleSet**: Resources defined are Virtual Machines Scale Sets\n */\nexport type ResourceType = string;\n\n/** Specify which action user wants to be performed on the resources */\nexport enum KnownScheduledActionType {\n /** Perform a start action on the specified resources */\n Start = \"Start\",\n /** Perform a deallocate action on the specified resources */\n Deallocate = \"Deallocate\",\n /** Perform hibernate and deallocate on the specified resources */\n Hibernate = \"Hibernate\",\n}\n\n/**\n * Specify which action user wants to be performed on the resources \\\n * {@link KnownScheduledActionType} can be used interchangeably with ScheduledActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Start**: Perform a start action on the specified resources \\\n * **Deallocate**: Perform a deallocate action on the specified resources \\\n * **Hibernate**: Perform hibernate and deallocate on the specified resources\n */\nexport type ScheduledActionType = string;\n\n/** Specify the schedule in which the scheduled action is supposed to follow */\nexport interface ScheduledActionsSchedule {\n /** The time the scheduled action is supposed to run on */\n scheduledTime: string;\n /** The timezone the scheduled time is specified on */\n timeZone: string;\n /** The week days the scheduled action is supposed to run on */\n requestedWeekDays: WeekDay[];\n /** The months the scheduled action is supposed to run on */\n requestedMonths: Month[];\n /** The days of the month the scheduled action is supposed to run on. If empty, it means it will run on every day of the month. */\n requestedDaysOfTheMonth: number[];\n /** The execution parameters the scheduled action is supposed to follow */\n executionParameters?: ExecutionParameters;\n /** The type of deadline the scheduled action is supposed to follow for the schedule. If no value is passed, it will default to InitiateAt. */\n deadlineType?: DeadlineType;\n}\n\nexport function scheduledActionsScheduleSerializer(item: ScheduledActionsSchedule): any {\n return {\n scheduledTime: item[\"scheduledTime\"],\n timeZone: item[\"timeZone\"],\n requestedWeekDays: item[\"requestedWeekDays\"].map((p: any) => {\n return p;\n }),\n requestedMonths: item[\"requestedMonths\"].map((p: any) => {\n return p;\n }),\n requestedDaysOfTheMonth: item[\"requestedDaysOfTheMonth\"].map((p: any) => {\n return p;\n }),\n executionParameters: !item[\"executionParameters\"]\n ? item[\"executionParameters\"]\n : executionParametersSerializer(item[\"executionParameters\"]),\n deadlineType: item[\"deadlineType\"],\n };\n}\n\nexport function scheduledActionsScheduleDeserializer(item: any): ScheduledActionsSchedule {\n return {\n scheduledTime: item[\"scheduledTime\"],\n timeZone: item[\"timeZone\"],\n requestedWeekDays: item[\"requestedWeekDays\"].map((p: any) => {\n return p;\n }),\n requestedMonths: item[\"requestedMonths\"].map((p: any) => {\n return p;\n }),\n requestedDaysOfTheMonth: item[\"requestedDaysOfTheMonth\"].map((p: any) => {\n return p;\n }),\n executionParameters: !item[\"executionParameters\"]\n ? item[\"executionParameters\"]\n : executionParametersDeserializer(item[\"executionParameters\"]),\n deadlineType: item[\"deadlineType\"],\n };\n}\n\n/** Representation of the possible selection of days in a week in a gregorian calendar */\nexport enum KnownWeekDay {\n /** Monday weekday. */\n Monday = \"Monday\",\n /** Tuesday weekday. */\n Tuesday = \"Tuesday\",\n /** Wednesday weekday. */\n Wednesday = \"Wednesday\",\n /** Thursday weekday. */\n Thursday = \"Thursday\",\n /** Friday weekday. */\n Friday = \"Friday\",\n /** Saturday weekday. */\n Saturday = \"Saturday\",\n /** Sunday weekday. */\n Sunday = \"Sunday\",\n /** All week days */\n All = \"All\",\n}\n\n/**\n * Representation of the possible selection of days in a week in a gregorian calendar \\\n * {@link KnownWeekDay} can be used interchangeably with WeekDay,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Monday**: Monday weekday. \\\n * **Tuesday**: Tuesday weekday. \\\n * **Wednesday**: Wednesday weekday. \\\n * **Thursday**: Thursday weekday. \\\n * **Friday**: Friday weekday. \\\n * **Saturday**: Saturday weekday. \\\n * **Sunday**: Sunday weekday. \\\n * **All**: All week days\n */\nexport type WeekDay = string;\n\n/** Representation of the months available selection in a gregorian calendar */\nexport enum KnownMonth {\n /** The January month. */\n January = \"January\",\n /** The February month. */\n February = \"February\",\n /** The March month. */\n March = \"March\",\n /** The April month. */\n April = \"April\",\n /** The May month. */\n May = \"May\",\n /** The June month. */\n June = \"June\",\n /** The July month. */\n July = \"July\",\n /** The August month. */\n August = \"August\",\n /** The September month. */\n September = \"September\",\n /** The October month. */\n October = \"October\",\n /** The November month. */\n November = \"November\",\n /** The December month. */\n December = \"December\",\n /** All months */\n All = \"All\",\n}\n\n/**\n * Representation of the months available selection in a gregorian calendar \\\n * {@link KnownMonth} can be used interchangeably with Month,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **January**: The January month. \\\n * **February**: The February month. \\\n * **March**: The March month. \\\n * **April**: The April month. \\\n * **May**: The May month. \\\n * **June**: The June month. \\\n * **July**: The July month. \\\n * **August**: The August month. \\\n * **September**: The September month. \\\n * **October**: The October month. \\\n * **November**: The November month. \\\n * **December**: The December month. \\\n * **All**: All months\n */\nexport type Month = string;\n\nexport function notificationPropertiesArraySerializer(\n result: Array<NotificationProperties>,\n): any[] {\n return result.map((item) => {\n return notificationPropertiesSerializer(item);\n });\n}\n\nexport function notificationPropertiesArrayDeserializer(\n result: Array<NotificationProperties>,\n): any[] {\n return result.map((item) => {\n return notificationPropertiesDeserializer(item);\n });\n}\n\n/** The information about notifications to be send to about upcoming operations. */\nexport interface NotificationProperties {\n /** Where the notification should be sent. For email, it should follow email format. */\n destination: string;\n /** Type of notification to be sent. */\n type: NotificationType;\n /** The language the notification should be sent on. */\n language: Language;\n /** Tells if the notification is enabled or not. */\n disabled?: boolean;\n}\n\nexport function notificationPropertiesSerializer(item: NotificationProperties): any {\n return {\n destination: item[\"destination\"],\n type: item[\"type\"],\n language: item[\"language\"],\n disabled: item[\"disabled\"],\n };\n}\n\nexport function notificationPropertiesDeserializer(item: any): NotificationProperties {\n return {\n destination: item[\"destination\"],\n type: item[\"type\"],\n language: item[\"language\"],\n disabled: item[\"disabled\"],\n };\n}\n\n/** The type of notification supported */\nexport enum KnownNotificationType {\n /** Notify through e-mail */\n Email = \"Email\",\n}\n\n/**\n * The type of notification supported \\\n * {@link KnownNotificationType} can be used interchangeably with NotificationType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Email**: Notify through e-mail\n */\nexport type NotificationType = string;\n\n/** The notification languages currently supported */\nexport enum KnownLanguage {\n /** American english language */\n EnUs = \"en-us\",\n}\n\n/**\n * The notification languages currently supported \\\n * {@link KnownLanguage} can be used interchangeably with Language,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **en-us**: American english language\n */\nexport type Language = string;\n\n/** Provisioning state */\nexport enum KnownProvisioningState {\n /** Resource has been created. */\n Succeeded = \"Succeeded\",\n /** Resource creation failed. */\n Failed = \"Failed\",\n /** Resource creation was canceled. */\n Canceled = \"Canceled\",\n /** Resource is being deleted. */\n Deleting = \"Deleting\",\n}\n\n/**\n * Provisioning state \\\n * {@link KnownProvisioningState} can be used interchangeably with ProvisioningState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Succeeded**: Resource has been created. \\\n * **Failed**: Resource creation failed. \\\n * **Canceled**: Resource creation was canceled. \\\n * **Deleting**: Resource is being deleted.\n */\nexport type ProvisioningState = string;\n\n/** The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location' */\nexport interface TrackedResource extends Resource {\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The geo-location where the resource lives */\n location: string;\n}\n\nexport function trackedResourceSerializer(item: TrackedResource): any {\n return { tags: item[\"tags\"], location: item[\"location\"] };\n}\n\nexport function trackedResourceDeserializer(item: any): TrackedResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n tags: !item[\"tags\"]\n ? item[\"tags\"]\n : Object.fromEntries(Object.entries(item[\"tags\"]).map(([k, p]: [string, any]) => [k, p])),\n location: item[\"location\"],\n };\n}\n\n/** Common fields that are returned in the response for all Azure Resource Manager resources */\nexport interface Resource {\n /** Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} */\n readonly id?: string;\n /** The name of the resource */\n readonly name?: string;\n /** The type of the resource. E.g. \"Microsoft.Compute/virtualMachines\" or \"Microsoft.Storage/storageAccounts\" */\n readonly type?: string;\n /** Azure Resource Manager metadata containing createdBy and modifiedBy information. */\n readonly systemData?: SystemData;\n}\n\nexport function resourceSerializer(_item: Resource): any {\n return {};\n}\n\nexport function resourceDeserializer(item: any): Resource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n };\n}\n\n/** Metadata pertaining to creation and last modification of the resource. */\nexport interface SystemData {\n /** The identity that created the resource. */\n createdBy?: string;\n /** The type of identity that created the resource. */\n createdByType?: CreatedByType;\n /** The timestamp of resource creation (UTC). */\n createdAt?: Date;\n /** The identity that last modified the resource. */\n lastModifiedBy?: string;\n /** The type of identity that last modified the resource. */\n lastModifiedByType?: CreatedByType;\n /** The timestamp of resource last modification (UTC) */\n lastModifiedAt?: Date;\n}\n\nexport function systemDataDeserializer(item: any): SystemData {\n return {\n createdBy: item[\"createdBy\"],\n createdByType: item[\"createdByType\"],\n createdAt: !item[\"createdAt\"] ? item[\"createdAt\"] : new Date(item[\"createdAt\"]),\n lastModifiedBy: item[\"lastModifiedBy\"],\n lastModifiedByType: item[\"lastModifiedByType\"],\n lastModifiedAt: !item[\"lastModifiedAt\"]\n ? item[\"lastModifiedAt\"]\n : new Date(item[\"lastModifiedAt\"]),\n };\n}\n\n/** The kind of entity that created the resource. */\nexport enum KnownCreatedByType {\n /** The entity was created by a user. */\n User = \"User\",\n /** The entity was created by an application. */\n Application = \"Application\",\n /** The entity was created by a managed identity. */\n ManagedIdentity = \"ManagedIdentity\",\n /** The entity was created by a key. */\n Key = \"Key\",\n}\n\n/**\n * The kind of entity that created the resource. \\\n * {@link KnownCreatedByType} can be used interchangeably with CreatedByType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **User**: The entity was created by a user. \\\n * **Application**: The entity was created by an application. \\\n * **ManagedIdentity**: The entity was created by a managed identity. \\\n * **Key**: The entity was created by a key.\n */\nexport type CreatedByType = string;\n\n/** The provisioning state of a resource type. */\nexport enum KnownResourceProvisioningState {\n /** Resource has been created. */\n Succeeded = \"Succeeded\",\n /** Resource creation failed. */\n Failed = \"Failed\",\n /** Resource creation was canceled. */\n Canceled = \"Canceled\",\n}\n\n/**\n * The provisioning state of a resource type. \\\n * {@link KnownResourceProvisioningState} can be used interchangeably with ResourceProvisioningState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Succeeded**: Resource has been created. \\\n * **Failed**: Resource creation failed. \\\n * **Canceled**: Resource creation was canceled.\n */\nexport type ResourceProvisioningState = string;\n\n/** The type used for update operations of the ScheduledAction. */\nexport interface ScheduledActionUpdate {\n /** Resource tags. */\n tags?: Record<string, string>;\n /** The resource-specific properties for this resource. */\n properties?: ScheduledActionUpdateProperties;\n}\n\nexport function scheduledActionUpdateSerializer(item: ScheduledActionUpdate): any {\n return {\n tags: item[\"tags\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : scheduledActionUpdatePropertiesSerializer(item[\"properties\"]),\n };\n}\n\n/** The updatable properties of the ScheduledAction. */\nexport interface ScheduledActionUpdateProperties {\n /** The type of resource the scheduled action is targeting */\n resourceType?: ResourceType;\n /** The action the scheduled action should perform in the resources */\n actionType?: ScheduledActionType;\n /** The time which the scheduled action is supposed to start running */\n startTime?: string;\n /** The time when the scheduled action is supposed to stop scheduling */\n endTime?: string;\n /** The schedule the scheduled action is supposed to follow */\n schedule?: ScheduledActionsSchedule;\n /** The notification settings for the scheduled action */\n notificationSettings?: NotificationProperties[];\n /** Tell if the scheduled action is disabled or not */\n disabled?: boolean;\n}\n\nexport function scheduledActionUpdatePropertiesSerializer(\n item: ScheduledActionUpdateProperties,\n): any {\n return {\n resourceType: item[\"resourceType\"],\n actionType: item[\"actionType\"],\n startTime: item[\"startTime\"],\n endTime: item[\"endTime\"],\n schedule: !item[\"schedule\"]\n ? item[\"schedule\"]\n : scheduledActionsScheduleSerializer(item[\"schedule\"]),\n notificationSettings: !item[\"notificationSettings\"]\n ? item[\"notificationSettings\"]\n : notificationPropertiesArraySerializer(item[\"notificationSettings\"]),\n disabled: item[\"disabled\"],\n };\n}\n\n/** The response of a ScheduledAction list operation. */\nexport interface _ScheduledActionListResult {\n /** The ScheduledAction items on this page */\n value: ScheduledAction[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _scheduledActionListResultDeserializer(item: any): _ScheduledActionListResult {\n return {\n value: scheduledActionArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function scheduledActionArraySerializer(result: Array<ScheduledAction>): any[] {\n return result.map((item) => {\n return scheduledActionSerializer(item);\n });\n}\n\nexport function scheduledActionArrayDeserializer(result: Array<ScheduledAction>): any[] {\n return result.map((item) => {\n return scheduledActionDeserializer(item);\n });\n}\n\n/** Paged collection of ScheduledActionResource items */\nexport interface _ResourceListResponse {\n /** The ScheduledActionResource items on this page */\n value: ScheduledActionResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _resourceListResponseDeserializer(item: any): _ResourceListResponse {\n return {\n value: scheduledActionResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function scheduledActionResourceArrayDeserializer(\n result: Array<ScheduledActionResource>,\n): any[] {\n return result.map((item) => {\n return scheduledActionResourceDeserializer(item);\n });\n}\n\n/** Represents an scheduled action resource metadata. */\nexport interface ScheduledActionResource {\n /** The name of the resource */\n readonly name: string;\n /** The compute RP resource id of the resource in the scheduled actions scope. */\n readonly id: string;\n /** The type of resource */\n readonly type?: string;\n /**\n * The ARM Id of the resource.\n * \"subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Compute/virtualMachines/{vmName}\"\n */\n resourceId: string;\n /** The desired notification settings for the specified resource. */\n notificationSettings?: NotificationProperties[];\n}\n\nexport function scheduledActionResourceDeserializer(item: any): ScheduledActionResource {\n return {\n name: item[\"name\"],\n id: item[\"id\"],\n type: item[\"type\"],\n resourceId: item[\"resourceId\"],\n notificationSettings: !item[\"notificationSettings\"]\n ? item[\"notificationSettings\"]\n : notificationPropertiesArrayDeserializer(item[\"notificationSettings\"]),\n };\n}\n\n/** Request model to attach a list of scheduled action resources. */\nexport interface ResourceAttachRequestInput {\n /** List of resources to be attached/patched */\n resources: ScheduledActionResourceInput[];\n}\n\nexport function resourceAttachRequestInputSerializer(item: ResourceAttachRequestInput): any {\n return { resources: scheduledActionResourceInputArraySerializer(item[\"resources\"]) };\n}\n\nexport function scheduledActionResourceInputArraySerializer(\n result: Array<ScheduledActionResourceInput>,\n): any[] {\n return result.map((item) => {\n return scheduledActionResourceInputSerializer(item);\n });\n}\n\n/** Represents a scheduled action resource input for write operations. */\nexport interface ScheduledActionResourceInput {\n /**\n * The ARM Id of the resource.\n * \"subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Compute/virtualMachines/{vmName}\"\n */\n resourceId: string;\n /** The desired notification settings for the specified resource. */\n notificationSettings?: NotificationProperties[];\n}\n\nexport function scheduledActionResourceInputSerializer(item: ScheduledActionResourceInput): any {\n return {\n resourceId: item[\"resourceId\"],\n notificationSettings: !item[\"notificationSettings\"]\n ? item[\"notificationSettings\"]\n : notificationPropertiesArraySerializer(item[\"notificationSettings\"]),\n };\n}\n\n/** The response from scheduled action resource requests, which contains the status of each resource */\nexport interface RecurringActionsResourceOperationResult {\n /** The total number of resources operated on */\n totalResources: number;\n /** The resource status of for each resource */\n resourcesStatuses: ResourceStatus[];\n}\n\nexport function recurringActionsResourceOperationResultDeserializer(\n item: any,\n): RecurringActionsResourceOperationResult {\n return {\n totalResources: item[\"totalResources\"],\n resourcesStatuses: resourceStatusArrayDeserializer(item[\"resourcesStatuses\"]),\n };\n}\n\nexport function resourceStatusArrayDeserializer(result: Array<ResourceStatus>): any[] {\n return result.map((item) => {\n return resourceStatusDeserializer(item);\n });\n}\n\n/** The status of a resource after a resource level operation was performed */\nexport interface ResourceStatus {\n /** The arm identifier of the resource */\n resourceId: string;\n /** The state the resource is currently on */\n status: ResourceOperationStatus;\n /** Errors encountered while trying to perform */\n error?: ErrorModel;\n}\n\nexport function resourceStatusDeserializer(item: any): ResourceStatus {\n return {\n resourceId: item[\"resourceId\"],\n status: item[\"status\"],\n error: !item[\"error\"] ? item[\"error\"] : item[\"error\"],\n };\n}\n\n/** The state the resource is on after the resource operation is applied */\nexport enum KnownResourceOperationStatus {\n /** The resource operation was successful */\n Succeeded = \"Succeeded\",\n /** The resource operation has failed. */\n Failed = \"Failed\",\n}\n\n/**\n * The state the resource is on after the resource operation is applied \\\n * {@link KnownResourceOperationStatus} can be used interchangeably with ResourceOperationStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Succeeded**: The resource operation was successful \\\n * **Failed**: The resource operation has failed.\n */\nexport type ResourceOperationStatus = string;\n\n/** Request model to detach a list of scheduled action resources. */\nexport interface ResourceDetachRequest {\n /** List of resources to be detached */\n resources: string[];\n}\n\nexport function resourceDetachRequestSerializer(item: ResourceDetachRequest): any {\n return {\n resources: item[\"resources\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Request model perform a resource operation in a list of resources */\nexport interface ResourcePatchRequestInput {\n /** The list of resources we watch to patch */\n resources: ScheduledActionResourceInput[];\n}\n\nexport function resourcePatchRequestInputSerializer(item: ResourcePatchRequestInput): any {\n return { resources: scheduledActionResourceInputArraySerializer(item[\"resources\"]) };\n}\n\n/** The request to cancel an occurrence. */\nexport interface CancelOccurrenceRequest {\n /** The resources the cancellation should act on. If no resource is passed in the list, Scheduled Action will cancel the occurrence for all resources. */\n resourceIds: string[];\n}\n\nexport function cancelOccurrenceRequestSerializer(item: CancelOccurrenceRequest): any {\n return {\n resourceIds: item[\"resourceIds\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Concrete proxy resource types can be created by aliasing this type using a specific property type. */\nexport interface Occurrence extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: OccurrenceProperties;\n}\n\nexport function occurrenceDeserializer(item: any): Occurrence {\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 : occurrencePropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Properties for an occurrence */\nexport interface OccurrenceProperties {\n /** The time the occurrence is scheduled for. This value can be changed by calling the delay API */\n readonly scheduledTime: Date;\n /** The result for occurrences that achieved a terminal state */\n readonly resultSummary: OccurrenceResultSummary;\n /** The aggregated provisioning state of the occurrence */\n readonly provisioningState?: OccurrenceState;\n}\n\nexport function occurrencePropertiesDeserializer(item: any): OccurrenceProperties {\n return {\n scheduledTime: new Date(item[\"scheduledTime\"]),\n resultSummary: occurrenceResultSummaryDeserializer(item[\"resultSummary\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The summarized provisioning result of an occurrence */\nexport interface OccurrenceResultSummary {\n /** The total number of resources that the occurrence was supposed to act on. */\n total: number;\n /** The summarized status of the resources. */\n statuses: ResourceResultSummary[];\n}\n\nexport function occurrenceResultSummaryDeserializer(item: any): OccurrenceResultSummary {\n return {\n total: item[\"total\"],\n statuses: resourceResultSummaryArrayDeserializer(item[\"statuses\"]),\n };\n}\n\nexport function resourceResultSummaryArrayDeserializer(\n result: Array<ResourceResultSummary>,\n): any[] {\n return result.map((item) => {\n return resourceResultSummaryDeserializer(item);\n });\n}\n\n/** The status of the resources */\nexport interface ResourceResultSummary {\n /** The error code for those resources. In case of success, code is populated with Success. */\n code: string;\n /** The number of resources that the code applies to. */\n count: number;\n /** The error details for the resources. Not populated on success cases. */\n errorDetails?: ErrorModel;\n}\n\nexport function resourceResultSummaryDeserializer(item: any): ResourceResultSummary {\n return {\n code: item[\"code\"],\n count: item[\"count\"],\n errorDetails: !item[\"errorDetails\"] ? item[\"errorDetails\"] : item[\"errorDetails\"],\n };\n}\n\n/** The state the occurrence is at a given time */\nexport enum KnownOccurrenceState {\n /** The occurrence was created */\n Created = \"Created\",\n /** The occurrence is being rescheduled */\n Rescheduling = \"Rescheduling\",\n /** The occurrence has been scheduled */\n Scheduled = \"Scheduled\",\n /** The occurrence has successfully ran */\n Succeeded = \"Succeeded\",\n /** The occurrence has failed during its scheduling */\n Failed = \"Failed\",\n /** The occurrence is going through cancellation */\n Cancelling = \"Cancelling\",\n /** The occurrence has been canceled */\n Canceled = \"Canceled\",\n}\n\n/**\n * The state the occurrence is at a given time \\\n * {@link KnownOccurrenceState} can be used interchangeably with OccurrenceState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Created**: The occurrence was created \\\n * **Rescheduling**: The occurrence is being rescheduled \\\n * **Scheduled**: The occurrence has been scheduled \\\n * **Succeeded**: The occurrence has successfully ran \\\n * **Failed**: The occurrence has failed during its scheduling \\\n * **Cancelling**: The occurrence is going through cancellation \\\n * **Canceled**: The occurrence has been canceled\n */\nexport type OccurrenceState = string;\n\n/** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */\nexport interface ProxyResource extends Resource {}\n\nexport function proxyResourceDeserializer(item: any): ProxyResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n };\n}\n\n/** The response of a ScheduledActionResources list operation. */\nexport interface _ScheduledActionResourcesListResult {\n /** The ScheduledActionResources items on this page */\n value: ScheduledActionResources[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _scheduledActionResourcesListResultDeserializer(\n item: any,\n): _ScheduledActionResourcesListResult {\n return {\n value: scheduledActionResourcesArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function scheduledActionResourcesArrayDeserializer(\n result: Array<ScheduledActionResources>,\n): any[] {\n return result.map((item) => {\n return scheduledActionResourcesDeserializer(item);\n });\n}\n\n/** The scheduled action extension */\nexport interface ScheduledActionResources extends ExtensionResource {\n /** The resource-specific properties for this resource. */\n properties?: ScheduledActionsExtensionProperties;\n}\n\nexport function scheduledActionResourcesDeserializer(item: any): ScheduledActionResources {\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 : scheduledActionsExtensionPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Scheduled action extension properties */\nexport interface ScheduledActionsExtensionProperties {\n /** The type of resource the scheduled action is targeting */\n resourceType: ResourceType;\n /** The action the scheduled action should perform in the resources */\n actionType: ScheduledActionType;\n /** The time which the scheduled action is supposed to start running */\n startTime: string;\n /** The time when the scheduled action is supposed to stop scheduling */\n endTime?: string;\n /** The schedule the scheduled action is supposed to follow */\n schedule: ScheduledActionsSchedule;\n /** The notification settings for the scheduled action */\n notificationSettings: NotificationProperties[];\n /** Tell if the scheduled action is disabled or not */\n disabled?: boolean;\n /** The status of the last provisioning operation performed on the resource. */\n readonly provisioningState?: ProvisioningState;\n /** The notification settings for the scheduled action at a resource level. Resource level notification settings are scope to specific resources only and submitted through attach requests. */\n readonly resourceNotificationSettings?: NotificationProperties[];\n}\n\nexport function scheduledActionsExtensionPropertiesDeserializer(\n item: any,\n): ScheduledActionsExtensionProperties {\n return {\n resourceType: item[\"resourceType\"],\n actionType: item[\"actionType\"],\n startTime: item[\"startTime\"],\n endTime: item[\"endTime\"],\n schedule: scheduledActionsScheduleDeserializer(item[\"schedule\"]),\n notificationSettings: notificationPropertiesArrayDeserializer(item[\"notificationSettings\"]),\n disabled: item[\"disabled\"],\n provisioningState: item[\"provisioningState\"],\n resourceNotificationSettings: !item[\"resourceNotificationSettings\"]\n ? item[\"resourceNotificationSettings\"]\n : notificationPropertiesArrayDeserializer(item[\"resourceNotificationSettings\"]),\n };\n}\n\n/** The base extension resource. */\nexport interface ExtensionResource extends Resource {}\n\nexport function extensionResourceDeserializer(item: any): ExtensionResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n };\n}\n\n/** The response of a Occurrence list operation. */\nexport interface _OccurrenceListResult {\n /** The Occurrence items on this page */\n value: Occurrence[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _occurrenceListResultDeserializer(item: any): _OccurrenceListResult {\n return {\n value: occurrenceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function occurrenceArrayDeserializer(result: Array<Occurrence>): any[] {\n return result.map((item) => {\n return occurrenceDeserializer(item);\n });\n}\n\n/** Paged collection of OccurrenceResource items */\nexport interface _OccurrenceResourceListResponse {\n /** The OccurrenceResource items on this page */\n value: OccurrenceResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _occurrenceResourceListResponseDeserializer(\n item: any,\n): _OccurrenceResourceListResponse {\n return {\n value: occurrenceResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function occurrenceResourceArrayDeserializer(result: Array<OccurrenceResource>): any[] {\n return result.map((item) => {\n return occurrenceResourceDeserializer(item);\n });\n}\n\n/** Represents an scheduled action resource metadata. */\nexport interface OccurrenceResource {\n /** The name of the resource */\n readonly name: string;\n /** The compute RP resource id of the resource in the scheduled actions scope. */\n readonly id: string;\n /** The type of resource */\n readonly type?: string;\n /**\n * The ARM Id of the resource.\n * \"subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Compute/virtualMachines/{vmName}\"\n */\n resourceId: string;\n /** The desired notification settings for the specified resource. */\n notificationSettings?: NotificationProperties[];\n /** The time the occurrence is scheduled for the resource. */\n readonly scheduledTime: Date;\n /** The current state of the resource */\n readonly provisioningState?: ResourceProvisioningState;\n /** Error details for the resource. Only populated if resource is in failed state. */\n readonly errorDetails?: ErrorModel;\n}\n\nexport function occurrenceResourceDeserializer(item: any): OccurrenceResource {\n return {\n name: item[\"name\"],\n id: item[\"id\"],\n type: item[\"type\"],\n resourceId: item[\"resourceId\"],\n notificationSettings: !item[\"notificationSettings\"]\n ? item[\"notificationSettings\"]\n : notificationPropertiesArrayDeserializer(item[\"notificationSettings\"]),\n scheduledTime: new Date(item[\"scheduledTime\"]),\n provisioningState: item[\"provisioningState\"],\n errorDetails: !item[\"errorDetails\"] ? item[\"errorDetails\"] : item[\"errorDetails\"],\n };\n}\n\n/** Request to ask for a delay in an occurrence, delay should be set to client local time eg (ACST) 2025-05-30T22:03:00+09:30, (PST) 2025-05-30T06:35:00-07:00 */\nexport interface DelayRequest {\n /** The exact time to delay the operations to */\n delay: string;\n /** The resources that should be delayed. If empty, the delay will apply to the all resources in the occurrence. */\n resourceIds: string[];\n}\n\nexport function delayRequestSerializer(item: DelayRequest): any {\n return {\n delay: item[\"delay\"],\n resourceIds: item[\"resourceIds\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** The response of a OccurrenceExtensionResource list operation. */\nexport interface _OccurrenceExtensionResourceListResult {\n /** The OccurrenceExtensionResource items on this page */\n value: OccurrenceExtensionResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _occurrenceExtensionResourceListResultDeserializer(\n item: any,\n): _OccurrenceExtensionResourceListResult {\n return {\n value: occurrenceExtensionResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function occurrenceExtensionResourceArrayDeserializer(\n result: Array<OccurrenceExtensionResource>,\n): any[] {\n return result.map((item) => {\n return occurrenceExtensionResourceDeserializer(item);\n });\n}\n\n/** The scheduled action extension */\nexport interface OccurrenceExtensionResource extends ExtensionResource {\n /** The resource-specific properties for this resource. */\n properties?: OccurrenceExtensionProperties;\n}\n\nexport function occurrenceExtensionResourceDeserializer(item: any): OccurrenceExtensionResource {\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 : occurrenceExtensionPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** The properties of the occurrence extension */\nexport interface OccurrenceExtensionProperties {\n /**\n * The ARM Id of the resource.\n * \"subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Compute/virtualMachines/{vmName}\"\n */\n resourceId: string;\n /** The desired notification settings for the specified resource. */\n notificationSettings?: NotificationProperties[];\n /** The time the occurrence is scheduled for the resource. Specified in UTC. */\n readonly scheduledTime: Date;\n /** The current state of the resource */\n readonly provisioningState?: ResourceProvisioningState;\n /** Error details for the resource. Only populated if resource is in failed state. */\n readonly errorDetails?: ErrorModel;\n /** The arm identifier of the scheduled action the occurrence belongs to */\n scheduledActionId: string;\n}\n\nexport function occurrenceExtensionPropertiesDeserializer(\n item: any,\n): OccurrenceExtensionProperties {\n return {\n resourceId: item[\"resourceId\"],\n notificationSettings: !item[\"notificationSettings\"]\n ? item[\"notificationSettings\"]\n : notificationPropertiesArrayDeserializer(item[\"notificationSettings\"]),\n scheduledTime: new Date(item[\"scheduledTime\"]),\n provisioningState: item[\"provisioningState\"],\n errorDetails: !item[\"errorDetails\"] ? item[\"errorDetails\"] : item[\"errorDetails\"],\n scheduledActionId: item[\"scheduledActionId\"],\n };\n}\n\n/** ComputeSchedule API versions */\nexport enum KnownVersions {\n /** 2024-08-15-preview version */\n Versions20240815Preview = \"2024-08-15-preview\",\n /** 2024-10-01 version */\n \"V2024-10-01\" = \"2024-10-01\",\n /** 2025-05-01 version */\n V20250501 = \"2025-05-01\",\n /** 2025-04-15-preview version */\n Versions20250415Preview = \"2025-04-15-preview\",\n /** 2026-01-01-preview version */\n Versions20260101Preview = \"2026-01-01-preview\",\n /** 2026-03-01-preview version */\n Versions20260301Preview = \"2026-03-01-preview\",\n /** 2026-04-15-preview version */\n Versions20260415Preview = \"2026-04-15-preview\",\n}\n"]}