@azure/arm-postgresql-flexible 10.0.0-beta.1 → 10.0.0-beta.2

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 (1004) hide show
  1. package/dist/browser/api/administratorsMicrosoftEntra/operations.d.ts +0 -5
  2. package/dist/browser/api/administratorsMicrosoftEntra/operations.js +19 -16
  3. package/dist/browser/api/administratorsMicrosoftEntra/operations.js.map +1 -1
  4. package/dist/browser/api/advancedThreatProtectionSettings/operations.js +9 -5
  5. package/dist/browser/api/advancedThreatProtectionSettings/operations.js.map +1 -1
  6. package/dist/browser/api/backupsAutomaticAndOnDemand/operations.d.ts +0 -5
  7. package/dist/browser/api/backupsAutomaticAndOnDemand/operations.js +19 -16
  8. package/dist/browser/api/backupsAutomaticAndOnDemand/operations.js.map +1 -1
  9. package/dist/browser/api/backupsLongTermRetention/operations.js +18 -10
  10. package/dist/browser/api/backupsLongTermRetention/operations.js.map +1 -1
  11. package/dist/browser/api/capabilitiesByLocation/operations.js +5 -3
  12. package/dist/browser/api/capabilitiesByLocation/operations.js.map +1 -1
  13. package/dist/browser/api/capabilitiesByServer/operations.js +5 -3
  14. package/dist/browser/api/capabilitiesByServer/operations.js.map +1 -1
  15. package/dist/browser/api/capturedLogs/operations.js +5 -3
  16. package/dist/browser/api/capturedLogs/operations.js.map +1 -1
  17. package/dist/browser/api/configurations/operations.js +19 -11
  18. package/dist/browser/api/configurations/operations.js.map +1 -1
  19. package/dist/browser/api/databases/operations.d.ts +0 -5
  20. package/dist/browser/api/databases/operations.js +19 -16
  21. package/dist/browser/api/databases/operations.js.map +1 -1
  22. package/dist/browser/api/firewallRules/operations.d.ts +0 -5
  23. package/dist/browser/api/firewallRules/operations.js +19 -16
  24. package/dist/browser/api/firewallRules/operations.js.map +1 -1
  25. package/dist/browser/api/maintenanceEvents/index.d.ts +3 -0
  26. package/dist/browser/api/maintenanceEvents/index.js +4 -0
  27. package/dist/browser/api/maintenanceEvents/index.js.map +1 -0
  28. package/dist/browser/api/maintenanceEvents/operations.d.ts +23 -0
  29. package/dist/browser/api/maintenanceEvents/operations.js +147 -0
  30. package/dist/browser/api/maintenanceEvents/operations.js.map +1 -0
  31. package/dist/browser/api/maintenanceEvents/options.d.ts +21 -0
  32. package/dist/browser/api/maintenanceEvents/options.js.map +1 -0
  33. package/dist/browser/api/majorVersionUpgradePrecheck/index.d.ts +3 -0
  34. package/dist/browser/api/majorVersionUpgradePrecheck/index.js +4 -0
  35. package/dist/browser/api/majorVersionUpgradePrecheck/index.js.map +1 -0
  36. package/dist/browser/api/majorVersionUpgradePrecheck/operations.d.ts +14 -0
  37. package/dist/{react-native/api/advancedThreatProtectionSettings → browser/api/majorVersionUpgradePrecheck}/operations.js +24 -20
  38. package/dist/browser/api/majorVersionUpgradePrecheck/operations.js.map +1 -0
  39. package/dist/browser/api/majorVersionUpgradePrecheck/options.d.ts +8 -0
  40. package/dist/browser/api/majorVersionUpgradePrecheck/options.js.map +1 -0
  41. package/dist/browser/api/migrations/operations.d.ts +2 -2
  42. package/dist/browser/api/migrations/operations.js +26 -14
  43. package/dist/browser/api/migrations/operations.js.map +1 -1
  44. package/dist/browser/api/nameAvailability/operations.js +8 -4
  45. package/dist/browser/api/nameAvailability/operations.js.map +1 -1
  46. package/dist/browser/api/operations/operations.js +5 -3
  47. package/dist/browser/api/operations/operations.js.map +1 -1
  48. package/dist/browser/api/postgreSQLManagementFlexibleServerContext.js +4 -2
  49. package/dist/browser/api/postgreSQLManagementFlexibleServerContext.js.map +1 -1
  50. package/dist/browser/api/privateDnsZoneSuffix/operations.js +4 -2
  51. package/dist/browser/api/privateDnsZoneSuffix/operations.js.map +1 -1
  52. package/dist/browser/api/privateEndpointConnections/operations.d.ts +0 -5
  53. package/dist/browser/api/privateEndpointConnections/operations.js +19 -16
  54. package/dist/browser/api/privateEndpointConnections/operations.js.map +1 -1
  55. package/dist/browser/api/privateLinkResources/operations.js +9 -5
  56. package/dist/browser/api/privateLinkResources/operations.js.map +1 -1
  57. package/dist/browser/api/quotaUsages/operations.js +5 -3
  58. package/dist/browser/api/quotaUsages/operations.js.map +1 -1
  59. package/dist/browser/api/replicas/operations.js +5 -3
  60. package/dist/browser/api/replicas/operations.js.map +1 -1
  61. package/dist/browser/api/serverThreatProtectionSettings/operations.js +5 -3
  62. package/dist/browser/api/serverThreatProtectionSettings/operations.js.map +1 -1
  63. package/dist/browser/api/servers/index.d.ts +2 -2
  64. package/dist/browser/api/servers/index.js +1 -1
  65. package/dist/browser/api/servers/index.js.map +1 -1
  66. package/dist/browser/api/servers/operations.d.ts +7 -8
  67. package/dist/browser/api/servers/operations.js +91 -39
  68. package/dist/browser/api/servers/operations.js.map +1 -1
  69. package/dist/browser/api/servers/options.d.ts +5 -0
  70. package/dist/browser/api/servers/options.js.map +1 -1
  71. package/dist/browser/api/tuningOptionsOperations/index.d.ts +3 -0
  72. package/dist/browser/api/tuningOptionsOperations/index.js.map +1 -0
  73. package/dist/{esm/api/tuningOptions → browser/api/tuningOptionsOperations}/operations.d.ts +7 -7
  74. package/dist/browser/api/{tuningOptions → tuningOptionsOperations}/operations.js +14 -8
  75. package/dist/browser/api/tuningOptionsOperations/operations.js.map +1 -0
  76. package/dist/browser/api/{tuningOptions → tuningOptionsOperations}/options.d.ts +3 -3
  77. package/dist/browser/api/tuningOptionsOperations/options.js.map +1 -0
  78. package/dist/browser/api/virtualEndpoints/operations.d.ts +0 -5
  79. package/dist/browser/api/virtualEndpoints/operations.js +24 -19
  80. package/dist/browser/api/virtualEndpoints/operations.js.map +1 -1
  81. package/dist/browser/api/virtualNetworkSubnetUsage/operations.js +4 -2
  82. package/dist/browser/api/virtualNetworkSubnetUsage/operations.js.map +1 -1
  83. package/dist/browser/classic/administratorsMicrosoftEntra/index.d.ts +0 -5
  84. package/dist/browser/classic/administratorsMicrosoftEntra/index.js.map +1 -1
  85. package/dist/browser/classic/backupsAutomaticAndOnDemand/index.d.ts +0 -5
  86. package/dist/browser/classic/backupsAutomaticAndOnDemand/index.js.map +1 -1
  87. package/dist/browser/classic/databases/index.d.ts +0 -5
  88. package/dist/browser/classic/databases/index.js.map +1 -1
  89. package/dist/browser/classic/firewallRules/index.d.ts +0 -5
  90. package/dist/browser/classic/firewallRules/index.js.map +1 -1
  91. package/dist/browser/classic/index.d.ts +3 -1
  92. package/dist/browser/classic/index.js.map +1 -1
  93. package/dist/browser/classic/maintenanceEvents/index.d.ts +27 -0
  94. package/dist/browser/classic/maintenanceEvents/index.js +34 -0
  95. package/dist/browser/classic/maintenanceEvents/index.js.map +1 -0
  96. package/dist/browser/classic/majorVersionUpgradePrecheck/index.d.ts +13 -0
  97. package/dist/browser/classic/majorVersionUpgradePrecheck/index.js +15 -0
  98. package/dist/browser/classic/majorVersionUpgradePrecheck/index.js.map +1 -0
  99. package/dist/browser/classic/migrations/index.d.ts +1 -1
  100. package/dist/browser/classic/migrations/index.js.map +1 -1
  101. package/dist/browser/classic/privateEndpointConnections/index.d.ts +0 -5
  102. package/dist/browser/classic/privateEndpointConnections/index.js.map +1 -1
  103. package/dist/browser/classic/servers/index.d.ts +9 -8
  104. package/dist/browser/classic/servers/index.js +10 -1
  105. package/dist/browser/classic/servers/index.js.map +1 -1
  106. package/dist/browser/classic/tuningOptionsOperations/index.d.ts +15 -0
  107. package/dist/{react-native/classic/tuningOptions → browser/classic/tuningOptionsOperations}/index.js +4 -4
  108. package/dist/browser/classic/tuningOptionsOperations/index.js.map +1 -0
  109. package/dist/browser/classic/virtualEndpoints/index.d.ts +0 -5
  110. package/dist/browser/classic/virtualEndpoints/index.js.map +1 -1
  111. package/dist/browser/index.d.ts +8 -5
  112. package/dist/browser/index.js +2 -1
  113. package/dist/browser/index.js.map +1 -1
  114. package/dist/browser/models/index.d.ts +2 -2
  115. package/dist/browser/models/index.js +1 -1
  116. package/dist/browser/models/index.js.map +1 -1
  117. package/dist/browser/models/models.d.ts +769 -520
  118. package/dist/browser/models/models.js +452 -247
  119. package/dist/browser/models/models.js.map +1 -1
  120. package/dist/browser/postgreSQLManagementFlexibleServerClient.d.ts +9 -3
  121. package/dist/browser/postgreSQLManagementFlexibleServerClient.js +12 -4
  122. package/dist/browser/postgreSQLManagementFlexibleServerClient.js.map +1 -1
  123. package/dist/browser/restorePollerHelpers.js +8 -1
  124. package/dist/browser/restorePollerHelpers.js.map +1 -1
  125. package/dist/browser/static-helpers/pagingHelpers.js +1 -1
  126. package/dist/browser/static-helpers/pagingHelpers.js.map +1 -1
  127. package/dist/browser/static-helpers/pollingHelpers.d.ts +1 -1
  128. package/dist/browser/static-helpers/pollingHelpers.js +1 -1
  129. package/dist/browser/static-helpers/pollingHelpers.js.map +1 -1
  130. package/dist/browser/static-helpers/simplePollerHelpers.d.ts +1 -1
  131. package/dist/browser/static-helpers/simplePollerHelpers.js.map +1 -1
  132. package/dist/commonjs/api/administratorsMicrosoftEntra/index.js +1 -0
  133. package/dist/commonjs/api/administratorsMicrosoftEntra/index.js.map +1 -1
  134. package/dist/commonjs/api/administratorsMicrosoftEntra/operations.d.ts +0 -5
  135. package/dist/commonjs/api/administratorsMicrosoftEntra/operations.js +20 -11
  136. package/dist/commonjs/api/administratorsMicrosoftEntra/operations.js.map +3 -3
  137. package/dist/commonjs/api/administratorsMicrosoftEntra/options.js +1 -0
  138. package/dist/commonjs/api/administratorsMicrosoftEntra/options.js.map +1 -1
  139. package/dist/commonjs/api/advancedThreatProtectionSettings/index.js +1 -0
  140. package/dist/commonjs/api/advancedThreatProtectionSettings/index.js.map +1 -1
  141. package/dist/commonjs/api/advancedThreatProtectionSettings/operations.js +10 -5
  142. package/dist/commonjs/api/advancedThreatProtectionSettings/operations.js.map +3 -3
  143. package/dist/commonjs/api/advancedThreatProtectionSettings/options.js +1 -0
  144. package/dist/commonjs/api/advancedThreatProtectionSettings/options.js.map +1 -1
  145. package/dist/commonjs/api/backupsAutomaticAndOnDemand/index.js +1 -0
  146. package/dist/commonjs/api/backupsAutomaticAndOnDemand/index.js.map +1 -1
  147. package/dist/commonjs/api/backupsAutomaticAndOnDemand/operations.d.ts +0 -5
  148. package/dist/commonjs/api/backupsAutomaticAndOnDemand/operations.js +20 -11
  149. package/dist/commonjs/api/backupsAutomaticAndOnDemand/operations.js.map +3 -3
  150. package/dist/commonjs/api/backupsAutomaticAndOnDemand/options.js +1 -0
  151. package/dist/commonjs/api/backupsAutomaticAndOnDemand/options.js.map +1 -1
  152. package/dist/commonjs/api/backupsLongTermRetention/index.js +1 -0
  153. package/dist/commonjs/api/backupsLongTermRetention/index.js.map +1 -1
  154. package/dist/commonjs/api/backupsLongTermRetention/operations.js +19 -10
  155. package/dist/commonjs/api/backupsLongTermRetention/operations.js.map +3 -3
  156. package/dist/commonjs/api/backupsLongTermRetention/options.js +1 -0
  157. package/dist/commonjs/api/backupsLongTermRetention/options.js.map +1 -1
  158. package/dist/commonjs/api/capabilitiesByLocation/index.js +1 -0
  159. package/dist/commonjs/api/capabilitiesByLocation/index.js.map +1 -1
  160. package/dist/commonjs/api/capabilitiesByLocation/operations.js +6 -3
  161. package/dist/commonjs/api/capabilitiesByLocation/operations.js.map +3 -3
  162. package/dist/commonjs/api/capabilitiesByLocation/options.js +1 -0
  163. package/dist/commonjs/api/capabilitiesByLocation/options.js.map +1 -1
  164. package/dist/commonjs/api/capabilitiesByServer/index.js +1 -0
  165. package/dist/commonjs/api/capabilitiesByServer/index.js.map +1 -1
  166. package/dist/commonjs/api/capabilitiesByServer/operations.js +6 -3
  167. package/dist/commonjs/api/capabilitiesByServer/operations.js.map +3 -3
  168. package/dist/commonjs/api/capabilitiesByServer/options.js +1 -0
  169. package/dist/commonjs/api/capabilitiesByServer/options.js.map +1 -1
  170. package/dist/commonjs/api/capturedLogs/index.js +1 -0
  171. package/dist/commonjs/api/capturedLogs/index.js.map +1 -1
  172. package/dist/commonjs/api/capturedLogs/operations.js +6 -3
  173. package/dist/commonjs/api/capturedLogs/operations.js.map +3 -3
  174. package/dist/commonjs/api/capturedLogs/options.js +1 -0
  175. package/dist/commonjs/api/capturedLogs/options.js.map +1 -1
  176. package/dist/commonjs/api/configurations/index.js +1 -0
  177. package/dist/commonjs/api/configurations/index.js.map +1 -1
  178. package/dist/commonjs/api/configurations/operations.js +20 -11
  179. package/dist/commonjs/api/configurations/operations.js.map +3 -3
  180. package/dist/commonjs/api/configurations/options.js +1 -0
  181. package/dist/commonjs/api/configurations/options.js.map +1 -1
  182. package/dist/commonjs/api/databases/index.js +1 -0
  183. package/dist/commonjs/api/databases/index.js.map +1 -1
  184. package/dist/commonjs/api/databases/operations.d.ts +0 -5
  185. package/dist/commonjs/api/databases/operations.js +20 -11
  186. package/dist/commonjs/api/databases/operations.js.map +3 -3
  187. package/dist/commonjs/api/databases/options.js +1 -0
  188. package/dist/commonjs/api/databases/options.js.map +1 -1
  189. package/dist/commonjs/api/firewallRules/index.js +1 -0
  190. package/dist/commonjs/api/firewallRules/index.js.map +1 -1
  191. package/dist/commonjs/api/firewallRules/operations.d.ts +0 -5
  192. package/dist/commonjs/api/firewallRules/operations.js +20 -11
  193. package/dist/commonjs/api/firewallRules/operations.js.map +3 -3
  194. package/dist/commonjs/api/firewallRules/options.js +1 -0
  195. package/dist/commonjs/api/firewallRules/options.js.map +1 -1
  196. package/dist/commonjs/api/index.js +1 -0
  197. package/dist/commonjs/api/index.js.map +1 -1
  198. package/dist/commonjs/api/maintenanceEvents/index.d.ts +3 -0
  199. package/dist/commonjs/api/maintenanceEvents/index.js +34 -0
  200. package/dist/commonjs/api/maintenanceEvents/index.js.map +7 -0
  201. package/dist/commonjs/api/maintenanceEvents/operations.d.ts +23 -0
  202. package/dist/commonjs/api/maintenanceEvents/operations.js +217 -0
  203. package/dist/commonjs/api/maintenanceEvents/operations.js.map +7 -0
  204. package/dist/commonjs/api/maintenanceEvents/options.d.ts +21 -0
  205. package/dist/commonjs/api/{tuningOptions → maintenanceEvents}/options.js +1 -0
  206. package/dist/commonjs/api/maintenanceEvents/options.js.map +7 -0
  207. package/dist/commonjs/api/majorVersionUpgradePrecheck/index.d.ts +3 -0
  208. package/dist/commonjs/api/majorVersionUpgradePrecheck/index.js +30 -0
  209. package/dist/commonjs/api/majorVersionUpgradePrecheck/index.js.map +7 -0
  210. package/dist/commonjs/api/majorVersionUpgradePrecheck/operations.d.ts +14 -0
  211. package/dist/commonjs/api/majorVersionUpgradePrecheck/operations.js +123 -0
  212. package/dist/commonjs/api/majorVersionUpgradePrecheck/operations.js.map +7 -0
  213. package/dist/commonjs/api/majorVersionUpgradePrecheck/options.d.ts +8 -0
  214. package/dist/commonjs/api/majorVersionUpgradePrecheck/options.js +16 -0
  215. package/dist/commonjs/api/majorVersionUpgradePrecheck/options.js.map +7 -0
  216. package/dist/commonjs/api/migrations/index.js +1 -0
  217. package/dist/commonjs/api/migrations/index.js.map +1 -1
  218. package/dist/commonjs/api/migrations/operations.d.ts +2 -2
  219. package/dist/commonjs/api/migrations/operations.js +27 -14
  220. package/dist/commonjs/api/migrations/operations.js.map +3 -3
  221. package/dist/commonjs/api/migrations/options.js +1 -0
  222. package/dist/commonjs/api/migrations/options.js.map +1 -1
  223. package/dist/commonjs/api/nameAvailability/index.js +1 -0
  224. package/dist/commonjs/api/nameAvailability/index.js.map +1 -1
  225. package/dist/commonjs/api/nameAvailability/operations.js +9 -4
  226. package/dist/commonjs/api/nameAvailability/operations.js.map +3 -3
  227. package/dist/commonjs/api/nameAvailability/options.js +1 -0
  228. package/dist/commonjs/api/nameAvailability/options.js.map +1 -1
  229. package/dist/commonjs/api/operations/index.js +1 -0
  230. package/dist/commonjs/api/operations/index.js.map +1 -1
  231. package/dist/commonjs/api/operations/operations.js +6 -3
  232. package/dist/commonjs/api/operations/operations.js.map +3 -3
  233. package/dist/commonjs/api/operations/options.js +1 -0
  234. package/dist/commonjs/api/operations/options.js.map +1 -1
  235. package/dist/commonjs/api/postgreSQLManagementFlexibleServerContext.js +5 -2
  236. package/dist/commonjs/api/postgreSQLManagementFlexibleServerContext.js.map +3 -3
  237. package/dist/commonjs/api/privateDnsZoneSuffix/index.js +1 -0
  238. package/dist/commonjs/api/privateDnsZoneSuffix/index.js.map +1 -1
  239. package/dist/commonjs/api/privateDnsZoneSuffix/operations.js +5 -2
  240. package/dist/commonjs/api/privateDnsZoneSuffix/operations.js.map +3 -3
  241. package/dist/commonjs/api/privateDnsZoneSuffix/options.js +1 -0
  242. package/dist/commonjs/api/privateDnsZoneSuffix/options.js.map +1 -1
  243. package/dist/commonjs/api/privateEndpointConnections/index.js +1 -0
  244. package/dist/commonjs/api/privateEndpointConnections/index.js.map +1 -1
  245. package/dist/commonjs/api/privateEndpointConnections/operations.d.ts +0 -5
  246. package/dist/commonjs/api/privateEndpointConnections/operations.js +20 -11
  247. package/dist/commonjs/api/privateEndpointConnections/operations.js.map +3 -3
  248. package/dist/commonjs/api/privateEndpointConnections/options.js +1 -0
  249. package/dist/commonjs/api/privateEndpointConnections/options.js.map +1 -1
  250. package/dist/commonjs/api/privateLinkResources/index.js +1 -0
  251. package/dist/commonjs/api/privateLinkResources/index.js.map +1 -1
  252. package/dist/commonjs/api/privateLinkResources/operations.js +10 -5
  253. package/dist/commonjs/api/privateLinkResources/operations.js.map +3 -3
  254. package/dist/commonjs/api/privateLinkResources/options.js +1 -0
  255. package/dist/commonjs/api/privateLinkResources/options.js.map +1 -1
  256. package/dist/commonjs/api/quotaUsages/index.js +1 -0
  257. package/dist/commonjs/api/quotaUsages/index.js.map +1 -1
  258. package/dist/commonjs/api/quotaUsages/operations.js +6 -3
  259. package/dist/commonjs/api/quotaUsages/operations.js.map +3 -3
  260. package/dist/commonjs/api/quotaUsages/options.js +1 -0
  261. package/dist/commonjs/api/quotaUsages/options.js.map +1 -1
  262. package/dist/commonjs/api/replicas/index.js +1 -0
  263. package/dist/commonjs/api/replicas/index.js.map +1 -1
  264. package/dist/commonjs/api/replicas/operations.js +6 -3
  265. package/dist/commonjs/api/replicas/operations.js.map +3 -3
  266. package/dist/commonjs/api/replicas/options.js +1 -0
  267. package/dist/commonjs/api/replicas/options.js.map +1 -1
  268. package/dist/commonjs/api/serverThreatProtectionSettings/index.js +1 -0
  269. package/dist/commonjs/api/serverThreatProtectionSettings/index.js.map +1 -1
  270. package/dist/commonjs/api/serverThreatProtectionSettings/operations.js +6 -3
  271. package/dist/commonjs/api/serverThreatProtectionSettings/operations.js.map +3 -3
  272. package/dist/commonjs/api/serverThreatProtectionSettings/options.js +1 -0
  273. package/dist/commonjs/api/serverThreatProtectionSettings/options.js.map +1 -1
  274. package/dist/commonjs/api/servers/index.d.ts +2 -2
  275. package/dist/commonjs/api/servers/index.js +3 -0
  276. package/dist/commonjs/api/servers/index.js.map +3 -3
  277. package/dist/commonjs/api/servers/operations.d.ts +7 -8
  278. package/dist/commonjs/api/servers/operations.js +108 -30
  279. package/dist/commonjs/api/servers/operations.js.map +3 -3
  280. package/dist/commonjs/api/servers/options.d.ts +5 -0
  281. package/dist/commonjs/api/servers/options.js +1 -0
  282. package/dist/commonjs/api/servers/options.js.map +2 -2
  283. package/dist/commonjs/api/tuningOptionsOperations/index.d.ts +3 -0
  284. package/dist/commonjs/api/{tuningOptions → tuningOptionsOperations}/index.js +4 -3
  285. package/dist/commonjs/api/{tuningOptions → tuningOptionsOperations}/index.js.map +2 -2
  286. package/dist/commonjs/api/{tuningOptions → tuningOptionsOperations}/operations.d.ts +7 -7
  287. package/dist/commonjs/api/{tuningOptions → tuningOptionsOperations}/operations.js +15 -8
  288. package/dist/commonjs/api/tuningOptionsOperations/operations.js.map +7 -0
  289. package/dist/{react-native/api/tuningOptions → commonjs/api/tuningOptionsOperations}/options.d.ts +3 -3
  290. package/dist/commonjs/api/tuningOptionsOperations/options.js +16 -0
  291. package/dist/commonjs/api/tuningOptionsOperations/options.js.map +7 -0
  292. package/dist/commonjs/api/virtualEndpoints/index.js +1 -0
  293. package/dist/commonjs/api/virtualEndpoints/index.js.map +1 -1
  294. package/dist/commonjs/api/virtualEndpoints/operations.d.ts +0 -5
  295. package/dist/commonjs/api/virtualEndpoints/operations.js +25 -14
  296. package/dist/commonjs/api/virtualEndpoints/operations.js.map +3 -3
  297. package/dist/commonjs/api/virtualEndpoints/options.js +1 -0
  298. package/dist/commonjs/api/virtualEndpoints/options.js.map +1 -1
  299. package/dist/commonjs/api/virtualNetworkSubnetUsage/index.js +1 -0
  300. package/dist/commonjs/api/virtualNetworkSubnetUsage/index.js.map +1 -1
  301. package/dist/commonjs/api/virtualNetworkSubnetUsage/operations.js +5 -2
  302. package/dist/commonjs/api/virtualNetworkSubnetUsage/operations.js.map +3 -3
  303. package/dist/commonjs/api/virtualNetworkSubnetUsage/options.js +1 -0
  304. package/dist/commonjs/api/virtualNetworkSubnetUsage/options.js.map +1 -1
  305. package/dist/commonjs/classic/administratorsMicrosoftEntra/index.d.ts +0 -5
  306. package/dist/commonjs/classic/administratorsMicrosoftEntra/index.js +1 -0
  307. package/dist/commonjs/classic/administratorsMicrosoftEntra/index.js.map +3 -3
  308. package/dist/commonjs/classic/advancedThreatProtectionSettings/index.js +1 -0
  309. package/dist/commonjs/classic/advancedThreatProtectionSettings/index.js.map +1 -1
  310. package/dist/commonjs/classic/backupsAutomaticAndOnDemand/index.d.ts +0 -5
  311. package/dist/commonjs/classic/backupsAutomaticAndOnDemand/index.js +1 -0
  312. package/dist/commonjs/classic/backupsAutomaticAndOnDemand/index.js.map +3 -3
  313. package/dist/commonjs/classic/backupsLongTermRetention/index.js +1 -0
  314. package/dist/commonjs/classic/backupsLongTermRetention/index.js.map +1 -1
  315. package/dist/commonjs/classic/capabilitiesByLocation/index.js +1 -0
  316. package/dist/commonjs/classic/capabilitiesByLocation/index.js.map +1 -1
  317. package/dist/commonjs/classic/capabilitiesByServer/index.js +1 -0
  318. package/dist/commonjs/classic/capabilitiesByServer/index.js.map +1 -1
  319. package/dist/commonjs/classic/capturedLogs/index.js +1 -0
  320. package/dist/commonjs/classic/capturedLogs/index.js.map +1 -1
  321. package/dist/commonjs/classic/configurations/index.js +1 -0
  322. package/dist/commonjs/classic/configurations/index.js.map +1 -1
  323. package/dist/commonjs/classic/databases/index.d.ts +0 -5
  324. package/dist/commonjs/classic/databases/index.js +1 -0
  325. package/dist/commonjs/classic/databases/index.js.map +3 -3
  326. package/dist/commonjs/classic/firewallRules/index.d.ts +0 -5
  327. package/dist/commonjs/classic/firewallRules/index.js +1 -0
  328. package/dist/commonjs/classic/firewallRules/index.js.map +3 -3
  329. package/dist/commonjs/classic/index.d.ts +3 -1
  330. package/dist/commonjs/classic/index.js +1 -0
  331. package/dist/commonjs/classic/index.js.map +2 -2
  332. package/dist/commonjs/classic/maintenanceEvents/index.d.ts +27 -0
  333. package/dist/commonjs/classic/maintenanceEvents/index.js +72 -0
  334. package/dist/commonjs/classic/maintenanceEvents/index.js.map +7 -0
  335. package/dist/commonjs/classic/majorVersionUpgradePrecheck/index.d.ts +13 -0
  336. package/dist/commonjs/classic/majorVersionUpgradePrecheck/index.js +39 -0
  337. package/dist/commonjs/classic/majorVersionUpgradePrecheck/index.js.map +7 -0
  338. package/dist/commonjs/classic/migrations/index.d.ts +1 -1
  339. package/dist/commonjs/classic/migrations/index.js +1 -0
  340. package/dist/commonjs/classic/migrations/index.js.map +2 -2
  341. package/dist/commonjs/classic/nameAvailability/index.js +1 -0
  342. package/dist/commonjs/classic/nameAvailability/index.js.map +1 -1
  343. package/dist/commonjs/classic/operations/index.js +1 -0
  344. package/dist/commonjs/classic/operations/index.js.map +1 -1
  345. package/dist/commonjs/classic/privateDnsZoneSuffix/index.js +1 -0
  346. package/dist/commonjs/classic/privateDnsZoneSuffix/index.js.map +1 -1
  347. package/dist/commonjs/classic/privateEndpointConnections/index.d.ts +0 -5
  348. package/dist/commonjs/classic/privateEndpointConnections/index.js +1 -0
  349. package/dist/commonjs/classic/privateEndpointConnections/index.js.map +3 -3
  350. package/dist/commonjs/classic/privateLinkResources/index.js +1 -0
  351. package/dist/commonjs/classic/privateLinkResources/index.js.map +1 -1
  352. package/dist/commonjs/classic/quotaUsages/index.js +1 -0
  353. package/dist/commonjs/classic/quotaUsages/index.js.map +1 -1
  354. package/dist/commonjs/classic/replicas/index.js +1 -0
  355. package/dist/commonjs/classic/replicas/index.js.map +1 -1
  356. package/dist/commonjs/classic/serverThreatProtectionSettings/index.js +1 -0
  357. package/dist/commonjs/classic/serverThreatProtectionSettings/index.js.map +1 -1
  358. package/dist/commonjs/classic/servers/index.d.ts +9 -8
  359. package/dist/commonjs/classic/servers/index.js +22 -0
  360. package/dist/commonjs/classic/servers/index.js.map +3 -3
  361. package/dist/commonjs/classic/tuningOptionsOperations/index.d.ts +15 -0
  362. package/dist/commonjs/classic/{tuningOptions → tuningOptionsOperations}/index.js +10 -9
  363. package/dist/commonjs/classic/tuningOptionsOperations/index.js.map +7 -0
  364. package/dist/commonjs/classic/virtualEndpoints/index.d.ts +0 -5
  365. package/dist/commonjs/classic/virtualEndpoints/index.js +1 -0
  366. package/dist/commonjs/classic/virtualEndpoints/index.js.map +3 -3
  367. package/dist/commonjs/classic/virtualNetworkSubnetUsage/index.js +1 -0
  368. package/dist/commonjs/classic/virtualNetworkSubnetUsage/index.js.map +1 -1
  369. package/dist/commonjs/index.d.ts +8 -5
  370. package/dist/commonjs/index.js +14 -0
  371. package/dist/commonjs/index.js.map +3 -3
  372. package/dist/commonjs/logger.js +1 -0
  373. package/dist/commonjs/logger.js.map +1 -1
  374. package/dist/commonjs/models/index.d.ts +2 -2
  375. package/dist/commonjs/models/index.js +9 -0
  376. package/dist/commonjs/models/index.js.map +3 -3
  377. package/dist/commonjs/models/models.d.ts +769 -520
  378. package/dist/commonjs/models/models.js +211 -8
  379. package/dist/commonjs/models/models.js.map +4 -4
  380. package/dist/commonjs/postgreSQLManagementFlexibleServerClient.d.ts +9 -3
  381. package/dist/commonjs/postgreSQLManagementFlexibleServerClient.js +13 -4
  382. package/dist/commonjs/postgreSQLManagementFlexibleServerClient.js.map +3 -3
  383. package/dist/commonjs/restorePollerHelpers.js +32 -24
  384. package/dist/commonjs/restorePollerHelpers.js.map +3 -3
  385. package/dist/commonjs/static-helpers/cloudSettingHelpers.js +1 -0
  386. package/dist/commonjs/static-helpers/cloudSettingHelpers.js.map +1 -1
  387. package/dist/commonjs/static-helpers/pagingHelpers.js +2 -1
  388. package/dist/commonjs/static-helpers/pagingHelpers.js.map +3 -3
  389. package/dist/commonjs/static-helpers/pollingHelpers.d.ts +1 -1
  390. package/dist/commonjs/static-helpers/pollingHelpers.js +2 -1
  391. package/dist/commonjs/static-helpers/pollingHelpers.js.map +3 -3
  392. package/dist/commonjs/static-helpers/serialization/check-prop-undefined.js +1 -0
  393. package/dist/commonjs/static-helpers/serialization/check-prop-undefined.js.map +1 -1
  394. package/dist/commonjs/static-helpers/simplePollerHelpers.d.ts +1 -1
  395. package/dist/commonjs/static-helpers/simplePollerHelpers.js +1 -0
  396. package/dist/commonjs/static-helpers/simplePollerHelpers.js.map +2 -2
  397. package/dist/commonjs/static-helpers/urlTemplate.js +1 -0
  398. package/dist/commonjs/static-helpers/urlTemplate.js.map +1 -1
  399. package/dist/commonjs/tsdoc-metadata.json +1 -1
  400. package/dist/esm/api/administratorsMicrosoftEntra/index.js +4 -7
  401. package/dist/esm/api/administratorsMicrosoftEntra/index.js.map +1 -7
  402. package/dist/esm/api/administratorsMicrosoftEntra/operations.d.ts +0 -5
  403. package/dist/esm/api/administratorsMicrosoftEntra/operations.js +123 -149
  404. package/dist/esm/api/administratorsMicrosoftEntra/operations.js.map +1 -7
  405. package/dist/esm/api/administratorsMicrosoftEntra/options.js +4 -0
  406. package/dist/esm/api/administratorsMicrosoftEntra/options.js.map +1 -7
  407. package/dist/esm/api/advancedThreatProtectionSettings/index.js +4 -5
  408. package/dist/esm/api/advancedThreatProtectionSettings/index.js.map +1 -7
  409. package/dist/esm/api/advancedThreatProtectionSettings/operations.js +61 -84
  410. package/dist/esm/api/advancedThreatProtectionSettings/operations.js.map +1 -7
  411. package/dist/esm/api/advancedThreatProtectionSettings/options.js +4 -0
  412. package/dist/esm/api/advancedThreatProtectionSettings/options.js.map +1 -7
  413. package/dist/esm/api/backupsAutomaticAndOnDemand/index.js +4 -7
  414. package/dist/esm/api/backupsAutomaticAndOnDemand/index.js.map +1 -7
  415. package/dist/esm/api/backupsAutomaticAndOnDemand/operations.d.ts +0 -5
  416. package/dist/esm/api/backupsAutomaticAndOnDemand/operations.js +119 -144
  417. package/dist/esm/api/backupsAutomaticAndOnDemand/operations.js.map +1 -7
  418. package/dist/esm/api/backupsAutomaticAndOnDemand/options.js +4 -0
  419. package/dist/esm/api/backupsAutomaticAndOnDemand/options.js.map +1 -7
  420. package/dist/esm/api/backupsLongTermRetention/index.js +4 -7
  421. package/dist/esm/api/backupsLongTermRetention/index.js.map +1 -7
  422. package/dist/esm/api/backupsLongTermRetention/operations.js +122 -157
  423. package/dist/esm/api/backupsLongTermRetention/operations.js.map +1 -7
  424. package/dist/esm/api/backupsLongTermRetention/options.js +4 -0
  425. package/dist/esm/api/backupsLongTermRetention/options.js.map +1 -7
  426. package/dist/esm/api/capabilitiesByLocation/index.js +4 -4
  427. package/dist/esm/api/capabilitiesByLocation/index.js.map +1 -7
  428. package/dist/esm/api/capabilitiesByLocation/operations.js +32 -41
  429. package/dist/esm/api/capabilitiesByLocation/operations.js.map +1 -7
  430. package/dist/esm/api/capabilitiesByLocation/options.js +4 -0
  431. package/dist/esm/api/capabilitiesByLocation/options.js.map +1 -7
  432. package/dist/esm/api/capabilitiesByServer/index.js +4 -4
  433. package/dist/esm/api/capabilitiesByServer/index.js.map +1 -7
  434. package/dist/esm/api/capabilitiesByServer/operations.js +33 -42
  435. package/dist/esm/api/capabilitiesByServer/operations.js.map +1 -7
  436. package/dist/esm/api/capabilitiesByServer/options.js +4 -0
  437. package/dist/esm/api/capabilitiesByServer/options.js.map +1 -7
  438. package/dist/esm/api/capturedLogs/index.js +4 -4
  439. package/dist/esm/api/capturedLogs/index.js.map +1 -7
  440. package/dist/esm/api/capturedLogs/operations.js +33 -42
  441. package/dist/esm/api/capturedLogs/operations.js.map +1 -7
  442. package/dist/esm/api/capturedLogs/options.js +4 -0
  443. package/dist/esm/api/capturedLogs/options.js.map +1 -7
  444. package/dist/esm/api/configurations/index.js +4 -7
  445. package/dist/esm/api/configurations/index.js.map +1 -7
  446. package/dist/esm/api/configurations/operations.js +127 -153
  447. package/dist/esm/api/configurations/operations.js.map +1 -7
  448. package/dist/esm/api/configurations/options.js +4 -0
  449. package/dist/esm/api/configurations/options.js.map +1 -7
  450. package/dist/esm/api/databases/index.js +4 -7
  451. package/dist/esm/api/databases/index.js.map +1 -7
  452. package/dist/esm/api/databases/operations.d.ts +0 -5
  453. package/dist/esm/api/databases/operations.js +123 -149
  454. package/dist/esm/api/databases/operations.js.map +1 -7
  455. package/dist/esm/api/databases/options.js +4 -0
  456. package/dist/esm/api/databases/options.js.map +1 -7
  457. package/dist/esm/api/firewallRules/index.js +4 -7
  458. package/dist/esm/api/firewallRules/index.js.map +1 -7
  459. package/dist/esm/api/firewallRules/operations.d.ts +0 -5
  460. package/dist/esm/api/firewallRules/operations.js +123 -156
  461. package/dist/esm/api/firewallRules/operations.js.map +1 -7
  462. package/dist/esm/api/firewallRules/options.js +4 -0
  463. package/dist/esm/api/firewallRules/options.js.map +1 -7
  464. package/dist/esm/api/index.js +4 -4
  465. package/dist/esm/api/index.js.map +1 -7
  466. package/dist/esm/api/maintenanceEvents/index.d.ts +3 -0
  467. package/dist/esm/api/maintenanceEvents/index.js +4 -0
  468. package/dist/esm/api/maintenanceEvents/index.js.map +1 -0
  469. package/dist/esm/api/maintenanceEvents/operations.d.ts +23 -0
  470. package/dist/esm/api/maintenanceEvents/operations.js +147 -0
  471. package/dist/esm/api/maintenanceEvents/operations.js.map +1 -0
  472. package/dist/esm/api/maintenanceEvents/options.d.ts +21 -0
  473. package/dist/esm/api/maintenanceEvents/options.js.map +1 -0
  474. package/dist/esm/api/majorVersionUpgradePrecheck/index.d.ts +3 -0
  475. package/dist/esm/api/majorVersionUpgradePrecheck/index.js +4 -0
  476. package/dist/esm/api/majorVersionUpgradePrecheck/index.js.map +1 -0
  477. package/dist/esm/api/majorVersionUpgradePrecheck/operations.d.ts +14 -0
  478. package/dist/{react-native/api/privateLinkResources → esm/api/majorVersionUpgradePrecheck}/operations.js +24 -20
  479. package/dist/esm/api/majorVersionUpgradePrecheck/operations.js.map +1 -0
  480. package/dist/esm/api/majorVersionUpgradePrecheck/options.d.ts +8 -0
  481. package/dist/esm/api/majorVersionUpgradePrecheck/options.js.map +1 -0
  482. package/dist/esm/api/migrations/index.js +4 -16
  483. package/dist/esm/api/migrations/index.js.map +1 -7
  484. package/dist/esm/api/migrations/operations.d.ts +2 -2
  485. package/dist/esm/api/migrations/operations.js +190 -247
  486. package/dist/esm/api/migrations/operations.js.map +1 -7
  487. package/dist/esm/api/migrations/options.js +4 -0
  488. package/dist/esm/api/migrations/options.js.map +1 -7
  489. package/dist/esm/api/nameAvailability/index.js +4 -5
  490. package/dist/esm/api/nameAvailability/index.js.map +1 -7
  491. package/dist/esm/api/nameAvailability/operations.js +58 -69
  492. package/dist/esm/api/nameAvailability/operations.js.map +1 -7
  493. package/dist/esm/api/nameAvailability/options.js +4 -0
  494. package/dist/esm/api/nameAvailability/options.js.map +1 -7
  495. package/dist/esm/api/operations/index.js +4 -4
  496. package/dist/esm/api/operations/index.js.map +1 -7
  497. package/dist/esm/api/operations/operations.js +30 -39
  498. package/dist/esm/api/operations/operations.js.map +1 -7
  499. package/dist/esm/api/operations/options.js +4 -0
  500. package/dist/esm/api/operations/options.js.map +1 -7
  501. package/dist/esm/api/postgreSQLManagementFlexibleServerContext.js +26 -21
  502. package/dist/esm/api/postgreSQLManagementFlexibleServerContext.js.map +1 -7
  503. package/dist/esm/api/privateDnsZoneSuffix/index.js +4 -4
  504. package/dist/esm/api/privateDnsZoneSuffix/index.js.map +1 -7
  505. package/dist/esm/api/privateDnsZoneSuffix/operations.js +27 -30
  506. package/dist/esm/api/privateDnsZoneSuffix/operations.js.map +1 -7
  507. package/dist/esm/api/privateDnsZoneSuffix/options.js +4 -0
  508. package/dist/esm/api/privateDnsZoneSuffix/options.js.map +1 -7
  509. package/dist/esm/api/privateEndpointConnections/index.js +4 -7
  510. package/dist/esm/api/privateEndpointConnections/index.js.map +1 -7
  511. package/dist/esm/api/privateEndpointConnections/operations.d.ts +0 -5
  512. package/dist/esm/api/privateEndpointConnections/operations.js +123 -162
  513. package/dist/esm/api/privateEndpointConnections/operations.js.map +1 -7
  514. package/dist/esm/api/privateEndpointConnections/options.js +4 -0
  515. package/dist/esm/api/privateEndpointConnections/options.js.map +1 -7
  516. package/dist/esm/api/privateLinkResources/index.js +4 -5
  517. package/dist/esm/api/privateLinkResources/index.js.map +1 -7
  518. package/dist/esm/api/privateLinkResources/operations.js +61 -78
  519. package/dist/esm/api/privateLinkResources/operations.js.map +1 -7
  520. package/dist/esm/api/privateLinkResources/options.js +4 -0
  521. package/dist/esm/api/privateLinkResources/options.js.map +1 -7
  522. package/dist/esm/api/quotaUsages/index.js +4 -4
  523. package/dist/esm/api/quotaUsages/index.js.map +1 -7
  524. package/dist/esm/api/quotaUsages/operations.js +32 -41
  525. package/dist/esm/api/quotaUsages/operations.js.map +1 -7
  526. package/dist/esm/api/quotaUsages/options.js +4 -0
  527. package/dist/esm/api/quotaUsages/options.js.map +1 -7
  528. package/dist/esm/api/replicas/index.js +4 -4
  529. package/dist/esm/api/replicas/index.js.map +1 -7
  530. package/dist/esm/api/replicas/operations.js +33 -42
  531. package/dist/esm/api/replicas/operations.js.map +1 -7
  532. package/dist/esm/api/replicas/options.js +4 -0
  533. package/dist/esm/api/replicas/options.js.map +1 -7
  534. package/dist/esm/api/serverThreatProtectionSettings/index.js +4 -4
  535. package/dist/esm/api/serverThreatProtectionSettings/index.js.map +1 -7
  536. package/dist/esm/api/serverThreatProtectionSettings/operations.js +38 -52
  537. package/dist/esm/api/serverThreatProtectionSettings/operations.js.map +1 -7
  538. package/dist/esm/api/serverThreatProtectionSettings/options.js +4 -0
  539. package/dist/esm/api/serverThreatProtectionSettings/options.js.map +1 -7
  540. package/dist/esm/api/servers/index.d.ts +2 -2
  541. package/dist/esm/api/servers/index.js +4 -24
  542. package/dist/esm/api/servers/index.js.map +1 -7
  543. package/dist/esm/api/servers/operations.d.ts +7 -8
  544. package/dist/esm/api/servers/operations.js +364 -384
  545. package/dist/esm/api/servers/operations.js.map +1 -7
  546. package/dist/esm/api/servers/options.d.ts +5 -0
  547. package/dist/esm/api/servers/options.js +4 -0
  548. package/dist/esm/api/servers/options.js.map +1 -7
  549. package/dist/esm/api/tuningOptionsOperations/index.d.ts +3 -0
  550. package/dist/esm/api/tuningOptionsOperations/index.js.map +1 -0
  551. package/dist/{react-native/api/tuningOptions → esm/api/tuningOptionsOperations}/operations.d.ts +7 -7
  552. package/dist/{react-native/api/tuningOptions → esm/api/tuningOptionsOperations}/operations.js +14 -8
  553. package/dist/esm/api/tuningOptionsOperations/operations.js.map +1 -0
  554. package/dist/esm/api/{tuningOptions → tuningOptionsOperations}/options.d.ts +3 -3
  555. package/dist/esm/api/tuningOptionsOperations/options.js.map +1 -0
  556. package/dist/esm/api/virtualEndpoints/index.js +4 -8
  557. package/dist/esm/api/virtualEndpoints/index.js.map +1 -7
  558. package/dist/esm/api/virtualEndpoints/operations.d.ts +0 -5
  559. package/dist/esm/api/virtualEndpoints/operations.js +156 -193
  560. package/dist/esm/api/virtualEndpoints/operations.js.map +1 -7
  561. package/dist/esm/api/virtualEndpoints/options.js +4 -0
  562. package/dist/esm/api/virtualEndpoints/options.js.map +1 -7
  563. package/dist/esm/api/virtualNetworkSubnetUsage/index.js +4 -4
  564. package/dist/esm/api/virtualNetworkSubnetUsage/index.js.map +1 -7
  565. package/dist/esm/api/virtualNetworkSubnetUsage/operations.js +32 -39
  566. package/dist/esm/api/virtualNetworkSubnetUsage/operations.js.map +1 -7
  567. package/dist/esm/api/virtualNetworkSubnetUsage/options.js +4 -0
  568. package/dist/esm/api/virtualNetworkSubnetUsage/options.js.map +1 -7
  569. package/dist/esm/classic/administratorsMicrosoftEntra/index.d.ts +0 -5
  570. package/dist/esm/classic/administratorsMicrosoftEntra/index.js +30 -49
  571. package/dist/esm/classic/administratorsMicrosoftEntra/index.js.map +1 -7
  572. package/dist/esm/classic/advancedThreatProtectionSettings/index.js +11 -11
  573. package/dist/esm/classic/advancedThreatProtectionSettings/index.js.map +1 -7
  574. package/dist/esm/classic/backupsAutomaticAndOnDemand/index.d.ts +0 -5
  575. package/dist/esm/classic/backupsAutomaticAndOnDemand/index.js +30 -35
  576. package/dist/esm/classic/backupsAutomaticAndOnDemand/index.js.map +1 -7
  577. package/dist/esm/classic/backupsLongTermRetention/index.js +22 -27
  578. package/dist/esm/classic/backupsLongTermRetention/index.js.map +1 -7
  579. package/dist/esm/classic/capabilitiesByLocation/index.js +10 -10
  580. package/dist/esm/classic/capabilitiesByLocation/index.js.map +1 -7
  581. package/dist/esm/classic/capabilitiesByServer/index.js +10 -10
  582. package/dist/esm/classic/capabilitiesByServer/index.js.map +1 -7
  583. package/dist/esm/classic/capturedLogs/index.js +10 -10
  584. package/dist/esm/classic/capturedLogs/index.js.map +1 -7
  585. package/dist/esm/classic/configurations/index.js +29 -57
  586. package/dist/esm/classic/configurations/index.js.map +1 -7
  587. package/dist/esm/classic/databases/index.d.ts +0 -5
  588. package/dist/esm/classic/databases/index.js +29 -43
  589. package/dist/esm/classic/databases/index.js.map +1 -7
  590. package/dist/esm/classic/firewallRules/index.d.ts +0 -5
  591. package/dist/esm/classic/firewallRules/index.js +29 -43
  592. package/dist/esm/classic/firewallRules/index.js.map +1 -7
  593. package/dist/esm/classic/index.d.ts +3 -1
  594. package/dist/esm/classic/index.js +4 -0
  595. package/dist/esm/classic/index.js.map +1 -7
  596. package/dist/esm/classic/maintenanceEvents/index.d.ts +27 -0
  597. package/dist/esm/classic/maintenanceEvents/index.js +34 -0
  598. package/dist/esm/classic/maintenanceEvents/index.js.map +1 -0
  599. package/dist/esm/classic/majorVersionUpgradePrecheck/index.d.ts +13 -0
  600. package/dist/esm/classic/majorVersionUpgradePrecheck/index.js +15 -0
  601. package/dist/esm/classic/majorVersionUpgradePrecheck/index.js.map +1 -0
  602. package/dist/esm/classic/migrations/index.d.ts +1 -1
  603. package/dist/esm/classic/migrations/index.js +16 -23
  604. package/dist/esm/classic/migrations/index.js.map +1 -7
  605. package/dist/esm/classic/nameAvailability/index.js +11 -11
  606. package/dist/esm/classic/nameAvailability/index.js.map +1 -7
  607. package/dist/esm/classic/operations/index.js +10 -10
  608. package/dist/esm/classic/operations/index.js.map +1 -7
  609. package/dist/esm/classic/privateDnsZoneSuffix/index.js +10 -10
  610. package/dist/esm/classic/privateDnsZoneSuffix/index.js.map +1 -7
  611. package/dist/esm/classic/privateEndpointConnections/index.d.ts +0 -5
  612. package/dist/esm/classic/privateEndpointConnections/index.js +30 -68
  613. package/dist/esm/classic/privateEndpointConnections/index.js.map +1 -7
  614. package/dist/esm/classic/privateLinkResources/index.js +11 -11
  615. package/dist/esm/classic/privateLinkResources/index.js.map +1 -7
  616. package/dist/esm/classic/quotaUsages/index.js +10 -10
  617. package/dist/esm/classic/quotaUsages/index.js.map +1 -7
  618. package/dist/esm/classic/replicas/index.js +10 -10
  619. package/dist/esm/classic/replicas/index.js.map +1 -7
  620. package/dist/esm/classic/serverThreatProtectionSettings/index.js +18 -39
  621. package/dist/esm/classic/serverThreatProtectionSettings/index.js.map +1 -7
  622. package/dist/esm/classic/servers/index.d.ts +9 -8
  623. package/dist/esm/classic/servers/index.js +85 -87
  624. package/dist/esm/classic/servers/index.js.map +1 -7
  625. package/dist/esm/classic/tuningOptionsOperations/index.d.ts +15 -0
  626. package/dist/{browser/classic/tuningOptions → esm/classic/tuningOptionsOperations}/index.js +4 -4
  627. package/dist/esm/classic/tuningOptionsOperations/index.js.map +1 -0
  628. package/dist/esm/classic/virtualEndpoints/index.d.ts +0 -5
  629. package/dist/esm/classic/virtualEndpoints/index.js +39 -73
  630. package/dist/esm/classic/virtualEndpoints/index.js.map +1 -7
  631. package/dist/esm/classic/virtualNetworkSubnetUsage/index.js +10 -10
  632. package/dist/esm/classic/virtualNetworkSubnetUsage/index.js.map +1 -7
  633. package/dist/esm/index.d.ts +8 -5
  634. package/dist/esm/index.js +8 -135
  635. package/dist/esm/index.js.map +1 -7
  636. package/dist/esm/logger.js +4 -4
  637. package/dist/esm/logger.js.map +1 -7
  638. package/dist/esm/models/index.d.ts +2 -2
  639. package/dist/esm/models/index.js +4 -130
  640. package/dist/esm/models/index.js.map +1 -7
  641. package/dist/esm/models/models.d.ts +769 -520
  642. package/dist/esm/models/models.js +3321 -2747
  643. package/dist/esm/models/models.js.map +1 -7
  644. package/dist/esm/postgreSQLManagementFlexibleServerClient.d.ts +9 -3
  645. package/dist/esm/postgreSQLManagementFlexibleServerClient.js +104 -97
  646. package/dist/esm/postgreSQLManagementFlexibleServerClient.js.map +1 -7
  647. package/dist/esm/restorePollerHelpers.js +132 -144
  648. package/dist/esm/restorePollerHelpers.js.map +1 -7
  649. package/dist/esm/static-helpers/cloudSettingHelpers.js +37 -26
  650. package/dist/esm/static-helpers/cloudSettingHelpers.js.map +1 -7
  651. package/dist/esm/static-helpers/pagingHelpers.js +122 -98
  652. package/dist/esm/static-helpers/pagingHelpers.js.map +1 -7
  653. package/dist/esm/static-helpers/pollingHelpers.d.ts +1 -1
  654. package/dist/esm/static-helpers/pollingHelpers.js +86 -68
  655. package/dist/esm/static-helpers/pollingHelpers.js.map +1 -7
  656. package/dist/esm/static-helpers/serialization/check-prop-undefined.js +15 -9
  657. package/dist/esm/static-helpers/serialization/check-prop-undefined.js.map +1 -7
  658. package/dist/esm/static-helpers/simplePollerHelpers.d.ts +1 -1
  659. package/dist/esm/static-helpers/simplePollerHelpers.js +43 -42
  660. package/dist/esm/static-helpers/simplePollerHelpers.js.map +1 -7
  661. package/dist/esm/static-helpers/urlTemplate.js +169 -142
  662. package/dist/esm/static-helpers/urlTemplate.js.map +1 -7
  663. package/package.json +58 -126
  664. package/dist/browser/api/tuningOptions/index.d.ts +0 -3
  665. package/dist/browser/api/tuningOptions/index.js.map +0 -1
  666. package/dist/browser/api/tuningOptions/operations.d.ts +0 -18
  667. package/dist/browser/api/tuningOptions/operations.js.map +0 -1
  668. package/dist/browser/api/tuningOptions/options.js.map +0 -1
  669. package/dist/browser/classic/tuningOptions/index.d.ts +0 -15
  670. package/dist/browser/classic/tuningOptions/index.js.map +0 -1
  671. package/dist/commonjs/api/tuningOptions/index.d.ts +0 -3
  672. package/dist/commonjs/api/tuningOptions/operations.js.map +0 -7
  673. package/dist/commonjs/api/tuningOptions/options.d.ts +0 -14
  674. package/dist/commonjs/api/tuningOptions/options.js.map +0 -7
  675. package/dist/commonjs/classic/tuningOptions/index.d.ts +0 -15
  676. package/dist/commonjs/classic/tuningOptions/index.js.map +0 -7
  677. package/dist/esm/api/tuningOptions/index.d.ts +0 -3
  678. package/dist/esm/api/tuningOptions/index.js +0 -6
  679. package/dist/esm/api/tuningOptions/index.js.map +0 -7
  680. package/dist/esm/api/tuningOptions/operations.js +0 -134
  681. package/dist/esm/api/tuningOptions/operations.js.map +0 -7
  682. package/dist/esm/api/tuningOptions/options.js +0 -0
  683. package/dist/esm/api/tuningOptions/options.js.map +0 -7
  684. package/dist/esm/classic/tuningOptions/index.d.ts +0 -15
  685. package/dist/esm/classic/tuningOptions/index.js +0 -16
  686. package/dist/esm/classic/tuningOptions/index.js.map +0 -7
  687. package/dist/react-native/api/administratorsMicrosoftEntra/index.d.ts +0 -3
  688. package/dist/react-native/api/administratorsMicrosoftEntra/index.js +0 -4
  689. package/dist/react-native/api/administratorsMicrosoftEntra/index.js.map +0 -1
  690. package/dist/react-native/api/administratorsMicrosoftEntra/operations.d.ts +0 -28
  691. package/dist/react-native/api/administratorsMicrosoftEntra/operations.js +0 -139
  692. package/dist/react-native/api/administratorsMicrosoftEntra/operations.js.map +0 -1
  693. package/dist/react-native/api/administratorsMicrosoftEntra/options.d.ts +0 -18
  694. package/dist/react-native/api/administratorsMicrosoftEntra/options.js.map +0 -1
  695. package/dist/react-native/api/advancedThreatProtectionSettings/index.d.ts +0 -3
  696. package/dist/react-native/api/advancedThreatProtectionSettings/index.js +0 -4
  697. package/dist/react-native/api/advancedThreatProtectionSettings/index.js.map +0 -1
  698. package/dist/react-native/api/advancedThreatProtectionSettings/operations.d.ts +0 -14
  699. package/dist/react-native/api/advancedThreatProtectionSettings/operations.js.map +0 -1
  700. package/dist/react-native/api/advancedThreatProtectionSettings/options.d.ts +0 -8
  701. package/dist/react-native/api/advancedThreatProtectionSettings/options.js.map +0 -1
  702. package/dist/react-native/api/backupsAutomaticAndOnDemand/index.d.ts +0 -3
  703. package/dist/react-native/api/backupsAutomaticAndOnDemand/index.js +0 -4
  704. package/dist/react-native/api/backupsAutomaticAndOnDemand/index.js.map +0 -1
  705. package/dist/react-native/api/backupsAutomaticAndOnDemand/operations.d.ts +0 -28
  706. package/dist/react-native/api/backupsAutomaticAndOnDemand/operations.js +0 -135
  707. package/dist/react-native/api/backupsAutomaticAndOnDemand/operations.js.map +0 -1
  708. package/dist/react-native/api/backupsAutomaticAndOnDemand/options.d.ts +0 -18
  709. package/dist/react-native/api/backupsAutomaticAndOnDemand/options.js.map +0 -1
  710. package/dist/react-native/api/backupsLongTermRetention/index.d.ts +0 -3
  711. package/dist/react-native/api/backupsLongTermRetention/index.js +0 -4
  712. package/dist/react-native/api/backupsLongTermRetention/index.js.map +0 -1
  713. package/dist/react-native/api/backupsLongTermRetention/operations.d.ts +0 -23
  714. package/dist/react-native/api/backupsLongTermRetention/operations.js +0 -133
  715. package/dist/react-native/api/backupsLongTermRetention/operations.js.map +0 -1
  716. package/dist/react-native/api/backupsLongTermRetention/options.d.ts +0 -16
  717. package/dist/react-native/api/backupsLongTermRetention/options.js.map +0 -1
  718. package/dist/react-native/api/capabilitiesByLocation/index.d.ts +0 -3
  719. package/dist/react-native/api/capabilitiesByLocation/index.js +0 -4
  720. package/dist/react-native/api/capabilitiesByLocation/index.js.map +0 -1
  721. package/dist/react-native/api/capabilitiesByLocation/operations.d.ts +0 -10
  722. package/dist/react-native/api/capabilitiesByLocation/operations.js +0 -37
  723. package/dist/react-native/api/capabilitiesByLocation/operations.js.map +0 -1
  724. package/dist/react-native/api/capabilitiesByLocation/options.d.ts +0 -5
  725. package/dist/react-native/api/capabilitiesByLocation/options.js.map +0 -1
  726. package/dist/react-native/api/capabilitiesByServer/index.d.ts +0 -3
  727. package/dist/react-native/api/capabilitiesByServer/index.js +0 -4
  728. package/dist/react-native/api/capabilitiesByServer/index.js.map +0 -1
  729. package/dist/react-native/api/capabilitiesByServer/operations.d.ts +0 -10
  730. package/dist/react-native/api/capabilitiesByServer/operations.js +0 -38
  731. package/dist/react-native/api/capabilitiesByServer/operations.js.map +0 -1
  732. package/dist/react-native/api/capabilitiesByServer/options.d.ts +0 -5
  733. package/dist/react-native/api/capabilitiesByServer/options.js +0 -4
  734. package/dist/react-native/api/capabilitiesByServer/options.js.map +0 -1
  735. package/dist/react-native/api/capturedLogs/index.d.ts +0 -3
  736. package/dist/react-native/api/capturedLogs/index.js +0 -4
  737. package/dist/react-native/api/capturedLogs/index.js.map +0 -1
  738. package/dist/react-native/api/capturedLogs/operations.d.ts +0 -10
  739. package/dist/react-native/api/capturedLogs/operations.js +0 -38
  740. package/dist/react-native/api/capturedLogs/operations.js.map +0 -1
  741. package/dist/react-native/api/capturedLogs/options.d.ts +0 -5
  742. package/dist/react-native/api/capturedLogs/options.js +0 -4
  743. package/dist/react-native/api/capturedLogs/options.js.map +0 -1
  744. package/dist/react-native/api/configurations/index.d.ts +0 -3
  745. package/dist/react-native/api/configurations/index.js +0 -4
  746. package/dist/react-native/api/configurations/index.js.map +0 -1
  747. package/dist/react-native/api/configurations/operations.d.ts +0 -23
  748. package/dist/react-native/api/configurations/operations.js +0 -138
  749. package/dist/react-native/api/configurations/operations.js.map +0 -1
  750. package/dist/react-native/api/configurations/options.d.ts +0 -18
  751. package/dist/react-native/api/configurations/options.js +0 -4
  752. package/dist/react-native/api/configurations/options.js.map +0 -1
  753. package/dist/react-native/api/databases/index.d.ts +0 -3
  754. package/dist/react-native/api/databases/index.js +0 -4
  755. package/dist/react-native/api/databases/index.js.map +0 -1
  756. package/dist/react-native/api/databases/operations.d.ts +0 -28
  757. package/dist/react-native/api/databases/operations.js +0 -139
  758. package/dist/react-native/api/databases/operations.js.map +0 -1
  759. package/dist/react-native/api/databases/options.d.ts +0 -18
  760. package/dist/react-native/api/databases/options.js +0 -4
  761. package/dist/react-native/api/databases/options.js.map +0 -1
  762. package/dist/react-native/api/firewallRules/index.d.ts +0 -3
  763. package/dist/react-native/api/firewallRules/index.js +0 -4
  764. package/dist/react-native/api/firewallRules/index.js.map +0 -1
  765. package/dist/react-native/api/firewallRules/operations.d.ts +0 -28
  766. package/dist/react-native/api/firewallRules/operations.js +0 -139
  767. package/dist/react-native/api/firewallRules/operations.js.map +0 -1
  768. package/dist/react-native/api/firewallRules/options.d.ts +0 -18
  769. package/dist/react-native/api/firewallRules/options.js +0 -4
  770. package/dist/react-native/api/firewallRules/options.js.map +0 -1
  771. package/dist/react-native/api/index.d.ts +0 -3
  772. package/dist/react-native/api/index.js +0 -4
  773. package/dist/react-native/api/index.js.map +0 -1
  774. package/dist/react-native/api/migrations/index.d.ts +0 -3
  775. package/dist/react-native/api/migrations/index.js +0 -4
  776. package/dist/react-native/api/migrations/index.js.map +0 -1
  777. package/dist/react-native/api/migrations/operations.d.ts +0 -30
  778. package/dist/react-native/api/migrations/operations.js +0 -189
  779. package/dist/react-native/api/migrations/operations.js.map +0 -1
  780. package/dist/react-native/api/migrations/options.d.ts +0 -23
  781. package/dist/react-native/api/migrations/options.js +0 -4
  782. package/dist/react-native/api/migrations/options.js.map +0 -1
  783. package/dist/react-native/api/nameAvailability/index.d.ts +0 -3
  784. package/dist/react-native/api/nameAvailability/index.js +0 -4
  785. package/dist/react-native/api/nameAvailability/index.js.map +0 -1
  786. package/dist/react-native/api/nameAvailability/operations.d.ts +0 -13
  787. package/dist/react-native/api/nameAvailability/operations.js +0 -63
  788. package/dist/react-native/api/nameAvailability/operations.js.map +0 -1
  789. package/dist/react-native/api/nameAvailability/options.d.ts +0 -8
  790. package/dist/react-native/api/nameAvailability/options.js +0 -4
  791. package/dist/react-native/api/nameAvailability/options.js.map +0 -1
  792. package/dist/react-native/api/operations/index.d.ts +0 -3
  793. package/dist/react-native/api/operations/index.js +0 -4
  794. package/dist/react-native/api/operations/index.js.map +0 -1
  795. package/dist/react-native/api/operations/operations.d.ts +0 -10
  796. package/dist/react-native/api/operations/operations.js +0 -35
  797. package/dist/react-native/api/operations/operations.js.map +0 -1
  798. package/dist/react-native/api/operations/options.d.ts +0 -5
  799. package/dist/react-native/api/operations/options.js +0 -4
  800. package/dist/react-native/api/operations/options.js.map +0 -1
  801. package/dist/react-native/api/postgreSQLManagementFlexibleServerContext.d.ts +0 -22
  802. package/dist/react-native/api/postgreSQLManagementFlexibleServerContext.js +0 -28
  803. package/dist/react-native/api/postgreSQLManagementFlexibleServerContext.js.map +0 -1
  804. package/dist/react-native/api/privateDnsZoneSuffix/index.d.ts +0 -3
  805. package/dist/react-native/api/privateDnsZoneSuffix/index.js +0 -4
  806. package/dist/react-native/api/privateDnsZoneSuffix/index.js.map +0 -1
  807. package/dist/react-native/api/privateDnsZoneSuffix/operations.d.ts +0 -9
  808. package/dist/react-native/api/privateDnsZoneSuffix/operations.js +0 -31
  809. package/dist/react-native/api/privateDnsZoneSuffix/operations.js.map +0 -1
  810. package/dist/react-native/api/privateDnsZoneSuffix/options.d.ts +0 -5
  811. package/dist/react-native/api/privateDnsZoneSuffix/options.js +0 -4
  812. package/dist/react-native/api/privateDnsZoneSuffix/options.js.map +0 -1
  813. package/dist/react-native/api/privateEndpointConnections/index.d.ts +0 -3
  814. package/dist/react-native/api/privateEndpointConnections/index.js +0 -4
  815. package/dist/react-native/api/privateEndpointConnections/index.js.map +0 -1
  816. package/dist/react-native/api/privateEndpointConnections/operations.d.ts +0 -28
  817. package/dist/react-native/api/privateEndpointConnections/operations.js +0 -139
  818. package/dist/react-native/api/privateEndpointConnections/operations.js.map +0 -1
  819. package/dist/react-native/api/privateEndpointConnections/options.d.ts +0 -18
  820. package/dist/react-native/api/privateEndpointConnections/options.js +0 -4
  821. package/dist/react-native/api/privateEndpointConnections/options.js.map +0 -1
  822. package/dist/react-native/api/privateLinkResources/index.d.ts +0 -3
  823. package/dist/react-native/api/privateLinkResources/index.js +0 -4
  824. package/dist/react-native/api/privateLinkResources/index.js.map +0 -1
  825. package/dist/react-native/api/privateLinkResources/operations.d.ts +0 -14
  826. package/dist/react-native/api/privateLinkResources/operations.js.map +0 -1
  827. package/dist/react-native/api/privateLinkResources/options.d.ts +0 -8
  828. package/dist/react-native/api/privateLinkResources/options.js +0 -4
  829. package/dist/react-native/api/privateLinkResources/options.js.map +0 -1
  830. package/dist/react-native/api/quotaUsages/index.d.ts +0 -3
  831. package/dist/react-native/api/quotaUsages/index.js +0 -4
  832. package/dist/react-native/api/quotaUsages/index.js.map +0 -1
  833. package/dist/react-native/api/quotaUsages/operations.d.ts +0 -10
  834. package/dist/react-native/api/quotaUsages/operations.js +0 -37
  835. package/dist/react-native/api/quotaUsages/operations.js.map +0 -1
  836. package/dist/react-native/api/quotaUsages/options.d.ts +0 -5
  837. package/dist/react-native/api/quotaUsages/options.js +0 -4
  838. package/dist/react-native/api/quotaUsages/options.js.map +0 -1
  839. package/dist/react-native/api/replicas/index.d.ts +0 -3
  840. package/dist/react-native/api/replicas/index.js +0 -4
  841. package/dist/react-native/api/replicas/index.js.map +0 -1
  842. package/dist/react-native/api/replicas/operations.d.ts +0 -10
  843. package/dist/react-native/api/replicas/operations.js +0 -38
  844. package/dist/react-native/api/replicas/operations.js.map +0 -1
  845. package/dist/react-native/api/replicas/options.d.ts +0 -5
  846. package/dist/react-native/api/replicas/options.js +0 -4
  847. package/dist/react-native/api/replicas/options.js.map +0 -1
  848. package/dist/react-native/api/serverThreatProtectionSettings/index.d.ts +0 -3
  849. package/dist/react-native/api/serverThreatProtectionSettings/index.js +0 -4
  850. package/dist/react-native/api/serverThreatProtectionSettings/index.js.map +0 -1
  851. package/dist/react-native/api/serverThreatProtectionSettings/operations.d.ts +0 -10
  852. package/dist/react-native/api/serverThreatProtectionSettings/operations.js +0 -42
  853. package/dist/react-native/api/serverThreatProtectionSettings/operations.js.map +0 -1
  854. package/dist/react-native/api/serverThreatProtectionSettings/options.d.ts +0 -7
  855. package/dist/react-native/api/serverThreatProtectionSettings/options.js +0 -4
  856. package/dist/react-native/api/serverThreatProtectionSettings/options.js.map +0 -1
  857. package/dist/react-native/api/servers/index.d.ts +0 -3
  858. package/dist/react-native/api/servers/index.js +0 -4
  859. package/dist/react-native/api/servers/index.js.map +0 -1
  860. package/dist/react-native/api/servers/operations.d.ts +0 -52
  861. package/dist/react-native/api/servers/operations.js +0 -327
  862. package/dist/react-native/api/servers/operations.js.map +0 -1
  863. package/dist/react-native/api/servers/options.d.ts +0 -49
  864. package/dist/react-native/api/servers/options.js +0 -4
  865. package/dist/react-native/api/servers/options.js.map +0 -1
  866. package/dist/react-native/api/tuningOptions/index.d.ts +0 -3
  867. package/dist/react-native/api/tuningOptions/index.js.map +0 -1
  868. package/dist/react-native/api/tuningOptions/operations.js.map +0 -1
  869. package/dist/react-native/api/tuningOptions/options.js +0 -4
  870. package/dist/react-native/api/tuningOptions/options.js.map +0 -1
  871. package/dist/react-native/api/virtualEndpoints/index.d.ts +0 -3
  872. package/dist/react-native/api/virtualEndpoints/index.js +0 -4
  873. package/dist/react-native/api/virtualEndpoints/index.js.map +0 -1
  874. package/dist/react-native/api/virtualEndpoints/operations.d.ts +0 -32
  875. package/dist/react-native/api/virtualEndpoints/operations.js +0 -174
  876. package/dist/react-native/api/virtualEndpoints/operations.js.map +0 -1
  877. package/dist/react-native/api/virtualEndpoints/options.d.ts +0 -23
  878. package/dist/react-native/api/virtualEndpoints/options.js +0 -4
  879. package/dist/react-native/api/virtualEndpoints/options.js.map +0 -1
  880. package/dist/react-native/api/virtualNetworkSubnetUsage/index.d.ts +0 -3
  881. package/dist/react-native/api/virtualNetworkSubnetUsage/index.js +0 -4
  882. package/dist/react-native/api/virtualNetworkSubnetUsage/index.js.map +0 -1
  883. package/dist/react-native/api/virtualNetworkSubnetUsage/operations.d.ts +0 -9
  884. package/dist/react-native/api/virtualNetworkSubnetUsage/operations.js +0 -35
  885. package/dist/react-native/api/virtualNetworkSubnetUsage/operations.js.map +0 -1
  886. package/dist/react-native/api/virtualNetworkSubnetUsage/options.d.ts +0 -5
  887. package/dist/react-native/api/virtualNetworkSubnetUsage/options.js +0 -4
  888. package/dist/react-native/api/virtualNetworkSubnetUsage/options.js.map +0 -1
  889. package/dist/react-native/classic/administratorsMicrosoftEntra/index.d.ts +0 -32
  890. package/dist/react-native/classic/administratorsMicrosoftEntra/index.js +0 -34
  891. package/dist/react-native/classic/administratorsMicrosoftEntra/index.js.map +0 -1
  892. package/dist/react-native/classic/advancedThreatProtectionSettings/index.d.ts +0 -13
  893. package/dist/react-native/classic/advancedThreatProtectionSettings/index.js +0 -15
  894. package/dist/react-native/classic/advancedThreatProtectionSettings/index.js.map +0 -1
  895. package/dist/react-native/classic/backupsAutomaticAndOnDemand/index.d.ts +0 -32
  896. package/dist/react-native/classic/backupsAutomaticAndOnDemand/index.js +0 -34
  897. package/dist/react-native/classic/backupsAutomaticAndOnDemand/index.js.map +0 -1
  898. package/dist/react-native/classic/backupsLongTermRetention/index.d.ts +0 -23
  899. package/dist/react-native/classic/backupsLongTermRetention/index.js +0 -26
  900. package/dist/react-native/classic/backupsLongTermRetention/index.js.map +0 -1
  901. package/dist/react-native/classic/capabilitiesByLocation/index.d.ts +0 -11
  902. package/dist/react-native/classic/capabilitiesByLocation/index.js +0 -14
  903. package/dist/react-native/classic/capabilitiesByLocation/index.js.map +0 -1
  904. package/dist/react-native/classic/capabilitiesByServer/index.d.ts +0 -11
  905. package/dist/react-native/classic/capabilitiesByServer/index.js +0 -14
  906. package/dist/react-native/classic/capabilitiesByServer/index.js.map +0 -1
  907. package/dist/react-native/classic/capturedLogs/index.d.ts +0 -11
  908. package/dist/react-native/classic/capturedLogs/index.js +0 -14
  909. package/dist/react-native/classic/capturedLogs/index.js.map +0 -1
  910. package/dist/react-native/classic/configurations/index.d.ts +0 -27
  911. package/dist/react-native/classic/configurations/index.js +0 -34
  912. package/dist/react-native/classic/configurations/index.js.map +0 -1
  913. package/dist/react-native/classic/databases/index.d.ts +0 -32
  914. package/dist/react-native/classic/databases/index.js +0 -34
  915. package/dist/react-native/classic/databases/index.js.map +0 -1
  916. package/dist/react-native/classic/firewallRules/index.d.ts +0 -32
  917. package/dist/react-native/classic/firewallRules/index.js +0 -34
  918. package/dist/react-native/classic/firewallRules/index.js.map +0 -1
  919. package/dist/react-native/classic/index.d.ts +0 -24
  920. package/dist/react-native/classic/index.js +0 -4
  921. package/dist/react-native/classic/index.js.map +0 -1
  922. package/dist/react-native/classic/migrations/index.d.ts +0 -21
  923. package/dist/react-native/classic/migrations/index.js +0 -19
  924. package/dist/react-native/classic/migrations/index.js.map +0 -1
  925. package/dist/react-native/classic/nameAvailability/index.d.ts +0 -12
  926. package/dist/react-native/classic/nameAvailability/index.js +0 -15
  927. package/dist/react-native/classic/nameAvailability/index.js.map +0 -1
  928. package/dist/react-native/classic/operations/index.d.ts +0 -11
  929. package/dist/react-native/classic/operations/index.js +0 -14
  930. package/dist/react-native/classic/operations/index.js.map +0 -1
  931. package/dist/react-native/classic/privateDnsZoneSuffix/index.d.ts +0 -10
  932. package/dist/react-native/classic/privateDnsZoneSuffix/index.js +0 -14
  933. package/dist/react-native/classic/privateDnsZoneSuffix/index.js.map +0 -1
  934. package/dist/react-native/classic/privateEndpointConnections/index.d.ts +0 -32
  935. package/dist/react-native/classic/privateEndpointConnections/index.js +0 -34
  936. package/dist/react-native/classic/privateEndpointConnections/index.js.map +0 -1
  937. package/dist/react-native/classic/privateLinkResources/index.d.ts +0 -13
  938. package/dist/react-native/classic/privateLinkResources/index.js +0 -15
  939. package/dist/react-native/classic/privateLinkResources/index.js.map +0 -1
  940. package/dist/react-native/classic/quotaUsages/index.d.ts +0 -11
  941. package/dist/react-native/classic/quotaUsages/index.js +0 -14
  942. package/dist/react-native/classic/quotaUsages/index.js.map +0 -1
  943. package/dist/react-native/classic/replicas/index.d.ts +0 -11
  944. package/dist/react-native/classic/replicas/index.js +0 -14
  945. package/dist/react-native/classic/replicas/index.js.map +0 -1
  946. package/dist/react-native/classic/serverThreatProtectionSettings/index.d.ts +0 -16
  947. package/dist/react-native/classic/serverThreatProtectionSettings/index.js +0 -23
  948. package/dist/react-native/classic/serverThreatProtectionSettings/index.js.map +0 -1
  949. package/dist/react-native/classic/servers/index.d.ts +0 -64
  950. package/dist/react-native/classic/servers/index.js +0 -80
  951. package/dist/react-native/classic/servers/index.js.map +0 -1
  952. package/dist/react-native/classic/tuningOptions/index.d.ts +0 -15
  953. package/dist/react-native/classic/tuningOptions/index.js.map +0 -1
  954. package/dist/react-native/classic/virtualEndpoints/index.d.ts +0 -38
  955. package/dist/react-native/classic/virtualEndpoints/index.js +0 -43
  956. package/dist/react-native/classic/virtualEndpoints/index.js.map +0 -1
  957. package/dist/react-native/classic/virtualNetworkSubnetUsage/index.d.ts +0 -10
  958. package/dist/react-native/classic/virtualNetworkSubnetUsage/index.js +0 -14
  959. package/dist/react-native/classic/virtualNetworkSubnetUsage/index.js.map +0 -1
  960. package/dist/react-native/index.d.ts +0 -38
  961. package/dist/react-native/index.js +0 -8
  962. package/dist/react-native/index.js.map +0 -1
  963. package/dist/react-native/logger.d.ts +0 -2
  964. package/dist/react-native/logger.js +0 -5
  965. package/dist/react-native/logger.js.map +0 -1
  966. package/dist/react-native/models/index.d.ts +0 -3
  967. package/dist/react-native/models/index.js +0 -4
  968. package/dist/react-native/models/index.js.map +0 -1
  969. package/dist/react-native/models/models.d.ts +0 -3355
  970. package/dist/react-native/models/models.js +0 -3117
  971. package/dist/react-native/models/models.js.map +0 -1
  972. package/dist/react-native/package.json +0 -3
  973. package/dist/react-native/postgreSQLManagementFlexibleServerClient.d.ts +0 -81
  974. package/dist/react-native/postgreSQLManagementFlexibleServerClient.js +0 -121
  975. package/dist/react-native/postgreSQLManagementFlexibleServerClient.js.map +0 -1
  976. package/dist/react-native/restorePollerHelpers.d.ts +0 -21
  977. package/dist/react-native/restorePollerHelpers.js +0 -141
  978. package/dist/react-native/restorePollerHelpers.js.map +0 -1
  979. package/dist/react-native/static-helpers/cloudSettingHelpers.d.ts +0 -22
  980. package/dist/react-native/static-helpers/cloudSettingHelpers.js +0 -38
  981. package/dist/react-native/static-helpers/cloudSettingHelpers.js.map +0 -1
  982. package/dist/react-native/static-helpers/pagingHelpers.d.ts +0 -74
  983. package/dist/react-native/static-helpers/pagingHelpers.js +0 -143
  984. package/dist/react-native/static-helpers/pagingHelpers.js.map +0 -1
  985. package/dist/react-native/static-helpers/pollingHelpers.d.ts +0 -34
  986. package/dist/react-native/static-helpers/pollingHelpers.js +0 -95
  987. package/dist/react-native/static-helpers/pollingHelpers.js.map +0 -1
  988. package/dist/react-native/static-helpers/serialization/check-prop-undefined.d.ts +0 -8
  989. package/dist/react-native/static-helpers/serialization/check-prop-undefined.js +0 -17
  990. package/dist/react-native/static-helpers/serialization/check-prop-undefined.js.map +0 -1
  991. package/dist/react-native/static-helpers/simplePollerHelpers.d.ts +0 -73
  992. package/dist/react-native/static-helpers/simplePollerHelpers.js +0 -44
  993. package/dist/react-native/static-helpers/simplePollerHelpers.js.map +0 -1
  994. package/dist/react-native/static-helpers/urlTemplate.d.ts +0 -5
  995. package/dist/react-native/static-helpers/urlTemplate.js +0 -200
  996. package/dist/react-native/static-helpers/urlTemplate.js.map +0 -1
  997. /package/dist/browser/api/{tuningOptions → maintenanceEvents}/options.js +0 -0
  998. /package/dist/{react-native/api/administratorsMicrosoftEntra → browser/api/majorVersionUpgradePrecheck}/options.js +0 -0
  999. /package/dist/browser/api/{tuningOptions → tuningOptionsOperations}/index.js +0 -0
  1000. /package/dist/{react-native/api/advancedThreatProtectionSettings → browser/api/tuningOptionsOperations}/options.js +0 -0
  1001. /package/dist/{react-native/api/backupsAutomaticAndOnDemand → esm/api/maintenanceEvents}/options.js +0 -0
  1002. /package/dist/{react-native/api/backupsLongTermRetention → esm/api/majorVersionUpgradePrecheck}/options.js +0 -0
  1003. /package/dist/{react-native/api/tuningOptions → esm/api/tuningOptionsOperations}/index.js +0 -0
  1004. /package/dist/{react-native/api/capabilitiesByLocation → esm/api/tuningOptionsOperations}/options.js +0 -0
@@ -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 { areAllPropsUndefined } from \"../static-helpers/serialization/check-prop-undefined.js\";\n\n/**\n * This file contains only generated model types and their (de)serializers.\n * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input.\n */\n/* eslint-disable @typescript-eslint/naming-convention */\n/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n/** Paged collection of Operation items */\nexport interface _OperationList {\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 _operationListDeserializer(item: any): _OperationList {\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/** REST API operation definition. */\nexport interface Operation {\n /** Name of the operation being performed on this particular object. */\n readonly name?: string;\n /** Localized display information for this particular operation or action. */\n readonly display?: OperationDisplay;\n /** Indicates if the operation is a data action. */\n isDataAction?: boolean;\n /** Intended executor of the operation. */\n readonly origin?: OperationOrigin;\n /** Additional descriptions for the operation. */\n readonly properties?: OperationProperties;\n}\n\nexport function operationDeserializer(item: any): Operation {\n return {\n name: item[\"name\"],\n display: !item[\"display\"] ? item[\"display\"] : operationDisplayDeserializer(item[\"display\"]),\n isDataAction: item[\"isDataAction\"],\n origin: item[\"origin\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : operationPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Display metadata associated with the operation. */\nexport interface OperationDisplay {\n /** Name of the resource provider. */\n readonly provider?: string;\n /** Type of resource on which the operation is performed. */\n readonly resource?: string;\n /** Name of the operation. */\n readonly operation?: string;\n /** Description of the operation. */\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/** Intended executor of the operation. */\nexport enum KnownOperationOrigin {\n /** NotSpecified */\n NotSpecified = \"NotSpecified\",\n /** user */\n User = \"user\",\n /** system */\n System = \"system\",\n}\n\n/**\n * Intended executor of the operation. \\\n * {@link KnownOperationOrigin} can be used interchangeably with OperationOrigin,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **NotSpecified** \\\n * **user** \\\n * **system**\n */\nexport type OperationOrigin = string;\n\n/** Additional properties for operation metadata. */\nexport interface OperationProperties {\n /** Service specification for the operation. */\n serviceSpecification?: ServiceSpecification;\n}\n\nexport function operationPropertiesDeserializer(item: any): OperationProperties {\n return {\n serviceSpecification: !item[\"serviceSpecification\"]\n ? item[\"serviceSpecification\"]\n : serviceSpecificationDeserializer(item[\"serviceSpecification\"]),\n };\n}\n\n/** Service specification for an operation. */\nexport interface ServiceSpecification {\n /** Metric specifications for the operation. */\n readonly metricSpecifications?: MetricSpecification[];\n /** Log specifications for the operation. */\n readonly logSpecifications?: LogSpecification[];\n}\n\nexport function serviceSpecificationDeserializer(item: any): ServiceSpecification {\n return {\n metricSpecifications: !item[\"metricSpecifications\"]\n ? item[\"metricSpecifications\"]\n : metricSpecificationArrayDeserializer(item[\"metricSpecifications\"]),\n logSpecifications: !item[\"logSpecifications\"]\n ? item[\"logSpecifications\"]\n : logSpecificationArrayDeserializer(item[\"logSpecifications\"]),\n };\n}\n\nexport function metricSpecificationArrayDeserializer(result: Array<MetricSpecification>): any[] {\n return result.map((item) => {\n return metricSpecificationDeserializer(item);\n });\n}\n\n/** Metric specification for an operation. */\nexport interface MetricSpecification {\n /** Name of the metric. */\n name?: string;\n /** Display name of the metric. */\n displayName?: string;\n /** Display description of the metric. */\n displayDescription?: string;\n /** Unit of the metric. */\n unit?: string;\n /** Aggregation type of the metric. */\n aggregationType?: string;\n /** Supported aggregation types for the metric. */\n supportedAggregationTypes?: string[];\n /** Supported time grain types for the metric. */\n supportedTimeGrainTypes?: string[];\n /** Category of the metric. */\n category?: string;\n}\n\nexport function metricSpecificationDeserializer(item: any): MetricSpecification {\n return {\n name: item[\"name\"],\n displayName: item[\"displayName\"],\n displayDescription: item[\"displayDescription\"],\n unit: item[\"unit\"],\n aggregationType: item[\"aggregationType\"],\n supportedAggregationTypes: !item[\"supportedAggregationTypes\"]\n ? item[\"supportedAggregationTypes\"]\n : item[\"supportedAggregationTypes\"].map((p: any) => {\n return p;\n }),\n supportedTimeGrainTypes: !item[\"supportedTimeGrainTypes\"]\n ? item[\"supportedTimeGrainTypes\"]\n : item[\"supportedTimeGrainTypes\"].map((p: any) => {\n return p;\n }),\n category: item[\"category\"],\n };\n}\n\nexport function logSpecificationArrayDeserializer(result: Array<LogSpecification>): any[] {\n return result.map((item) => {\n return logSpecificationDeserializer(item);\n });\n}\n\n/** Log specification for an operation. */\nexport interface LogSpecification {\n /** Name of the log. */\n name?: string;\n /** Display name of the log. */\n displayName?: string;\n /** Blob duration for the log. */\n blobDuration?: string;\n}\n\nexport function logSpecificationDeserializer(item: any): LogSpecification {\n return {\n name: item[\"name\"],\n displayName: item[\"displayName\"],\n blobDuration: item[\"blobDuration\"],\n };\n}\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/** Properties of a migration. */\nexport interface Migration extends TrackedResource {\n /** Identifier of a migration. */\n readonly migrationId?: string;\n /** Current status of a migration. */\n readonly currentStatus?: MigrationStatus;\n /** Identifier of the private endpoint migration instance. */\n migrationInstanceResourceId?: string;\n /** Mode used to perform the migration: Online or Offline. */\n migrationMode?: MigrationMode;\n /** Supported option for a migration. */\n migrationOption?: MigrationOption;\n /** Source server type used for the migration: ApsaraDB_RDS, AWS, AWS_AURORA, AWS_EC2, AWS_RDS, AzureVM, Crunchy_PostgreSQL, Digital_Ocean_Droplets, Digital_Ocean_PostgreSQL, EDB, EDB_Oracle_Server, EDB_PostgreSQL, GCP, GCP_AlloyDB, GCP_CloudSQL, GCP_Compute, Heroku_PostgreSQL, Huawei_Compute, Huawei_RDS, OnPremises, PostgreSQLCosmosDB, PostgreSQLFlexibleServer, PostgreSQLSingleServer, or Supabase_PostgreSQL */\n sourceType?: SourceType;\n /** SSL mode used by a migration. Default SSL mode for 'PostgreSQLSingleServer' is 'VerifyFull'. Default SSL mode for other source types is 'Prefer'. */\n sslMode?: SslMode;\n /** Metadata of source database server. */\n readonly sourceDbServerMetadata?: DbServerMetadata;\n /** Metadata of target database server. */\n readonly targetDbServerMetadata?: DbServerMetadata;\n /** Identifier of the source database server resource, when 'sourceType' is 'PostgreSQLSingleServer'. For other source types this must be set to ipaddress:port@username or hostname:port@username. */\n sourceDbServerResourceId?: string;\n /** Fully qualified domain name (FQDN) or IP address of the source server. This property is optional. When provided, the migration service will always use it to connect to the source server. */\n sourceDbServerFullyQualifiedDomainName?: string;\n /** Identifier of the target database server resource. */\n readonly targetDbServerResourceId?: string;\n /** Fully qualified domain name (FQDN) or IP address of the target server. This property is optional. When provided, the migration service will always use it to connect to the target server. */\n targetDbServerFullyQualifiedDomainName?: string;\n /** Migration secret parameters. */\n secretParameters?: MigrationSecretParameters;\n /** Names of databases to migrate. */\n dbsToMigrate?: string[];\n /** Indicates whether to setup logical replication on source server, if needed. */\n setupLogicalReplicationOnSourceDbIfNeeded?: LogicalReplicationOnSourceServer;\n /** Indicates if databases on the target server can be overwritten when already present. If set to 'False', when the migration workflow detects that the database already exists on the target server, it will wait for a confirmation. */\n overwriteDbsInTarget?: OverwriteDatabasesOnTargetServer;\n /** Start time (UTC) for migration window. */\n migrationWindowStartTimeInUtc?: Date;\n /** End time (UTC) for migration window. */\n migrationWindowEndTimeInUtc?: Date;\n /** Indicates if roles and permissions must be migrated. */\n migrateRoles?: MigrateRolesAndPermissions;\n /** Indicates if data migration must start right away. */\n startDataMigration?: StartDataMigration;\n /** Indicates if cutover must be triggered for the entire migration. */\n triggerCutover?: TriggerCutover;\n /** When you want to trigger cutover for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array. */\n dbsToTriggerCutoverOn?: string[];\n /** Indicates if cancel must be triggered for the entire migration. */\n cancel?: Cancel;\n /** When you want to trigger cancel for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array. */\n dbsToCancelMigrationOn?: string[];\n}\n\nexport function migrationSerializer(item: Migration): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: areAllPropsUndefined(item, [\n \"migrationInstanceResourceId\",\n \"migrationMode\",\n \"migrationOption\",\n \"sourceType\",\n \"sslMode\",\n \"sourceDbServerResourceId\",\n \"sourceDbServerFullyQualifiedDomainName\",\n \"targetDbServerFullyQualifiedDomainName\",\n \"secretParameters\",\n \"dbsToMigrate\",\n \"setupLogicalReplicationOnSourceDbIfNeeded\",\n \"overwriteDbsInTarget\",\n \"migrationWindowStartTimeInUtc\",\n \"migrationWindowEndTimeInUtc\",\n \"migrateRoles\",\n \"startDataMigration\",\n \"triggerCutover\",\n \"dbsToTriggerCutoverOn\",\n \"cancel\",\n \"dbsToCancelMigrationOn\",\n ])\n ? undefined\n : _migrationPropertiesSerializer(item),\n };\n}\n\nexport function migrationDeserializer(item: any): Migration {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _migrationPropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Migration. */\nexport interface MigrationProperties {\n /** Identifier of a migration. */\n readonly migrationId?: string;\n /** Current status of a migration. */\n readonly currentStatus?: MigrationStatus;\n /** Identifier of the private endpoint migration instance. */\n migrationInstanceResourceId?: string;\n /** Mode used to perform the migration: Online or Offline. */\n migrationMode?: MigrationMode;\n /** Supported option for a migration. */\n migrationOption?: MigrationOption;\n /** Source server type used for the migration: ApsaraDB_RDS, AWS, AWS_AURORA, AWS_EC2, AWS_RDS, AzureVM, Crunchy_PostgreSQL, Digital_Ocean_Droplets, Digital_Ocean_PostgreSQL, EDB, EDB_Oracle_Server, EDB_PostgreSQL, GCP, GCP_AlloyDB, GCP_CloudSQL, GCP_Compute, Heroku_PostgreSQL, Huawei_Compute, Huawei_RDS, OnPremises, PostgreSQLCosmosDB, PostgreSQLFlexibleServer, PostgreSQLSingleServer, or Supabase_PostgreSQL */\n sourceType?: SourceType;\n /** SSL mode used by a migration. Default SSL mode for 'PostgreSQLSingleServer' is 'VerifyFull'. Default SSL mode for other source types is 'Prefer'. */\n sslMode?: SslMode;\n /** Metadata of source database server. */\n readonly sourceDbServerMetadata?: DbServerMetadata;\n /** Metadata of target database server. */\n readonly targetDbServerMetadata?: DbServerMetadata;\n /** Identifier of the source database server resource, when 'sourceType' is 'PostgreSQLSingleServer'. For other source types this must be set to ipaddress:port@username or hostname:port@username. */\n sourceDbServerResourceId?: string;\n /** Fully qualified domain name (FQDN) or IP address of the source server. This property is optional. When provided, the migration service will always use it to connect to the source server. */\n sourceDbServerFullyQualifiedDomainName?: string;\n /** Identifier of the target database server resource. */\n readonly targetDbServerResourceId?: string;\n /** Fully qualified domain name (FQDN) or IP address of the target server. This property is optional. When provided, the migration service will always use it to connect to the target server. */\n targetDbServerFullyQualifiedDomainName?: string;\n /** Migration secret parameters. */\n secretParameters?: MigrationSecretParameters;\n /** Names of databases to migrate. */\n dbsToMigrate?: string[];\n /** Indicates whether to setup logical replication on source server, if needed. */\n setupLogicalReplicationOnSourceDbIfNeeded?: LogicalReplicationOnSourceServer;\n /** Indicates if databases on the target server can be overwritten when already present. If set to 'False', when the migration workflow detects that the database already exists on the target server, it will wait for a confirmation. */\n overwriteDbsInTarget?: OverwriteDatabasesOnTargetServer;\n /** Start time (UTC) for migration window. */\n migrationWindowStartTimeInUtc?: Date;\n /** End time (UTC) for migration window. */\n migrationWindowEndTimeInUtc?: Date;\n /** Indicates if roles and permissions must be migrated. */\n migrateRoles?: MigrateRolesAndPermissions;\n /** Indicates if data migration must start right away. */\n startDataMigration?: StartDataMigration;\n /** Indicates if cutover must be triggered for the entire migration. */\n triggerCutover?: TriggerCutover;\n /** When you want to trigger cutover for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array. */\n dbsToTriggerCutoverOn?: string[];\n /** Indicates if cancel must be triggered for the entire migration. */\n cancel?: Cancel;\n /** When you want to trigger cancel for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array. */\n dbsToCancelMigrationOn?: string[];\n}\n\nexport function migrationPropertiesSerializer(item: MigrationProperties): any {\n return {\n migrationInstanceResourceId: item[\"migrationInstanceResourceId\"],\n migrationMode: item[\"migrationMode\"],\n migrationOption: item[\"migrationOption\"],\n sourceType: item[\"sourceType\"],\n sslMode: item[\"sslMode\"],\n sourceDbServerResourceId: item[\"sourceDbServerResourceId\"],\n sourceDbServerFullyQualifiedDomainName: item[\"sourceDbServerFullyQualifiedDomainName\"],\n targetDbServerFullyQualifiedDomainName: item[\"targetDbServerFullyQualifiedDomainName\"],\n secretParameters: !item[\"secretParameters\"]\n ? item[\"secretParameters\"]\n : migrationSecretParametersSerializer(item[\"secretParameters\"]),\n dbsToMigrate: !item[\"dbsToMigrate\"]\n ? item[\"dbsToMigrate\"]\n : item[\"dbsToMigrate\"].map((p: any) => {\n return p;\n }),\n setupLogicalReplicationOnSourceDbIfNeeded: item[\"setupLogicalReplicationOnSourceDbIfNeeded\"],\n overwriteDbsInTarget: item[\"overwriteDbsInTarget\"],\n migrationWindowStartTimeInUtc: !item[\"migrationWindowStartTimeInUtc\"]\n ? item[\"migrationWindowStartTimeInUtc\"]\n : item[\"migrationWindowStartTimeInUtc\"].toISOString(),\n migrationWindowEndTimeInUtc: !item[\"migrationWindowEndTimeInUtc\"]\n ? item[\"migrationWindowEndTimeInUtc\"]\n : item[\"migrationWindowEndTimeInUtc\"].toISOString(),\n migrateRoles: item[\"migrateRoles\"],\n startDataMigration: item[\"startDataMigration\"],\n triggerCutover: item[\"triggerCutover\"],\n dbsToTriggerCutoverOn: !item[\"dbsToTriggerCutoverOn\"]\n ? item[\"dbsToTriggerCutoverOn\"]\n : item[\"dbsToTriggerCutoverOn\"].map((p: any) => {\n return p;\n }),\n cancel: item[\"cancel\"],\n dbsToCancelMigrationOn: !item[\"dbsToCancelMigrationOn\"]\n ? item[\"dbsToCancelMigrationOn\"]\n : item[\"dbsToCancelMigrationOn\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function migrationPropertiesDeserializer(item: any): MigrationProperties {\n return {\n migrationId: item[\"migrationId\"],\n currentStatus: !item[\"currentStatus\"]\n ? item[\"currentStatus\"]\n : migrationStatusDeserializer(item[\"currentStatus\"]),\n migrationInstanceResourceId: item[\"migrationInstanceResourceId\"],\n migrationMode: item[\"migrationMode\"],\n migrationOption: item[\"migrationOption\"],\n sourceType: item[\"sourceType\"],\n sslMode: item[\"sslMode\"],\n sourceDbServerMetadata: !item[\"sourceDbServerMetadata\"]\n ? item[\"sourceDbServerMetadata\"]\n : dbServerMetadataDeserializer(item[\"sourceDbServerMetadata\"]),\n targetDbServerMetadata: !item[\"targetDbServerMetadata\"]\n ? item[\"targetDbServerMetadata\"]\n : dbServerMetadataDeserializer(item[\"targetDbServerMetadata\"]),\n sourceDbServerResourceId: item[\"sourceDbServerResourceId\"],\n sourceDbServerFullyQualifiedDomainName: item[\"sourceDbServerFullyQualifiedDomainName\"],\n targetDbServerResourceId: item[\"targetDbServerResourceId\"],\n targetDbServerFullyQualifiedDomainName: item[\"targetDbServerFullyQualifiedDomainName\"],\n secretParameters: !item[\"secretParameters\"]\n ? item[\"secretParameters\"]\n : migrationSecretParametersDeserializer(item[\"secretParameters\"]),\n dbsToMigrate: !item[\"dbsToMigrate\"]\n ? item[\"dbsToMigrate\"]\n : item[\"dbsToMigrate\"].map((p: any) => {\n return p;\n }),\n setupLogicalReplicationOnSourceDbIfNeeded: item[\"setupLogicalReplicationOnSourceDbIfNeeded\"],\n overwriteDbsInTarget: item[\"overwriteDbsInTarget\"],\n migrationWindowStartTimeInUtc: !item[\"migrationWindowStartTimeInUtc\"]\n ? item[\"migrationWindowStartTimeInUtc\"]\n : new Date(item[\"migrationWindowStartTimeInUtc\"]),\n migrationWindowEndTimeInUtc: !item[\"migrationWindowEndTimeInUtc\"]\n ? item[\"migrationWindowEndTimeInUtc\"]\n : new Date(item[\"migrationWindowEndTimeInUtc\"]),\n migrateRoles: item[\"migrateRoles\"],\n startDataMigration: item[\"startDataMigration\"],\n triggerCutover: item[\"triggerCutover\"],\n dbsToTriggerCutoverOn: !item[\"dbsToTriggerCutoverOn\"]\n ? item[\"dbsToTriggerCutoverOn\"]\n : item[\"dbsToTriggerCutoverOn\"].map((p: any) => {\n return p;\n }),\n cancel: item[\"cancel\"],\n dbsToCancelMigrationOn: !item[\"dbsToCancelMigrationOn\"]\n ? item[\"dbsToCancelMigrationOn\"]\n : item[\"dbsToCancelMigrationOn\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** State of migration. */\nexport interface MigrationStatus {\n /** State of migration. */\n readonly state?: MigrationState;\n /** Error message, if any, for the migration state. */\n readonly error?: string;\n /** Current migration sub state details. */\n readonly currentSubStateDetails?: MigrationSubstateDetails;\n}\n\nexport function migrationStatusDeserializer(item: any): MigrationStatus {\n return {\n state: item[\"state\"],\n error: item[\"error\"],\n currentSubStateDetails: !item[\"currentSubStateDetails\"]\n ? item[\"currentSubStateDetails\"]\n : migrationSubstateDetailsDeserializer(item[\"currentSubStateDetails\"]),\n };\n}\n\n/** State of migration. */\nexport enum KnownMigrationState {\n /** InProgress */\n InProgress = \"InProgress\",\n /** WaitingForUserAction */\n WaitingForUserAction = \"WaitingForUserAction\",\n /** Canceled */\n Canceled = \"Canceled\",\n /** Failed */\n Failed = \"Failed\",\n /** Succeeded */\n Succeeded = \"Succeeded\",\n /** ValidationFailed */\n ValidationFailed = \"ValidationFailed\",\n /** CleaningUp */\n CleaningUp = \"CleaningUp\",\n}\n\n/**\n * State of migration. \\\n * {@link KnownMigrationState} can be used interchangeably with MigrationState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **InProgress** \\\n * **WaitingForUserAction** \\\n * **Canceled** \\\n * **Failed** \\\n * **Succeeded** \\\n * **ValidationFailed** \\\n * **CleaningUp**\n */\nexport type MigrationState = string;\n\n/** Details of migration substate. */\nexport interface MigrationSubstateDetails {\n /** Substate of migration. */\n readonly currentSubState?: MigrationSubstate;\n dbDetails?: Record<string, DatabaseMigrationState>;\n validationDetails?: ValidationDetails;\n}\n\nexport function migrationSubstateDetailsDeserializer(item: any): MigrationSubstateDetails {\n return {\n currentSubState: item[\"currentSubState\"],\n dbDetails: !item[\"dbDetails\"]\n ? item[\"dbDetails\"]\n : databaseMigrationStateRecordDeserializer(item[\"dbDetails\"]),\n validationDetails: !item[\"validationDetails\"]\n ? item[\"validationDetails\"]\n : validationDetailsDeserializer(item[\"validationDetails\"]),\n };\n}\n\n/** Substate of migration. */\nexport enum KnownMigrationSubstate {\n /** PerformingPreRequisiteSteps */\n PerformingPreRequisiteSteps = \"PerformingPreRequisiteSteps\",\n /** WaitingForLogicalReplicationSetupRequestOnSourceDB */\n WaitingForLogicalReplicationSetupRequestOnSourceDB = \"WaitingForLogicalReplicationSetupRequestOnSourceDB\",\n /** WaitingForDBsToMigrateSpecification */\n WaitingForDBsToMigrateSpecification = \"WaitingForDBsToMigrateSpecification\",\n /** WaitingForTargetDBOverwriteConfirmation */\n WaitingForTargetDBOverwriteConfirmation = \"WaitingForTargetDBOverwriteConfirmation\",\n /** WaitingForDataMigrationScheduling */\n WaitingForDataMigrationScheduling = \"WaitingForDataMigrationScheduling\",\n /** WaitingForDataMigrationWindow */\n WaitingForDataMigrationWindow = \"WaitingForDataMigrationWindow\",\n /** MigratingData */\n MigratingData = \"MigratingData\",\n /** WaitingForCutoverTrigger */\n WaitingForCutoverTrigger = \"WaitingForCutoverTrigger\",\n /** CompletingMigration */\n CompletingMigration = \"CompletingMigration\",\n /** Completed */\n Completed = \"Completed\",\n /** CancelingRequestedDBMigrations */\n CancelingRequestedDBMigrations = \"CancelingRequestedDBMigrations\",\n /** ValidationInProgress */\n ValidationInProgress = \"ValidationInProgress\",\n}\n\n/**\n * Substate of migration. \\\n * {@link KnownMigrationSubstate} can be used interchangeably with MigrationSubstate,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **PerformingPreRequisiteSteps** \\\n * **WaitingForLogicalReplicationSetupRequestOnSourceDB** \\\n * **WaitingForDBsToMigrateSpecification** \\\n * **WaitingForTargetDBOverwriteConfirmation** \\\n * **WaitingForDataMigrationScheduling** \\\n * **WaitingForDataMigrationWindow** \\\n * **MigratingData** \\\n * **WaitingForCutoverTrigger** \\\n * **CompletingMigration** \\\n * **Completed** \\\n * **CancelingRequestedDBMigrations** \\\n * **ValidationInProgress**\n */\nexport type MigrationSubstate = string;\n\nexport function databaseMigrationStateRecordDeserializer(\n item: Record<string, any>,\n): Record<string, DatabaseMigrationState> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : databaseMigrationStateDeserializer(item[key]);\n });\n return result;\n}\n\n/** Migration state of a database. */\nexport interface DatabaseMigrationState {\n /** Name of database. */\n databaseName?: string;\n /** Migration state of a database. */\n migrationState?: MigrationDatabaseState;\n /** Migration operation of a database. */\n migrationOperation?: string;\n /** Start time of a migration state. */\n startedOn?: Date;\n /** End time of a migration state. */\n endedOn?: Date;\n /** Number of tables queued for the migration of a database. */\n fullLoadQueuedTables?: number;\n /** Number of tables encountering errors during the migration of a database. */\n fullLoadErroredTables?: number;\n /** Number of tables loading during the migration of a database. */\n fullLoadLoadingTables?: number;\n /** Number of tables loaded during the migration of a database. */\n fullLoadCompletedTables?: number;\n /** Change Data Capture update counter. */\n cdcUpdateCounter?: number;\n /** Change Data Capture delete counter. */\n cdcDeleteCounter?: number;\n /** Change Data Capture insert counter. */\n cdcInsertCounter?: number;\n /** Change Data Capture applied changes counter. */\n appliedChanges?: number;\n /** Change Data Capture incoming changes counter. */\n incomingChanges?: number;\n /** Lag in seconds between source and target during online phase. */\n latency?: number;\n /** Error message, if any, for the migration state. */\n message?: string;\n}\n\nexport function databaseMigrationStateDeserializer(item: any): DatabaseMigrationState {\n return {\n databaseName: item[\"databaseName\"],\n migrationState: item[\"migrationState\"],\n migrationOperation: item[\"migrationOperation\"],\n startedOn: !item[\"startedOn\"] ? item[\"startedOn\"] : new Date(item[\"startedOn\"]),\n endedOn: !item[\"endedOn\"] ? item[\"endedOn\"] : new Date(item[\"endedOn\"]),\n fullLoadQueuedTables: item[\"fullLoadQueuedTables\"],\n fullLoadErroredTables: item[\"fullLoadErroredTables\"],\n fullLoadLoadingTables: item[\"fullLoadLoadingTables\"],\n fullLoadCompletedTables: item[\"fullLoadCompletedTables\"],\n cdcUpdateCounter: item[\"cdcUpdateCounter\"],\n cdcDeleteCounter: item[\"cdcDeleteCounter\"],\n cdcInsertCounter: item[\"cdcInsertCounter\"],\n appliedChanges: item[\"appliedChanges\"],\n incomingChanges: item[\"incomingChanges\"],\n latency: item[\"latency\"],\n message: item[\"message\"],\n };\n}\n\n/** Migration state of a database. */\nexport enum KnownMigrationDatabaseState {\n /** InProgress */\n InProgress = \"InProgress\",\n /** WaitingForCutoverTrigger */\n WaitingForCutoverTrigger = \"WaitingForCutoverTrigger\",\n /** Failed */\n Failed = \"Failed\",\n /** Canceled */\n Canceled = \"Canceled\",\n /** Succeeded */\n Succeeded = \"Succeeded\",\n /** Canceling */\n Canceling = \"Canceling\",\n}\n\n/**\n * Migration state of a database. \\\n * {@link KnownMigrationDatabaseState} can be used interchangeably with MigrationDatabaseState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **InProgress** \\\n * **WaitingForCutoverTrigger** \\\n * **Failed** \\\n * **Canceled** \\\n * **Succeeded** \\\n * **Canceling**\n */\nexport type MigrationDatabaseState = string;\n\n/** Details for the validation for migration. */\nexport interface ValidationDetails {\n /** Validation status for migration. */\n status?: ValidationState;\n /** Start time (UTC) for validation. */\n validationStartTimeInUtc?: Date;\n /** End time (UTC) for validation. */\n validationEndTimeInUtc?: Date;\n /** Details of server level validations. */\n serverLevelValidationDetails?: ValidationSummaryItem[];\n /** Details of server level validations. */\n dbLevelValidationDetails?: DbLevelValidationStatus[];\n}\n\nexport function validationDetailsDeserializer(item: any): ValidationDetails {\n return {\n status: item[\"status\"],\n validationStartTimeInUtc: !item[\"validationStartTimeInUtc\"]\n ? item[\"validationStartTimeInUtc\"]\n : new Date(item[\"validationStartTimeInUtc\"]),\n validationEndTimeInUtc: !item[\"validationEndTimeInUtc\"]\n ? item[\"validationEndTimeInUtc\"]\n : new Date(item[\"validationEndTimeInUtc\"]),\n serverLevelValidationDetails: !item[\"serverLevelValidationDetails\"]\n ? item[\"serverLevelValidationDetails\"]\n : validationSummaryItemArrayDeserializer(item[\"serverLevelValidationDetails\"]),\n dbLevelValidationDetails: !item[\"dbLevelValidationDetails\"]\n ? item[\"dbLevelValidationDetails\"]\n : dbLevelValidationStatusArrayDeserializer(item[\"dbLevelValidationDetails\"]),\n };\n}\n\n/** Validation status for migration. */\nexport enum KnownValidationState {\n /** Failed */\n Failed = \"Failed\",\n /** Succeeded */\n Succeeded = \"Succeeded\",\n /** Warning */\n Warning = \"Warning\",\n}\n\n/**\n * Validation status for migration. \\\n * {@link KnownValidationState} can be used interchangeably with ValidationState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Failed** \\\n * **Succeeded** \\\n * **Warning**\n */\nexport type ValidationState = string;\n\nexport function validationSummaryItemArrayDeserializer(\n result: Array<ValidationSummaryItem>,\n): any[] {\n return result.map((item) => {\n return validationSummaryItemDeserializer(item);\n });\n}\n\n/** Validation summary object. */\nexport interface ValidationSummaryItem {\n /** Validation type. */\n type?: string;\n /** Validation status for migration. */\n state?: ValidationState;\n /** Validation messages. */\n messages?: ValidationMessage[];\n}\n\nexport function validationSummaryItemDeserializer(item: any): ValidationSummaryItem {\n return {\n type: item[\"type\"],\n state: item[\"state\"],\n messages: !item[\"messages\"]\n ? item[\"messages\"]\n : validationMessageArrayDeserializer(item[\"messages\"]),\n };\n}\n\nexport function validationMessageArrayDeserializer(result: Array<ValidationMessage>): any[] {\n return result.map((item) => {\n return validationMessageDeserializer(item);\n });\n}\n\n/** Validation message object. */\nexport interface ValidationMessage {\n /** Severity of validation message. */\n state?: ValidationState;\n /** Validation message string. */\n message?: string;\n}\n\nexport function validationMessageDeserializer(item: any): ValidationMessage {\n return {\n state: item[\"state\"],\n message: item[\"message\"],\n };\n}\n\nexport function dbLevelValidationStatusArrayDeserializer(\n result: Array<DbLevelValidationStatus>,\n): any[] {\n return result.map((item) => {\n return dbLevelValidationStatusDeserializer(item);\n });\n}\n\n/** Validation status summary for a database. */\nexport interface DbLevelValidationStatus {\n /** Name of database. */\n databaseName?: string;\n /** Start time of a database level validation. */\n startedOn?: Date;\n /** End time of a database level validation. */\n endedOn?: Date;\n /** Summary of database level validations. */\n summary?: ValidationSummaryItem[];\n}\n\nexport function dbLevelValidationStatusDeserializer(item: any): DbLevelValidationStatus {\n return {\n databaseName: item[\"databaseName\"],\n startedOn: !item[\"startedOn\"] ? item[\"startedOn\"] : new Date(item[\"startedOn\"]),\n endedOn: !item[\"endedOn\"] ? item[\"endedOn\"] : new Date(item[\"endedOn\"]),\n summary: !item[\"summary\"]\n ? item[\"summary\"]\n : validationSummaryItemArrayDeserializer(item[\"summary\"]),\n };\n}\n\n/** Mode used to perform the migration: Online or Offline. */\nexport enum KnownMigrationMode {\n /** Offline */\n Offline = \"Offline\",\n /** Online */\n Online = \"Online\",\n}\n\n/**\n * Mode used to perform the migration: Online or Offline. \\\n * {@link KnownMigrationMode} can be used interchangeably with MigrationMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Offline** \\\n * **Online**\n */\nexport type MigrationMode = string;\n\n/** Supported option for a migration */\nexport enum KnownMigrationOption {\n /** Validate */\n Validate = \"Validate\",\n /** Migrate */\n Migrate = \"Migrate\",\n /** ValidateAndMigrate */\n ValidateAndMigrate = \"ValidateAndMigrate\",\n}\n\n/**\n * Supported option for a migration \\\n * {@link KnownMigrationOption} can be used interchangeably with MigrationOption,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Validate** \\\n * **Migrate** \\\n * **ValidateAndMigrate**\n */\nexport type MigrationOption = string;\n\n/** Source server type used for the migration: ApsaraDB_RDS, AWS, AWS_AURORA, AWS_EC2, AWS_RDS, AzureVM, Crunchy_PostgreSQL, Digital_Ocean_Droplets, Digital_Ocean_PostgreSQL, EDB, EDB_Oracle_Server, EDB_PostgreSQL, GCP, GCP_AlloyDB, GCP_CloudSQL, GCP_Compute, Heroku_PostgreSQL, Huawei_Compute, Huawei_RDS, OnPremises, PostgreSQLCosmosDB, PostgreSQLFlexibleServer, PostgreSQLSingleServer, or Supabase_PostgreSQL */\nexport enum KnownSourceType {\n /** OnPremises */\n OnPremises = \"OnPremises\",\n /** AWS */\n AWS = \"AWS\",\n /** GCP */\n GCP = \"GCP\",\n /** AzureVM */\n AzureVM = \"AzureVM\",\n /** PostgreSQLSingleServer */\n PostgreSQLSingleServer = \"PostgreSQLSingleServer\",\n /** AWS_RDS */\n AWSRDS = \"AWS_RDS\",\n /** AWS_AURORA */\n AWSAurora = \"AWS_AURORA\",\n /** AWS_EC2 */\n AWSEC2 = \"AWS_EC2\",\n /** GCP_CloudSQL */\n GCPCloudSQL = \"GCP_CloudSQL\",\n /** GCP_AlloyDB */\n GCPAlloyDB = \"GCP_AlloyDB\",\n /** GCP_Compute */\n GCPCompute = \"GCP_Compute\",\n /** EDB */\n EDB = \"EDB\",\n /** EDB_Oracle_Server */\n EDBOracleServer = \"EDB_Oracle_Server\",\n /** EDB_PostgreSQL */\n EDBPostgreSQL = \"EDB_PostgreSQL\",\n /** PostgreSQLFlexibleServer */\n PostgreSQLFlexibleServer = \"PostgreSQLFlexibleServer\",\n /** PostgreSQLCosmosDB */\n PostgreSQLCosmosDB = \"PostgreSQLCosmosDB\",\n /** Huawei_RDS */\n HuaweiRDS = \"Huawei_RDS\",\n /** Huawei_Compute */\n HuaweiCompute = \"Huawei_Compute\",\n /** Heroku_PostgreSQL */\n HerokuPostgreSQL = \"Heroku_PostgreSQL\",\n /** Crunchy_PostgreSQL */\n CrunchyPostgreSQL = \"Crunchy_PostgreSQL\",\n /** ApsaraDB_RDS */\n ApsaraDBRDS = \"ApsaraDB_RDS\",\n /** Digital_Ocean_Droplets */\n DigitalOceanDroplets = \"Digital_Ocean_Droplets\",\n /** Digital_Ocean_PostgreSQL */\n DigitalOceanPostgreSQL = \"Digital_Ocean_PostgreSQL\",\n /** Supabase_PostgreSQL */\n SupabasePostgreSQL = \"Supabase_PostgreSQL\",\n}\n\n/**\n * Source server type used for the migration: ApsaraDB_RDS, AWS, AWS_AURORA, AWS_EC2, AWS_RDS, AzureVM, Crunchy_PostgreSQL, Digital_Ocean_Droplets, Digital_Ocean_PostgreSQL, EDB, EDB_Oracle_Server, EDB_PostgreSQL, GCP, GCP_AlloyDB, GCP_CloudSQL, GCP_Compute, Heroku_PostgreSQL, Huawei_Compute, Huawei_RDS, OnPremises, PostgreSQLCosmosDB, PostgreSQLFlexibleServer, PostgreSQLSingleServer, or Supabase_PostgreSQL \\\n * {@link KnownSourceType} can be used interchangeably with SourceType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **OnPremises** \\\n * **AWS** \\\n * **GCP** \\\n * **AzureVM** \\\n * **PostgreSQLSingleServer** \\\n * **AWS_RDS** \\\n * **AWS_AURORA** \\\n * **AWS_EC2** \\\n * **GCP_CloudSQL** \\\n * **GCP_AlloyDB** \\\n * **GCP_Compute** \\\n * **EDB** \\\n * **EDB_Oracle_Server** \\\n * **EDB_PostgreSQL** \\\n * **PostgreSQLFlexibleServer** \\\n * **PostgreSQLCosmosDB** \\\n * **Huawei_RDS** \\\n * **Huawei_Compute** \\\n * **Heroku_PostgreSQL** \\\n * **Crunchy_PostgreSQL** \\\n * **ApsaraDB_RDS** \\\n * **Digital_Ocean_Droplets** \\\n * **Digital_Ocean_PostgreSQL** \\\n * **Supabase_PostgreSQL**\n */\nexport type SourceType = string;\n\n/** SSL mode used by a migration. Default SSL mode for 'PostgreSQLSingleServer' is 'VerifyFull'. Default SSL mode for other source types is 'Prefer'. */\nexport enum KnownSslMode {\n /** Prefer */\n Prefer = \"Prefer\",\n /** Require */\n Require = \"Require\",\n /** VerifyCA */\n VerifyCA = \"VerifyCA\",\n /** VerifyFull */\n VerifyFull = \"VerifyFull\",\n}\n\n/**\n * SSL mode used by a migration. Default SSL mode for 'PostgreSQLSingleServer' is 'VerifyFull'. Default SSL mode for other source types is 'Prefer'. \\\n * {@link KnownSslMode} can be used interchangeably with SslMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Prefer** \\\n * **Require** \\\n * **VerifyCA** \\\n * **VerifyFull**\n */\nexport type SslMode = string;\n\n/** Database server metadata. */\nexport interface DbServerMetadata {\n /** Location of database server. */\n readonly location?: string;\n /** Major version of PostgreSQL database engine. */\n version?: string;\n /** Storage size (in MB) for database server. */\n storageMb?: number;\n /** Compute tier and size of the database server. This object is empty for an Azure Database for PostgreSQL single server. */\n sku?: ServerSku;\n}\n\nexport function dbServerMetadataDeserializer(item: any): DbServerMetadata {\n return {\n location: item[\"location\"],\n version: item[\"version\"],\n storageMb: item[\"storageMb\"],\n sku: !item[\"sku\"] ? item[\"sku\"] : serverSkuDeserializer(item[\"sku\"]),\n };\n}\n\n/** Compute information of a server. */\nexport interface ServerSku {\n /** Compute tier and size of the database server. This object is empty for an Azure Database for PostgreSQL single server. */\n name?: string;\n /** Tier of the compute assigned to a server. */\n tier?: SkuTier;\n}\n\nexport function serverSkuDeserializer(item: any): ServerSku {\n return {\n name: item[\"name\"],\n tier: item[\"tier\"],\n };\n}\n\n/** Tier of the compute assigned to a server. */\nexport enum KnownSkuTier {\n /** Burstable */\n Burstable = \"Burstable\",\n /** GeneralPurpose */\n GeneralPurpose = \"GeneralPurpose\",\n /** MemoryOptimized */\n MemoryOptimized = \"MemoryOptimized\",\n}\n\n/**\n * Tier of the compute assigned to a server. \\\n * {@link KnownSkuTier} can be used interchangeably with SkuTier,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Burstable** \\\n * **GeneralPurpose** \\\n * **MemoryOptimized**\n */\nexport type SkuTier = string;\n\n/** Migration secret parameters. */\nexport interface MigrationSecretParameters {\n /** Credentials of administrator users for source and target servers. */\n adminCredentials: AdminCredentials;\n /** Gets or sets the name of the user for the source server. This user doesn't need to be an administrator. */\n sourceServerUsername?: string;\n /** Gets or sets the name of the user for the target server. This user doesn't need to be an administrator. */\n targetServerUsername?: string;\n}\n\nexport function migrationSecretParametersSerializer(item: MigrationSecretParameters): any {\n return {\n adminCredentials: adminCredentialsSerializer(item[\"adminCredentials\"]),\n sourceServerUsername: item[\"sourceServerUsername\"],\n targetServerUsername: item[\"targetServerUsername\"],\n };\n}\n\nexport function migrationSecretParametersDeserializer(item: any): MigrationSecretParameters {\n return {\n adminCredentials: adminCredentialsDeserializer(item[\"adminCredentials\"]),\n sourceServerUsername: item[\"sourceServerUsername\"],\n targetServerUsername: item[\"targetServerUsername\"],\n };\n}\n\n/** Credentials of administrator users for source and target servers. */\nexport interface AdminCredentials {\n /** Password for the user of the source server. */\n sourceServerPassword: string;\n /** Password for the user of the target server. */\n targetServerPassword: string;\n}\n\nexport function adminCredentialsSerializer(item: AdminCredentials): any {\n return {\n sourceServerPassword: item[\"sourceServerPassword\"],\n targetServerPassword: item[\"targetServerPassword\"],\n };\n}\n\nexport function adminCredentialsDeserializer(item: any): AdminCredentials {\n return {\n sourceServerPassword: item[\"sourceServerPassword\"],\n targetServerPassword: item[\"targetServerPassword\"],\n };\n}\n\n/** Indicates whether to setup logical replication on source server, if needed. */\nexport enum KnownLogicalReplicationOnSourceServer {\n /** True */\n True = \"True\",\n /** False */\n False = \"False\",\n}\n\n/**\n * Indicates whether to setup logical replication on source server, if needed. \\\n * {@link KnownLogicalReplicationOnSourceServer} can be used interchangeably with LogicalReplicationOnSourceServer,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **True** \\\n * **False**\n */\nexport type LogicalReplicationOnSourceServer = string;\n\n/** Indicates if databases on the target server can be overwritten when already present. If set to 'False', when the migration workflow detects that the database already exists on the target server, it will wait for a confirmation. */\nexport enum KnownOverwriteDatabasesOnTargetServer {\n /** True */\n True = \"True\",\n /** False */\n False = \"False\",\n}\n\n/**\n * Indicates if databases on the target server can be overwritten when already present. If set to 'False', when the migration workflow detects that the database already exists on the target server, it will wait for a confirmation. \\\n * {@link KnownOverwriteDatabasesOnTargetServer} can be used interchangeably with OverwriteDatabasesOnTargetServer,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **True** \\\n * **False**\n */\nexport type OverwriteDatabasesOnTargetServer = string;\n\n/** Indicates if roles and permissions must be migrated. */\nexport enum KnownMigrateRolesAndPermissions {\n /** True */\n True = \"True\",\n /** False */\n False = \"False\",\n}\n\n/**\n * Indicates if roles and permissions must be migrated. \\\n * {@link KnownMigrateRolesAndPermissions} can be used interchangeably with MigrateRolesAndPermissions,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **True** \\\n * **False**\n */\nexport type MigrateRolesAndPermissions = string;\n\n/** Indicates if data migration must start right away. */\nexport enum KnownStartDataMigration {\n /** True */\n True = \"True\",\n /** False */\n False = \"False\",\n}\n\n/**\n * Indicates if data migration must start right away. \\\n * {@link KnownStartDataMigration} can be used interchangeably with StartDataMigration,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **True** \\\n * **False**\n */\nexport type StartDataMigration = string;\n\n/** Indicates if cutover must be triggered for the entire migration. */\nexport enum KnownTriggerCutover {\n /** True */\n True = \"True\",\n /** False */\n False = \"False\",\n}\n\n/**\n * Indicates if cutover must be triggered for the entire migration. \\\n * {@link KnownTriggerCutover} can be used interchangeably with TriggerCutover,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **True** \\\n * **False**\n */\nexport type TriggerCutover = string;\n\n/** Indicates if cancel must be triggered for the entire migration. */\nexport enum KnownCancel {\n /** True */\n True = \"True\",\n /** False */\n False = \"False\",\n}\n\n/**\n * Indicates if cancel must be triggered for the entire migration. \\\n * {@link KnownCancel} can be used interchangeably with Cancel,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **True** \\\n * **False**\n */\nexport type Cancel = 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 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/** Migration. */\nexport interface MigrationResourceForPatch {\n /** Application-specific metadata in the form of key-value pairs. */\n tags?: Record<string, string>;\n /** Identifier of the source database server resource, when 'sourceType' is 'PostgreSQLSingleServer'. For other source types this must be set to ipaddress:port@username or hostname:port@username. */\n sourceDbServerResourceId?: string;\n /** Fully qualified domain name (FQDN) or IP address of the source server. This property is optional. When provided, the migration service will always use it to connect to the source server. */\n sourceDbServerFullyQualifiedDomainName?: string;\n /** Fully qualified domain name (FQDN) or IP address of the target server. This property is optional. When provided, the migration service will always use it to connect to the target server. */\n targetDbServerFullyQualifiedDomainName?: string;\n /** Migration secret parameters. */\n secretParameters?: MigrationSecretParametersForPatch;\n /** Names of databases to migrate. */\n dbsToMigrate?: string[];\n /** Indicates whether to setup logical replication on source server, if needed. */\n setupLogicalReplicationOnSourceDbIfNeeded?: LogicalReplicationOnSourceServer;\n /** Indicates if databases on the target server can be overwritten when already present. If set to 'False', when the migration workflow detects that the database already exists on the target server, it will wait for a confirmation. */\n overwriteDbsInTarget?: OverwriteDatabasesOnTargetServer;\n /** Start time (UTC) for migration window. */\n migrationWindowStartTimeInUtc?: Date;\n /** Indicates if roles and permissions must be migrated. */\n migrateRoles?: MigrateRolesAndPermissions;\n /** Indicates if data migration must start right away. */\n startDataMigration?: StartDataMigration;\n /** Indicates if cutover must be triggered for the entire migration. */\n triggerCutover?: TriggerCutover;\n /** When you want to trigger cutover for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array. */\n dbsToTriggerCutoverOn?: string[];\n /** Indicates if cancel must be triggered for the entire migration. */\n cancel?: Cancel;\n /** When you want to trigger cancel for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array. */\n dbsToCancelMigrationOn?: string[];\n /** Mode used to perform the migration: Online or Offline. */\n migrationMode?: MigrationMode;\n}\n\nexport function migrationResourceForPatchSerializer(item: MigrationResourceForPatch): any {\n return {\n properties: areAllPropsUndefined(item, [\n \"sourceDbServerResourceId\",\n \"sourceDbServerFullyQualifiedDomainName\",\n \"targetDbServerFullyQualifiedDomainName\",\n \"secretParameters\",\n \"dbsToMigrate\",\n \"setupLogicalReplicationOnSourceDbIfNeeded\",\n \"overwriteDbsInTarget\",\n \"migrationWindowStartTimeInUtc\",\n \"migrateRoles\",\n \"startDataMigration\",\n \"triggerCutover\",\n \"dbsToTriggerCutoverOn\",\n \"cancel\",\n \"dbsToCancelMigrationOn\",\n \"migrationMode\",\n ])\n ? undefined\n : _migrationResourceForPatchPropertiesSerializer(item),\n tags: item[\"tags\"],\n };\n}\n\n/** Migration properties. */\nexport interface MigrationPropertiesForPatch {\n /** Identifier of the source database server resource, when 'sourceType' is 'PostgreSQLSingleServer'. For other source types this must be set to ipaddress:port@username or hostname:port@username. */\n sourceDbServerResourceId?: string;\n /** Fully qualified domain name (FQDN) or IP address of the source server. This property is optional. When provided, the migration service will always use it to connect to the source server. */\n sourceDbServerFullyQualifiedDomainName?: string;\n /** Fully qualified domain name (FQDN) or IP address of the target server. This property is optional. When provided, the migration service will always use it to connect to the target server. */\n targetDbServerFullyQualifiedDomainName?: string;\n /** Migration secret parameters. */\n secretParameters?: MigrationSecretParametersForPatch;\n /** Names of databases to migrate. */\n dbsToMigrate?: string[];\n /** Indicates whether to setup logical replication on source server, if needed. */\n setupLogicalReplicationOnSourceDbIfNeeded?: LogicalReplicationOnSourceServer;\n /** Indicates if databases on the target server can be overwritten when already present. If set to 'False', when the migration workflow detects that the database already exists on the target server, it will wait for a confirmation. */\n overwriteDbsInTarget?: OverwriteDatabasesOnTargetServer;\n /** Start time (UTC) for migration window. */\n migrationWindowStartTimeInUtc?: Date;\n /** Indicates if roles and permissions must be migrated. */\n migrateRoles?: MigrateRolesAndPermissions;\n /** Indicates if data migration must start right away. */\n startDataMigration?: StartDataMigration;\n /** Indicates if cutover must be triggered for the entire migration. */\n triggerCutover?: TriggerCutover;\n /** When you want to trigger cutover for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array. */\n dbsToTriggerCutoverOn?: string[];\n /** Indicates if cancel must be triggered for the entire migration. */\n cancel?: Cancel;\n /** When you want to trigger cancel for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array. */\n dbsToCancelMigrationOn?: string[];\n /** Mode used to perform the migration: Online or Offline. */\n migrationMode?: MigrationMode;\n}\n\nexport function migrationPropertiesForPatchSerializer(item: MigrationPropertiesForPatch): any {\n return {\n sourceDbServerResourceId: item[\"sourceDbServerResourceId\"],\n sourceDbServerFullyQualifiedDomainName: item[\"sourceDbServerFullyQualifiedDomainName\"],\n targetDbServerFullyQualifiedDomainName: item[\"targetDbServerFullyQualifiedDomainName\"],\n secretParameters: !item[\"secretParameters\"]\n ? item[\"secretParameters\"]\n : migrationSecretParametersForPatchSerializer(item[\"secretParameters\"]),\n dbsToMigrate: !item[\"dbsToMigrate\"]\n ? item[\"dbsToMigrate\"]\n : item[\"dbsToMigrate\"].map((p: any) => {\n return p;\n }),\n setupLogicalReplicationOnSourceDbIfNeeded: item[\"setupLogicalReplicationOnSourceDbIfNeeded\"],\n overwriteDbsInTarget: item[\"overwriteDbsInTarget\"],\n migrationWindowStartTimeInUtc: !item[\"migrationWindowStartTimeInUtc\"]\n ? item[\"migrationWindowStartTimeInUtc\"]\n : item[\"migrationWindowStartTimeInUtc\"].toISOString(),\n migrateRoles: item[\"migrateRoles\"],\n startDataMigration: item[\"startDataMigration\"],\n triggerCutover: item[\"triggerCutover\"],\n dbsToTriggerCutoverOn: !item[\"dbsToTriggerCutoverOn\"]\n ? item[\"dbsToTriggerCutoverOn\"]\n : item[\"dbsToTriggerCutoverOn\"].map((p: any) => {\n return p;\n }),\n cancel: item[\"cancel\"],\n dbsToCancelMigrationOn: !item[\"dbsToCancelMigrationOn\"]\n ? item[\"dbsToCancelMigrationOn\"]\n : item[\"dbsToCancelMigrationOn\"].map((p: any) => {\n return p;\n }),\n migrationMode: item[\"migrationMode\"],\n };\n}\n\n/** Migration secret parameters. */\nexport interface MigrationSecretParametersForPatch {\n /** Credentials of administrator users for source and target servers. */\n adminCredentials?: AdminCredentialsForPatch;\n /** Gets or sets the name of the user for the source server. This user doesn't need to be an administrator. */\n sourceServerUsername?: string;\n /** Gets or sets the name of the user for the target server. This user doesn't need to be an administrator. */\n targetServerUsername?: string;\n}\n\nexport function migrationSecretParametersForPatchSerializer(\n item: MigrationSecretParametersForPatch,\n): any {\n return {\n adminCredentials: !item[\"adminCredentials\"]\n ? item[\"adminCredentials\"]\n : adminCredentialsForPatchSerializer(item[\"adminCredentials\"]),\n sourceServerUsername: item[\"sourceServerUsername\"],\n targetServerUsername: item[\"targetServerUsername\"],\n };\n}\n\n/** Credentials of administrator users for source and target servers. */\nexport interface AdminCredentialsForPatch {\n /** Password for the user of the source server. */\n sourceServerPassword?: string;\n /** Password for the user of the target server. */\n targetServerPassword?: string;\n}\n\nexport function adminCredentialsForPatchSerializer(item: AdminCredentialsForPatch): any {\n return {\n sourceServerPassword: item[\"sourceServerPassword\"],\n targetServerPassword: item[\"targetServerPassword\"],\n };\n}\n\n/** List of migrations. */\nexport interface _MigrationList {\n /** The Migration items on this page */\n readonly value: Migration[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _migrationListDeserializer(item: any): _MigrationList {\n return {\n value: migrationArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function migrationArraySerializer(result: Array<Migration>): any[] {\n return result.map((item) => {\n return migrationSerializer(item);\n });\n}\n\nexport function migrationArrayDeserializer(result: Array<Migration>): any[] {\n return result.map((item) => {\n return migrationDeserializer(item);\n });\n}\n\n/** Availability of a migration name. */\nexport interface MigrationNameAvailability {\n /** Name of the migration to check for validity and availability. */\n name: string;\n /** Type of resource. */\n type: string;\n /** Indicates if the migration name is available. */\n readonly nameAvailable?: boolean;\n /** Migration name availability reason. */\n readonly reason?: MigrationNameAvailabilityReason;\n /** Migration name availability message. */\n readonly message?: string;\n}\n\nexport function migrationNameAvailabilitySerializer(item: MigrationNameAvailability): any {\n return { name: item[\"name\"], type: item[\"type\"] };\n}\n\nexport function migrationNameAvailabilityDeserializer(item: any): MigrationNameAvailability {\n return {\n name: item[\"name\"],\n type: item[\"type\"],\n nameAvailable: item[\"nameAvailable\"],\n reason: item[\"reason\"],\n message: item[\"message\"],\n };\n}\n\n/** Migration name availability reason. */\nexport enum KnownMigrationNameAvailabilityReason {\n /** Invalid */\n Invalid = \"Invalid\",\n /** AlreadyExists */\n AlreadyExists = \"AlreadyExists\",\n}\n\n/**\n * Migration name availability reason. \\\n * {@link KnownMigrationNameAvailabilityReason} can be used interchangeably with MigrationNameAvailabilityReason,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Invalid** \\\n * **AlreadyExists**\n */\nexport type MigrationNameAvailabilityReason = string;\n\n/** Properties of a server. */\nexport interface Server extends TrackedResource {\n /** Compute tier and size of a server. */\n sku?: Sku;\n /** User assigned managed identities assigned to the server. */\n identity?: UserAssignedIdentity;\n /** Name of the login designated as the first password based administrator assigned to your instance of PostgreSQL. Must be specified the first time that you enable password based authentication on a server. Once set to a given value, it cannot be changed for the rest of the life of a server. If you disable password based authentication on a server which had it enabled, this password based role isn't deleted. */\n administratorLogin?: string;\n /** Password assigned to the administrator login. As long as password authentication is enabled, this password can be changed at any time. */\n administratorLoginPassword?: string;\n /** Major version of PostgreSQL database engine. */\n version?: PostgresMajorVersion;\n /** Minor version of PostgreSQL database engine. */\n readonly minorVersion?: string;\n /** Possible states of a server. */\n readonly state?: ServerState;\n /** Fully qualified domain name of a server. */\n readonly fullyQualifiedDomainName?: string;\n /** Storage properties of a server. */\n storage?: Storage;\n /** Authentication configuration properties of a server. */\n authConfig?: AuthConfig;\n /** Data encryption properties of a server. */\n dataEncryption?: DataEncryption;\n /** Backup properties of a server. */\n backup?: Backup;\n /** Network properties of a server. Only required if you want your server to be integrated into a virtual network provided by customer. */\n network?: Network;\n /** High availability properties of a server. */\n highAvailability?: HighAvailability;\n /** Maintenance window properties of a server. */\n maintenanceWindow?: MaintenanceWindow;\n /** Identifier of the server to be used as the source of the new server. Required when 'createMode' is 'PointInTimeRestore', 'GeoRestore', 'Replica', or 'ReviveDropped'. This property is returned only when the target server is a read replica. */\n sourceServerResourceId?: string;\n /** Creation time (in ISO8601 format) of the backup which you want to restore in the new server. It's required when 'createMode' is 'PointInTimeRestore', 'GeoRestore', or 'ReviveDropped'. */\n pointInTimeUTC?: Date;\n /** Availability zone of a server. */\n availabilityZone?: string;\n /** Role of the server in a replication set. */\n replicationRole?: ReplicationRole;\n /** Maximum number of read replicas allowed for a server. */\n readonly replicaCapacity?: number;\n /** Read replica properties of a server. Required only in case that you want to promote a server. */\n replica?: Replica;\n /** Creation mode of a new server. */\n createMode?: CreateMode;\n /** List of private endpoint connections associated with the specified server. */\n readonly privateEndpointConnections?: PrivateEndpointConnection[];\n /** Cluster properties of a server. */\n cluster?: Cluster;\n}\n\nexport function serverSerializer(item: Server): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: areAllPropsUndefined(item, [\n \"administratorLogin\",\n \"administratorLoginPassword\",\n \"version\",\n \"storage\",\n \"authConfig\",\n \"dataEncryption\",\n \"backup\",\n \"network\",\n \"highAvailability\",\n \"maintenanceWindow\",\n \"sourceServerResourceId\",\n \"pointInTimeUTC\",\n \"availabilityZone\",\n \"replicationRole\",\n \"replica\",\n \"createMode\",\n \"cluster\",\n ])\n ? undefined\n : _serverPropertiesSerializer(item),\n sku: !item[\"sku\"] ? item[\"sku\"] : skuSerializer(item[\"sku\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : userAssignedIdentitySerializer(item[\"identity\"]),\n };\n}\n\nexport function serverDeserializer(item: any): Server {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _serverPropertiesDeserializer(item[\"properties\"])),\n sku: !item[\"sku\"] ? item[\"sku\"] : skuDeserializer(item[\"sku\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : userAssignedIdentityDeserializer(item[\"identity\"]),\n };\n}\n\n/** Properties of a server. */\nexport interface ServerProperties {\n /** Name of the login designated as the first password based administrator assigned to your instance of PostgreSQL. Must be specified the first time that you enable password based authentication on a server. Once set to a given value, it cannot be changed for the rest of the life of a server. If you disable password based authentication on a server which had it enabled, this password based role isn't deleted. */\n administratorLogin?: string;\n /** Password assigned to the administrator login. As long as password authentication is enabled, this password can be changed at any time. */\n administratorLoginPassword?: string;\n /** Major version of PostgreSQL database engine. */\n version?: PostgresMajorVersion;\n /** Minor version of PostgreSQL database engine. */\n readonly minorVersion?: string;\n /** Possible states of a server. */\n readonly state?: ServerState;\n /** Fully qualified domain name of a server. */\n readonly fullyQualifiedDomainName?: string;\n /** Storage properties of a server. */\n storage?: Storage;\n /** Authentication configuration properties of a server. */\n authConfig?: AuthConfig;\n /** Data encryption properties of a server. */\n dataEncryption?: DataEncryption;\n /** Backup properties of a server. */\n backup?: Backup;\n /** Network properties of a server. Only required if you want your server to be integrated into a virtual network provided by customer. */\n network?: Network;\n /** High availability properties of a server. */\n highAvailability?: HighAvailability;\n /** Maintenance window properties of a server. */\n maintenanceWindow?: MaintenanceWindow;\n /** Identifier of the server to be used as the source of the new server. Required when 'createMode' is 'PointInTimeRestore', 'GeoRestore', 'Replica', or 'ReviveDropped'. This property is returned only when the target server is a read replica. */\n sourceServerResourceId?: string;\n /** Creation time (in ISO8601 format) of the backup which you want to restore in the new server. It's required when 'createMode' is 'PointInTimeRestore', 'GeoRestore', or 'ReviveDropped'. */\n pointInTimeUTC?: Date;\n /** Availability zone of a server. */\n availabilityZone?: string;\n /** Role of the server in a replication set. */\n replicationRole?: ReplicationRole;\n /** Maximum number of read replicas allowed for a server. */\n readonly replicaCapacity?: number;\n /** Read replica properties of a server. Required only in case that you want to promote a server. */\n replica?: Replica;\n /** Creation mode of a new server. */\n createMode?: CreateMode;\n /** List of private endpoint connections associated with the specified server. */\n readonly privateEndpointConnections?: PrivateEndpointConnection[];\n /** Cluster properties of a server. */\n cluster?: Cluster;\n}\n\nexport function serverPropertiesSerializer(item: ServerProperties): any {\n return {\n administratorLogin: item[\"administratorLogin\"],\n administratorLoginPassword: item[\"administratorLoginPassword\"],\n version: item[\"version\"],\n storage: !item[\"storage\"] ? item[\"storage\"] : storageSerializer(item[\"storage\"]),\n authConfig: !item[\"authConfig\"] ? item[\"authConfig\"] : authConfigSerializer(item[\"authConfig\"]),\n dataEncryption: !item[\"dataEncryption\"]\n ? item[\"dataEncryption\"]\n : dataEncryptionSerializer(item[\"dataEncryption\"]),\n backup: !item[\"backup\"] ? item[\"backup\"] : backupSerializer(item[\"backup\"]),\n network: !item[\"network\"] ? item[\"network\"] : networkSerializer(item[\"network\"]),\n highAvailability: !item[\"highAvailability\"]\n ? item[\"highAvailability\"]\n : highAvailabilitySerializer(item[\"highAvailability\"]),\n maintenanceWindow: !item[\"maintenanceWindow\"]\n ? item[\"maintenanceWindow\"]\n : maintenanceWindowSerializer(item[\"maintenanceWindow\"]),\n sourceServerResourceId: item[\"sourceServerResourceId\"],\n pointInTimeUTC: !item[\"pointInTimeUTC\"]\n ? item[\"pointInTimeUTC\"]\n : item[\"pointInTimeUTC\"].toISOString(),\n availabilityZone: item[\"availabilityZone\"],\n replicationRole: item[\"replicationRole\"],\n replica: !item[\"replica\"] ? item[\"replica\"] : replicaSerializer(item[\"replica\"]),\n createMode: item[\"createMode\"],\n cluster: !item[\"cluster\"] ? item[\"cluster\"] : clusterSerializer(item[\"cluster\"]),\n };\n}\n\nexport function serverPropertiesDeserializer(item: any): ServerProperties {\n return {\n administratorLogin: item[\"administratorLogin\"],\n administratorLoginPassword: item[\"administratorLoginPassword\"],\n version: item[\"version\"],\n minorVersion: item[\"minorVersion\"],\n state: item[\"state\"],\n fullyQualifiedDomainName: item[\"fullyQualifiedDomainName\"],\n storage: !item[\"storage\"] ? item[\"storage\"] : storageDeserializer(item[\"storage\"]),\n authConfig: !item[\"authConfig\"]\n ? item[\"authConfig\"]\n : authConfigDeserializer(item[\"authConfig\"]),\n dataEncryption: !item[\"dataEncryption\"]\n ? item[\"dataEncryption\"]\n : dataEncryptionDeserializer(item[\"dataEncryption\"]),\n backup: !item[\"backup\"] ? item[\"backup\"] : backupDeserializer(item[\"backup\"]),\n network: !item[\"network\"] ? item[\"network\"] : networkDeserializer(item[\"network\"]),\n highAvailability: !item[\"highAvailability\"]\n ? item[\"highAvailability\"]\n : highAvailabilityDeserializer(item[\"highAvailability\"]),\n maintenanceWindow: !item[\"maintenanceWindow\"]\n ? item[\"maintenanceWindow\"]\n : maintenanceWindowDeserializer(item[\"maintenanceWindow\"]),\n sourceServerResourceId: item[\"sourceServerResourceId\"],\n pointInTimeUTC: !item[\"pointInTimeUTC\"]\n ? item[\"pointInTimeUTC\"]\n : new Date(item[\"pointInTimeUTC\"]),\n availabilityZone: item[\"availabilityZone\"],\n replicationRole: item[\"replicationRole\"],\n replicaCapacity: item[\"replicaCapacity\"],\n replica: !item[\"replica\"] ? item[\"replica\"] : replicaDeserializer(item[\"replica\"]),\n createMode: item[\"createMode\"],\n privateEndpointConnections: !item[\"privateEndpointConnections\"]\n ? item[\"privateEndpointConnections\"]\n : privateEndpointConnectionArrayDeserializer(item[\"privateEndpointConnections\"]),\n cluster: !item[\"cluster\"] ? item[\"cluster\"] : clusterDeserializer(item[\"cluster\"]),\n };\n}\n\n/** Major version of PostgreSQL database engine. */\nexport enum KnownPostgresMajorVersion {\n /** 18 */\n Eighteen = \"18\",\n /** 17 */\n Seventeen = \"17\",\n /** 16 */\n Sixteen = \"16\",\n /** 15 */\n Fifteen = \"15\",\n /** 14 */\n Fourteen = \"14\",\n /** 13 */\n Thirteen = \"13\",\n /** 12 */\n Twelve = \"12\",\n /** 11 */\n Eleven = \"11\",\n}\n\n/**\n * Major version of PostgreSQL database engine. \\\n * {@link KnownPostgresMajorVersion} can be used interchangeably with PostgresMajorVersion,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **18** \\\n * **17** \\\n * **16** \\\n * **15** \\\n * **14** \\\n * **13** \\\n * **12** \\\n * **11**\n */\nexport type PostgresMajorVersion = string;\n\n/** Possible states of a server. */\nexport enum KnownServerState {\n /** Ready */\n Ready = \"Ready\",\n /** Dropping */\n Dropping = \"Dropping\",\n /** Disabled */\n Disabled = \"Disabled\",\n /** Starting */\n Starting = \"Starting\",\n /** Stopping */\n Stopping = \"Stopping\",\n /** Stopped */\n Stopped = \"Stopped\",\n /** Updating */\n Updating = \"Updating\",\n /** Restarting */\n Restarting = \"Restarting\",\n /** Inaccessible */\n Inaccessible = \"Inaccessible\",\n /** Provisioning */\n Provisioning = \"Provisioning\",\n}\n\n/**\n * Possible states of a server. \\\n * {@link KnownServerState} can be used interchangeably with ServerState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Ready** \\\n * **Dropping** \\\n * **Disabled** \\\n * **Starting** \\\n * **Stopping** \\\n * **Stopped** \\\n * **Updating** \\\n * **Restarting** \\\n * **Inaccessible** \\\n * **Provisioning**\n */\nexport type ServerState = string;\n\n/** Storage properties of a server. */\nexport interface Storage {\n /** Size of storage assigned to a server. */\n storageSizeGB?: number;\n /** Flag to enable or disable the automatic growth of storage size of a server when available space is nearing zero and conditions allow for automatically growing storage size. */\n autoGrow?: StorageAutoGrow;\n /** Storage tier of a server. */\n tier?: AzureManagedDiskPerformanceTier;\n /** Maximum IOPS supported for storage. Required when type of storage is PremiumV2_LRS or UltraSSD_LRS. */\n iops?: number;\n /** Maximum throughput supported for storage. Required when type of storage is PremiumV2_LRS or UltraSSD_LRS. */\n throughput?: number;\n /** Type of storage assigned to a server. Allowed values are Premium_LRS, PremiumV2_LRS, or UltraSSD_LRS. If not specified, it defaults to Premium_LRS. */\n type?: StorageType;\n}\n\nexport function storageSerializer(item: Storage): any {\n return {\n storageSizeGB: item[\"storageSizeGB\"],\n autoGrow: item[\"autoGrow\"],\n tier: item[\"tier\"],\n iops: item[\"iops\"],\n throughput: item[\"throughput\"],\n type: item[\"type\"],\n };\n}\n\nexport function storageDeserializer(item: any): Storage {\n return {\n storageSizeGB: item[\"storageSizeGB\"],\n autoGrow: item[\"autoGrow\"],\n tier: item[\"tier\"],\n iops: item[\"iops\"],\n throughput: item[\"throughput\"],\n type: item[\"type\"],\n };\n}\n\n/** Flag to enable or disable the automatic growth of storage size of a server when available space is nearing zero and conditions allow for automatically growing storage size. */\nexport enum KnownStorageAutoGrow {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * Flag to enable or disable the automatic growth of storage size of a server when available space is nearing zero and conditions allow for automatically growing storage size. \\\n * {@link KnownStorageAutoGrow} can be used interchangeably with StorageAutoGrow,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type StorageAutoGrow = string;\n\n/** Storage tier of a server. */\nexport enum KnownAzureManagedDiskPerformanceTier {\n /** P1 */\n P1 = \"P1\",\n /** P2 */\n P2 = \"P2\",\n /** P3 */\n P3 = \"P3\",\n /** P4 */\n P4 = \"P4\",\n /** P6 */\n P6 = \"P6\",\n /** P10 */\n P10 = \"P10\",\n /** P15 */\n P15 = \"P15\",\n /** P20 */\n P20 = \"P20\",\n /** P30 */\n P30 = \"P30\",\n /** P40 */\n P40 = \"P40\",\n /** P50 */\n P50 = \"P50\",\n /** P60 */\n P60 = \"P60\",\n /** P70 */\n P70 = \"P70\",\n /** P80 */\n P80 = \"P80\",\n}\n\n/**\n * Storage tier of a server. \\\n * {@link KnownAzureManagedDiskPerformanceTier} can be used interchangeably with AzureManagedDiskPerformanceTier,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **P1** \\\n * **P2** \\\n * **P3** \\\n * **P4** \\\n * **P6** \\\n * **P10** \\\n * **P15** \\\n * **P20** \\\n * **P30** \\\n * **P40** \\\n * **P50** \\\n * **P60** \\\n * **P70** \\\n * **P80**\n */\nexport type AzureManagedDiskPerformanceTier = string;\n\n/** Type of storage assigned to a server. Allowed values are Premium_LRS, PremiumV2_LRS, or UltraSSD_LRS. If not specified, it defaults to Premium_LRS. */\nexport enum KnownStorageType {\n /** Premium_LRS */\n PremiumLRS = \"Premium_LRS\",\n /** PremiumV2_LRS */\n PremiumV2LRS = \"PremiumV2_LRS\",\n /** UltraSSD_LRS */\n UltraSSDLRS = \"UltraSSD_LRS\",\n}\n\n/**\n * Type of storage assigned to a server. Allowed values are Premium_LRS, PremiumV2_LRS, or UltraSSD_LRS. If not specified, it defaults to Premium_LRS. \\\n * {@link KnownStorageType} can be used interchangeably with StorageType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Premium_LRS** \\\n * **PremiumV2_LRS** \\\n * **UltraSSD_LRS**\n */\nexport type StorageType = string;\n\n/** Authentication configuration properties of a server. */\nexport interface AuthConfig {\n /** Indicates if the server supports Microsoft Entra authentication. */\n activeDirectoryAuth?: MicrosoftEntraAuth;\n /** Indicates if the server supports password based authentication. */\n passwordAuth?: PasswordBasedAuth;\n /** Identifier of the tenant of the delegated resource. */\n tenantId?: string;\n}\n\nexport function authConfigSerializer(item: AuthConfig): any {\n return {\n activeDirectoryAuth: item[\"activeDirectoryAuth\"],\n passwordAuth: item[\"passwordAuth\"],\n tenantId: item[\"tenantId\"],\n };\n}\n\nexport function authConfigDeserializer(item: any): AuthConfig {\n return {\n activeDirectoryAuth: item[\"activeDirectoryAuth\"],\n passwordAuth: item[\"passwordAuth\"],\n tenantId: item[\"tenantId\"],\n };\n}\n\n/** Indicates if the server supports Microsoft Entra authentication. */\nexport enum KnownMicrosoftEntraAuth {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if the server supports Microsoft Entra authentication. \\\n * {@link KnownMicrosoftEntraAuth} can be used interchangeably with MicrosoftEntraAuth,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type MicrosoftEntraAuth = string;\n\n/** Indicates if the server supports password based authentication. */\nexport enum KnownPasswordBasedAuth {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if the server supports password based authentication. \\\n * {@link KnownPasswordBasedAuth} can be used interchangeably with PasswordBasedAuth,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type PasswordBasedAuth = string;\n\n/** Data encryption properties of a server. */\nexport interface DataEncryption {\n /** URI of the key in Azure Key Vault used for data encryption of the primary storage associated to a server. */\n primaryKeyURI?: string;\n /** Identifier of the user assigned managed identity used to access the key in Azure Key Vault for data encryption of the primary storage associated to a server. */\n primaryUserAssignedIdentityId?: string;\n /** Identifier of the user assigned managed identity used to access the key in Azure Key Vault for data encryption of the geographically redundant storage associated to a server that is configured to support geographically redundant backups. */\n geoBackupKeyURI?: string;\n /** Identifier of the user assigned managed identity used to access the key in Azure Key Vault for data encryption of the geographically redundant storage associated to a server that is configured to support geographically redundant backups. */\n geoBackupUserAssignedIdentityId?: string;\n /** Data encryption type used by a server. */\n type?: DataEncryptionType;\n /** Status of key used by a server configured with data encryption based on customer managed key, to encrypt the primary storage associated to the server. */\n readonly primaryEncryptionKeyStatus?: EncryptionKeyStatus;\n /** Status of key used by a server configured with data encryption based on customer managed key, to encrypt the geographically redundant storage associated to the server when it is configured to support geographically redundant backups. */\n readonly geoBackupEncryptionKeyStatus?: EncryptionKeyStatus;\n}\n\nexport function dataEncryptionSerializer(item: DataEncryption): any {\n return {\n primaryKeyURI: item[\"primaryKeyURI\"],\n primaryUserAssignedIdentityId: item[\"primaryUserAssignedIdentityId\"],\n geoBackupKeyURI: item[\"geoBackupKeyURI\"],\n geoBackupUserAssignedIdentityId: item[\"geoBackupUserAssignedIdentityId\"],\n type: item[\"type\"],\n };\n}\n\nexport function dataEncryptionDeserializer(item: any): DataEncryption {\n return {\n primaryKeyURI: item[\"primaryKeyURI\"],\n primaryUserAssignedIdentityId: item[\"primaryUserAssignedIdentityId\"],\n geoBackupKeyURI: item[\"geoBackupKeyURI\"],\n geoBackupUserAssignedIdentityId: item[\"geoBackupUserAssignedIdentityId\"],\n type: item[\"type\"],\n primaryEncryptionKeyStatus: item[\"primaryEncryptionKeyStatus\"],\n geoBackupEncryptionKeyStatus: item[\"geoBackupEncryptionKeyStatus\"],\n };\n}\n\n/** Data encryption type used by a server. */\nexport enum KnownDataEncryptionType {\n /** SystemManaged */\n SystemManaged = \"SystemManaged\",\n /** AzureKeyVault */\n AzureKeyVault = \"AzureKeyVault\",\n}\n\n/**\n * Data encryption type used by a server. \\\n * {@link KnownDataEncryptionType} can be used interchangeably with DataEncryptionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **SystemManaged** \\\n * **AzureKeyVault**\n */\nexport type DataEncryptionType = string;\n\n/** Status of key used by a server configured with data encryption based on customer managed key, to encrypt the primary storage associated to the server. */\nexport enum KnownEncryptionKeyStatus {\n /** Valid */\n Valid = \"Valid\",\n /** Invalid */\n Invalid = \"Invalid\",\n}\n\n/**\n * Status of key used by a server configured with data encryption based on customer managed key, to encrypt the primary storage associated to the server. \\\n * {@link KnownEncryptionKeyStatus} can be used interchangeably with EncryptionKeyStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Valid** \\\n * **Invalid**\n */\nexport type EncryptionKeyStatus = string;\n\n/** Backup properties of a server. */\nexport interface Backup {\n /** Backup retention days for the server. */\n backupRetentionDays?: number;\n /** Indicates if the server is configured to create geographically redundant backups. */\n geoRedundantBackup?: GeographicallyRedundantBackup;\n /** Earliest restore point time (ISO8601 format) for a server. */\n readonly earliestRestoreDate?: Date;\n}\n\nexport function backupSerializer(item: Backup): any {\n return {\n backupRetentionDays: item[\"backupRetentionDays\"],\n geoRedundantBackup: item[\"geoRedundantBackup\"],\n };\n}\n\nexport function backupDeserializer(item: any): Backup {\n return {\n backupRetentionDays: item[\"backupRetentionDays\"],\n geoRedundantBackup: item[\"geoRedundantBackup\"],\n earliestRestoreDate: !item[\"earliestRestoreDate\"]\n ? item[\"earliestRestoreDate\"]\n : new Date(item[\"earliestRestoreDate\"]),\n };\n}\n\n/** Indicates if the server is configured to create geographically redundant backups. */\nexport enum KnownGeographicallyRedundantBackup {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if the server is configured to create geographically redundant backups. \\\n * {@link KnownGeographicallyRedundantBackup} can be used interchangeably with GeographicallyRedundantBackup,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type GeographicallyRedundantBackup = string;\n\n/** Network properties of a server. */\nexport interface Network {\n /** Indicates if public network access is enabled or not. This is only supported for servers that are not integrated into a virtual network which is owned and provided by customer when server is deployed. */\n publicNetworkAccess?: ServerPublicNetworkAccessState;\n /** Resource identifier of the delegated subnet. Required during creation of a new server, in case you want the server to be integrated into your own virtual network. For an update operation, you only have to provide this property if you want to change the value assigned for the private DNS zone. */\n delegatedSubnetResourceId?: string;\n /** Identifier of the private DNS zone. Required during creation of a new server, in case you want the server to be integrated into your own virtual network. For an update operation, you only have to provide this property if you want to change the value assigned for the private DNS zone. */\n privateDnsZoneArmResourceId?: string;\n}\n\nexport function networkSerializer(item: Network): any {\n return {\n publicNetworkAccess: item[\"publicNetworkAccess\"],\n delegatedSubnetResourceId: item[\"delegatedSubnetResourceId\"],\n privateDnsZoneArmResourceId: item[\"privateDnsZoneArmResourceId\"],\n };\n}\n\nexport function networkDeserializer(item: any): Network {\n return {\n publicNetworkAccess: item[\"publicNetworkAccess\"],\n delegatedSubnetResourceId: item[\"delegatedSubnetResourceId\"],\n privateDnsZoneArmResourceId: item[\"privateDnsZoneArmResourceId\"],\n };\n}\n\n/** Indicates if public network access is enabled or not. */\nexport enum KnownServerPublicNetworkAccessState {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if public network access is enabled or not. \\\n * {@link KnownServerPublicNetworkAccessState} can be used interchangeably with ServerPublicNetworkAccessState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type ServerPublicNetworkAccessState = string;\n\n/** High availability properties of a server. */\nexport interface HighAvailability {\n /** High availability mode for a server. */\n mode?: PostgreSqlFlexibleServerHighAvailabilityMode;\n /** Possible states of the standby server created when high availability is set to SameZone or ZoneRedundant. */\n readonly state?: HighAvailabilityState;\n /** Availability zone associated to the standby server created when high availability is set to SameZone or ZoneRedundant. */\n standbyAvailabilityZone?: string;\n}\n\nexport function highAvailabilitySerializer(item: HighAvailability): any {\n return { mode: item[\"mode\"], standbyAvailabilityZone: item[\"standbyAvailabilityZone\"] };\n}\n\nexport function highAvailabilityDeserializer(item: any): HighAvailability {\n return {\n mode: item[\"mode\"],\n state: item[\"state\"],\n standbyAvailabilityZone: item[\"standbyAvailabilityZone\"],\n };\n}\n\n/** Modes of high availability supported for this compute. */\nexport enum KnownPostgreSqlFlexibleServerHighAvailabilityMode {\n /** Disabled */\n Disabled = \"Disabled\",\n /** ZoneRedundant */\n ZoneRedundant = \"ZoneRedundant\",\n /** SameZone */\n SameZone = \"SameZone\",\n}\n\n/**\n * Modes of high availability supported for this compute. \\\n * {@link KnownPostgreSqlFlexibleServerHighAvailabilityMode} can be used interchangeably with PostgreSqlFlexibleServerHighAvailabilityMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Disabled** \\\n * **ZoneRedundant** \\\n * **SameZone**\n */\nexport type PostgreSqlFlexibleServerHighAvailabilityMode = string;\n\n/** Possible states of the standby server created when high availability is set to SameZone or ZoneRedundant. */\nexport enum KnownHighAvailabilityState {\n /** NotEnabled */\n NotEnabled = \"NotEnabled\",\n /** CreatingStandby */\n CreatingStandby = \"CreatingStandby\",\n /** ReplicatingData */\n ReplicatingData = \"ReplicatingData\",\n /** FailingOver */\n FailingOver = \"FailingOver\",\n /** Healthy */\n Healthy = \"Healthy\",\n /** RemovingStandby */\n RemovingStandby = \"RemovingStandby\",\n}\n\n/**\n * Possible states of the standby server created when high availability is set to SameZone or ZoneRedundant. \\\n * {@link KnownHighAvailabilityState} can be used interchangeably with HighAvailabilityState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **NotEnabled** \\\n * **CreatingStandby** \\\n * **ReplicatingData** \\\n * **FailingOver** \\\n * **Healthy** \\\n * **RemovingStandby**\n */\nexport type HighAvailabilityState = string;\n\n/** Maintenance window properties of a server. */\nexport interface MaintenanceWindow {\n /** Indicates whether custom window is enabled or disabled. */\n customWindow?: string;\n /** Start hour to be used for maintenance window. */\n startHour?: number;\n /** Start minute to be used for maintenance window. */\n startMinute?: number;\n /** Day of the week to be used for maintenance window. */\n dayOfWeek?: number;\n}\n\nexport function maintenanceWindowSerializer(item: MaintenanceWindow): any {\n return {\n customWindow: item[\"customWindow\"],\n startHour: item[\"startHour\"],\n startMinute: item[\"startMinute\"],\n dayOfWeek: item[\"dayOfWeek\"],\n };\n}\n\nexport function maintenanceWindowDeserializer(item: any): MaintenanceWindow {\n return {\n customWindow: item[\"customWindow\"],\n startHour: item[\"startHour\"],\n startMinute: item[\"startMinute\"],\n dayOfWeek: item[\"dayOfWeek\"],\n };\n}\n\n/** Role of the server in a replication set. */\nexport enum KnownReplicationRole {\n /** None */\n None = \"None\",\n /** Primary */\n Primary = \"Primary\",\n /** AsyncReplica */\n AsyncReplica = \"AsyncReplica\",\n /** GeoAsyncReplica */\n GeoAsyncReplica = \"GeoAsyncReplica\",\n}\n\n/**\n * Role of the server in a replication set. \\\n * {@link KnownReplicationRole} can be used interchangeably with ReplicationRole,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **None** \\\n * **Primary** \\\n * **AsyncReplica** \\\n * **GeoAsyncReplica**\n */\nexport type ReplicationRole = string;\n\n/** Replica properties of a server. */\nexport interface Replica {\n /** Role of the server in a replication set. */\n role?: ReplicationRole;\n /** Maximum number of read replicas allowed for a server. */\n readonly capacity?: number;\n /** Indicates the replication state of a read replica. This property is returned only when the target server is a read replica. Possible values are Active, Broken, Catchup, Provisioning, Reconfiguring, and Updating */\n readonly replicationState?: ReplicationState;\n /** Type of operation to apply on the read replica. This property is write only. Standalone means that the read replica will be promoted to a standalone server, and will become a completely independent entity from the replication set. Switchover means that the read replica will roles with the primary server. */\n promoteMode?: ReadReplicaPromoteMode;\n /** Data synchronization option to use when processing the operation specified in the promoteMode property. This property is write only. */\n promoteOption?: ReadReplicaPromoteOption;\n}\n\nexport function replicaSerializer(item: Replica): any {\n return {\n role: item[\"role\"],\n promoteMode: item[\"promoteMode\"],\n promoteOption: item[\"promoteOption\"],\n };\n}\n\nexport function replicaDeserializer(item: any): Replica {\n return {\n role: item[\"role\"],\n capacity: item[\"capacity\"],\n replicationState: item[\"replicationState\"],\n promoteMode: item[\"promoteMode\"],\n promoteOption: item[\"promoteOption\"],\n };\n}\n\n/** Indicates the replication state of a read replica. This property is returned only when the target server is a read replica. Possible values are Active, Broken, Catchup, Provisioning, Reconfiguring, and Updating */\nexport enum KnownReplicationState {\n /** The read replica server is fully synchronized and actively replicating data from the primary server. */\n Active = \"Active\",\n /** The read replica server is behind the primary server and is currently catching up with pending changes. */\n Catchup = \"Catchup\",\n /** The read replica server is being created and is in process of getting initialized. */\n Provisioning = \"Provisioning\",\n /** The read replica server is undergoing some changes it can be changing compute size of promoting it to primary server. */\n Updating = \"Updating\",\n /** Replication has failed or been interrupted. */\n Broken = \"Broken\",\n /** The read replica server is being reconfigured, possibly due to changes in source or settings. */\n Reconfiguring = \"Reconfiguring\",\n}\n\n/**\n * Indicates the replication state of a read replica. This property is returned only when the target server is a read replica. Possible values are Active, Broken, Catchup, Provisioning, Reconfiguring, and Updating \\\n * {@link KnownReplicationState} can be used interchangeably with ReplicationState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Active**: The read replica server is fully synchronized and actively replicating data from the primary server. \\\n * **Catchup**: The read replica server is behind the primary server and is currently catching up with pending changes. \\\n * **Provisioning**: The read replica server is being created and is in process of getting initialized. \\\n * **Updating**: The read replica server is undergoing some changes it can be changing compute size of promoting it to primary server. \\\n * **Broken**: Replication has failed or been interrupted. \\\n * **Reconfiguring**: The read replica server is being reconfigured, possibly due to changes in source or settings.\n */\nexport type ReplicationState = string;\n\n/** Type of operation to apply on the read replica. This property is write only. Standalone means that the read replica will be promoted to a standalone server, and will become a completely independent entity from the replication set. Switchover means that the read replica will roles with the primary server. */\nexport enum KnownReadReplicaPromoteMode {\n /** Read replica will become an independent server. */\n Standalone = \"Standalone\",\n /** Read replica will swap roles with primary server. */\n Switchover = \"Switchover\",\n}\n\n/**\n * Type of operation to apply on the read replica. This property is write only. Standalone means that the read replica will be promoted to a standalone server, and will become a completely independent entity from the replication set. Switchover means that the read replica will roles with the primary server. \\\n * {@link KnownReadReplicaPromoteMode} can be used interchangeably with ReadReplicaPromoteMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Standalone**: Read replica will become an independent server. \\\n * **Switchover**: Read replica will swap roles with primary server.\n */\nexport type ReadReplicaPromoteMode = string;\n\n/** Data synchronization option to use when processing the operation specified in the promoteMode property. This property is write only. */\nexport enum KnownReadReplicaPromoteOption {\n /** The operation will wait for data in the read replica to be fully synchronized with its source server, before it initiates the operation. */\n Planned = \"Planned\",\n /** The operation will not wait for data in the read replica to be synchronized with its source server, before it initiates the operation. */\n Forced = \"Forced\",\n}\n\n/**\n * Data synchronization option to use when processing the operation specified in the promoteMode property. This property is write only. \\\n * {@link KnownReadReplicaPromoteOption} can be used interchangeably with ReadReplicaPromoteOption,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Planned**: The operation will wait for data in the read replica to be fully synchronized with its source server, before it initiates the operation. \\\n * **Forced**: The operation will not wait for data in the read replica to be synchronized with its source server, before it initiates the operation.\n */\nexport type ReadReplicaPromoteOption = string;\n\n/** Creation mode of a new server. */\nexport enum KnownCreateMode {\n /** Default */\n Default = \"Default\",\n /** Create */\n Create = \"Create\",\n /** Update */\n Update = \"Update\",\n /** PointInTimeRestore */\n PointInTimeRestore = \"PointInTimeRestore\",\n /** GeoRestore */\n GeoRestore = \"GeoRestore\",\n /** Replica */\n Replica = \"Replica\",\n /** ReviveDropped */\n ReviveDropped = \"ReviveDropped\",\n}\n\n/**\n * Creation mode of a new server. \\\n * {@link KnownCreateMode} can be used interchangeably with CreateMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Default** \\\n * **Create** \\\n * **Update** \\\n * **PointInTimeRestore** \\\n * **GeoRestore** \\\n * **Replica** \\\n * **ReviveDropped**\n */\nexport type CreateMode = string;\n\nexport function privateEndpointConnectionArraySerializer(\n result: Array<PrivateEndpointConnection>,\n): any[] {\n return result.map((item) => {\n return privateEndpointConnectionSerializer(item);\n });\n}\n\nexport function privateEndpointConnectionArrayDeserializer(\n result: Array<PrivateEndpointConnection>,\n): any[] {\n return result.map((item) => {\n return privateEndpointConnectionDeserializer(item);\n });\n}\n\n/** The private endpoint connection resource. */\nexport interface PrivateEndpointConnection extends Resource {\n /** The group ids for the private endpoint resource. */\n readonly groupIds?: string[];\n /** The private endpoint resource. */\n privateEndpoint?: PrivateEndpoint;\n /** A collection of information about the state of the connection between service consumer and provider. */\n privateLinkServiceConnectionState?: PrivateLinkServiceConnectionState;\n /** The provisioning state of the private endpoint connection resource. */\n readonly provisioningState?: PrivateEndpointConnectionProvisioningState;\n}\n\nexport function privateEndpointConnectionSerializer(item: PrivateEndpointConnection): any {\n return {\n properties: areAllPropsUndefined(item, [\"privateEndpoint\", \"privateLinkServiceConnectionState\"])\n ? undefined\n : _privateEndpointConnectionPropertiesSerializer(item),\n };\n}\n\nexport function privateEndpointConnectionDeserializer(item: any): PrivateEndpointConnection {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _privateEndpointConnectionPropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Properties of the private endpoint connection. */\nexport interface PrivateEndpointConnectionProperties {\n /** The group ids for the private endpoint resource. */\n readonly groupIds?: string[];\n /** The private endpoint resource. */\n privateEndpoint?: PrivateEndpoint;\n /** A collection of information about the state of the connection between service consumer and provider. */\n privateLinkServiceConnectionState: PrivateLinkServiceConnectionState;\n /** The provisioning state of the private endpoint connection resource. */\n readonly provisioningState?: PrivateEndpointConnectionProvisioningState;\n}\n\nexport function privateEndpointConnectionPropertiesSerializer(\n item: PrivateEndpointConnectionProperties,\n): any {\n return {\n privateEndpoint: !item[\"privateEndpoint\"]\n ? item[\"privateEndpoint\"]\n : privateEndpointSerializer(item[\"privateEndpoint\"]),\n privateLinkServiceConnectionState: privateLinkServiceConnectionStateSerializer(\n item[\"privateLinkServiceConnectionState\"],\n ),\n };\n}\n\nexport function privateEndpointConnectionPropertiesDeserializer(\n item: any,\n): PrivateEndpointConnectionProperties {\n return {\n groupIds: !item[\"groupIds\"]\n ? item[\"groupIds\"]\n : item[\"groupIds\"].map((p: any) => {\n return p;\n }),\n privateEndpoint: !item[\"privateEndpoint\"]\n ? item[\"privateEndpoint\"]\n : privateEndpointDeserializer(item[\"privateEndpoint\"]),\n privateLinkServiceConnectionState: privateLinkServiceConnectionStateDeserializer(\n item[\"privateLinkServiceConnectionState\"],\n ),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The private endpoint resource. */\nexport interface PrivateEndpoint {\n /** The resource identifier of the private endpoint */\n readonly id?: string;\n}\n\nexport function privateEndpointSerializer(item: PrivateEndpoint): any {\n return item;\n}\n\nexport function privateEndpointDeserializer(item: any): PrivateEndpoint {\n return {\n id: item[\"id\"],\n };\n}\n\n/** A collection of information about the state of the connection between service consumer and provider. */\nexport interface PrivateLinkServiceConnectionState {\n /** Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service. */\n status?: PrivateEndpointServiceConnectionStatus;\n /** The reason for approval/rejection of the connection. */\n description?: string;\n /** A message indicating if changes on the service provider require any updates on the consumer. */\n actionsRequired?: string;\n}\n\nexport function privateLinkServiceConnectionStateSerializer(\n item: PrivateLinkServiceConnectionState,\n): any {\n return {\n status: item[\"status\"],\n description: item[\"description\"],\n actionsRequired: item[\"actionsRequired\"],\n };\n}\n\nexport function privateLinkServiceConnectionStateDeserializer(\n item: any,\n): PrivateLinkServiceConnectionState {\n return {\n status: item[\"status\"],\n description: item[\"description\"],\n actionsRequired: item[\"actionsRequired\"],\n };\n}\n\n/** The private endpoint connection status. */\nexport enum KnownPrivateEndpointServiceConnectionStatus {\n /** Connection waiting for approval or rejection */\n Pending = \"Pending\",\n /** Connection approved */\n Approved = \"Approved\",\n /** Connection Rejected */\n Rejected = \"Rejected\",\n}\n\n/**\n * The private endpoint connection status. \\\n * {@link KnownPrivateEndpointServiceConnectionStatus} can be used interchangeably with PrivateEndpointServiceConnectionStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Pending**: Connection waiting for approval or rejection \\\n * **Approved**: Connection approved \\\n * **Rejected**: Connection Rejected\n */\nexport type PrivateEndpointServiceConnectionStatus = string;\n\n/** The current provisioning state. */\nexport enum KnownPrivateEndpointConnectionProvisioningState {\n /** Connection has been provisioned */\n Succeeded = \"Succeeded\",\n /** Connection is being created */\n Creating = \"Creating\",\n /** Connection is being deleted */\n Deleting = \"Deleting\",\n /** Connection provisioning has failed */\n Failed = \"Failed\",\n}\n\n/**\n * The current provisioning state. \\\n * {@link KnownPrivateEndpointConnectionProvisioningState} can be used interchangeably with PrivateEndpointConnectionProvisioningState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Succeeded**: Connection has been provisioned \\\n * **Creating**: Connection is being created \\\n * **Deleting**: Connection is being deleted \\\n * **Failed**: Connection provisioning has failed\n */\nexport type PrivateEndpointConnectionProvisioningState = string;\n\n/** Cluster properties of a server. */\nexport interface Cluster {\n /** Number of nodes assigned to the elastic cluster. */\n clusterSize?: number;\n /** Default database name for the elastic cluster. */\n defaultDatabaseName?: string;\n}\n\nexport function clusterSerializer(item: Cluster): any {\n return { clusterSize: item[\"clusterSize\"], defaultDatabaseName: item[\"defaultDatabaseName\"] };\n}\n\nexport function clusterDeserializer(item: any): Cluster {\n return {\n clusterSize: item[\"clusterSize\"],\n defaultDatabaseName: item[\"defaultDatabaseName\"],\n };\n}\n\n/** Compute information of a server. */\nexport interface Sku {\n /** Name by which is known a given compute size assigned to a server. */\n name: string;\n /** Tier of the compute assigned to a server. */\n tier: SkuTier;\n}\n\nexport function skuSerializer(item: Sku): any {\n return { name: item[\"name\"], tier: item[\"tier\"] };\n}\n\nexport function skuDeserializer(item: any): Sku {\n return {\n name: item[\"name\"],\n tier: item[\"tier\"],\n };\n}\n\n/** Identities associated with a server. */\nexport interface UserAssignedIdentity {\n /** Map of user assigned managed identities. */\n userAssignedIdentities?: Record<string, UserIdentity>;\n /** Identifier of the object of the service principal associated to the user assigned managed identity. */\n principalId?: string;\n /** Types of identities associated with a server. */\n type: IdentityType;\n /** Identifier of the tenant of a server. */\n readonly tenantId?: string;\n}\n\nexport function userAssignedIdentitySerializer(item: UserAssignedIdentity): any {\n return {\n userAssignedIdentities: !item[\"userAssignedIdentities\"]\n ? item[\"userAssignedIdentities\"]\n : userIdentityRecordSerializer(item[\"userAssignedIdentities\"]),\n principalId: item[\"principalId\"],\n type: item[\"type\"],\n };\n}\n\nexport function userAssignedIdentityDeserializer(item: any): UserAssignedIdentity {\n return {\n userAssignedIdentities: !item[\"userAssignedIdentities\"]\n ? item[\"userAssignedIdentities\"]\n : userIdentityRecordDeserializer(item[\"userAssignedIdentities\"]),\n principalId: item[\"principalId\"],\n type: item[\"type\"],\n tenantId: item[\"tenantId\"],\n };\n}\n\nexport function userIdentityRecordSerializer(\n item: Record<string, UserIdentity>,\n): Record<string, any> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : userIdentitySerializer(item[key]);\n });\n return result;\n}\n\nexport function userIdentityRecordDeserializer(\n item: Record<string, any>,\n): Record<string, UserIdentity> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : userIdentityDeserializer(item[key]);\n });\n return result;\n}\n\n/** User assigned managed identity associated with a server. */\nexport interface UserIdentity {\n /** Identifier of the object of the service principal associated to the user assigned managed identity. */\n principalId?: string;\n /** Identifier of the client of the service principal associated to the user assigned managed identity. */\n clientId?: string;\n}\n\nexport function userIdentitySerializer(item: UserIdentity): any {\n return { principalId: item[\"principalId\"], clientId: item[\"clientId\"] };\n}\n\nexport function userIdentityDeserializer(item: any): UserIdentity {\n return {\n principalId: item[\"principalId\"],\n clientId: item[\"clientId\"],\n };\n}\n\n/** Types of identities associated with a server. */\nexport enum KnownIdentityType {\n /** None */\n None = \"None\",\n /** UserAssigned */\n UserAssigned = \"UserAssigned\",\n /** SystemAssigned */\n SystemAssigned = \"SystemAssigned\",\n /** SystemAssigned,UserAssigned */\n SystemAssignedUserAssigned = \"SystemAssigned,UserAssigned\",\n}\n\n/**\n * Types of identities associated with a server. \\\n * {@link KnownIdentityType} can be used interchangeably with IdentityType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **None** \\\n * **UserAssigned** \\\n * **SystemAssigned** \\\n * **SystemAssigned,UserAssigned**\n */\nexport type IdentityType = string;\n\n/** Represents a server to be updated. */\nexport interface ServerForPatch {\n /** Compute tier and size of a server. */\n sku?: SkuForPatch;\n /** Describes the identity of the application. */\n identity?: UserAssignedIdentity;\n /** Application-specific metadata in the form of key-value pairs. */\n tags?: Record<string, string>;\n /** Name of the login designated as the first password based administrator assigned to your instance of PostgreSQL. Must be specified the first time that you enable password based authentication on a server. Once set to a given value, it cannot be changed for the rest of the life of a server. If you disable password based authentication on a server which had it enabled, this password based role isn't deleted. */\n readonly administratorLogin?: string;\n /** Password assigned to the administrator login. As long as password authentication is enabled, this password can be changed at any time. */\n administratorLoginPassword?: string;\n /** Major version of PostgreSQL database engine. */\n version?: PostgresMajorVersion;\n /** Storage properties of a server. */\n storage?: Storage;\n /** Backup properties of a server. */\n backup?: BackupForPatch;\n /** High availability properties of a server. */\n highAvailability?: HighAvailabilityForPatch;\n /** Maintenance window properties of a server. */\n maintenanceWindow?: MaintenanceWindowForPatch;\n /** Authentication configuration properties of a server. */\n authConfig?: AuthConfigForPatch;\n /** Data encryption properties of a server. */\n dataEncryption?: DataEncryption;\n /** Availability zone of a server. */\n availabilityZone?: string;\n /** Update mode of an existing server. */\n createMode?: CreateModeForPatch;\n /** Role of the server in a replication set. */\n replicationRole?: ReplicationRole;\n /** Read replica properties of a server. Required only in case that you want to promote a server. */\n replica?: Replica;\n /** Network properties of a server. Only required if you want your server to be integrated into a virtual network provided by customer. */\n network?: Network;\n /** Cluster properties of a server. */\n cluster?: Cluster;\n}\n\nexport function serverForPatchSerializer(item: ServerForPatch): any {\n return {\n sku: !item[\"sku\"] ? item[\"sku\"] : skuForPatchSerializer(item[\"sku\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : userAssignedIdentitySerializer(item[\"identity\"]),\n properties: areAllPropsUndefined(item, [\n \"administratorLoginPassword\",\n \"version\",\n \"storage\",\n \"backup\",\n \"highAvailability\",\n \"maintenanceWindow\",\n \"authConfig\",\n \"dataEncryption\",\n \"availabilityZone\",\n \"createMode\",\n \"replicationRole\",\n \"replica\",\n \"network\",\n \"cluster\",\n ])\n ? undefined\n : _serverForPatchPropertiesSerializer(item),\n tags: item[\"tags\"],\n };\n}\n\n/** Compute information of a server. */\nexport interface SkuForPatch {\n /** Name by which is known a given compute size assigned to a server. */\n name?: string;\n /** Tier of the compute assigned to a server. */\n tier?: SkuTier;\n}\n\nexport function skuForPatchSerializer(item: SkuForPatch): any {\n return { name: item[\"name\"], tier: item[\"tier\"] };\n}\n\n/** Properties of a server. */\nexport interface ServerPropertiesForPatch {\n /** Name of the login designated as the first password based administrator assigned to your instance of PostgreSQL. Must be specified the first time that you enable password based authentication on a server. Once set to a given value, it cannot be changed for the rest of the life of a server. If you disable password based authentication on a server which had it enabled, this password based role isn't deleted. */\n readonly administratorLogin?: string;\n /** Password assigned to the administrator login. As long as password authentication is enabled, this password can be changed at any time. */\n administratorLoginPassword?: string;\n /** Major version of PostgreSQL database engine. */\n version?: PostgresMajorVersion;\n /** Storage properties of a server. */\n storage?: Storage;\n /** Backup properties of a server. */\n backup?: BackupForPatch;\n /** High availability properties of a server. */\n highAvailability?: HighAvailabilityForPatch;\n /** Maintenance window properties of a server. */\n maintenanceWindow?: MaintenanceWindowForPatch;\n /** Authentication configuration properties of a server. */\n authConfig?: AuthConfigForPatch;\n /** Data encryption properties of a server. */\n dataEncryption?: DataEncryption;\n /** Availability zone of a server. */\n availabilityZone?: string;\n /** Update mode of an existing server. */\n createMode?: CreateModeForPatch;\n /** Role of the server in a replication set. */\n replicationRole?: ReplicationRole;\n /** Read replica properties of a server. Required only in case that you want to promote a server. */\n replica?: Replica;\n /** Network properties of a server. Only required if you want your server to be integrated into a virtual network provided by customer. */\n network?: Network;\n /** Cluster properties of a server. */\n cluster?: Cluster;\n}\n\nexport function serverPropertiesForPatchSerializer(item: ServerPropertiesForPatch): any {\n return {\n administratorLoginPassword: item[\"administratorLoginPassword\"],\n version: item[\"version\"],\n storage: !item[\"storage\"] ? item[\"storage\"] : storageSerializer(item[\"storage\"]),\n backup: !item[\"backup\"] ? item[\"backup\"] : backupForPatchSerializer(item[\"backup\"]),\n highAvailability: !item[\"highAvailability\"]\n ? item[\"highAvailability\"]\n : highAvailabilityForPatchSerializer(item[\"highAvailability\"]),\n maintenanceWindow: !item[\"maintenanceWindow\"]\n ? item[\"maintenanceWindow\"]\n : maintenanceWindowForPatchSerializer(item[\"maintenanceWindow\"]),\n authConfig: !item[\"authConfig\"]\n ? item[\"authConfig\"]\n : authConfigForPatchSerializer(item[\"authConfig\"]),\n dataEncryption: !item[\"dataEncryption\"]\n ? item[\"dataEncryption\"]\n : dataEncryptionSerializer(item[\"dataEncryption\"]),\n availabilityZone: item[\"availabilityZone\"],\n createMode: item[\"createMode\"],\n replicationRole: item[\"replicationRole\"],\n replica: !item[\"replica\"] ? item[\"replica\"] : replicaSerializer(item[\"replica\"]),\n network: !item[\"network\"] ? item[\"network\"] : networkSerializer(item[\"network\"]),\n cluster: !item[\"cluster\"] ? item[\"cluster\"] : clusterSerializer(item[\"cluster\"]),\n };\n}\n\n/** Backup properties of a server. */\nexport interface BackupForPatch {\n /** Backup retention days for the server. */\n backupRetentionDays?: number;\n /** Indicates if the server is configured to create geographically redundant backups. */\n readonly geoRedundantBackup?: GeographicallyRedundantBackup;\n /** Earliest restore point time (ISO8601 format) for a server. */\n readonly earliestRestoreDate?: Date;\n}\n\nexport function backupForPatchSerializer(item: BackupForPatch): any {\n return { backupRetentionDays: item[\"backupRetentionDays\"] };\n}\n\n/** High availability properties of a server. */\nexport interface HighAvailabilityForPatch {\n /** High availability mode for a server. */\n mode?: PostgreSqlFlexibleServerHighAvailabilityMode;\n /** Possible states of the standby server created when high availability is set to SameZone or ZoneRedundant. */\n readonly state?: HighAvailabilityState;\n /** Availability zone associated to the standby server created when high availability is set to SameZone or ZoneRedundant. */\n standbyAvailabilityZone?: string;\n}\n\nexport function highAvailabilityForPatchSerializer(item: HighAvailabilityForPatch): any {\n return { mode: item[\"mode\"], standbyAvailabilityZone: item[\"standbyAvailabilityZone\"] };\n}\n\n/** Maintenance window properties of a server. */\nexport interface MaintenanceWindowForPatch {\n /** Indicates whether custom window is enabled or disabled. */\n customWindow?: string;\n /** Start hour to be used for maintenance window. */\n startHour?: number;\n /** Start minute to be used for maintenance window. */\n startMinute?: number;\n /** Day of the week to be used for maintenance window. */\n dayOfWeek?: number;\n}\n\nexport function maintenanceWindowForPatchSerializer(item: MaintenanceWindowForPatch): any {\n return {\n customWindow: item[\"customWindow\"],\n startHour: item[\"startHour\"],\n startMinute: item[\"startMinute\"],\n dayOfWeek: item[\"dayOfWeek\"],\n };\n}\n\n/** Authentication configuration properties of a server. */\nexport interface AuthConfigForPatch {\n /** Indicates if the server supports Microsoft Entra authentication. */\n activeDirectoryAuth?: MicrosoftEntraAuth;\n /** Indicates if the server supports password based authentication. */\n passwordAuth?: PasswordBasedAuth;\n /** Identifier of the tenant of the delegated resource. */\n tenantId?: string;\n}\n\nexport function authConfigForPatchSerializer(item: AuthConfigForPatch): any {\n return {\n activeDirectoryAuth: item[\"activeDirectoryAuth\"],\n passwordAuth: item[\"passwordAuth\"],\n tenantId: item[\"tenantId\"],\n };\n}\n\n/** Update mode of an existing server. */\nexport enum KnownCreateModeForPatch {\n /** Default */\n Default = \"Default\",\n /** Update */\n Update = \"Update\",\n}\n\n/**\n * Update mode of an existing server. \\\n * {@link KnownCreateModeForPatch} can be used interchangeably with CreateModeForPatch,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Default** \\\n * **Update**\n */\nexport type CreateModeForPatch = string;\n\n/** A list of servers. */\nexport interface _ServerList {\n /** The Server items on this page */\n value: Server[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _serverListDeserializer(item: any): _ServerList {\n return {\n value: serverArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function serverArraySerializer(result: Array<Server>): any[] {\n return result.map((item) => {\n return serverSerializer(item);\n });\n}\n\nexport function serverArrayDeserializer(result: Array<Server>): any[] {\n return result.map((item) => {\n return serverDeserializer(item);\n });\n}\n\n/** PostgreSQL database engine restart parameters. */\nexport interface RestartParameter {\n /** Indicates if restart the PostgreSQL database engine should failover or switch over from primary to standby. This only works if server has high availability enabled. */\n restartWithFailover?: boolean;\n /** Failover mode. */\n failoverMode?: FailoverMode;\n}\n\nexport function restartParameterSerializer(item: RestartParameter): any {\n return { restartWithFailover: item[\"restartWithFailover\"], failoverMode: item[\"failoverMode\"] };\n}\n\n/** Failover mode. */\nexport enum KnownFailoverMode {\n /** PlannedFailover */\n PlannedFailover = \"PlannedFailover\",\n /** ForcedFailover */\n ForcedFailover = \"ForcedFailover\",\n /** PlannedSwitchover */\n PlannedSwitchover = \"PlannedSwitchover\",\n /** ForcedSwitchover */\n ForcedSwitchover = \"ForcedSwitchover\",\n}\n\n/**\n * Failover mode. \\\n * {@link KnownFailoverMode} can be used interchangeably with FailoverMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **PlannedFailover** \\\n * **ForcedFailover** \\\n * **PlannedSwitchover** \\\n * **ForcedSwitchover**\n */\nexport type FailoverMode = string;\n\n/** The status of a network migration operation. */\nexport interface MigrateNetworkStatus {\n /** The ID of the subscription. */\n subscriptionId?: string;\n /** The name of the resource group. */\n resourceGroupName?: string;\n /** The name of the server. */\n serverName?: string;\n /** The state of the network migration operation. */\n readonly state?: NetworkMigrationState;\n}\n\nexport function migrateNetworkStatusDeserializer(item: any): MigrateNetworkStatus {\n return {\n subscriptionId: item[\"subscriptionId\"],\n resourceGroupName: item[\"resourceGroupName\"],\n serverName: item[\"serverName\"],\n state: item[\"state\"],\n };\n}\n\n/** The state of the network migration operation. */\nexport enum KnownNetworkMigrationState {\n /** The network migration is pending. */\n Pending = \"Pending\",\n /** The network migration is in progress. */\n InProgress = \"InProgress\",\n /** The network migration succeeded. */\n Succeeded = \"Succeeded\",\n /** The network migration failed. */\n Failed = \"Failed\",\n /** The network migration cancellation is in progress. */\n CancelInProgress = \"CancelInProgress\",\n /** The network migration was cancelled. */\n Cancelled = \"Cancelled\",\n}\n\n/**\n * The state of the network migration operation. \\\n * {@link KnownNetworkMigrationState} can be used interchangeably with NetworkMigrationState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Pending**: The network migration is pending. \\\n * **InProgress**: The network migration is in progress. \\\n * **Succeeded**: The network migration succeeded. \\\n * **Failed**: The network migration failed. \\\n * **CancelInProgress**: The network migration cancellation is in progress. \\\n * **Cancelled**: The network migration was cancelled.\n */\nexport type NetworkMigrationState = string;\n\n/** Configuration (also known as server parameter). */\nexport interface Configuration extends ProxyResource {\n /** Value of the configuration (also known as server parameter). Required to update the value assigned to a specific modifiable configuration. */\n value?: string;\n /** Description of the configuration (also known as server parameter). */\n readonly description?: string;\n /** Value assigned by default to the configuration (also known as server parameter). */\n readonly defaultValue?: string;\n /** Data type of the configuration (also known as server parameter). */\n readonly dataType?: ConfigurationDataType;\n /** Allowed values of the configuration (also known as server parameter). */\n readonly allowedValues?: string;\n /** Source of the value assigned to the configuration (also known as server parameter). Required to update the value assigned to a specific modifiable configuration. */\n source?: string;\n /** Indicates if it's a dynamic (true) or static (false) configuration (also known as server parameter). Static server parameters require a server restart after changing the value assigned to them, for the change to take effect. Dynamic server parameters do not require a server restart after changing the value assigned to them, for the change to take effect. */\n readonly isDynamicConfig?: boolean;\n /** Indicates if it's a read-only (true) or modifiable (false) configuration (also known as server parameter). */\n readonly isReadOnly?: boolean;\n /** Indicates if the value assigned to the configuration (also known as server parameter) is pending a server restart for it to take effect. */\n readonly isConfigPendingRestart?: boolean;\n /** Units in which the configuration (also known as server parameter) value is expressed. */\n readonly unit?: string;\n /** Link pointing to the documentation of the configuration (also known as server parameter). */\n readonly documentationLink?: string;\n}\n\nexport function configurationDeserializer(item: any): Configuration {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _configurationPropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Properties of a configuration (also known as server parameter). */\nexport interface ConfigurationProperties {\n /** Value of the configuration (also known as server parameter). Required to update the value assigned to a specific modifiable configuration. */\n value?: string;\n /** Description of the configuration (also known as server parameter). */\n readonly description?: string;\n /** Value assigned by default to the configuration (also known as server parameter). */\n readonly defaultValue?: string;\n /** Data type of the configuration (also known as server parameter). */\n readonly dataType?: ConfigurationDataType;\n /** Allowed values of the configuration (also known as server parameter). */\n readonly allowedValues?: string;\n /** Source of the value assigned to the configuration (also known as server parameter). Required to update the value assigned to a specific modifiable configuration. */\n source?: string;\n /** Indicates if it's a dynamic (true) or static (false) configuration (also known as server parameter). Static server parameters require a server restart after changing the value assigned to them, for the change to take effect. Dynamic server parameters do not require a server restart after changing the value assigned to them, for the change to take effect. */\n readonly isDynamicConfig?: boolean;\n /** Indicates if it's a read-only (true) or modifiable (false) configuration (also known as server parameter). */\n readonly isReadOnly?: boolean;\n /** Indicates if the value assigned to the configuration (also known as server parameter) is pending a server restart for it to take effect. */\n readonly isConfigPendingRestart?: boolean;\n /** Units in which the configuration (also known as server parameter) value is expressed. */\n readonly unit?: string;\n /** Link pointing to the documentation of the configuration (also known as server parameter). */\n readonly documentationLink?: string;\n}\n\nexport function configurationPropertiesSerializer(item: ConfigurationProperties): any {\n return { value: item[\"value\"], source: item[\"source\"] };\n}\n\nexport function configurationPropertiesDeserializer(item: any): ConfigurationProperties {\n return {\n value: item[\"value\"],\n description: item[\"description\"],\n defaultValue: item[\"defaultValue\"],\n dataType: item[\"dataType\"],\n allowedValues: item[\"allowedValues\"],\n source: item[\"source\"],\n isDynamicConfig: item[\"isDynamicConfig\"],\n isReadOnly: item[\"isReadOnly\"],\n isConfigPendingRestart: item[\"isConfigPendingRestart\"],\n unit: item[\"unit\"],\n documentationLink: item[\"documentationLink\"],\n };\n}\n\n/** Data type of the configuration (also known as server parameter). */\nexport enum KnownConfigurationDataType {\n /** Boolean */\n Boolean = \"Boolean\",\n /** Numeric */\n Numeric = \"Numeric\",\n /** Integer */\n Integer = \"Integer\",\n /** Enumeration */\n Enumeration = \"Enumeration\",\n /** String */\n String = \"String\",\n /** Set */\n Set = \"Set\",\n}\n\n/**\n * Data type of the configuration (also known as server parameter). \\\n * {@link KnownConfigurationDataType} can be used interchangeably with ConfigurationDataType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Boolean** \\\n * **Numeric** \\\n * **Integer** \\\n * **Enumeration** \\\n * **String** \\\n * **Set**\n */\nexport type ConfigurationDataType = string;\n\n/** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */\nexport interface ProxyResource extends Resource {}\n\nexport function proxyResourceSerializer(item: ProxyResource): any {\n return item;\n}\n\nexport function proxyResourceDeserializer(item: any): ProxyResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n };\n}\n\n/** Configuration (also known as server parameter). */\nexport interface ConfigurationForUpdate {\n /** Value of the configuration (also known as server parameter). Required to update the value assigned to a specific modifiable configuration. */\n value?: string;\n /** Description of the configuration (also known as server parameter). */\n readonly description?: string;\n /** Value assigned by default to the configuration (also known as server parameter). */\n readonly defaultValue?: string;\n /** Data type of the configuration (also known as server parameter). */\n readonly dataType?: ConfigurationDataType;\n /** Allowed values of the configuration (also known as server parameter). */\n readonly allowedValues?: string;\n /** Source of the value assigned to the configuration (also known as server parameter). Required to update the value assigned to a specific modifiable configuration. */\n source?: string;\n /** Indicates if it's a dynamic (true) or static (false) configuration (also known as server parameter). Static server parameters require a server restart after changing the value assigned to them, for the change to take effect. Dynamic server parameters do not require a server restart after changing the value assigned to them, for the change to take effect. */\n readonly isDynamicConfig?: boolean;\n /** Indicates if it's a read-only (true) or modifiable (false) configuration (also known as server parameter). */\n readonly isReadOnly?: boolean;\n /** Indicates if the value assigned to the configuration (also known as server parameter) is pending a server restart for it to take effect. */\n readonly isConfigPendingRestart?: boolean;\n /** Units in which the configuration (also known as server parameter) value is expressed. */\n readonly unit?: string;\n /** Link pointing to the documentation of the configuration (also known as server parameter). */\n readonly documentationLink?: string;\n}\n\nexport function configurationForUpdateSerializer(item: ConfigurationForUpdate): any {\n return {\n properties: areAllPropsUndefined(item, [\"value\", \"source\"])\n ? undefined\n : _configurationForUpdatePropertiesSerializer(item),\n };\n}\n\n/** List of configurations (also known as server parameters). */\nexport interface _ConfigurationList {\n /** The Configuration items on this page */\n value: Configuration[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _configurationListDeserializer(item: any): _ConfigurationList {\n return {\n value: configurationArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function configurationArrayDeserializer(result: Array<Configuration>): any[] {\n return result.map((item) => {\n return configurationDeserializer(item);\n });\n}\n\n/** Represents a database. */\nexport interface Database extends ProxyResource {\n /** Character set of the database. */\n charset?: string;\n /** Collation of the database. */\n collation?: string;\n}\n\nexport function databaseSerializer(item: Database): any {\n return {\n properties: areAllPropsUndefined(item, [\"charset\", \"collation\"])\n ? undefined\n : _databasePropertiesSerializer(item),\n };\n}\n\nexport function databaseDeserializer(item: any): Database {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _databasePropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Properties of a database. */\nexport interface DatabaseProperties {\n /** Character set of the database. */\n charset?: string;\n /** Collation of the database. */\n collation?: string;\n}\n\nexport function databasePropertiesSerializer(item: DatabaseProperties): any {\n return { charset: item[\"charset\"], collation: item[\"collation\"] };\n}\n\nexport function databasePropertiesDeserializer(item: any): DatabaseProperties {\n return {\n charset: item[\"charset\"],\n collation: item[\"collation\"],\n };\n}\n\n/** List of all databases in a server. */\nexport interface _DatabaseList {\n /** The Database items on this page */\n value: Database[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _databaseListDeserializer(item: any): _DatabaseList {\n return {\n value: databaseArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function databaseArraySerializer(result: Array<Database>): any[] {\n return result.map((item) => {\n return databaseSerializer(item);\n });\n}\n\nexport function databaseArrayDeserializer(result: Array<Database>): any[] {\n return result.map((item) => {\n return databaseDeserializer(item);\n });\n}\n\n/** Firewall rule. */\nexport interface FirewallRule extends ProxyResource {\n /** IP address defining the start of the range of addresses of a firewall rule. Must be expressed in IPv4 format. */\n startIpAddress: string;\n /** IP address defining the end of the range of addresses of a firewall rule. Must be expressed in IPv4 format. */\n endIpAddress: string;\n}\n\nexport function firewallRuleSerializer(item: FirewallRule): any {\n return { properties: _firewallRulePropertiesSerializer(item) };\n}\n\nexport function firewallRuleDeserializer(item: any): FirewallRule {\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 ..._firewallRulePropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Properties of a firewall rule. */\nexport interface FirewallRuleProperties {\n /** IP address defining the start of the range of addresses of a firewall rule. Must be expressed in IPv4 format. */\n startIpAddress: string;\n /** IP address defining the end of the range of addresses of a firewall rule. Must be expressed in IPv4 format. */\n endIpAddress: string;\n}\n\nexport function firewallRulePropertiesSerializer(item: FirewallRuleProperties): any {\n return { startIpAddress: item[\"startIpAddress\"], endIpAddress: item[\"endIpAddress\"] };\n}\n\nexport function firewallRulePropertiesDeserializer(item: any): FirewallRuleProperties {\n return {\n startIpAddress: item[\"startIpAddress\"],\n endIpAddress: item[\"endIpAddress\"],\n };\n}\n\n/** List of firewall rules. */\nexport interface _FirewallRuleList {\n /** The FirewallRule items on this page */\n value: FirewallRule[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _firewallRuleListDeserializer(item: any): _FirewallRuleList {\n return {\n value: firewallRuleArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function firewallRuleArraySerializer(result: Array<FirewallRule>): any[] {\n return result.map((item) => {\n return firewallRuleSerializer(item);\n });\n}\n\nexport function firewallRuleArrayDeserializer(result: Array<FirewallRule>): any[] {\n return result.map((item) => {\n return firewallRuleDeserializer(item);\n });\n}\n\n/** List of private endpoint connections. */\nexport interface _PrivateEndpointConnectionList {\n /** The PrivateEndpointConnection items on this page */\n readonly value: PrivateEndpointConnection[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _privateEndpointConnectionListDeserializer(\n item: any,\n): _PrivateEndpointConnectionList {\n return {\n value: privateEndpointConnectionArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\n/** A private link resource. */\nexport interface PrivateLinkResource extends ProxyResource {\n /** The private link resource group id. */\n readonly groupId?: string;\n /** The private link resource required member names. */\n readonly requiredMembers?: string[];\n /** The private link resource private link DNS zone name. */\n requiredZoneNames?: string[];\n}\n\nexport function privateLinkResourceDeserializer(item: any): PrivateLinkResource {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _privateLinkResourcePropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Properties of a private link resource. */\nexport interface PrivateLinkResourceProperties {\n /** The private link resource group id. */\n readonly groupId?: string;\n /** The private link resource required member names. */\n readonly requiredMembers?: string[];\n /** The private link resource private link DNS zone name. */\n requiredZoneNames?: string[];\n}\n\nexport function privateLinkResourcePropertiesDeserializer(\n item: any,\n): PrivateLinkResourceProperties {\n return {\n groupId: item[\"groupId\"],\n requiredMembers: !item[\"requiredMembers\"]\n ? item[\"requiredMembers\"]\n : item[\"requiredMembers\"].map((p: any) => {\n return p;\n }),\n requiredZoneNames: !item[\"requiredZoneNames\"]\n ? item[\"requiredZoneNames\"]\n : item[\"requiredZoneNames\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** A list of private link resources */\nexport interface _PrivateLinkResourceList {\n /** The PrivateLinkResource items on this page */\n readonly value: PrivateLinkResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _privateLinkResourceListDeserializer(item: any): _PrivateLinkResourceList {\n return {\n value: privateLinkResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function privateLinkResourceArrayDeserializer(result: Array<PrivateLinkResource>): any[] {\n return result.map((item) => {\n return privateLinkResourceDeserializer(item);\n });\n}\n\n/** Pair of virtual endpoints for a server. */\nexport interface VirtualEndpoint extends ProxyResource {\n /** Type of endpoint for the virtual endpoints. */\n endpointType?: VirtualEndpointType;\n /** List of servers that one of the virtual endpoints can refer to. */\n members?: string[];\n /** List of virtual endpoints for a server. */\n readonly virtualEndpoints?: string[];\n}\n\nexport function virtualEndpointSerializer(item: VirtualEndpoint): any {\n return {\n properties: areAllPropsUndefined(item, [\"endpointType\", \"members\"])\n ? undefined\n : _virtualEndpointPropertiesSerializer(item),\n };\n}\n\nexport function virtualEndpointDeserializer(item: any): VirtualEndpoint {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _virtualEndpointPropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Properties of a pair of virtual endpoints. */\nexport interface VirtualEndpointResourceProperties {\n /** Type of endpoint for the virtual endpoints. */\n endpointType?: VirtualEndpointType;\n /** List of servers that one of the virtual endpoints can refer to. */\n members?: string[];\n /** List of virtual endpoints for a server. */\n readonly virtualEndpoints?: string[];\n}\n\nexport function virtualEndpointResourcePropertiesSerializer(\n item: VirtualEndpointResourceProperties,\n): any {\n return {\n endpointType: item[\"endpointType\"],\n members: !item[\"members\"]\n ? item[\"members\"]\n : item[\"members\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function virtualEndpointResourcePropertiesDeserializer(\n item: any,\n): VirtualEndpointResourceProperties {\n return {\n endpointType: item[\"endpointType\"],\n members: !item[\"members\"]\n ? item[\"members\"]\n : item[\"members\"].map((p: any) => {\n return p;\n }),\n virtualEndpoints: !item[\"virtualEndpoints\"]\n ? item[\"virtualEndpoints\"]\n : item[\"virtualEndpoints\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Type of endpoint for the virtual endpoints. */\nexport enum KnownVirtualEndpointType {\n /** ReadWrite */\n ReadWrite = \"ReadWrite\",\n}\n\n/**\n * Type of endpoint for the virtual endpoints. \\\n * {@link KnownVirtualEndpointType} can be used interchangeably with VirtualEndpointType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ReadWrite**\n */\nexport type VirtualEndpointType = string;\n\n/** Pair of virtual endpoints for a server. */\nexport interface VirtualEndpointResourceForPatch {\n /** Type of endpoint for the virtual endpoints. */\n endpointType?: VirtualEndpointType;\n /** List of servers that one of the virtual endpoints can refer to. */\n members?: string[];\n /** List of virtual endpoints for a server. */\n readonly virtualEndpoints?: string[];\n}\n\nexport function virtualEndpointResourceForPatchSerializer(\n item: VirtualEndpointResourceForPatch,\n): any {\n return {\n properties: areAllPropsUndefined(item, [\"endpointType\", \"members\"])\n ? undefined\n : _virtualEndpointResourceForPatchPropertiesSerializer(item),\n };\n}\n\n/** List of virtual endpoints. */\nexport interface _VirtualEndpointsList {\n /** The VirtualEndpoint items on this page */\n value: VirtualEndpoint[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _virtualEndpointsListDeserializer(item: any): _VirtualEndpointsList {\n return {\n value: virtualEndpointArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function virtualEndpointArraySerializer(result: Array<VirtualEndpoint>): any[] {\n return result.map((item) => {\n return virtualEndpointSerializer(item);\n });\n}\n\nexport function virtualEndpointArrayDeserializer(result: Array<VirtualEndpoint>): any[] {\n return result.map((item) => {\n return virtualEndpointDeserializer(item);\n });\n}\n\n/** Server administrator associated to a Microsoft Entra principal. */\nexport interface AdministratorMicrosoftEntra extends ProxyResource {\n /** Type of Microsoft Entra principal to which the server administrator is associated. */\n principalType?: PrincipalType;\n /** Name of the Microsoft Entra principal. */\n principalName?: string;\n /** Object identifier of the Microsoft Entra principal. */\n objectId?: string;\n /** Identifier of the tenant in which the Microsoft Entra principal exists. */\n tenantId?: string;\n}\n\nexport function administratorMicrosoftEntraDeserializer(item: any): AdministratorMicrosoftEntra {\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 ..._administratorMicrosoftEntraPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Properties of a server administrator associated to a Microsoft Entra principal. */\nexport interface AdministratorMicrosoftEntraProperties {\n /** Type of Microsoft Entra principal to which the server administrator is associated. */\n principalType?: PrincipalType;\n /** Name of the Microsoft Entra principal. */\n principalName?: string;\n /** Object identifier of the Microsoft Entra principal. */\n objectId?: string;\n /** Identifier of the tenant in which the Microsoft Entra principal exists. */\n tenantId?: string;\n}\n\nexport function administratorMicrosoftEntraPropertiesDeserializer(\n item: any,\n): AdministratorMicrosoftEntraProperties {\n return {\n principalType: item[\"principalType\"],\n principalName: item[\"principalName\"],\n objectId: item[\"objectId\"],\n tenantId: item[\"tenantId\"],\n };\n}\n\n/** Type of Microsoft Entra principal to which the server administrator is associated. */\nexport enum KnownPrincipalType {\n /** The principal type is not known or not specified. */\n Unknown = \"Unknown\",\n /** A Microsoft Entra user. */\n User = \"User\",\n /** A Microsoft Entra group. */\n Group = \"Group\",\n /** A Microsoft Entra service principal, typically representing an application or service identity */\n ServicePrincipal = \"ServicePrincipal\",\n}\n\n/**\n * Type of Microsoft Entra principal to which the server administrator is associated. \\\n * {@link KnownPrincipalType} can be used interchangeably with PrincipalType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Unknown**: The principal type is not known or not specified. \\\n * **User**: A Microsoft Entra user. \\\n * **Group**: A Microsoft Entra group. \\\n * **ServicePrincipal**: A Microsoft Entra service principal, typically representing an application or service identity\n */\nexport type PrincipalType = string;\n\n/** Server administrator associated to a Microsoft Entra principal. */\nexport interface AdministratorMicrosoftEntraAdd {\n /** Type of Microsoft Entra principal to which the server administrator is associated. */\n principalType?: PrincipalType;\n /** Name of the Microsoft Entra principal. */\n principalName?: string;\n /** Identifier of the tenant in which the Microsoft Entra principal exists. */\n tenantId?: string;\n}\n\nexport function administratorMicrosoftEntraAddSerializer(\n item: AdministratorMicrosoftEntraAdd,\n): any {\n return {\n properties: areAllPropsUndefined(item, [\"principalType\", \"principalName\", \"tenantId\"])\n ? undefined\n : _administratorMicrosoftEntraAddPropertiesSerializer(item),\n };\n}\n\n/** Properties of a server administrator associated to a Microsoft Entra principal. */\nexport interface AdministratorMicrosoftEntraPropertiesForAdd {\n /** Type of Microsoft Entra principal to which the server administrator is associated. */\n principalType?: PrincipalType;\n /** Name of the Microsoft Entra principal. */\n principalName?: string;\n /** Identifier of the tenant in which the Microsoft Entra principal exists. */\n tenantId?: string;\n}\n\nexport function administratorMicrosoftEntraPropertiesForAddSerializer(\n item: AdministratorMicrosoftEntraPropertiesForAdd,\n): any {\n return {\n principalType: item[\"principalType\"],\n principalName: item[\"principalName\"],\n tenantId: item[\"tenantId\"],\n };\n}\n\n/** List of server administrators associated to Microsoft Entra principals. */\nexport interface _AdministratorMicrosoftEntraList {\n /** The AdministratorMicrosoftEntra items on this page */\n value: AdministratorMicrosoftEntra[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _administratorMicrosoftEntraListDeserializer(\n item: any,\n): _AdministratorMicrosoftEntraList {\n return {\n value: administratorMicrosoftEntraArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function administratorMicrosoftEntraArrayDeserializer(\n result: Array<AdministratorMicrosoftEntra>,\n): any[] {\n return result.map((item) => {\n return administratorMicrosoftEntraDeserializer(item);\n });\n}\n\n/** List of capabilities for the Azure Database for PostgreSQL flexible server. */\nexport interface _CapabilityList {\n /** The Capability items on this page */\n readonly value: Capability[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _capabilityListDeserializer(item: any): _CapabilityList {\n return {\n value: capabilityArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function capabilityArrayDeserializer(result: Array<Capability>): any[] {\n return result.map((item) => {\n return capabilityDeserializer(item);\n });\n}\n\n/** Capability for the Azure Database for PostgreSQL flexible server. */\nexport interface Capability extends CapabilityBase {\n /** Name of flexible servers capabilities. */\n name?: string;\n /** List of supported compute tiers. */\n readonly supportedServerEditions?: ServerEditionCapability[];\n /** List of supported major versions of PostgreSQL database engine. */\n readonly supportedServerVersions?: ServerVersionCapability[];\n /** Features supported. */\n readonly supportedFeatures?: SupportedFeature[];\n /** Indicates if fast provisioning is supported. 'Enabled' means fast provisioning is supported. 'Disabled' stands for fast provisioning is not supported. Will be deprecated in the future. Look to Supported Features for 'FastProvisioning'. */\n readonly fastProvisioningSupported?: FastProvisioningSupport;\n /** List of compute tiers supporting fast provisioning. */\n readonly supportedFastProvisioningEditions?: FastProvisioningEditionCapability[];\n /** Indicates if geographically redundant backups are supported in this location. 'Enabled' means geographically redundant backups are supported. 'Disabled' stands for geographically redundant backup is not supported. Will be deprecated in the future. Look to Supported Features for 'GeoBackup'. */\n readonly geoBackupSupported?: GeographicallyRedundantBackupSupport;\n /** Indicates if high availability with zone redundancy is supported in this location. 'Enabled' means high availability with zone redundancy is supported. 'Disabled' stands for high availability with zone redundancy is not supported. Will be deprecated in the future. Look to Supported Features for 'ZoneRedundantHa'. */\n readonly zoneRedundantHaSupported?: ZoneRedundantHighAvailabilitySupport;\n /** Indicates if high availability with zone redundancy is supported in conjunction with geographically redundant backups in this location. 'Enabled' means high availability with zone redundancy is supported in conjunction with geographically redundant backups is supported. 'Disabled' stands for high availability with zone redundancy is supported in conjunction with geographically redundant backups is not supported. Will be deprecated in the future. Look to Supported Features for 'ZoneRedundantHaAndGeoBackup'. */\n readonly zoneRedundantHaAndGeoBackupSupported?: ZoneRedundantHighAvailabilityAndGeographicallyRedundantBackupSupport;\n /** Indicates if storage autogrow is supported in this location. 'Enabled' means storage autogrow is supported. 'Disabled' stands for storage autogrow is not supported. Will be deprecated in the future. Look to Supported Features for 'StorageAutoGrowth'. */\n readonly storageAutoGrowthSupported?: StorageAutoGrowthSupport;\n /** Indicates if resizing the storage, without interrupting the operation of the database engine, is supported in this location for the given subscription. 'Enabled' means resizing the storage without interrupting the operation of the database engine is supported. 'Disabled' means resizing the storage without interrupting the operation of the database engine is not supported. Will be deprecated in the future. Look to Supported Features for 'OnlineResize'. */\n readonly onlineResizeSupported?: OnlineStorageResizeSupport;\n /** Indicates if this location is restricted. 'Enabled' means location is restricted. 'Disabled' stands for location is not restricted. Will be deprecated in the future. Look to Supported Features for 'Restricted'. */\n readonly restricted?: LocationRestricted;\n}\n\nexport function capabilityDeserializer(item: any): Capability {\n return {\n status: item[\"status\"],\n reason: item[\"reason\"],\n name: item[\"name\"],\n supportedServerEditions: !item[\"supportedServerEditions\"]\n ? item[\"supportedServerEditions\"]\n : serverEditionCapabilityArrayDeserializer(item[\"supportedServerEditions\"]),\n supportedServerVersions: !item[\"supportedServerVersions\"]\n ? item[\"supportedServerVersions\"]\n : serverVersionCapabilityArrayDeserializer(item[\"supportedServerVersions\"]),\n supportedFeatures: !item[\"supportedFeatures\"]\n ? item[\"supportedFeatures\"]\n : supportedFeatureArrayDeserializer(item[\"supportedFeatures\"]),\n fastProvisioningSupported: item[\"fastProvisioningSupported\"],\n supportedFastProvisioningEditions: !item[\"supportedFastProvisioningEditions\"]\n ? item[\"supportedFastProvisioningEditions\"]\n : fastProvisioningEditionCapabilityArrayDeserializer(\n item[\"supportedFastProvisioningEditions\"],\n ),\n geoBackupSupported: item[\"geoBackupSupported\"],\n zoneRedundantHaSupported: item[\"zoneRedundantHaSupported\"],\n zoneRedundantHaAndGeoBackupSupported: item[\"zoneRedundantHaAndGeoBackupSupported\"],\n storageAutoGrowthSupported: item[\"storageAutoGrowthSupported\"],\n onlineResizeSupported: item[\"onlineResizeSupported\"],\n restricted: item[\"restricted\"],\n };\n}\n\nexport function serverEditionCapabilityArrayDeserializer(\n result: Array<ServerEditionCapability>,\n): any[] {\n return result.map((item) => {\n return serverEditionCapabilityDeserializer(item);\n });\n}\n\n/** Capabilities in terms of compute tier. */\nexport interface ServerEditionCapability extends CapabilityBase {\n /** Name of compute tier. */\n readonly name?: string;\n /** Default compute name (SKU) for this computer tier. */\n readonly defaultSkuName?: string;\n /** List of storage editions supported by this compute tier and compute name. */\n readonly supportedStorageEditions?: StorageEditionCapability[];\n /** List of supported compute names (SKUs). */\n readonly supportedServerSkus?: ServerSkuCapability[];\n}\n\nexport function serverEditionCapabilityDeserializer(item: any): ServerEditionCapability {\n return {\n status: item[\"status\"],\n reason: item[\"reason\"],\n name: item[\"name\"],\n defaultSkuName: item[\"defaultSkuName\"],\n supportedStorageEditions: !item[\"supportedStorageEditions\"]\n ? item[\"supportedStorageEditions\"]\n : storageEditionCapabilityArrayDeserializer(item[\"supportedStorageEditions\"]),\n supportedServerSkus: !item[\"supportedServerSkus\"]\n ? item[\"supportedServerSkus\"]\n : serverSkuCapabilityArrayDeserializer(item[\"supportedServerSkus\"]),\n };\n}\n\nexport function storageEditionCapabilityArrayDeserializer(\n result: Array<StorageEditionCapability>,\n): any[] {\n return result.map((item) => {\n return storageEditionCapabilityDeserializer(item);\n });\n}\n\n/** Capabilities in terms of storage tier. */\nexport interface StorageEditionCapability extends CapabilityBase {\n /** Name of storage tier. */\n readonly name?: string;\n /** Default storage size (in MB) for this storage tier. */\n readonly defaultStorageSizeMb?: number;\n /** Configurations of storage supported for this storage tier. */\n readonly supportedStorageMb?: StorageMbCapability[];\n}\n\nexport function storageEditionCapabilityDeserializer(item: any): StorageEditionCapability {\n return {\n status: item[\"status\"],\n reason: item[\"reason\"],\n name: item[\"name\"],\n defaultStorageSizeMb: item[\"defaultStorageSizeMb\"],\n supportedStorageMb: !item[\"supportedStorageMb\"]\n ? item[\"supportedStorageMb\"]\n : storageMbCapabilityArrayDeserializer(item[\"supportedStorageMb\"]),\n };\n}\n\nexport function storageMbCapabilityArrayDeserializer(result: Array<StorageMbCapability>): any[] {\n return result.map((item) => {\n return storageMbCapabilityDeserializer(item);\n });\n}\n\n/** Storage size (in MB) capability. */\nexport interface StorageMbCapability extends CapabilityBase {\n /** Minimum IOPS supported by the storage size. */\n readonly supportedIops?: number;\n /** Maximum IOPS supported by the storage size. */\n readonly supportedMaximumIops?: number;\n /** Minimum supported size (in MB) of storage. */\n readonly storageSizeMb?: number;\n /** Maximum supported size (in MB) of storage. */\n readonly maximumStorageSizeMb?: number;\n /** Minimum supported throughput (in MB/s) of storage. */\n readonly supportedThroughput?: number;\n /** Maximum supported throughput (in MB/s) of storage. */\n readonly supportedMaximumThroughput?: number;\n /** Default IOPS for this tier and storage size. */\n readonly defaultIopsTier?: string;\n /** List of all supported storage tiers for this tier and storage size. */\n readonly supportedIopsTiers?: StorageTierCapability[];\n}\n\nexport function storageMbCapabilityDeserializer(item: any): StorageMbCapability {\n return {\n status: item[\"status\"],\n reason: item[\"reason\"],\n supportedIops: item[\"supportedIops\"],\n supportedMaximumIops: item[\"supportedMaximumIops\"],\n storageSizeMb: item[\"storageSizeMb\"],\n maximumStorageSizeMb: item[\"maximumStorageSizeMb\"],\n supportedThroughput: item[\"supportedThroughput\"],\n supportedMaximumThroughput: item[\"supportedMaximumThroughput\"],\n defaultIopsTier: item[\"defaultIopsTier\"],\n supportedIopsTiers: !item[\"supportedIopsTiers\"]\n ? item[\"supportedIopsTiers\"]\n : storageTierCapabilityArrayDeserializer(item[\"supportedIopsTiers\"]),\n };\n}\n\nexport function storageTierCapabilityArrayDeserializer(\n result: Array<StorageTierCapability>,\n): any[] {\n return result.map((item) => {\n return storageTierCapabilityDeserializer(item);\n });\n}\n\n/** Capability of a storage tier. */\nexport interface StorageTierCapability extends CapabilityBase {\n /** Name of the storage tier. */\n readonly name?: string;\n /** Supported IOPS for the storage tier. */\n readonly iops?: number;\n}\n\nexport function storageTierCapabilityDeserializer(item: any): StorageTierCapability {\n return {\n status: item[\"status\"],\n reason: item[\"reason\"],\n name: item[\"name\"],\n iops: item[\"iops\"],\n };\n}\n\nexport function serverSkuCapabilityArrayDeserializer(result: Array<ServerSkuCapability>): any[] {\n return result.map((item) => {\n return serverSkuCapabilityDeserializer(item);\n });\n}\n\n/** Capabilities in terms of compute. */\nexport interface ServerSkuCapability extends CapabilityBase {\n /** Name of the compute (SKU). */\n readonly name?: string;\n /** vCores available for this compute. */\n readonly vCores?: number;\n /** Maximum IOPS supported by this compute. */\n readonly supportedIops?: number;\n /** Supported memory (in MB) per virtual core assigned to this compute. */\n readonly supportedMemoryPerVcoreMb?: number;\n /** List of supported availability zones. E.g. '1', '2', '3' */\n readonly supportedZones?: string[];\n /** Modes of high availability supported for this compute. */\n readonly supportedHaMode?: HighAvailabilityMode[];\n /** Features supported. */\n readonly supportedFeatures?: SupportedFeature[];\n /** Security profile of the compute. Indicates if it's a Confidential Compute virtual machine. */\n readonly securityProfile?: string;\n}\n\nexport function serverSkuCapabilityDeserializer(item: any): ServerSkuCapability {\n return {\n status: item[\"status\"],\n reason: item[\"reason\"],\n name: item[\"name\"],\n vCores: item[\"vCores\"],\n supportedIops: item[\"supportedIops\"],\n supportedMemoryPerVcoreMb: item[\"supportedMemoryPerVcoreMb\"],\n supportedZones: !item[\"supportedZones\"]\n ? item[\"supportedZones\"]\n : item[\"supportedZones\"].map((p: any) => {\n return p;\n }),\n supportedHaMode: !item[\"supportedHaMode\"]\n ? item[\"supportedHaMode\"]\n : item[\"supportedHaMode\"].map((p: any) => {\n return p;\n }),\n supportedFeatures: !item[\"supportedFeatures\"]\n ? item[\"supportedFeatures\"]\n : supportedFeatureArrayDeserializer(item[\"supportedFeatures\"]),\n securityProfile: item[\"securityProfile\"],\n };\n}\n\n/** Modes of high availability supported for this compute. */\nexport enum KnownHighAvailabilityMode {\n /** ZoneRedundant */\n ZoneRedundant = \"ZoneRedundant\",\n /** SameZone */\n SameZone = \"SameZone\",\n}\n\n/**\n * Modes of high availability supported for this compute. \\\n * {@link KnownHighAvailabilityMode} can be used interchangeably with HighAvailabilityMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ZoneRedundant** \\\n * **SameZone**\n */\nexport type HighAvailabilityMode = string;\n\nexport function supportedFeatureArrayDeserializer(result: Array<SupportedFeature>): any[] {\n return result.map((item) => {\n return supportedFeatureDeserializer(item);\n });\n}\n\n/** Features supported. */\nexport interface SupportedFeature {\n /** Name of the feature. */\n readonly name?: string;\n /** Status of the feature. Indicates if the feature is enabled or not. */\n readonly status?: FeatureStatus;\n}\n\nexport function supportedFeatureDeserializer(item: any): SupportedFeature {\n return {\n name: item[\"name\"],\n status: item[\"status\"],\n };\n}\n\n/** Status of the feature. Indicates if the feature is enabled or not. */\nexport enum KnownFeatureStatus {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * Status of the feature. Indicates if the feature is enabled or not. \\\n * {@link KnownFeatureStatus} can be used interchangeably with FeatureStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type FeatureStatus = string;\n\nexport function serverVersionCapabilityArrayDeserializer(\n result: Array<ServerVersionCapability>,\n): any[] {\n return result.map((item) => {\n return serverVersionCapabilityDeserializer(item);\n });\n}\n\n/** Capabilities in terms of major versions of PostgreSQL database engine. */\nexport interface ServerVersionCapability extends CapabilityBase {\n /** Major version of PostgreSQL database engine. */\n readonly name?: string;\n /** Major versions of PostgreSQL database engine to which this version can be automatically upgraded. */\n readonly supportedVersionsToUpgrade?: string[];\n /** Features supported. */\n readonly supportedFeatures?: SupportedFeature[];\n}\n\nexport function serverVersionCapabilityDeserializer(item: any): ServerVersionCapability {\n return {\n status: item[\"status\"],\n reason: item[\"reason\"],\n name: item[\"name\"],\n supportedVersionsToUpgrade: !item[\"supportedVersionsToUpgrade\"]\n ? item[\"supportedVersionsToUpgrade\"]\n : item[\"supportedVersionsToUpgrade\"].map((p: any) => {\n return p;\n }),\n supportedFeatures: !item[\"supportedFeatures\"]\n ? item[\"supportedFeatures\"]\n : supportedFeatureArrayDeserializer(item[\"supportedFeatures\"]),\n };\n}\n\n/** Indicates if fast provisioning is supported. 'Enabled' means fast provisioning is supported. 'Disabled' stands for fast provisioning is not supported. Will be deprecated in the future. Look to Supported Features for 'FastProvisioning'. */\nexport enum KnownFastProvisioningSupport {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if fast provisioning is supported. 'Enabled' means fast provisioning is supported. 'Disabled' stands for fast provisioning is not supported. Will be deprecated in the future. Look to Supported Features for 'FastProvisioning'. \\\n * {@link KnownFastProvisioningSupport} can be used interchangeably with FastProvisioningSupport,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type FastProvisioningSupport = string;\n\nexport function fastProvisioningEditionCapabilityArrayDeserializer(\n result: Array<FastProvisioningEditionCapability>,\n): any[] {\n return result.map((item) => {\n return fastProvisioningEditionCapabilityDeserializer(item);\n });\n}\n\n/** Capability of a fast provisioning compute tier. */\nexport interface FastProvisioningEditionCapability extends CapabilityBase {\n /** Compute tier supporting fast provisioning. */\n readonly supportedTier?: string;\n /** Compute name (SKU) supporting fast provisioning. */\n readonly supportedSku?: string;\n /** Storage size (in GB) supporting fast provisioning. */\n readonly supportedStorageGb?: number;\n /** Major version of PostgreSQL database engine supporting fast provisioning. */\n readonly supportedServerVersions?: string;\n /** Count of servers in cache matching this specification. */\n readonly serverCount?: number;\n}\n\nexport function fastProvisioningEditionCapabilityDeserializer(\n item: any,\n): FastProvisioningEditionCapability {\n return {\n status: item[\"status\"],\n reason: item[\"reason\"],\n supportedTier: item[\"supportedTier\"],\n supportedSku: item[\"supportedSku\"],\n supportedStorageGb: item[\"supportedStorageGb\"],\n supportedServerVersions: item[\"supportedServerVersions\"],\n serverCount: item[\"serverCount\"],\n };\n}\n\n/** Indicates if geographically redundant backups are supported in this location. 'Enabled' means geographically redundant backups are supported. 'Disabled' stands for geographically redundant backup is not supported. Will be deprecated in the future. Look to Supported Features for 'GeoBackup'. */\nexport enum KnownGeographicallyRedundantBackupSupport {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if geographically redundant backups are supported in this location. 'Enabled' means geographically redundant backups are supported. 'Disabled' stands for geographically redundant backup is not supported. Will be deprecated in the future. Look to Supported Features for 'GeoBackup'. \\\n * {@link KnownGeographicallyRedundantBackupSupport} can be used interchangeably with GeographicallyRedundantBackupSupport,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type GeographicallyRedundantBackupSupport = string;\n\n/** Indicates if high availability with zone redundancy is supported in this location. 'Enabled' means high availability with zone redundancy is supported. 'Disabled' stands for high availability with zone redundancy is not supported. Will be deprecated in the future. Look to Supported Features for 'ZoneRedundantHa'. */\nexport enum KnownZoneRedundantHighAvailabilitySupport {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if high availability with zone redundancy is supported in this location. 'Enabled' means high availability with zone redundancy is supported. 'Disabled' stands for high availability with zone redundancy is not supported. Will be deprecated in the future. Look to Supported Features for 'ZoneRedundantHa'. \\\n * {@link KnownZoneRedundantHighAvailabilitySupport} can be used interchangeably with ZoneRedundantHighAvailabilitySupport,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type ZoneRedundantHighAvailabilitySupport = string;\n\n/** Indicates if high availability with zone redundancy is supported in conjunction with geographically redundant backups in this location. 'Enabled' means high availability with zone redundancy is supported in conjunction with geographically redundant backups is supported. 'Disabled' stands for high availability with zone redundancy is supported in conjunction with geographically redundant backups is not supported. Will be deprecated in the future. Look to Supported Features for 'ZoneRedundantHaAndGeoBackup'. */\nexport enum KnownZoneRedundantHighAvailabilityAndGeographicallyRedundantBackupSupport {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if high availability with zone redundancy is supported in conjunction with geographically redundant backups in this location. 'Enabled' means high availability with zone redundancy is supported in conjunction with geographically redundant backups is supported. 'Disabled' stands for high availability with zone redundancy is supported in conjunction with geographically redundant backups is not supported. Will be deprecated in the future. Look to Supported Features for 'ZoneRedundantHaAndGeoBackup'. \\\n * {@link KnownZoneRedundantHighAvailabilityAndGeographicallyRedundantBackupSupport} can be used interchangeably with ZoneRedundantHighAvailabilityAndGeographicallyRedundantBackupSupport,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type ZoneRedundantHighAvailabilityAndGeographicallyRedundantBackupSupport = string;\n\n/** Indicates if storage autogrow is supported in this location. 'Enabled' means storage autogrow is supported. 'Disabled' stands for storage autogrow is not supported. Will be deprecated in the future. Look to Supported Features for 'StorageAutoGrowth'. */\nexport enum KnownStorageAutoGrowthSupport {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if storage autogrow is supported in this location. 'Enabled' means storage autogrow is supported. 'Disabled' stands for storage autogrow is not supported. Will be deprecated in the future. Look to Supported Features for 'StorageAutoGrowth'. \\\n * {@link KnownStorageAutoGrowthSupport} can be used interchangeably with StorageAutoGrowthSupport,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type StorageAutoGrowthSupport = string;\n\n/** Indicates if resizing the storage, without interrupting the operation of the database engine, is supported in this location for the given subscription. 'Enabled' means resizing the storage without interrupting the operation of the database engine is supported. 'Disabled' means resizing the storage without interrupting the operation of the database engine is not supported. Will be deprecated in the future. Look to Supported Features for 'OnlineResize'. */\nexport enum KnownOnlineStorageResizeSupport {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if resizing the storage, without interrupting the operation of the database engine, is supported in this location for the given subscription. 'Enabled' means resizing the storage without interrupting the operation of the database engine is supported. 'Disabled' means resizing the storage without interrupting the operation of the database engine is not supported. Will be deprecated in the future. Look to Supported Features for 'OnlineResize'. \\\n * {@link KnownOnlineStorageResizeSupport} can be used interchangeably with OnlineStorageResizeSupport,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type OnlineStorageResizeSupport = string;\n\n/** Indicates if this location is restricted. 'Enabled' means location is restricted. 'Disabled' stands for location is not restricted. Will be deprecated in the future. Look to Supported Features for 'Restricted'. */\nexport enum KnownLocationRestricted {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if this location is restricted. 'Enabled' means location is restricted. 'Disabled' stands for location is not restricted. Will be deprecated in the future. Look to Supported Features for 'Restricted'. \\\n * {@link KnownLocationRestricted} can be used interchangeably with LocationRestricted,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type LocationRestricted = string;\n\n/** Base object for representing capability */\nexport interface CapabilityBase {\n /** The status of the capability. */\n readonly status?: CapabilityStatus;\n /** The reason for the capability not being available. */\n readonly reason?: string;\n}\n\nexport function capabilityBaseDeserializer(item: any): CapabilityBase {\n return {\n status: item[\"status\"],\n reason: item[\"reason\"],\n };\n}\n\n/** The status of the capability. */\nexport type CapabilityStatus = \"Visible\" | \"Available\" | \"Default\" | \"Disabled\";\n\n/** List of log files. */\nexport interface _CapturedLogList {\n /** The CapturedLog items on this page */\n value: CapturedLog[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _capturedLogListDeserializer(item: any): _CapturedLogList {\n return {\n value: capturedLogArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function capturedLogArrayDeserializer(result: Array<CapturedLog>): any[] {\n return result.map((item) => {\n return capturedLogDeserializer(item);\n });\n}\n\n/** Log file. */\nexport interface CapturedLog extends ProxyResource {\n /** Creation timestamp of the log file. */\n createdTime?: Date;\n /** Last modified timestamp of the log file. */\n lastModifiedTime?: Date;\n /** Size (in KB) of the log file. */\n sizeInKb?: number;\n /** Type of log file. Can be 'ServerLogs' or 'UpgradeLogs'. */\n typePropertiesType?: string;\n /** URL to download the log file from. */\n url?: string;\n}\n\nexport function capturedLogDeserializer(item: any): CapturedLog {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _capturedLogPropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Properties of a log file. */\nexport interface CapturedLogProperties {\n /** Creation timestamp of the log file. */\n createdTime?: Date;\n /** Last modified timestamp of the log file. */\n lastModifiedTime?: Date;\n /** Size (in KB) of the log file. */\n sizeInKb?: number;\n /** Type of log file. Can be 'ServerLogs' or 'UpgradeLogs'. */\n type?: string;\n /** URL to download the log file from. */\n url?: string;\n}\n\nexport function capturedLogPropertiesDeserializer(item: any): CapturedLogProperties {\n return {\n createdTime: !item[\"createdTime\"] ? item[\"createdTime\"] : new Date(item[\"createdTime\"]),\n lastModifiedTime: !item[\"lastModifiedTime\"]\n ? item[\"lastModifiedTime\"]\n : new Date(item[\"lastModifiedTime\"]),\n sizeInKb: item[\"sizeInKb\"],\n type: item[\"type\"],\n url: item[\"url\"],\n };\n}\n\n/** A request that is made for pre-backup. */\nexport interface LtrPreBackupRequest extends BackupRequestBase {}\n\nexport function ltrPreBackupRequestSerializer(item: LtrPreBackupRequest): any {\n return { backupSettings: backupSettingsSerializer(item[\"backupSettings\"]) };\n}\n\n/** BackupRequestBase is the base for all backup request. */\nexport interface BackupRequestBase {\n /** Backup Settings */\n backupSettings: BackupSettings;\n}\n\nexport function backupRequestBaseSerializer(item: BackupRequestBase): any {\n return { backupSettings: backupSettingsSerializer(item[\"backupSettings\"]) };\n}\n\n/** The settings for the long term backup. */\nexport interface BackupSettings {\n /** Backup Name for the current backup */\n backupName: string;\n}\n\nexport function backupSettingsSerializer(item: BackupSettings): any {\n return { backupName: item[\"backupName\"] };\n}\n\n/** Response for the LTR pre-backup API call */\nexport interface LtrPreBackupResponse {\n /** Number of storage containers the plugin will use during backup. More than one containers may be used for size limitations, parallelism, or redundancy etc. */\n numberOfContainers: number;\n}\n\nexport function ltrPreBackupResponseDeserializer(item: any): LtrPreBackupResponse {\n return {\n ..._ltrPreBackupResponsePropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Response for the pre-backup request. */\nexport interface BackupsLongTermRetentionResponseProperties {\n /** Number of storage containers the plugin will use during backup. More than one containers may be used for size limitations, parallelism, or redundancy etc. */\n numberOfContainers: number;\n}\n\nexport function backupsLongTermRetentionResponsePropertiesDeserializer(\n item: any,\n): BackupsLongTermRetentionResponseProperties {\n return {\n numberOfContainers: item[\"numberOfContainers\"],\n };\n}\n\n/** The request that is made for a long term retention backup. */\nexport interface BackupsLongTermRetentionRequest extends BackupRequestBase {\n /** Backup store detail for target server */\n targetDetails: BackupStoreDetails;\n}\n\nexport function backupsLongTermRetentionRequestSerializer(\n item: BackupsLongTermRetentionRequest,\n): any {\n return {\n backupSettings: backupSettingsSerializer(item[\"backupSettings\"]),\n targetDetails: backupStoreDetailsSerializer(item[\"targetDetails\"]),\n };\n}\n\n/** Details about the target where the backup content will be stored. */\nexport interface BackupStoreDetails {\n /** List of SAS uri of storage containers where backup data is to be streamed/copied. */\n sasUriList: string[];\n}\n\nexport function backupStoreDetailsSerializer(item: BackupStoreDetails): any {\n return {\n sasUriList: item[\"sasUriList\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Response for the LTR backup API call */\nexport interface BackupsLongTermRetentionResponse {\n /** Size of datasource in bytes */\n datasourceSizeInBytes?: number;\n /** Data transferred in bytes */\n dataTransferredInBytes?: number;\n /** Name of Backup operation */\n backupName?: string;\n /** Metadata to be stored in RP. Store everything that will be required to perform a successful restore using this Recovery point. e.g. Versions, DataFormat etc */\n backupMetadata?: string;\n /** Service-set extensible enum indicating the status of operation */\n status?: ExecutionStatus;\n /** Start time of the operation. */\n startTime?: Date;\n /** End time of the operation. */\n endTime?: Date;\n /** PercentageCompleted */\n percentComplete?: number;\n /** The error code. */\n readonly errorCode?: string;\n /** The error message. */\n readonly errorMessage?: string;\n}\n\nexport function backupsLongTermRetentionResponseDeserializer(\n item: any,\n): BackupsLongTermRetentionResponse {\n return {\n ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _backupsLongTermRetentionResponsePropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Response for the backup request. */\nexport interface LtrBackupOperationResponseProperties {\n /** Size of datasource in bytes */\n datasourceSizeInBytes?: number;\n /** Data transferred in bytes */\n dataTransferredInBytes?: number;\n /** Name of Backup operation */\n backupName?: string;\n /** Metadata to be stored in RP. Store everything that will be required to perform a successful restore using this Recovery point. e.g. Versions, DataFormat etc */\n backupMetadata?: string;\n /** Service-set extensible enum indicating the status of operation */\n status: ExecutionStatus;\n /** Start time of the operation. */\n startTime: Date;\n /** End time of the operation. */\n endTime?: Date;\n /** PercentageCompleted */\n percentComplete?: number;\n /** The error code. */\n readonly errorCode?: string;\n /** The error message. */\n readonly errorMessage?: string;\n}\n\nexport function ltrBackupOperationResponsePropertiesDeserializer(\n item: any,\n): LtrBackupOperationResponseProperties {\n return {\n datasourceSizeInBytes: item[\"datasourceSizeInBytes\"],\n dataTransferredInBytes: item[\"dataTransferredInBytes\"],\n backupName: item[\"backupName\"],\n backupMetadata: item[\"backupMetadata\"],\n status: item[\"status\"],\n startTime: new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n percentComplete: item[\"percentComplete\"],\n errorCode: item[\"errorCode\"],\n errorMessage: item[\"errorMessage\"],\n };\n}\n\n/** Service-set extensible enum indicating the status of operation */\nexport enum KnownExecutionStatus {\n /** Running */\n Running = \"Running\",\n /** Cancelled */\n Cancelled = \"Cancelled\",\n /** Failed */\n Failed = \"Failed\",\n /** Succeeded */\n Succeeded = \"Succeeded\",\n}\n\n/**\n * Service-set extensible enum indicating the status of operation \\\n * {@link KnownExecutionStatus} can be used interchangeably with ExecutionStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Running** \\\n * **Cancelled** \\\n * **Failed** \\\n * **Succeeded**\n */\nexport type ExecutionStatus = string;\n\n/** Response for the LTR backup Operation API call */\nexport interface BackupsLongTermRetentionOperation extends ProxyResource {\n /** Size of datasource in bytes */\n datasourceSizeInBytes?: number;\n /** Data transferred in bytes */\n dataTransferredInBytes?: number;\n /** Name of Backup operation */\n backupName?: string;\n /** Metadata to be stored in RP. Store everything that will be required to perform a successful restore using this Recovery point. e.g. Versions, DataFormat etc */\n backupMetadata?: string;\n /** Service-set extensible enum indicating the status of operation */\n status?: ExecutionStatus;\n /** Start time of the operation. */\n startTime?: Date;\n /** End time of the operation. */\n endTime?: Date;\n /** PercentageCompleted */\n percentComplete?: number;\n /** The error code. */\n readonly errorCode?: string;\n /** The error message. */\n readonly errorMessage?: string;\n}\n\nexport function backupsLongTermRetentionOperationDeserializer(\n item: any,\n): BackupsLongTermRetentionOperation {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _backupsLongTermRetentionOperationPropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** A list of long term retention backup operations for server. */\nexport interface _LtrServerBackupOperationList {\n /** The BackupsLongTermRetentionOperation items on this page */\n value: BackupsLongTermRetentionOperation[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _ltrServerBackupOperationListDeserializer(\n item: any,\n): _LtrServerBackupOperationList {\n return {\n value: backupsLongTermRetentionOperationArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function backupsLongTermRetentionOperationArrayDeserializer(\n result: Array<BackupsLongTermRetentionOperation>,\n): any[] {\n return result.map((item) => {\n return backupsLongTermRetentionOperationDeserializer(item);\n });\n}\n\n/** Advanced threat protection settings of the server. */\nexport interface AdvancedThreatProtectionSettingsModel extends ProxyResource {\n /** Specifies the state of the advanced threat protection, whether it is enabled, disabled, or a state has not been applied yet on the server. */\n state?: ThreatProtectionState;\n /** Specifies the creation time (UTC) of the policy. */\n readonly creationTime?: Date;\n}\n\nexport function advancedThreatProtectionSettingsModelSerializer(\n item: AdvancedThreatProtectionSettingsModel,\n): any {\n return {\n properties: areAllPropsUndefined(item, [\"state\"])\n ? undefined\n : _advancedThreatProtectionSettingsModelPropertiesSerializer(item),\n };\n}\n\nexport function advancedThreatProtectionSettingsModelDeserializer(\n item: any,\n): AdvancedThreatProtectionSettingsModel {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _advancedThreatProtectionSettingsModelPropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Properties of advanced threat protection state for a server. */\nexport interface AdvancedThreatProtectionSettingsProperties {\n /** Specifies the state of the advanced threat protection, whether it is enabled, disabled, or a state has not been applied yet on the server. */\n state: ThreatProtectionState;\n /** Specifies the creation time (UTC) of the policy. */\n readonly creationTime?: Date;\n}\n\nexport function advancedThreatProtectionSettingsPropertiesSerializer(\n item: AdvancedThreatProtectionSettingsProperties,\n): any {\n return { state: item[\"state\"] };\n}\n\nexport function advancedThreatProtectionSettingsPropertiesDeserializer(\n item: any,\n): AdvancedThreatProtectionSettingsProperties {\n return {\n state: item[\"state\"],\n creationTime: !item[\"creationTime\"] ? item[\"creationTime\"] : new Date(item[\"creationTime\"]),\n };\n}\n\n/** Specifies the state of the advanced threat protection, whether it is enabled, disabled, or a state has not been applied yet on the server. */\nexport type ThreatProtectionState = \"Enabled\" | \"Disabled\";\n\n/** Known values of {@link ThreatProtectionName} that the service accepts. */\nexport enum KnownThreatProtectionName {\n /** Default */\n Default = \"Default\",\n}\n\n/** Type of ThreatProtectionName */\nexport type ThreatProtectionName = string;\n\n/** List of advanced threat protection settings for a server. */\nexport interface _AdvancedThreatProtectionSettingsList {\n /** The AdvancedThreatProtectionSettingsModel items on this page */\n readonly value: AdvancedThreatProtectionSettingsModel[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _advancedThreatProtectionSettingsListDeserializer(\n item: any,\n): _AdvancedThreatProtectionSettingsList {\n return {\n value: advancedThreatProtectionSettingsModelArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function advancedThreatProtectionSettingsModelArraySerializer(\n result: Array<AdvancedThreatProtectionSettingsModel>,\n): any[] {\n return result.map((item) => {\n return advancedThreatProtectionSettingsModelSerializer(item);\n });\n}\n\nexport function advancedThreatProtectionSettingsModelArrayDeserializer(\n result: Array<AdvancedThreatProtectionSettingsModel>,\n): any[] {\n return result.map((item) => {\n return advancedThreatProtectionSettingsModelDeserializer(item);\n });\n}\n\n/** Properties of a backup. */\nexport interface BackupAutomaticAndOnDemand extends ProxyResource {\n /** Type of backup. */\n backupType?: BackupType;\n /** Time(ISO8601 format) at which the backup was completed. */\n completedTime?: Date;\n /** Source of the backup. */\n source?: string;\n}\n\nexport function backupAutomaticAndOnDemandDeserializer(item: any): BackupAutomaticAndOnDemand {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _backupAutomaticAndOnDemandPropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Properties of a backup. */\nexport interface BackupAutomaticAndOnDemandProperties {\n /** Type of backup. */\n backupType?: BackupType;\n /** Time(ISO8601 format) at which the backup was completed. */\n completedTime?: Date;\n /** Source of the backup. */\n source?: string;\n}\n\nexport function backupAutomaticAndOnDemandPropertiesDeserializer(\n item: any,\n): BackupAutomaticAndOnDemandProperties {\n return {\n backupType: item[\"backupType\"],\n completedTime: !item[\"completedTime\"] ? item[\"completedTime\"] : new Date(item[\"completedTime\"]),\n source: item[\"source\"],\n };\n}\n\n/** Type of backup. */\nexport enum KnownBackupType {\n /** Full */\n Full = \"Full\",\n /** Customer On-Demand */\n CustomerOnDemand = \"Customer On-Demand\",\n}\n\n/**\n * Type of backup. \\\n * {@link KnownBackupType} can be used interchangeably with BackupType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Full** \\\n * **Customer On-Demand**\n */\nexport type BackupType = string;\n\n/** List of backups. */\nexport interface _BackupAutomaticAndOnDemandList {\n /** The BackupAutomaticAndOnDemand items on this page */\n value: BackupAutomaticAndOnDemand[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _backupAutomaticAndOnDemandListDeserializer(\n item: any,\n): _BackupAutomaticAndOnDemandList {\n return {\n value: backupAutomaticAndOnDemandArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function backupAutomaticAndOnDemandArrayDeserializer(\n result: Array<BackupAutomaticAndOnDemand>,\n): any[] {\n return result.map((item) => {\n return backupAutomaticAndOnDemandDeserializer(item);\n });\n}\n\n/** Impact on some metric if this recommended action is applied. */\nexport interface TuningOptions extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: TuningOptionsProperties;\n}\n\nexport function tuningOptionsDeserializer(item: any): TuningOptions {\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 : tuningOptionsPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Properties of a tuning option. */\nexport interface TuningOptionsProperties {\n /** State of the tuning option. */\n readonly state?: string;\n}\n\nexport function tuningOptionsPropertiesDeserializer(item: any): TuningOptionsProperties {\n return {\n state: item[\"state\"],\n };\n}\n\n/** The name of the tuning option. */\nexport enum KnownTuningOptionParameterEnum {\n /** index */\n Index = \"index\",\n /** table */\n Table = \"table\",\n}\n\n/**\n * The name of the tuning option. \\\n * {@link KnownTuningOptionParameterEnum} can be used interchangeably with TuningOptionParameterEnum,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **index** \\\n * **table**\n */\nexport type TuningOptionParameterEnum = string;\n\n/** List of server tuning options. */\nexport interface _TuningOptionsList {\n /** The TuningOptions items on this page */\n value: TuningOptions[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _tuningOptionsListDeserializer(item: any): _TuningOptionsList {\n return {\n value: tuningOptionsArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function tuningOptionsArrayDeserializer(result: Array<TuningOptions>): any[] {\n return result.map((item) => {\n return tuningOptionsDeserializer(item);\n });\n}\n\n/** List of available object recommendations. */\nexport interface _ObjectRecommendationList {\n /** The ObjectRecommendation items on this page */\n value: ObjectRecommendation[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _objectRecommendationListDeserializer(item: any): _ObjectRecommendationList {\n return {\n value: objectRecommendationArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function objectRecommendationArrayDeserializer(result: Array<ObjectRecommendation>): any[] {\n return result.map((item) => {\n return objectRecommendationDeserializer(item);\n });\n}\n\n/** Object recommendation properties. */\nexport interface ObjectRecommendation extends ProxyResource {\n /** Always empty. */\n kind?: string;\n /** Creation time (UTC) of this recommendation. */\n initialRecommendedTime?: Date;\n /** Last time (UTC) that this recommendation was produced. */\n lastRecommendedTime?: Date;\n /** Number of times this recommendation has been produced. */\n timesRecommended?: number;\n /** List of identifiers for all queries identified as targets for improvement if the recommendation is applied. The list is only populated for CREATE INDEX recommendations. */\n improvedQueryIds?: number[];\n /** Reason for this recommendation. */\n recommendationReason?: string;\n /** Current state. */\n currentState?: string;\n /** Type for this recommendation. */\n recommendationType?: RecommendationTypeEnum;\n /** Implementation details for the recommended action. */\n implementationDetails?: ObjectRecommendationPropertiesImplementationDetails;\n /** Workload information for the recommended action. */\n analyzedWorkload?: ObjectRecommendationPropertiesAnalyzedWorkload;\n /** Estimated impact of this recommended action. */\n readonly estimatedImpact?: ImpactRecord[];\n /** Recommendation details for the recommended action. */\n readonly details?: ObjectRecommendationDetails;\n}\n\nexport function objectRecommendationDeserializer(item: any): ObjectRecommendation {\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 kind: item[\"kind\"],\n ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _objectRecommendationPropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Object recommendation properties. */\nexport interface ObjectRecommendationProperties {\n /** Creation time (UTC) of this recommendation. */\n initialRecommendedTime?: Date;\n /** Last time (UTC) that this recommendation was produced. */\n lastRecommendedTime?: Date;\n /** Number of times this recommendation has been produced. */\n timesRecommended?: number;\n /** List of identifiers for all queries identified as targets for improvement if the recommendation is applied. The list is only populated for CREATE INDEX recommendations. */\n improvedQueryIds?: number[];\n /** Reason for this recommendation. */\n recommendationReason?: string;\n /** Current state. */\n currentState?: string;\n /** Type for this recommendation. */\n recommendationType?: RecommendationTypeEnum;\n /** Implementation details for the recommended action. */\n implementationDetails?: ObjectRecommendationPropertiesImplementationDetails;\n /** Workload information for the recommended action. */\n analyzedWorkload?: ObjectRecommendationPropertiesAnalyzedWorkload;\n /** Estimated impact of this recommended action. */\n readonly estimatedImpact?: ImpactRecord[];\n /** Recommendation details for the recommended action. */\n readonly details?: ObjectRecommendationDetails;\n}\n\nexport function objectRecommendationPropertiesDeserializer(\n item: any,\n): ObjectRecommendationProperties {\n return {\n initialRecommendedTime: !item[\"initialRecommendedTime\"]\n ? item[\"initialRecommendedTime\"]\n : new Date(item[\"initialRecommendedTime\"]),\n lastRecommendedTime: !item[\"lastRecommendedTime\"]\n ? item[\"lastRecommendedTime\"]\n : new Date(item[\"lastRecommendedTime\"]),\n timesRecommended: item[\"timesRecommended\"],\n improvedQueryIds: !item[\"improvedQueryIds\"]\n ? item[\"improvedQueryIds\"]\n : item[\"improvedQueryIds\"].map((p: any) => {\n return p;\n }),\n recommendationReason: item[\"recommendationReason\"],\n currentState: item[\"currentState\"],\n recommendationType: item[\"recommendationType\"],\n implementationDetails: !item[\"implementationDetails\"]\n ? item[\"implementationDetails\"]\n : objectRecommendationPropertiesImplementationDetailsDeserializer(\n item[\"implementationDetails\"],\n ),\n analyzedWorkload: !item[\"analyzedWorkload\"]\n ? item[\"analyzedWorkload\"]\n : objectRecommendationPropertiesAnalyzedWorkloadDeserializer(item[\"analyzedWorkload\"]),\n estimatedImpact: !item[\"estimatedImpact\"]\n ? item[\"estimatedImpact\"]\n : impactRecordArrayDeserializer(item[\"estimatedImpact\"]),\n details: !item[\"details\"]\n ? item[\"details\"]\n : objectRecommendationDetailsDeserializer(item[\"details\"]),\n };\n}\n\n/** Type for this recommendation. */\nexport enum KnownRecommendationTypeEnum {\n /** CreateIndex */\n CreateIndex = \"CreateIndex\",\n /** DropIndex */\n DropIndex = \"DropIndex\",\n /** ReIndex */\n ReIndex = \"ReIndex\",\n /** AnalyzeTable */\n AnalyzeTable = \"AnalyzeTable\",\n /** VacuumTable */\n VacuumTable = \"VacuumTable\",\n}\n\n/**\n * Type for this recommendation. \\\n * {@link KnownRecommendationTypeEnum} can be used interchangeably with RecommendationTypeEnum,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **CreateIndex** \\\n * **DropIndex** \\\n * **ReIndex** \\\n * **AnalyzeTable** \\\n * **VacuumTable**\n */\nexport type RecommendationTypeEnum = string;\n\n/** Implementation details for the recommended action. */\nexport interface ObjectRecommendationPropertiesImplementationDetails {\n /** Method of implementation for recommended action. */\n method?: string;\n /** Implementation script for the recommended action. */\n script?: string;\n}\n\nexport function objectRecommendationPropertiesImplementationDetailsDeserializer(\n item: any,\n): ObjectRecommendationPropertiesImplementationDetails {\n return {\n method: item[\"method\"],\n script: item[\"script\"],\n };\n}\n\n/** Workload information for the recommended action. */\nexport interface ObjectRecommendationPropertiesAnalyzedWorkload {\n /** Start time (UTC) of the workload analyzed. */\n startTime?: Date;\n /** End time (UTC) of the workload analyzed. */\n endTime?: Date;\n /** Number of queries from the workload that were examined to produce this recommendation. For DROP INDEX recommendations it's 0 (zero). */\n queryCount?: number;\n}\n\nexport function objectRecommendationPropertiesAnalyzedWorkloadDeserializer(\n item: any,\n): ObjectRecommendationPropertiesAnalyzedWorkload {\n return {\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n queryCount: item[\"queryCount\"],\n };\n}\n\nexport function impactRecordArrayDeserializer(result: Array<ImpactRecord>): any[] {\n return result.map((item) => {\n return impactRecordDeserializer(item);\n });\n}\n\n/** Impact on some metric if this recommended action is applied. */\nexport interface ImpactRecord {\n /** Dimension name. */\n dimensionName?: string;\n /** Dimension unit. */\n unit?: string;\n /** Optional property that can be used to store the identifier of the query, if the metric is for a specific query. */\n queryId?: number;\n /** Absolute value. */\n absoluteValue?: number;\n}\n\nexport function impactRecordDeserializer(item: any): ImpactRecord {\n return {\n dimensionName: item[\"dimensionName\"],\n unit: item[\"unit\"],\n queryId: item[\"queryId\"],\n absoluteValue: item[\"absoluteValue\"],\n };\n}\n\n/** Recommendation details for the recommended action. */\nexport interface ObjectRecommendationDetails {\n /** Database name. */\n databaseName?: string;\n /** Schema name. */\n schema?: string;\n /** Table name. */\n table?: string;\n /** Index type. */\n indexType?: string;\n /** Index name. */\n indexName?: string;\n /** Index columns. */\n indexColumns?: string[];\n /** Index included columns. */\n includedColumns?: string[];\n}\n\nexport function objectRecommendationDetailsDeserializer(item: any): ObjectRecommendationDetails {\n return {\n databaseName: item[\"databaseName\"],\n schema: item[\"schema\"],\n table: item[\"table\"],\n indexType: item[\"indexType\"],\n indexName: item[\"indexName\"],\n indexColumns: !item[\"indexColumns\"]\n ? item[\"indexColumns\"]\n : item[\"indexColumns\"].map((p: any) => {\n return p;\n }),\n includedColumns: !item[\"includedColumns\"]\n ? item[\"includedColumns\"]\n : item[\"includedColumns\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** The check availability request body. */\nexport interface CheckNameAvailabilityRequest {\n /** The name of the resource for which availability needs to be checked. */\n name?: string;\n /** The resource type. */\n type?: string;\n}\n\nexport function checkNameAvailabilityRequestSerializer(item: CheckNameAvailabilityRequest): any {\n return { name: item[\"name\"], type: item[\"type\"] };\n}\n\n/** Availability of a name. */\nexport interface NameAvailabilityModel extends CheckNameAvailabilityResponse {\n /** Name for which validity and availability was checked. */\n readonly name?: string;\n /** Type of resource. It can be 'Microsoft.DBforPostgreSQL/flexibleServers' or 'Microsoft.DBforPostgreSQL/flexibleServers/virtualendpoints'. */\n readonly type?: string;\n}\n\nexport function nameAvailabilityModelDeserializer(item: any): NameAvailabilityModel {\n return {\n nameAvailable: item[\"nameAvailable\"],\n reason: item[\"reason\"],\n message: item[\"message\"],\n name: item[\"name\"],\n type: item[\"type\"],\n };\n}\n\n/** The check availability result. */\nexport interface CheckNameAvailabilityResponse {\n /** Indicates if the resource name is available. */\n nameAvailable?: boolean;\n /** The reason why the given name is not available. */\n reason?: CheckNameAvailabilityReason;\n /** Detailed reason why the given name is not available. */\n message?: string;\n}\n\nexport function checkNameAvailabilityResponseDeserializer(\n item: any,\n): CheckNameAvailabilityResponse {\n return {\n nameAvailable: item[\"nameAvailable\"],\n reason: item[\"reason\"],\n message: item[\"message\"],\n };\n}\n\n/** Possible reasons for a name not being available. */\nexport enum KnownCheckNameAvailabilityReason {\n /** Name is invalid. */\n Invalid = \"Invalid\",\n /** Name already exists. */\n AlreadyExists = \"AlreadyExists\",\n}\n\n/**\n * Possible reasons for a name not being available. \\\n * {@link KnownCheckNameAvailabilityReason} can be used interchangeably with CheckNameAvailabilityReason,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Invalid**: Name is invalid. \\\n * **AlreadyExists**: Name already exists.\n */\nexport type CheckNameAvailabilityReason = string;\n\n/** Capability for the PostgreSQL server */\nexport interface _QuotaUsageList {\n /** The QuotaUsage items on this page */\n readonly value: QuotaUsage[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _quotaUsageListDeserializer(item: any): _QuotaUsageList {\n return {\n value: quotaUsageArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function quotaUsageArrayDeserializer(result: Array<QuotaUsage>): any[] {\n return result.map((item) => {\n return quotaUsageDeserializer(item);\n });\n}\n\n/** Quota usage for servers */\nexport interface QuotaUsage {\n /** Name of quota usage for servers */\n name?: NameProperty;\n /** Quota limit */\n limit?: number;\n /** Quota unit */\n unit?: string;\n /** Current Quota usage value */\n currentValue?: number;\n /** Fully qualified ARM resource Id */\n id?: string;\n}\n\nexport function quotaUsageDeserializer(item: any): QuotaUsage {\n return {\n name: !item[\"name\"] ? item[\"name\"] : namePropertyDeserializer(item[\"name\"]),\n limit: item[\"limit\"],\n unit: item[\"unit\"],\n currentValue: item[\"currentValue\"],\n id: item[\"id\"],\n };\n}\n\n/** Name property for quota usage */\nexport interface NameProperty {\n /** Name value */\n value?: string;\n /** Localized name */\n localizedValue?: string;\n}\n\nexport function namePropertyDeserializer(item: any): NameProperty {\n return {\n value: item[\"value\"],\n localizedValue: item[\"localizedValue\"],\n };\n}\n\n/** Virtual network subnet usage parameter */\nexport interface VirtualNetworkSubnetUsageParameter {\n /** Virtual network resource id. */\n virtualNetworkArmResourceId?: string;\n}\n\nexport function virtualNetworkSubnetUsageParameterSerializer(\n item: VirtualNetworkSubnetUsageParameter,\n): any {\n return { virtualNetworkArmResourceId: item[\"virtualNetworkArmResourceId\"] };\n}\n\n/** Virtual network subnet usage data. */\nexport interface VirtualNetworkSubnetUsageModel {\n readonly delegatedSubnetsUsage?: DelegatedSubnetUsage[];\n /** location of the delegated subnet usage */\n readonly location?: string;\n /** subscriptionId of the delegated subnet usage */\n readonly subscriptionId?: string;\n}\n\nexport function virtualNetworkSubnetUsageModelDeserializer(\n item: any,\n): VirtualNetworkSubnetUsageModel {\n return {\n delegatedSubnetsUsage: !item[\"delegatedSubnetsUsage\"]\n ? item[\"delegatedSubnetsUsage\"]\n : delegatedSubnetUsageArrayDeserializer(item[\"delegatedSubnetsUsage\"]),\n location: item[\"location\"],\n subscriptionId: item[\"subscriptionId\"],\n };\n}\n\nexport function delegatedSubnetUsageArrayDeserializer(result: Array<DelegatedSubnetUsage>): any[] {\n return result.map((item) => {\n return delegatedSubnetUsageDeserializer(item);\n });\n}\n\n/** Delegated subnet usage data. */\nexport interface DelegatedSubnetUsage {\n /** Name of the delegated subnet for which IP addresses are in use */\n readonly subnetName?: string;\n /** Number of IP addresses used by the delegated subnet */\n readonly usage?: number;\n}\n\nexport function delegatedSubnetUsageDeserializer(item: any): DelegatedSubnetUsage {\n return {\n subnetName: item[\"subnetName\"],\n usage: item[\"usage\"],\n };\n}\n\n/** Known values of {@link MigrationListFilter} that the service accepts. */\nexport enum KnownMigrationListFilter {\n /** Active */\n Active = \"Active\",\n /** All */\n All = \"All\",\n}\n\n/** Type of MigrationListFilter */\nexport type MigrationListFilter = string;\n\n/** Recommendations list filter. Retrieves recommendations based on type. */\nexport enum KnownRecommendationTypeParameterEnum {\n /** CreateIndex */\n CreateIndex = \"CreateIndex\",\n /** DropIndex */\n DropIndex = \"DropIndex\",\n /** ReIndex */\n ReIndex = \"ReIndex\",\n /** AnalyzeTable */\n AnalyzeTable = \"AnalyzeTable\",\n /** VacuumTable */\n VacuumTable = \"VacuumTable\",\n}\n\n/**\n * Recommendations list filter. Retrieves recommendations based on type. \\\n * {@link KnownRecommendationTypeParameterEnum} can be used interchangeably with RecommendationTypeParameterEnum,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **CreateIndex** \\\n * **DropIndex** \\\n * **ReIndex** \\\n * **AnalyzeTable** \\\n * **VacuumTable**\n */\nexport type RecommendationTypeParameterEnum = string;\n\n/** The available API versions. */\nexport enum KnownVersions {\n /** The 2025-08-01 API version. */\n V20250801 = \"2025-08-01\",\n /** The 2026-01-01-preview API version. */\n V20260101 = \"2026-01-01-preview\",\n}\n\nexport function _migrationPropertiesSerializer(item: Migration): any {\n return {\n migrationInstanceResourceId: item[\"migrationInstanceResourceId\"],\n migrationMode: item[\"migrationMode\"],\n migrationOption: item[\"migrationOption\"],\n sourceType: item[\"sourceType\"],\n sslMode: item[\"sslMode\"],\n sourceDbServerResourceId: item[\"sourceDbServerResourceId\"],\n sourceDbServerFullyQualifiedDomainName: item[\"sourceDbServerFullyQualifiedDomainName\"],\n targetDbServerFullyQualifiedDomainName: item[\"targetDbServerFullyQualifiedDomainName\"],\n secretParameters: !item[\"secretParameters\"]\n ? item[\"secretParameters\"]\n : migrationSecretParametersSerializer(item[\"secretParameters\"]),\n dbsToMigrate: !item[\"dbsToMigrate\"]\n ? item[\"dbsToMigrate\"]\n : item[\"dbsToMigrate\"].map((p: any) => {\n return p;\n }),\n setupLogicalReplicationOnSourceDbIfNeeded: item[\"setupLogicalReplicationOnSourceDbIfNeeded\"],\n overwriteDbsInTarget: item[\"overwriteDbsInTarget\"],\n migrationWindowStartTimeInUtc: !item[\"migrationWindowStartTimeInUtc\"]\n ? item[\"migrationWindowStartTimeInUtc\"]\n : item[\"migrationWindowStartTimeInUtc\"].toISOString(),\n migrationWindowEndTimeInUtc: !item[\"migrationWindowEndTimeInUtc\"]\n ? item[\"migrationWindowEndTimeInUtc\"]\n : item[\"migrationWindowEndTimeInUtc\"].toISOString(),\n migrateRoles: item[\"migrateRoles\"],\n startDataMigration: item[\"startDataMigration\"],\n triggerCutover: item[\"triggerCutover\"],\n dbsToTriggerCutoverOn: !item[\"dbsToTriggerCutoverOn\"]\n ? item[\"dbsToTriggerCutoverOn\"]\n : item[\"dbsToTriggerCutoverOn\"].map((p: any) => {\n return p;\n }),\n cancel: item[\"cancel\"],\n dbsToCancelMigrationOn: !item[\"dbsToCancelMigrationOn\"]\n ? item[\"dbsToCancelMigrationOn\"]\n : item[\"dbsToCancelMigrationOn\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function _migrationPropertiesDeserializer(item: any) {\n return {\n migrationId: item[\"migrationId\"],\n currentStatus: !item[\"currentStatus\"]\n ? item[\"currentStatus\"]\n : migrationStatusDeserializer(item[\"currentStatus\"]),\n migrationInstanceResourceId: item[\"migrationInstanceResourceId\"],\n migrationMode: item[\"migrationMode\"],\n migrationOption: item[\"migrationOption\"],\n sourceType: item[\"sourceType\"],\n sslMode: item[\"sslMode\"],\n sourceDbServerMetadata: !item[\"sourceDbServerMetadata\"]\n ? item[\"sourceDbServerMetadata\"]\n : dbServerMetadataDeserializer(item[\"sourceDbServerMetadata\"]),\n targetDbServerMetadata: !item[\"targetDbServerMetadata\"]\n ? item[\"targetDbServerMetadata\"]\n : dbServerMetadataDeserializer(item[\"targetDbServerMetadata\"]),\n sourceDbServerResourceId: item[\"sourceDbServerResourceId\"],\n sourceDbServerFullyQualifiedDomainName: item[\"sourceDbServerFullyQualifiedDomainName\"],\n targetDbServerResourceId: item[\"targetDbServerResourceId\"],\n targetDbServerFullyQualifiedDomainName: item[\"targetDbServerFullyQualifiedDomainName\"],\n secretParameters: !item[\"secretParameters\"]\n ? item[\"secretParameters\"]\n : migrationSecretParametersDeserializer(item[\"secretParameters\"]),\n dbsToMigrate: !item[\"dbsToMigrate\"]\n ? item[\"dbsToMigrate\"]\n : item[\"dbsToMigrate\"].map((p: any) => {\n return p;\n }),\n setupLogicalReplicationOnSourceDbIfNeeded: item[\"setupLogicalReplicationOnSourceDbIfNeeded\"],\n overwriteDbsInTarget: item[\"overwriteDbsInTarget\"],\n migrationWindowStartTimeInUtc: !item[\"migrationWindowStartTimeInUtc\"]\n ? item[\"migrationWindowStartTimeInUtc\"]\n : new Date(item[\"migrationWindowStartTimeInUtc\"]),\n migrationWindowEndTimeInUtc: !item[\"migrationWindowEndTimeInUtc\"]\n ? item[\"migrationWindowEndTimeInUtc\"]\n : new Date(item[\"migrationWindowEndTimeInUtc\"]),\n migrateRoles: item[\"migrateRoles\"],\n startDataMigration: item[\"startDataMigration\"],\n triggerCutover: item[\"triggerCutover\"],\n dbsToTriggerCutoverOn: !item[\"dbsToTriggerCutoverOn\"]\n ? item[\"dbsToTriggerCutoverOn\"]\n : item[\"dbsToTriggerCutoverOn\"].map((p: any) => {\n return p;\n }),\n cancel: item[\"cancel\"],\n dbsToCancelMigrationOn: !item[\"dbsToCancelMigrationOn\"]\n ? item[\"dbsToCancelMigrationOn\"]\n : item[\"dbsToCancelMigrationOn\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function _migrationResourceForPatchPropertiesSerializer(\n item: MigrationResourceForPatch,\n): any {\n return {\n sourceDbServerResourceId: item[\"sourceDbServerResourceId\"],\n sourceDbServerFullyQualifiedDomainName: item[\"sourceDbServerFullyQualifiedDomainName\"],\n targetDbServerFullyQualifiedDomainName: item[\"targetDbServerFullyQualifiedDomainName\"],\n secretParameters: !item[\"secretParameters\"]\n ? item[\"secretParameters\"]\n : migrationSecretParametersForPatchSerializer(item[\"secretParameters\"]),\n dbsToMigrate: !item[\"dbsToMigrate\"]\n ? item[\"dbsToMigrate\"]\n : item[\"dbsToMigrate\"].map((p: any) => {\n return p;\n }),\n setupLogicalReplicationOnSourceDbIfNeeded: item[\"setupLogicalReplicationOnSourceDbIfNeeded\"],\n overwriteDbsInTarget: item[\"overwriteDbsInTarget\"],\n migrationWindowStartTimeInUtc: !item[\"migrationWindowStartTimeInUtc\"]\n ? item[\"migrationWindowStartTimeInUtc\"]\n : item[\"migrationWindowStartTimeInUtc\"].toISOString(),\n migrateRoles: item[\"migrateRoles\"],\n startDataMigration: item[\"startDataMigration\"],\n triggerCutover: item[\"triggerCutover\"],\n dbsToTriggerCutoverOn: !item[\"dbsToTriggerCutoverOn\"]\n ? item[\"dbsToTriggerCutoverOn\"]\n : item[\"dbsToTriggerCutoverOn\"].map((p: any) => {\n return p;\n }),\n cancel: item[\"cancel\"],\n dbsToCancelMigrationOn: !item[\"dbsToCancelMigrationOn\"]\n ? item[\"dbsToCancelMigrationOn\"]\n : item[\"dbsToCancelMigrationOn\"].map((p: any) => {\n return p;\n }),\n migrationMode: item[\"migrationMode\"],\n };\n}\n\nexport function _privateEndpointConnectionPropertiesSerializer(\n item: PrivateEndpointConnection,\n): any {\n return {\n privateEndpoint: !item[\"privateEndpoint\"]\n ? item[\"privateEndpoint\"]\n : privateEndpointSerializer(item[\"privateEndpoint\"]),\n privateLinkServiceConnectionState: !item[\"privateLinkServiceConnectionState\"]\n ? item[\"privateLinkServiceConnectionState\"]\n : privateLinkServiceConnectionStateSerializer(item[\"privateLinkServiceConnectionState\"]),\n };\n}\n\nexport function _privateEndpointConnectionPropertiesDeserializer(item: any) {\n return {\n groupIds: !item[\"groupIds\"]\n ? item[\"groupIds\"]\n : item[\"groupIds\"].map((p: any) => {\n return p;\n }),\n privateEndpoint: !item[\"privateEndpoint\"]\n ? item[\"privateEndpoint\"]\n : privateEndpointDeserializer(item[\"privateEndpoint\"]),\n privateLinkServiceConnectionState: !item[\"privateLinkServiceConnectionState\"]\n ? item[\"privateLinkServiceConnectionState\"]\n : privateLinkServiceConnectionStateDeserializer(item[\"privateLinkServiceConnectionState\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\nexport function _serverPropertiesSerializer(item: Server): any {\n return {\n administratorLogin: item[\"administratorLogin\"],\n administratorLoginPassword: item[\"administratorLoginPassword\"],\n version: item[\"version\"],\n storage: !item[\"storage\"] ? item[\"storage\"] : storageSerializer(item[\"storage\"]),\n authConfig: !item[\"authConfig\"] ? item[\"authConfig\"] : authConfigSerializer(item[\"authConfig\"]),\n dataEncryption: !item[\"dataEncryption\"]\n ? item[\"dataEncryption\"]\n : dataEncryptionSerializer(item[\"dataEncryption\"]),\n backup: !item[\"backup\"] ? item[\"backup\"] : backupSerializer(item[\"backup\"]),\n network: !item[\"network\"] ? item[\"network\"] : networkSerializer(item[\"network\"]),\n highAvailability: !item[\"highAvailability\"]\n ? item[\"highAvailability\"]\n : highAvailabilitySerializer(item[\"highAvailability\"]),\n maintenanceWindow: !item[\"maintenanceWindow\"]\n ? item[\"maintenanceWindow\"]\n : maintenanceWindowSerializer(item[\"maintenanceWindow\"]),\n sourceServerResourceId: item[\"sourceServerResourceId\"],\n pointInTimeUTC: !item[\"pointInTimeUTC\"]\n ? item[\"pointInTimeUTC\"]\n : item[\"pointInTimeUTC\"].toISOString(),\n availabilityZone: item[\"availabilityZone\"],\n replicationRole: item[\"replicationRole\"],\n replica: !item[\"replica\"] ? item[\"replica\"] : replicaSerializer(item[\"replica\"]),\n createMode: item[\"createMode\"],\n cluster: !item[\"cluster\"] ? item[\"cluster\"] : clusterSerializer(item[\"cluster\"]),\n };\n}\n\nexport function _serverPropertiesDeserializer(item: any) {\n return {\n administratorLogin: item[\"administratorLogin\"],\n administratorLoginPassword: item[\"administratorLoginPassword\"],\n version: item[\"version\"],\n minorVersion: item[\"minorVersion\"],\n state: item[\"state\"],\n fullyQualifiedDomainName: item[\"fullyQualifiedDomainName\"],\n storage: !item[\"storage\"] ? item[\"storage\"] : storageDeserializer(item[\"storage\"]),\n authConfig: !item[\"authConfig\"]\n ? item[\"authConfig\"]\n : authConfigDeserializer(item[\"authConfig\"]),\n dataEncryption: !item[\"dataEncryption\"]\n ? item[\"dataEncryption\"]\n : dataEncryptionDeserializer(item[\"dataEncryption\"]),\n backup: !item[\"backup\"] ? item[\"backup\"] : backupDeserializer(item[\"backup\"]),\n network: !item[\"network\"] ? item[\"network\"] : networkDeserializer(item[\"network\"]),\n highAvailability: !item[\"highAvailability\"]\n ? item[\"highAvailability\"]\n : highAvailabilityDeserializer(item[\"highAvailability\"]),\n maintenanceWindow: !item[\"maintenanceWindow\"]\n ? item[\"maintenanceWindow\"]\n : maintenanceWindowDeserializer(item[\"maintenanceWindow\"]),\n sourceServerResourceId: item[\"sourceServerResourceId\"],\n pointInTimeUTC: !item[\"pointInTimeUTC\"]\n ? item[\"pointInTimeUTC\"]\n : new Date(item[\"pointInTimeUTC\"]),\n availabilityZone: item[\"availabilityZone\"],\n replicationRole: item[\"replicationRole\"],\n replicaCapacity: item[\"replicaCapacity\"],\n replica: !item[\"replica\"] ? item[\"replica\"] : replicaDeserializer(item[\"replica\"]),\n createMode: item[\"createMode\"],\n privateEndpointConnections: !item[\"privateEndpointConnections\"]\n ? item[\"privateEndpointConnections\"]\n : privateEndpointConnectionArrayDeserializer(item[\"privateEndpointConnections\"]),\n cluster: !item[\"cluster\"] ? item[\"cluster\"] : clusterDeserializer(item[\"cluster\"]),\n };\n}\n\nexport function _serverForPatchPropertiesSerializer(item: ServerForPatch): any {\n return {\n administratorLoginPassword: item[\"administratorLoginPassword\"],\n version: item[\"version\"],\n storage: !item[\"storage\"] ? item[\"storage\"] : storageSerializer(item[\"storage\"]),\n backup: !item[\"backup\"] ? item[\"backup\"] : backupForPatchSerializer(item[\"backup\"]),\n highAvailability: !item[\"highAvailability\"]\n ? item[\"highAvailability\"]\n : highAvailabilityForPatchSerializer(item[\"highAvailability\"]),\n maintenanceWindow: !item[\"maintenanceWindow\"]\n ? item[\"maintenanceWindow\"]\n : maintenanceWindowForPatchSerializer(item[\"maintenanceWindow\"]),\n authConfig: !item[\"authConfig\"]\n ? item[\"authConfig\"]\n : authConfigForPatchSerializer(item[\"authConfig\"]),\n dataEncryption: !item[\"dataEncryption\"]\n ? item[\"dataEncryption\"]\n : dataEncryptionSerializer(item[\"dataEncryption\"]),\n availabilityZone: item[\"availabilityZone\"],\n createMode: item[\"createMode\"],\n replicationRole: item[\"replicationRole\"],\n replica: !item[\"replica\"] ? item[\"replica\"] : replicaSerializer(item[\"replica\"]),\n network: !item[\"network\"] ? item[\"network\"] : networkSerializer(item[\"network\"]),\n cluster: !item[\"cluster\"] ? item[\"cluster\"] : clusterSerializer(item[\"cluster\"]),\n };\n}\n\nexport function _configurationPropertiesSerializer(item: Configuration): any {\n return { value: item[\"value\"], source: item[\"source\"] };\n}\n\nexport function _configurationPropertiesDeserializer(item: any) {\n return {\n value: item[\"value\"],\n description: item[\"description\"],\n defaultValue: item[\"defaultValue\"],\n dataType: item[\"dataType\"],\n allowedValues: item[\"allowedValues\"],\n source: item[\"source\"],\n isDynamicConfig: item[\"isDynamicConfig\"],\n isReadOnly: item[\"isReadOnly\"],\n isConfigPendingRestart: item[\"isConfigPendingRestart\"],\n unit: item[\"unit\"],\n documentationLink: item[\"documentationLink\"],\n };\n}\n\nexport function _configurationForUpdatePropertiesSerializer(item: ConfigurationForUpdate): any {\n return { value: item[\"value\"], source: item[\"source\"] };\n}\n\nexport function _configurationForUpdatePropertiesDeserializer(item: any) {\n return {\n value: item[\"value\"],\n description: item[\"description\"],\n defaultValue: item[\"defaultValue\"],\n dataType: item[\"dataType\"],\n allowedValues: item[\"allowedValues\"],\n source: item[\"source\"],\n isDynamicConfig: item[\"isDynamicConfig\"],\n isReadOnly: item[\"isReadOnly\"],\n isConfigPendingRestart: item[\"isConfigPendingRestart\"],\n unit: item[\"unit\"],\n documentationLink: item[\"documentationLink\"],\n };\n}\n\nexport function _databasePropertiesSerializer(item: Database): any {\n return { charset: item[\"charset\"], collation: item[\"collation\"] };\n}\n\nexport function _databasePropertiesDeserializer(item: any) {\n return {\n charset: item[\"charset\"],\n collation: item[\"collation\"],\n };\n}\n\nexport function _firewallRulePropertiesSerializer(item: FirewallRule): any {\n return { startIpAddress: item[\"startIpAddress\"], endIpAddress: item[\"endIpAddress\"] };\n}\n\nexport function _firewallRulePropertiesDeserializer(item: any) {\n return {\n startIpAddress: item[\"startIpAddress\"],\n endIpAddress: item[\"endIpAddress\"],\n };\n}\n\nexport function _privateLinkResourcePropertiesDeserializer(item: any) {\n return {\n groupId: item[\"groupId\"],\n requiredMembers: !item[\"requiredMembers\"]\n ? item[\"requiredMembers\"]\n : item[\"requiredMembers\"].map((p: any) => {\n return p;\n }),\n requiredZoneNames: !item[\"requiredZoneNames\"]\n ? item[\"requiredZoneNames\"]\n : item[\"requiredZoneNames\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function _virtualEndpointPropertiesSerializer(item: VirtualEndpoint): any {\n return {\n endpointType: item[\"endpointType\"],\n members: !item[\"members\"]\n ? item[\"members\"]\n : item[\"members\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function _virtualEndpointPropertiesDeserializer(item: any) {\n return {\n endpointType: item[\"endpointType\"],\n members: !item[\"members\"]\n ? item[\"members\"]\n : item[\"members\"].map((p: any) => {\n return p;\n }),\n virtualEndpoints: !item[\"virtualEndpoints\"]\n ? item[\"virtualEndpoints\"]\n : item[\"virtualEndpoints\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function _virtualEndpointResourceForPatchPropertiesSerializer(\n item: VirtualEndpointResourceForPatch,\n): any {\n return {\n endpointType: item[\"endpointType\"],\n members: !item[\"members\"]\n ? item[\"members\"]\n : item[\"members\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function _virtualEndpointResourceForPatchPropertiesDeserializer(item: any) {\n return {\n endpointType: item[\"endpointType\"],\n members: !item[\"members\"]\n ? item[\"members\"]\n : item[\"members\"].map((p: any) => {\n return p;\n }),\n virtualEndpoints: !item[\"virtualEndpoints\"]\n ? item[\"virtualEndpoints\"]\n : item[\"virtualEndpoints\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function _administratorMicrosoftEntraPropertiesDeserializer(item: any) {\n return {\n principalType: item[\"principalType\"],\n principalName: item[\"principalName\"],\n objectId: item[\"objectId\"],\n tenantId: item[\"tenantId\"],\n };\n}\n\nexport function _administratorMicrosoftEntraAddPropertiesSerializer(\n item: AdministratorMicrosoftEntraAdd,\n): any {\n return {\n principalType: item[\"principalType\"],\n principalName: item[\"principalName\"],\n tenantId: item[\"tenantId\"],\n };\n}\n\nexport function _capturedLogPropertiesDeserializer(item: any) {\n return {\n createdTime: !item[\"createdTime\"] ? item[\"createdTime\"] : new Date(item[\"createdTime\"]),\n lastModifiedTime: !item[\"lastModifiedTime\"]\n ? item[\"lastModifiedTime\"]\n : new Date(item[\"lastModifiedTime\"]),\n sizeInKb: item[\"sizeInKb\"],\n typePropertiesType: item[\"type\"],\n url: item[\"url\"],\n };\n}\n\nexport function _ltrPreBackupResponsePropertiesDeserializer(item: any) {\n return {\n numberOfContainers: item[\"numberOfContainers\"],\n };\n}\n\nexport function _backupsLongTermRetentionResponsePropertiesDeserializer(item: any) {\n return {\n datasourceSizeInBytes: item[\"datasourceSizeInBytes\"],\n dataTransferredInBytes: item[\"dataTransferredInBytes\"],\n backupName: item[\"backupName\"],\n backupMetadata: item[\"backupMetadata\"],\n status: item[\"status\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n percentComplete: item[\"percentComplete\"],\n errorCode: item[\"errorCode\"],\n errorMessage: item[\"errorMessage\"],\n };\n}\n\nexport function _backupsLongTermRetentionOperationPropertiesDeserializer(item: any) {\n return {\n datasourceSizeInBytes: item[\"datasourceSizeInBytes\"],\n dataTransferredInBytes: item[\"dataTransferredInBytes\"],\n backupName: item[\"backupName\"],\n backupMetadata: item[\"backupMetadata\"],\n status: item[\"status\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n percentComplete: item[\"percentComplete\"],\n errorCode: item[\"errorCode\"],\n errorMessage: item[\"errorMessage\"],\n };\n}\n\nexport function _advancedThreatProtectionSettingsModelPropertiesSerializer(\n item: AdvancedThreatProtectionSettingsModel,\n): any {\n return { state: item[\"state\"] };\n}\n\nexport function _advancedThreatProtectionSettingsModelPropertiesDeserializer(item: any) {\n return {\n state: item[\"state\"],\n creationTime: !item[\"creationTime\"] ? item[\"creationTime\"] : new Date(item[\"creationTime\"]),\n };\n}\n\nexport function _backupAutomaticAndOnDemandPropertiesDeserializer(item: any) {\n return {\n backupType: item[\"backupType\"],\n completedTime: !item[\"completedTime\"] ? item[\"completedTime\"] : new Date(item[\"completedTime\"]),\n source: item[\"source\"],\n };\n}\n\nexport function _objectRecommendationPropertiesDeserializer(item: any) {\n return {\n initialRecommendedTime: !item[\"initialRecommendedTime\"]\n ? item[\"initialRecommendedTime\"]\n : new Date(item[\"initialRecommendedTime\"]),\n lastRecommendedTime: !item[\"lastRecommendedTime\"]\n ? item[\"lastRecommendedTime\"]\n : new Date(item[\"lastRecommendedTime\"]),\n timesRecommended: item[\"timesRecommended\"],\n improvedQueryIds: !item[\"improvedQueryIds\"]\n ? item[\"improvedQueryIds\"]\n : item[\"improvedQueryIds\"].map((p: any) => {\n return p;\n }),\n recommendationReason: item[\"recommendationReason\"],\n currentState: item[\"currentState\"],\n recommendationType: item[\"recommendationType\"],\n implementationDetails: !item[\"implementationDetails\"]\n ? item[\"implementationDetails\"]\n : objectRecommendationPropertiesImplementationDetailsDeserializer(\n item[\"implementationDetails\"],\n ),\n analyzedWorkload: !item[\"analyzedWorkload\"]\n ? item[\"analyzedWorkload\"]\n : objectRecommendationPropertiesAnalyzedWorkloadDeserializer(item[\"analyzedWorkload\"]),\n estimatedImpact: !item[\"estimatedImpact\"]\n ? item[\"estimatedImpact\"]\n : impactRecordArrayDeserializer(item[\"estimatedImpact\"]),\n details: !item[\"details\"]\n ? item[\"details\"]\n : objectRecommendationDetailsDeserializer(item[\"details\"]),\n };\n}\n\nexport type PrivateDnsZoneSuffixGetResponse = { body: string };\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 { areAllPropsUndefined } from \"../static-helpers/serialization/check-prop-undefined.js\";\n\n/**\n * This file contains only generated model types and their (de)serializers.\n * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input.\n */\n/* eslint-disable @typescript-eslint/naming-convention */\n/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n/** Paged collection of Operation items */\nexport interface _OperationList {\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 _operationListDeserializer(item: any): _OperationList {\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/** REST API operation definition. */\nexport interface Operation {\n /** Name of the operation being performed on this particular object. */\n readonly name?: string;\n /** Localized display information for this particular operation or action. */\n readonly display?: OperationDisplay;\n /** Indicates if the operation is a data action. */\n isDataAction?: boolean;\n /** Intended executor of the operation. */\n readonly origin?: OperationOrigin;\n /** Additional descriptions for the operation. */\n readonly properties?: OperationProperties;\n}\n\nexport function operationDeserializer(item: any): Operation {\n return {\n name: item[\"name\"],\n display: !item[\"display\"] ? item[\"display\"] : operationDisplayDeserializer(item[\"display\"]),\n isDataAction: item[\"isDataAction\"],\n origin: item[\"origin\"],\n properties: !item[\"properties\"]\n ? item[\"properties\"]\n : operationPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Display metadata associated with the operation. */\nexport interface OperationDisplay {\n /** Name of the resource provider. */\n readonly provider?: string;\n /** Type of resource on which the operation is performed. */\n readonly resource?: string;\n /** Name of the operation. */\n readonly operation?: string;\n /** Description of the operation. */\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/** Intended executor of the operation. */\nexport enum KnownOperationOrigin {\n /** NotSpecified */\n NotSpecified = \"NotSpecified\",\n /** user */\n User = \"user\",\n /** system */\n System = \"system\",\n}\n\n/**\n * Intended executor of the operation. \\\n * {@link KnownOperationOrigin} can be used interchangeably with OperationOrigin,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **NotSpecified** \\\n * **user** \\\n * **system**\n */\nexport type OperationOrigin = string;\n\n/** Additional properties for operation metadata. */\nexport interface OperationProperties {\n /** Service specification for the operation. */\n serviceSpecification?: ServiceSpecification;\n}\n\nexport function operationPropertiesDeserializer(item: any): OperationProperties {\n return {\n serviceSpecification: !item[\"serviceSpecification\"]\n ? item[\"serviceSpecification\"]\n : serviceSpecificationDeserializer(item[\"serviceSpecification\"]),\n };\n}\n\n/** Service specification for an operation. */\nexport interface ServiceSpecification {\n /** Metric specifications for the operation. */\n readonly metricSpecifications?: MetricSpecification[];\n /** Log specifications for the operation. */\n readonly logSpecifications?: LogSpecification[];\n}\n\nexport function serviceSpecificationDeserializer(item: any): ServiceSpecification {\n return {\n metricSpecifications: !item[\"metricSpecifications\"]\n ? item[\"metricSpecifications\"]\n : metricSpecificationArrayDeserializer(item[\"metricSpecifications\"]),\n logSpecifications: !item[\"logSpecifications\"]\n ? item[\"logSpecifications\"]\n : logSpecificationArrayDeserializer(item[\"logSpecifications\"]),\n };\n}\n\nexport function metricSpecificationArrayDeserializer(result: Array<MetricSpecification>): any[] {\n return result.map((item) => {\n return metricSpecificationDeserializer(item);\n });\n}\n\n/** Metric specification for an operation. */\nexport interface MetricSpecification {\n /** Name of the metric. */\n name?: string;\n /** Display name of the metric. */\n displayName?: string;\n /** Display description of the metric. */\n displayDescription?: string;\n /** Unit of the metric. */\n unit?: string;\n /** Aggregation type of the metric. */\n aggregationType?: string;\n /** Supported aggregation types for the metric. */\n supportedAggregationTypes?: string[];\n /** Supported time grain types for the metric. */\n supportedTimeGrainTypes?: string[];\n /** Category of the metric. */\n category?: string;\n}\n\nexport function metricSpecificationDeserializer(item: any): MetricSpecification {\n return {\n name: item[\"name\"],\n displayName: item[\"displayName\"],\n displayDescription: item[\"displayDescription\"],\n unit: item[\"unit\"],\n aggregationType: item[\"aggregationType\"],\n supportedAggregationTypes: !item[\"supportedAggregationTypes\"]\n ? item[\"supportedAggregationTypes\"]\n : item[\"supportedAggregationTypes\"].map((p: any) => {\n return p;\n }),\n supportedTimeGrainTypes: !item[\"supportedTimeGrainTypes\"]\n ? item[\"supportedTimeGrainTypes\"]\n : item[\"supportedTimeGrainTypes\"].map((p: any) => {\n return p;\n }),\n category: item[\"category\"],\n };\n}\n\nexport function logSpecificationArrayDeserializer(result: Array<LogSpecification>): any[] {\n return result.map((item) => {\n return logSpecificationDeserializer(item);\n });\n}\n\n/** Log specification for an operation. */\nexport interface LogSpecification {\n /** Name of the log. */\n name?: string;\n /** Display name of the log. */\n displayName?: string;\n /** Blob duration for the log. */\n blobDuration?: string;\n}\n\nexport function logSpecificationDeserializer(item: any): LogSpecification {\n return {\n name: item[\"name\"],\n displayName: item[\"displayName\"],\n blobDuration: item[\"blobDuration\"],\n };\n}\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/** Properties of a migration. */\nexport interface Migration extends TrackedResource {\n /** Identifier of a migration. */\n readonly migrationId?: string;\n /** Current status of a migration. */\n readonly currentStatus?: MigrationStatus;\n /** Identifier of the private endpoint migration instance. */\n migrationInstanceResourceId?: string;\n /** Mode used to perform the migration: Online or Offline. */\n migrationMode?: MigrationMode;\n /** Supported option for a migration. */\n migrationOption?: MigrationOption;\n /** Source server type used for the migration: ApsaraDB_RDS, AWS, AWS_AURORA, AWS_EC2, AWS_RDS, AzureVM, Crunchy_PostgreSQL, Digital_Ocean_Droplets, Digital_Ocean_PostgreSQL, EDB, EDB_Oracle_Server, EDB_PostgreSQL, GCP, GCP_AlloyDB, GCP_CloudSQL, GCP_Compute, Heroku_PostgreSQL, Huawei_Compute, Huawei_RDS, OnPremises, PostgreSQLCosmosDB, PostgreSQLFlexibleServer, PostgreSQLSingleServer, or Supabase_PostgreSQL */\n sourceType?: SourceType;\n /** SSL mode used by a migration. Default SSL mode for 'PostgreSQLSingleServer' is 'VerifyFull'. Default SSL mode for other source types is 'Prefer'. */\n sslMode?: SslMode;\n /** Metadata of source database server. */\n readonly sourceDbServerMetadata?: DbServerMetadata;\n /** Metadata of target database server. */\n readonly targetDbServerMetadata?: DbServerMetadata;\n /** Identifier of the source database server resource, when 'sourceType' is 'PostgreSQLSingleServer'. For other source types this must be set to ipaddress:port@username or hostname:port@username. */\n sourceDbServerResourceId?: string;\n /** Fully qualified domain name (FQDN) or IP address of the source server. This property is optional. When provided, the migration service will always use it to connect to the source server. */\n sourceDbServerFullyQualifiedDomainName?: string;\n /** Identifier of the target database server resource. */\n readonly targetDbServerResourceId?: string;\n /** Fully qualified domain name (FQDN) or IP address of the target server. This property is optional. When provided, the migration service will always use it to connect to the target server. */\n targetDbServerFullyQualifiedDomainName?: string;\n /** Migration secret parameters. */\n secretParameters?: MigrationSecretParameters;\n /** Names of databases to migrate. */\n dbsToMigrate?: string[];\n /** Indicates whether to setup logical replication on source server, if needed. */\n setupLogicalReplicationOnSourceDbIfNeeded?: LogicalReplicationOnSourceServer;\n /** Indicates if databases on the target server can be overwritten when already present. If set to 'False', when the migration workflow detects that the database already exists on the target server, it will wait for a confirmation. */\n overwriteDbsInTarget?: OverwriteDatabasesOnTargetServer;\n /** Start time (UTC) for migration window. */\n migrationWindowStartTimeInUtc?: Date;\n /** End time (UTC) for migration window. */\n migrationWindowEndTimeInUtc?: Date;\n /** Indicates if roles and permissions must be migrated. */\n migrateRoles?: MigrateRolesAndPermissions;\n /** Indicates if data migration must start right away. */\n startDataMigration?: StartDataMigration;\n /** Indicates if cutover must be triggered for the entire migration. */\n triggerCutover?: TriggerCutover;\n /** When you want to trigger cutover for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array. */\n dbsToTriggerCutoverOn?: string[];\n /** Indicates if cancel must be triggered for the entire migration. */\n cancel?: Cancel;\n /** When you want to trigger cancel for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array. */\n dbsToCancelMigrationOn?: string[];\n}\n\nexport function migrationSerializer(item: Migration): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: areAllPropsUndefined(item, [\n \"migrationInstanceResourceId\",\n \"migrationMode\",\n \"migrationOption\",\n \"sourceType\",\n \"sslMode\",\n \"sourceDbServerResourceId\",\n \"sourceDbServerFullyQualifiedDomainName\",\n \"targetDbServerFullyQualifiedDomainName\",\n \"secretParameters\",\n \"dbsToMigrate\",\n \"setupLogicalReplicationOnSourceDbIfNeeded\",\n \"overwriteDbsInTarget\",\n \"migrationWindowStartTimeInUtc\",\n \"migrationWindowEndTimeInUtc\",\n \"migrateRoles\",\n \"startDataMigration\",\n \"triggerCutover\",\n \"dbsToTriggerCutoverOn\",\n \"cancel\",\n \"dbsToCancelMigrationOn\",\n ])\n ? undefined\n : _migrationPropertiesSerializer(item),\n };\n}\n\nexport function migrationDeserializer(item: any): Migration {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _migrationPropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Migration. */\nexport interface MigrationProperties {\n /** Identifier of a migration. */\n readonly migrationId?: string;\n /** Current status of a migration. */\n readonly currentStatus?: MigrationStatus;\n /** Identifier of the private endpoint migration instance. */\n migrationInstanceResourceId?: string;\n /** Mode used to perform the migration: Online or Offline. */\n migrationMode?: MigrationMode;\n /** Supported option for a migration. */\n migrationOption?: MigrationOption;\n /** Source server type used for the migration: ApsaraDB_RDS, AWS, AWS_AURORA, AWS_EC2, AWS_RDS, AzureVM, Crunchy_PostgreSQL, Digital_Ocean_Droplets, Digital_Ocean_PostgreSQL, EDB, EDB_Oracle_Server, EDB_PostgreSQL, GCP, GCP_AlloyDB, GCP_CloudSQL, GCP_Compute, Heroku_PostgreSQL, Huawei_Compute, Huawei_RDS, OnPremises, PostgreSQLCosmosDB, PostgreSQLFlexibleServer, PostgreSQLSingleServer, or Supabase_PostgreSQL */\n sourceType?: SourceType;\n /** SSL mode used by a migration. Default SSL mode for 'PostgreSQLSingleServer' is 'VerifyFull'. Default SSL mode for other source types is 'Prefer'. */\n sslMode?: SslMode;\n /** Metadata of source database server. */\n readonly sourceDbServerMetadata?: DbServerMetadata;\n /** Metadata of target database server. */\n readonly targetDbServerMetadata?: DbServerMetadata;\n /** Identifier of the source database server resource, when 'sourceType' is 'PostgreSQLSingleServer'. For other source types this must be set to ipaddress:port@username or hostname:port@username. */\n sourceDbServerResourceId?: string;\n /** Fully qualified domain name (FQDN) or IP address of the source server. This property is optional. When provided, the migration service will always use it to connect to the source server. */\n sourceDbServerFullyQualifiedDomainName?: string;\n /** Identifier of the target database server resource. */\n readonly targetDbServerResourceId?: string;\n /** Fully qualified domain name (FQDN) or IP address of the target server. This property is optional. When provided, the migration service will always use it to connect to the target server. */\n targetDbServerFullyQualifiedDomainName?: string;\n /** Migration secret parameters. */\n secretParameters?: MigrationSecretParameters;\n /** Names of databases to migrate. */\n dbsToMigrate?: string[];\n /** Indicates whether to setup logical replication on source server, if needed. */\n setupLogicalReplicationOnSourceDbIfNeeded?: LogicalReplicationOnSourceServer;\n /** Indicates if databases on the target server can be overwritten when already present. If set to 'False', when the migration workflow detects that the database already exists on the target server, it will wait for a confirmation. */\n overwriteDbsInTarget?: OverwriteDatabasesOnTargetServer;\n /** Start time (UTC) for migration window. */\n migrationWindowStartTimeInUtc?: Date;\n /** End time (UTC) for migration window. */\n migrationWindowEndTimeInUtc?: Date;\n /** Indicates if roles and permissions must be migrated. */\n migrateRoles?: MigrateRolesAndPermissions;\n /** Indicates if data migration must start right away. */\n startDataMigration?: StartDataMigration;\n /** Indicates if cutover must be triggered for the entire migration. */\n triggerCutover?: TriggerCutover;\n /** When you want to trigger cutover for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array. */\n dbsToTriggerCutoverOn?: string[];\n /** Indicates if cancel must be triggered for the entire migration. */\n cancel?: Cancel;\n /** When you want to trigger cancel for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array. */\n dbsToCancelMigrationOn?: string[];\n}\n\nexport function migrationPropertiesSerializer(item: MigrationProperties): any {\n return {\n migrationInstanceResourceId: item[\"migrationInstanceResourceId\"],\n migrationMode: item[\"migrationMode\"],\n migrationOption: item[\"migrationOption\"],\n sourceType: item[\"sourceType\"],\n sslMode: item[\"sslMode\"],\n sourceDbServerResourceId: item[\"sourceDbServerResourceId\"],\n sourceDbServerFullyQualifiedDomainName: item[\"sourceDbServerFullyQualifiedDomainName\"],\n targetDbServerFullyQualifiedDomainName: item[\"targetDbServerFullyQualifiedDomainName\"],\n secretParameters: !item[\"secretParameters\"]\n ? item[\"secretParameters\"]\n : migrationSecretParametersSerializer(item[\"secretParameters\"]),\n dbsToMigrate: !item[\"dbsToMigrate\"]\n ? item[\"dbsToMigrate\"]\n : item[\"dbsToMigrate\"].map((p: any) => {\n return p;\n }),\n setupLogicalReplicationOnSourceDbIfNeeded: item[\"setupLogicalReplicationOnSourceDbIfNeeded\"],\n overwriteDbsInTarget: item[\"overwriteDbsInTarget\"],\n migrationWindowStartTimeInUtc: !item[\"migrationWindowStartTimeInUtc\"]\n ? item[\"migrationWindowStartTimeInUtc\"]\n : item[\"migrationWindowStartTimeInUtc\"].toISOString(),\n migrationWindowEndTimeInUtc: !item[\"migrationWindowEndTimeInUtc\"]\n ? item[\"migrationWindowEndTimeInUtc\"]\n : item[\"migrationWindowEndTimeInUtc\"].toISOString(),\n migrateRoles: item[\"migrateRoles\"],\n startDataMigration: item[\"startDataMigration\"],\n triggerCutover: item[\"triggerCutover\"],\n dbsToTriggerCutoverOn: !item[\"dbsToTriggerCutoverOn\"]\n ? item[\"dbsToTriggerCutoverOn\"]\n : item[\"dbsToTriggerCutoverOn\"].map((p: any) => {\n return p;\n }),\n cancel: item[\"cancel\"],\n dbsToCancelMigrationOn: !item[\"dbsToCancelMigrationOn\"]\n ? item[\"dbsToCancelMigrationOn\"]\n : item[\"dbsToCancelMigrationOn\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function migrationPropertiesDeserializer(item: any): MigrationProperties {\n return {\n migrationId: item[\"migrationId\"],\n currentStatus: !item[\"currentStatus\"]\n ? item[\"currentStatus\"]\n : migrationStatusDeserializer(item[\"currentStatus\"]),\n migrationInstanceResourceId: item[\"migrationInstanceResourceId\"],\n migrationMode: item[\"migrationMode\"],\n migrationOption: item[\"migrationOption\"],\n sourceType: item[\"sourceType\"],\n sslMode: item[\"sslMode\"],\n sourceDbServerMetadata: !item[\"sourceDbServerMetadata\"]\n ? item[\"sourceDbServerMetadata\"]\n : dbServerMetadataDeserializer(item[\"sourceDbServerMetadata\"]),\n targetDbServerMetadata: !item[\"targetDbServerMetadata\"]\n ? item[\"targetDbServerMetadata\"]\n : dbServerMetadataDeserializer(item[\"targetDbServerMetadata\"]),\n sourceDbServerResourceId: item[\"sourceDbServerResourceId\"],\n sourceDbServerFullyQualifiedDomainName: item[\"sourceDbServerFullyQualifiedDomainName\"],\n targetDbServerResourceId: item[\"targetDbServerResourceId\"],\n targetDbServerFullyQualifiedDomainName: item[\"targetDbServerFullyQualifiedDomainName\"],\n secretParameters: !item[\"secretParameters\"]\n ? item[\"secretParameters\"]\n : migrationSecretParametersDeserializer(item[\"secretParameters\"]),\n dbsToMigrate: !item[\"dbsToMigrate\"]\n ? item[\"dbsToMigrate\"]\n : item[\"dbsToMigrate\"].map((p: any) => {\n return p;\n }),\n setupLogicalReplicationOnSourceDbIfNeeded: item[\"setupLogicalReplicationOnSourceDbIfNeeded\"],\n overwriteDbsInTarget: item[\"overwriteDbsInTarget\"],\n migrationWindowStartTimeInUtc: !item[\"migrationWindowStartTimeInUtc\"]\n ? item[\"migrationWindowStartTimeInUtc\"]\n : new Date(item[\"migrationWindowStartTimeInUtc\"]),\n migrationWindowEndTimeInUtc: !item[\"migrationWindowEndTimeInUtc\"]\n ? item[\"migrationWindowEndTimeInUtc\"]\n : new Date(item[\"migrationWindowEndTimeInUtc\"]),\n migrateRoles: item[\"migrateRoles\"],\n startDataMigration: item[\"startDataMigration\"],\n triggerCutover: item[\"triggerCutover\"],\n dbsToTriggerCutoverOn: !item[\"dbsToTriggerCutoverOn\"]\n ? item[\"dbsToTriggerCutoverOn\"]\n : item[\"dbsToTriggerCutoverOn\"].map((p: any) => {\n return p;\n }),\n cancel: item[\"cancel\"],\n dbsToCancelMigrationOn: !item[\"dbsToCancelMigrationOn\"]\n ? item[\"dbsToCancelMigrationOn\"]\n : item[\"dbsToCancelMigrationOn\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** State of migration. */\nexport interface MigrationStatus {\n /** State of migration. */\n readonly state?: MigrationState;\n /** Error message, if any, for the migration state. */\n readonly error?: string;\n /** Current migration sub state details. */\n readonly currentSubStateDetails?: MigrationSubstateDetails;\n}\n\nexport function migrationStatusDeserializer(item: any): MigrationStatus {\n return {\n state: item[\"state\"],\n error: item[\"error\"],\n currentSubStateDetails: !item[\"currentSubStateDetails\"]\n ? item[\"currentSubStateDetails\"]\n : migrationSubstateDetailsDeserializer(item[\"currentSubStateDetails\"]),\n };\n}\n\n/** State of migration. */\nexport enum KnownMigrationState {\n /** Migration is in progress. */\n InProgress = \"InProgress\",\n /** Migration is waiting for user action. */\n WaitingForUserAction = \"WaitingForUserAction\",\n /** Migration has been canceled. */\n Canceled = \"Canceled\",\n /** Migration has failed. */\n Failed = \"Failed\",\n /** Migration has succeeded. */\n Succeeded = \"Succeeded\",\n /** Validation for migration has failed. */\n ValidationFailed = \"ValidationFailed\",\n /** Migration is cleaning up resources. */\n CleaningUp = \"CleaningUp\",\n}\n\n/**\n * State of migration. \\\n * {@link KnownMigrationState} can be used interchangeably with MigrationState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **InProgress**: Migration is in progress. \\\n * **WaitingForUserAction**: Migration is waiting for user action. \\\n * **Canceled**: Migration has been canceled. \\\n * **Failed**: Migration has failed. \\\n * **Succeeded**: Migration has succeeded. \\\n * **ValidationFailed**: Validation for migration has failed. \\\n * **CleaningUp**: Migration is cleaning up resources.\n */\nexport type MigrationState = string;\n\n/** Details of migration substate. */\nexport interface MigrationSubstateDetails {\n /** Substate of migration. */\n readonly currentSubState?: MigrationSubstate;\n dbDetails?: Record<string, DatabaseMigrationState>;\n validationDetails?: ValidationDetails;\n}\n\nexport function migrationSubstateDetailsDeserializer(item: any): MigrationSubstateDetails {\n return {\n currentSubState: item[\"currentSubState\"],\n dbDetails: !item[\"dbDetails\"]\n ? item[\"dbDetails\"]\n : databaseMigrationStateRecordDeserializer(item[\"dbDetails\"]),\n validationDetails: !item[\"validationDetails\"]\n ? item[\"validationDetails\"]\n : validationDetailsDeserializer(item[\"validationDetails\"]),\n };\n}\n\n/** Substate of migration. */\nexport enum KnownMigrationSubstate {\n /** Performing pre-requisite steps for migration. */\n PerformingPreRequisiteSteps = \"PerformingPreRequisiteSteps\",\n /** Waiting for logical replication setup request on source database. */\n WaitingForLogicalReplicationSetupRequestOnSourceDB = \"WaitingForLogicalReplicationSetupRequestOnSourceDB\",\n /** Waiting for databases to migrate specification. */\n WaitingForDBsToMigrateSpecification = \"WaitingForDBsToMigrateSpecification\",\n /** Waiting for target database overwrite confirmation. */\n WaitingForTargetDBOverwriteConfirmation = \"WaitingForTargetDBOverwriteConfirmation\",\n /** Waiting for data migration scheduling. */\n WaitingForDataMigrationScheduling = \"WaitingForDataMigrationScheduling\",\n /** Waiting for data migration window. */\n WaitingForDataMigrationWindow = \"WaitingForDataMigrationWindow\",\n /** Migrating data. */\n MigratingData = \"MigratingData\",\n /** Waiting for cutover trigger. */\n WaitingForCutoverTrigger = \"WaitingForCutoverTrigger\",\n /** Completing migration. */\n CompletingMigration = \"CompletingMigration\",\n /** Migration completed. */\n Completed = \"Completed\",\n /** Canceling requested database migrations. */\n CancelingRequestedDBMigrations = \"CancelingRequestedDBMigrations\",\n /** Validation in progress. */\n ValidationInProgress = \"ValidationInProgress\",\n}\n\n/**\n * Substate of migration. \\\n * {@link KnownMigrationSubstate} can be used interchangeably with MigrationSubstate,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **PerformingPreRequisiteSteps**: Performing pre-requisite steps for migration. \\\n * **WaitingForLogicalReplicationSetupRequestOnSourceDB**: Waiting for logical replication setup request on source database. \\\n * **WaitingForDBsToMigrateSpecification**: Waiting for databases to migrate specification. \\\n * **WaitingForTargetDBOverwriteConfirmation**: Waiting for target database overwrite confirmation. \\\n * **WaitingForDataMigrationScheduling**: Waiting for data migration scheduling. \\\n * **WaitingForDataMigrationWindow**: Waiting for data migration window. \\\n * **MigratingData**: Migrating data. \\\n * **WaitingForCutoverTrigger**: Waiting for cutover trigger. \\\n * **CompletingMigration**: Completing migration. \\\n * **Completed**: Migration completed. \\\n * **CancelingRequestedDBMigrations**: Canceling requested database migrations. \\\n * **ValidationInProgress**: Validation in progress.\n */\nexport type MigrationSubstate = string;\n\nexport function databaseMigrationStateRecordDeserializer(\n item: Record<string, any>,\n): Record<string, DatabaseMigrationState> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : databaseMigrationStateDeserializer(item[key]);\n });\n return result;\n}\n\n/** Migration state of a database. */\nexport interface DatabaseMigrationState {\n /** Name of database. */\n databaseName?: string;\n /** Migration state of a database. */\n migrationState?: MigrationDatabaseState;\n /** Migration operation of a database. */\n migrationOperation?: string;\n /** Start time of a migration state. */\n startedOn?: Date;\n /** End time of a migration state. */\n endedOn?: Date;\n /** Number of tables queued for the migration of a database. */\n fullLoadQueuedTables?: number;\n /** Number of tables encountering errors during the migration of a database. */\n fullLoadErroredTables?: number;\n /** Number of tables loading during the migration of a database. */\n fullLoadLoadingTables?: number;\n /** Number of tables loaded during the migration of a database. */\n fullLoadCompletedTables?: number;\n /** Change Data Capture update counter. */\n cdcUpdateCounter?: number;\n /** Change Data Capture delete counter. */\n cdcDeleteCounter?: number;\n /** Change Data Capture insert counter. */\n cdcInsertCounter?: number;\n /** Change Data Capture applied changes counter. */\n appliedChanges?: number;\n /** Change Data Capture incoming changes counter. */\n incomingChanges?: number;\n /** Lag in seconds between source and target during online phase. */\n latency?: number;\n /** Error message, if any, for the migration state. */\n message?: string;\n}\n\nexport function databaseMigrationStateDeserializer(item: any): DatabaseMigrationState {\n return {\n databaseName: item[\"databaseName\"],\n migrationState: item[\"migrationState\"],\n migrationOperation: item[\"migrationOperation\"],\n startedOn: !item[\"startedOn\"] ? item[\"startedOn\"] : new Date(item[\"startedOn\"]),\n endedOn: !item[\"endedOn\"] ? item[\"endedOn\"] : new Date(item[\"endedOn\"]),\n fullLoadQueuedTables: item[\"fullLoadQueuedTables\"],\n fullLoadErroredTables: item[\"fullLoadErroredTables\"],\n fullLoadLoadingTables: item[\"fullLoadLoadingTables\"],\n fullLoadCompletedTables: item[\"fullLoadCompletedTables\"],\n cdcUpdateCounter: item[\"cdcUpdateCounter\"],\n cdcDeleteCounter: item[\"cdcDeleteCounter\"],\n cdcInsertCounter: item[\"cdcInsertCounter\"],\n appliedChanges: item[\"appliedChanges\"],\n incomingChanges: item[\"incomingChanges\"],\n latency: item[\"latency\"],\n message: item[\"message\"],\n };\n}\n\n/** Migration state of a database. */\nexport enum KnownMigrationDatabaseState {\n /** Migration is in progress for the database. */\n InProgress = \"InProgress\",\n /** Migration is waiting for cutover trigger for the database. */\n WaitingForCutoverTrigger = \"WaitingForCutoverTrigger\",\n /** Migration has failed for the database. */\n Failed = \"Failed\",\n /** Migration has been canceled for the database. */\n Canceled = \"Canceled\",\n /** Migration has succeeded for the database. */\n Succeeded = \"Succeeded\",\n /** Migration is being canceled for the database. */\n Canceling = \"Canceling\",\n}\n\n/**\n * Migration state of a database. \\\n * {@link KnownMigrationDatabaseState} can be used interchangeably with MigrationDatabaseState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **InProgress**: Migration is in progress for the database. \\\n * **WaitingForCutoverTrigger**: Migration is waiting for cutover trigger for the database. \\\n * **Failed**: Migration has failed for the database. \\\n * **Canceled**: Migration has been canceled for the database. \\\n * **Succeeded**: Migration has succeeded for the database. \\\n * **Canceling**: Migration is being canceled for the database.\n */\nexport type MigrationDatabaseState = string;\n\n/** Details for the validation for migration. */\nexport interface ValidationDetails {\n /** Validation status for migration. */\n status?: ValidationState;\n /** Start time (UTC) for validation. */\n validationStartTimeInUtc?: Date;\n /** End time (UTC) for validation. */\n validationEndTimeInUtc?: Date;\n /** Details of server level validations. */\n serverLevelValidationDetails?: ValidationSummaryItem[];\n /** Details of server level validations. */\n dbLevelValidationDetails?: DbLevelValidationStatus[];\n}\n\nexport function validationDetailsDeserializer(item: any): ValidationDetails {\n return {\n status: item[\"status\"],\n validationStartTimeInUtc: !item[\"validationStartTimeInUtc\"]\n ? item[\"validationStartTimeInUtc\"]\n : new Date(item[\"validationStartTimeInUtc\"]),\n validationEndTimeInUtc: !item[\"validationEndTimeInUtc\"]\n ? item[\"validationEndTimeInUtc\"]\n : new Date(item[\"validationEndTimeInUtc\"]),\n serverLevelValidationDetails: !item[\"serverLevelValidationDetails\"]\n ? item[\"serverLevelValidationDetails\"]\n : validationSummaryItemArrayDeserializer(item[\"serverLevelValidationDetails\"]),\n dbLevelValidationDetails: !item[\"dbLevelValidationDetails\"]\n ? item[\"dbLevelValidationDetails\"]\n : dbLevelValidationStatusArrayDeserializer(item[\"dbLevelValidationDetails\"]),\n };\n}\n\n/** Validation state for migration. */\nexport enum KnownValidationState {\n /** Validation has failed. */\n Failed = \"Failed\",\n /** Validation has succeeded. */\n Succeeded = \"Succeeded\",\n /** Validation has succeeded with warnings. */\n Warning = \"Warning\",\n}\n\n/**\n * Validation state for migration. \\\n * {@link KnownValidationState} can be used interchangeably with ValidationState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Failed**: Validation has failed. \\\n * **Succeeded**: Validation has succeeded. \\\n * **Warning**: Validation has succeeded with warnings.\n */\nexport type ValidationState = string;\n\nexport function validationSummaryItemArrayDeserializer(\n result: Array<ValidationSummaryItem>,\n): any[] {\n return result.map((item) => {\n return validationSummaryItemDeserializer(item);\n });\n}\n\n/** Validation summary object. */\nexport interface ValidationSummaryItem {\n /** Validation type. */\n type?: string;\n /** Validation status for migration. */\n state?: ValidationState;\n /** Validation messages. */\n messages?: ValidationMessage[];\n}\n\nexport function validationSummaryItemDeserializer(item: any): ValidationSummaryItem {\n return {\n type: item[\"type\"],\n state: item[\"state\"],\n messages: !item[\"messages\"]\n ? item[\"messages\"]\n : validationMessageArrayDeserializer(item[\"messages\"]),\n };\n}\n\nexport function validationMessageArrayDeserializer(result: Array<ValidationMessage>): any[] {\n return result.map((item) => {\n return validationMessageDeserializer(item);\n });\n}\n\n/** Validation message object. */\nexport interface ValidationMessage {\n /** Severity of validation message. */\n state?: ValidationState;\n /** Validation message string. */\n message?: string;\n}\n\nexport function validationMessageDeserializer(item: any): ValidationMessage {\n return {\n state: item[\"state\"],\n message: item[\"message\"],\n };\n}\n\nexport function dbLevelValidationStatusArrayDeserializer(\n result: Array<DbLevelValidationStatus>,\n): any[] {\n return result.map((item) => {\n return dbLevelValidationStatusDeserializer(item);\n });\n}\n\n/** Validation status summary for a database. */\nexport interface DbLevelValidationStatus {\n /** Name of database. */\n databaseName?: string;\n /** Start time of a database level validation. */\n startedOn?: Date;\n /** End time of a database level validation. */\n endedOn?: Date;\n /** Summary of database level validations. */\n summary?: ValidationSummaryItem[];\n}\n\nexport function dbLevelValidationStatusDeserializer(item: any): DbLevelValidationStatus {\n return {\n databaseName: item[\"databaseName\"],\n startedOn: !item[\"startedOn\"] ? item[\"startedOn\"] : new Date(item[\"startedOn\"]),\n endedOn: !item[\"endedOn\"] ? item[\"endedOn\"] : new Date(item[\"endedOn\"]),\n summary: !item[\"summary\"]\n ? item[\"summary\"]\n : validationSummaryItemArrayDeserializer(item[\"summary\"]),\n };\n}\n\n/** Mode used to perform the migration. */\nexport enum KnownMigrationMode {\n /** Offline migration mode. */\n Offline = \"Offline\",\n /** Online migration mode. */\n Online = \"Online\",\n}\n\n/**\n * Mode used to perform the migration. \\\n * {@link KnownMigrationMode} can be used interchangeably with MigrationMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Offline**: Offline migration mode. \\\n * **Online**: Online migration mode.\n */\nexport type MigrationMode = string;\n\n/** Supported option for a migration. */\nexport enum KnownMigrationOption {\n /** Validate the migration without performing it. */\n Validate = \"Validate\",\n /** Perform the migration. */\n Migrate = \"Migrate\",\n /** Validate and perform the migration. */\n ValidateAndMigrate = \"ValidateAndMigrate\",\n}\n\n/**\n * Supported option for a migration. \\\n * {@link KnownMigrationOption} can be used interchangeably with MigrationOption,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Validate**: Validate the migration without performing it. \\\n * **Migrate**: Perform the migration. \\\n * **ValidateAndMigrate**: Validate and perform the migration.\n */\nexport type MigrationOption = string;\n\n/** Source server type used for the migration. */\nexport enum KnownSourceType {\n /** On-premises PostgreSQL server. */\n OnPremises = \"OnPremises\",\n /** Amazon Web Services PostgreSQL server. */\n AWS = \"AWS\",\n /** Google Cloud Platform PostgreSQL server. */\n GCP = \"GCP\",\n /** Azure Virtual Machine PostgreSQL server. */\n AzureVM = \"AzureVM\",\n /** Azure Database for PostgreSQL single server. */\n PostgreSQLSingleServer = \"PostgreSQLSingleServer\",\n /** Amazon RDS for PostgreSQL. */\n AWSRDS = \"AWS_RDS\",\n /** Amazon Aurora for PostgreSQL. */\n AWSAurora = \"AWS_AURORA\",\n /** Amazon EC2 for PostgreSQL. */\n AWSEC2 = \"AWS_EC2\",\n /** Google Cloud SQL for PostgreSQL. */\n GCPCloudSQL = \"GCP_CloudSQL\",\n /** Google Cloud AlloyDB for PostgreSQL. */\n GCPAlloyDB = \"GCP_AlloyDB\",\n /** Google Compute Engine for PostgreSQL. */\n GCPCompute = \"GCP_Compute\",\n /** EnterpriseDB PostgreSQL server. */\n EDB = \"EDB\",\n /** EnterpriseDB Oracle Server. */\n EDBOracleServer = \"EDB_Oracle_Server\",\n /** EnterpriseDB PostgreSQL server. */\n EDBPostgreSQL = \"EDB_PostgreSQL\",\n /** Azure Database for PostgreSQL flexible server. */\n PostgreSQLFlexibleServer = \"PostgreSQLFlexibleServer\",\n /** .NET Cosmos DB for PostgreSQL */\n PostgreSQLCosmosDB = \"PostgreSQLCosmosDB\",\n /** Huawei RDS for PostgreSQL */\n HuaweiRDS = \"Huawei_RDS\",\n /** Huawei Compute for PostgreSQL */\n HuaweiCompute = \"Huawei_Compute\",\n /** Heroku PostgreSQL */\n HerokuPostgreSQL = \"Heroku_PostgreSQL\",\n /** Crunchy PostgreSQL */\n CrunchyPostgreSQL = \"Crunchy_PostgreSQL\",\n /** ApsaraDB RDS for PostgreSQL */\n ApsaraDBRDS = \"ApsaraDB_RDS\",\n /** Digital Ocean Droplets for PostgreSQL */\n DigitalOceanDroplets = \"Digital_Ocean_Droplets\",\n /** Digital Ocean PostgreSQL */\n DigitalOceanPostgreSQL = \"Digital_Ocean_PostgreSQL\",\n /** Supabase PostgreSQL */\n SupabasePostgreSQL = \"Supabase_PostgreSQL\",\n}\n\n/**\n * Source server type used for the migration. \\\n * {@link KnownSourceType} can be used interchangeably with SourceType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **OnPremises**: On-premises PostgreSQL server. \\\n * **AWS**: Amazon Web Services PostgreSQL server. \\\n * **GCP**: Google Cloud Platform PostgreSQL server. \\\n * **AzureVM**: Azure Virtual Machine PostgreSQL server. \\\n * **PostgreSQLSingleServer**: Azure Database for PostgreSQL single server. \\\n * **AWS_RDS**: Amazon RDS for PostgreSQL. \\\n * **AWS_AURORA**: Amazon Aurora for PostgreSQL. \\\n * **AWS_EC2**: Amazon EC2 for PostgreSQL. \\\n * **GCP_CloudSQL**: Google Cloud SQL for PostgreSQL. \\\n * **GCP_AlloyDB**: Google Cloud AlloyDB for PostgreSQL. \\\n * **GCP_Compute**: Google Compute Engine for PostgreSQL. \\\n * **EDB**: EnterpriseDB PostgreSQL server. \\\n * **EDB_Oracle_Server**: EnterpriseDB Oracle Server. \\\n * **EDB_PostgreSQL**: EnterpriseDB PostgreSQL server. \\\n * **PostgreSQLFlexibleServer**: Azure Database for PostgreSQL flexible server. \\\n * **PostgreSQLCosmosDB**: .NET Cosmos DB for PostgreSQL \\\n * **Huawei_RDS**: Huawei RDS for PostgreSQL \\\n * **Huawei_Compute**: Huawei Compute for PostgreSQL \\\n * **Heroku_PostgreSQL**: Heroku PostgreSQL \\\n * **Crunchy_PostgreSQL**: Crunchy PostgreSQL \\\n * **ApsaraDB_RDS**: ApsaraDB RDS for PostgreSQL \\\n * **Digital_Ocean_Droplets**: Digital Ocean Droplets for PostgreSQL \\\n * **Digital_Ocean_PostgreSQL**: Digital Ocean PostgreSQL \\\n * **Supabase_PostgreSQL**: Supabase PostgreSQL\n */\nexport type SourceType = string;\n\n/** SSL mode used by a migration. Default SSL mode for 'PostgreSQLSingleServer' is 'VerifyFull'. Default SSL mode for other source types is 'Prefer'. */\nexport enum KnownSslMode {\n /** Prefer SSL connection. If the server does not support SSL, the connection will be established without SSL. */\n Prefer = \"Prefer\",\n /** Require SSL connection. If the server does not support SSL, the connection will fail. */\n Require = \"Require\",\n /** Require SSL connection and verify the server certificate against the CA certificate. */\n VerifyCA = \"VerifyCA\",\n /** Require SSL connection, verify the server certificate against the CA certificate, and verify that the server hostname matches the certificate. */\n VerifyFull = \"VerifyFull\",\n}\n\n/**\n * SSL mode used by a migration. Default SSL mode for 'PostgreSQLSingleServer' is 'VerifyFull'. Default SSL mode for other source types is 'Prefer'. \\\n * {@link KnownSslMode} can be used interchangeably with SslMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Prefer**: Prefer SSL connection. If the server does not support SSL, the connection will be established without SSL. \\\n * **Require**: Require SSL connection. If the server does not support SSL, the connection will fail. \\\n * **VerifyCA**: Require SSL connection and verify the server certificate against the CA certificate. \\\n * **VerifyFull**: Require SSL connection, verify the server certificate against the CA certificate, and verify that the server hostname matches the certificate.\n */\nexport type SslMode = string;\n\n/** Database server metadata. */\nexport interface DbServerMetadata {\n /** Location of database server. */\n readonly location?: string;\n /** Major version of PostgreSQL database engine. */\n version?: string;\n /** Storage size (in MB) for database server. */\n storageMb?: number;\n /** Compute tier and size of the database server. This object is empty for an Azure Database for PostgreSQL single server. */\n sku?: ServerSku;\n}\n\nexport function dbServerMetadataDeserializer(item: any): DbServerMetadata {\n return {\n location: item[\"location\"],\n version: item[\"version\"],\n storageMb: item[\"storageMb\"],\n sku: !item[\"sku\"] ? item[\"sku\"] : serverSkuDeserializer(item[\"sku\"]),\n };\n}\n\n/** Compute information of a server. */\nexport interface ServerSku {\n /** Compute tier and size of the database server. This object is empty for an Azure Database for PostgreSQL single server. */\n name?: string;\n /** Tier of the compute assigned to a server. */\n tier?: SkuTier;\n}\n\nexport function serverSkuDeserializer(item: any): ServerSku {\n return {\n name: item[\"name\"],\n tier: item[\"tier\"],\n };\n}\n\n/** Tier of the compute assigned to a server. */\nexport enum KnownSkuTier {\n /** Cost-effective tier for infrequent CPU usage, ideal for development and testing workloads with low performance requirements. */\n Burstable = \"Burstable\",\n /** Balanced compute and memory for most workloads, offering scalable performance and I/O throughput. */\n GeneralPurpose = \"GeneralPurpose\",\n /** High memory-to-core ratio for demanding workloads needing fast in-memory processing and high concurrency. */\n MemoryOptimized = \"MemoryOptimized\",\n}\n\n/**\n * Tier of the compute assigned to a server. \\\n * {@link KnownSkuTier} can be used interchangeably with SkuTier,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Burstable**: Cost-effective tier for infrequent CPU usage, ideal for development and testing workloads with low performance requirements. \\\n * **GeneralPurpose**: Balanced compute and memory for most workloads, offering scalable performance and I\\/O throughput. \\\n * **MemoryOptimized**: High memory-to-core ratio for demanding workloads needing fast in-memory processing and high concurrency.\n */\nexport type SkuTier = string;\n\n/** Migration secret parameters. */\nexport interface MigrationSecretParameters {\n /** Credentials of administrator users for source and target servers. */\n adminCredentials: AdminCredentials;\n /** Gets or sets the name of the user for the source server. This user doesn't need to be an administrator. */\n sourceServerUsername?: string;\n /** Gets or sets the name of the user for the target server. This user doesn't need to be an administrator. */\n targetServerUsername?: string;\n}\n\nexport function migrationSecretParametersSerializer(item: MigrationSecretParameters): any {\n return {\n adminCredentials: adminCredentialsSerializer(item[\"adminCredentials\"]),\n sourceServerUsername: item[\"sourceServerUsername\"],\n targetServerUsername: item[\"targetServerUsername\"],\n };\n}\n\nexport function migrationSecretParametersDeserializer(item: any): MigrationSecretParameters {\n return {\n adminCredentials: adminCredentialsDeserializer(item[\"adminCredentials\"]),\n sourceServerUsername: item[\"sourceServerUsername\"],\n targetServerUsername: item[\"targetServerUsername\"],\n };\n}\n\n/** Credentials of administrator users for source and target servers. */\nexport interface AdminCredentials {\n /** Password for the user of the source server. */\n sourceServerPassword: string;\n /** Password for the user of the target server. */\n targetServerPassword: string;\n}\n\nexport function adminCredentialsSerializer(item: AdminCredentials): any {\n return {\n sourceServerPassword: item[\"sourceServerPassword\"],\n targetServerPassword: item[\"targetServerPassword\"],\n };\n}\n\nexport function adminCredentialsDeserializer(item: any): AdminCredentials {\n return {\n sourceServerPassword: item[\"sourceServerPassword\"],\n targetServerPassword: item[\"targetServerPassword\"],\n };\n}\n\n/** Indicates whether to setup logical replication on source server, if needed. */\nexport enum KnownLogicalReplicationOnSourceServer {\n /** Logical replication will be set up on the source server. */\n True = \"True\",\n /** Logical replication will not be set up on the source server. */\n False = \"False\",\n}\n\n/**\n * Indicates whether to setup logical replication on source server, if needed. \\\n * {@link KnownLogicalReplicationOnSourceServer} can be used interchangeably with LogicalReplicationOnSourceServer,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **True**: Logical replication will be set up on the source server. \\\n * **False**: Logical replication will not be set up on the source server.\n */\nexport type LogicalReplicationOnSourceServer = string;\n\n/** Indicates if databases on the target server can be overwritten when already present. */\nexport enum KnownOverwriteDatabasesOnTargetServer {\n /** Databases on the target server can be overwritten when already present. */\n True = \"True\",\n /** Databases on the target server cannot be overwritten when already present. When the migration workflow detects that the database already exists on the target server, it will wait for a confirmation. */\n False = \"False\",\n}\n\n/**\n * Indicates if databases on the target server can be overwritten when already present. \\\n * {@link KnownOverwriteDatabasesOnTargetServer} can be used interchangeably with OverwriteDatabasesOnTargetServer,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **True**: Databases on the target server can be overwritten when already present. \\\n * **False**: Databases on the target server cannot be overwritten when already present. When the migration workflow detects that the database already exists on the target server, it will wait for a confirmation.\n */\nexport type OverwriteDatabasesOnTargetServer = string;\n\n/** Indicates if roles and permissions must be migrated. */\nexport enum KnownMigrateRolesAndPermissions {\n /** Roles and permissions will be migrated. */\n True = \"True\",\n /** Roles and permissions will not be migrated. */\n False = \"False\",\n}\n\n/**\n * Indicates if roles and permissions must be migrated. \\\n * {@link KnownMigrateRolesAndPermissions} can be used interchangeably with MigrateRolesAndPermissions,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **True**: Roles and permissions will be migrated. \\\n * **False**: Roles and permissions will not be migrated.\n */\nexport type MigrateRolesAndPermissions = string;\n\n/** Indicates if data migration must start right away. */\nexport enum KnownStartDataMigration {\n /** Data migration must start right away. */\n True = \"True\",\n /** Data migration must not start right away. */\n False = \"False\",\n}\n\n/**\n * Indicates if data migration must start right away. \\\n * {@link KnownStartDataMigration} can be used interchangeably with StartDataMigration,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **True**: Data migration must start right away. \\\n * **False**: Data migration must not start right away.\n */\nexport type StartDataMigration = string;\n\n/** Indicates if cutover must be triggered for the entire migration. */\nexport enum KnownTriggerCutover {\n /** Cutover must be triggered for the entire migration. */\n True = \"True\",\n /** Cutover must not be triggered for the entire migration. */\n False = \"False\",\n}\n\n/**\n * Indicates if cutover must be triggered for the entire migration. \\\n * {@link KnownTriggerCutover} can be used interchangeably with TriggerCutover,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **True**: Cutover must be triggered for the entire migration. \\\n * **False**: Cutover must not be triggered for the entire migration.\n */\nexport type TriggerCutover = string;\n\n/** Indicates if cancel must be triggered for the entire migration. */\nexport enum KnownCancel {\n /** Cancel must be triggered for the entire migration. */\n True = \"True\",\n /** Cancel must not be triggered for the entire migration. */\n False = \"False\",\n}\n\n/**\n * Indicates if cancel must be triggered for the entire migration. \\\n * {@link KnownCancel} can be used interchangeably with Cancel,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **True**: Cancel must be triggered for the entire migration. \\\n * **False**: Cancel must not be triggered for the entire migration.\n */\nexport type Cancel = 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/** Migration. */\nexport interface MigrationResourceForPatch {\n /** Application-specific metadata in the form of key-value pairs. */\n tags?: Record<string, string>;\n /** Identifier of the source database server resource, when 'sourceType' is 'PostgreSQLSingleServer'. For other source types this must be set to ipaddress:port@username or hostname:port@username. */\n sourceDbServerResourceId?: string;\n /** Fully qualified domain name (FQDN) or IP address of the source server. This property is optional. When provided, the migration service will always use it to connect to the source server. */\n sourceDbServerFullyQualifiedDomainName?: string;\n /** Fully qualified domain name (FQDN) or IP address of the target server. This property is optional. When provided, the migration service will always use it to connect to the target server. */\n targetDbServerFullyQualifiedDomainName?: string;\n /** Migration secret parameters. */\n secretParameters?: MigrationSecretParametersForPatch;\n /** Names of databases to migrate. */\n dbsToMigrate?: string[];\n /** Indicates whether to setup logical replication on source server, if needed. */\n setupLogicalReplicationOnSourceDbIfNeeded?: LogicalReplicationOnSourceServer;\n /** Indicates if databases on the target server can be overwritten when already present. If set to 'False', when the migration workflow detects that the database already exists on the target server, it will wait for a confirmation. */\n overwriteDbsInTarget?: OverwriteDatabasesOnTargetServer;\n /** Start time (UTC) for migration window. */\n migrationWindowStartTimeInUtc?: Date;\n /** Indicates if roles and permissions must be migrated. */\n migrateRoles?: MigrateRolesAndPermissions;\n /** Indicates if data migration must start right away. */\n startDataMigration?: StartDataMigration;\n /** Indicates if cutover must be triggered for the entire migration. */\n triggerCutover?: TriggerCutover;\n /** When you want to trigger cutover for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array. */\n dbsToTriggerCutoverOn?: string[];\n /** Indicates if cancel must be triggered for the entire migration. */\n cancel?: Cancel;\n /** When you want to trigger cancel for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array. */\n dbsToCancelMigrationOn?: string[];\n /** Mode used to perform the migration: Online or Offline. */\n migrationMode?: MigrationMode;\n}\n\nexport function migrationResourceForPatchSerializer(item: MigrationResourceForPatch): any {\n return {\n properties: areAllPropsUndefined(item, [\n \"sourceDbServerResourceId\",\n \"sourceDbServerFullyQualifiedDomainName\",\n \"targetDbServerFullyQualifiedDomainName\",\n \"secretParameters\",\n \"dbsToMigrate\",\n \"setupLogicalReplicationOnSourceDbIfNeeded\",\n \"overwriteDbsInTarget\",\n \"migrationWindowStartTimeInUtc\",\n \"migrateRoles\",\n \"startDataMigration\",\n \"triggerCutover\",\n \"dbsToTriggerCutoverOn\",\n \"cancel\",\n \"dbsToCancelMigrationOn\",\n \"migrationMode\",\n ])\n ? undefined\n : _migrationResourceForPatchPropertiesSerializer(item),\n tags: item[\"tags\"],\n };\n}\n\n/** Migration properties. */\nexport interface MigrationPropertiesForPatch {\n /** Identifier of the source database server resource, when 'sourceType' is 'PostgreSQLSingleServer'. For other source types this must be set to ipaddress:port@username or hostname:port@username. */\n sourceDbServerResourceId?: string;\n /** Fully qualified domain name (FQDN) or IP address of the source server. This property is optional. When provided, the migration service will always use it to connect to the source server. */\n sourceDbServerFullyQualifiedDomainName?: string;\n /** Fully qualified domain name (FQDN) or IP address of the target server. This property is optional. When provided, the migration service will always use it to connect to the target server. */\n targetDbServerFullyQualifiedDomainName?: string;\n /** Migration secret parameters. */\n secretParameters?: MigrationSecretParametersForPatch;\n /** Names of databases to migrate. */\n dbsToMigrate?: string[];\n /** Indicates whether to setup logical replication on source server, if needed. */\n setupLogicalReplicationOnSourceDbIfNeeded?: LogicalReplicationOnSourceServer;\n /** Indicates if databases on the target server can be overwritten when already present. If set to 'False', when the migration workflow detects that the database already exists on the target server, it will wait for a confirmation. */\n overwriteDbsInTarget?: OverwriteDatabasesOnTargetServer;\n /** Start time (UTC) for migration window. */\n migrationWindowStartTimeInUtc?: Date;\n /** Indicates if roles and permissions must be migrated. */\n migrateRoles?: MigrateRolesAndPermissions;\n /** Indicates if data migration must start right away. */\n startDataMigration?: StartDataMigration;\n /** Indicates if cutover must be triggered for the entire migration. */\n triggerCutover?: TriggerCutover;\n /** When you want to trigger cutover for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array. */\n dbsToTriggerCutoverOn?: string[];\n /** Indicates if cancel must be triggered for the entire migration. */\n cancel?: Cancel;\n /** When you want to trigger cancel for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array. */\n dbsToCancelMigrationOn?: string[];\n /** Mode used to perform the migration: Online or Offline. */\n migrationMode?: MigrationMode;\n}\n\nexport function migrationPropertiesForPatchSerializer(item: MigrationPropertiesForPatch): any {\n return {\n sourceDbServerResourceId: item[\"sourceDbServerResourceId\"],\n sourceDbServerFullyQualifiedDomainName: item[\"sourceDbServerFullyQualifiedDomainName\"],\n targetDbServerFullyQualifiedDomainName: item[\"targetDbServerFullyQualifiedDomainName\"],\n secretParameters: !item[\"secretParameters\"]\n ? item[\"secretParameters\"]\n : migrationSecretParametersForPatchSerializer(item[\"secretParameters\"]),\n dbsToMigrate: !item[\"dbsToMigrate\"]\n ? item[\"dbsToMigrate\"]\n : item[\"dbsToMigrate\"].map((p: any) => {\n return p;\n }),\n setupLogicalReplicationOnSourceDbIfNeeded: item[\"setupLogicalReplicationOnSourceDbIfNeeded\"],\n overwriteDbsInTarget: item[\"overwriteDbsInTarget\"],\n migrationWindowStartTimeInUtc: !item[\"migrationWindowStartTimeInUtc\"]\n ? item[\"migrationWindowStartTimeInUtc\"]\n : item[\"migrationWindowStartTimeInUtc\"].toISOString(),\n migrateRoles: item[\"migrateRoles\"],\n startDataMigration: item[\"startDataMigration\"],\n triggerCutover: item[\"triggerCutover\"],\n dbsToTriggerCutoverOn: !item[\"dbsToTriggerCutoverOn\"]\n ? item[\"dbsToTriggerCutoverOn\"]\n : item[\"dbsToTriggerCutoverOn\"].map((p: any) => {\n return p;\n }),\n cancel: item[\"cancel\"],\n dbsToCancelMigrationOn: !item[\"dbsToCancelMigrationOn\"]\n ? item[\"dbsToCancelMigrationOn\"]\n : item[\"dbsToCancelMigrationOn\"].map((p: any) => {\n return p;\n }),\n migrationMode: item[\"migrationMode\"],\n };\n}\n\n/** Migration secret parameters. */\nexport interface MigrationSecretParametersForPatch {\n /** Credentials of administrator users for source and target servers. */\n adminCredentials?: AdminCredentialsForPatch;\n /** Gets or sets the name of the user for the source server. This user doesn't need to be an administrator. */\n sourceServerUsername?: string;\n /** Gets or sets the name of the user for the target server. This user doesn't need to be an administrator. */\n targetServerUsername?: string;\n}\n\nexport function migrationSecretParametersForPatchSerializer(\n item: MigrationSecretParametersForPatch,\n): any {\n return {\n adminCredentials: !item[\"adminCredentials\"]\n ? item[\"adminCredentials\"]\n : adminCredentialsForPatchSerializer(item[\"adminCredentials\"]),\n sourceServerUsername: item[\"sourceServerUsername\"],\n targetServerUsername: item[\"targetServerUsername\"],\n };\n}\n\n/** Credentials of administrator users for source and target servers. */\nexport interface AdminCredentialsForPatch {\n /** Password for the user of the source server. */\n sourceServerPassword?: string;\n /** Password for the user of the target server. */\n targetServerPassword?: string;\n}\n\nexport function adminCredentialsForPatchSerializer(item: AdminCredentialsForPatch): any {\n return {\n sourceServerPassword: item[\"sourceServerPassword\"],\n targetServerPassword: item[\"targetServerPassword\"],\n };\n}\n\n/** List of migrations. */\nexport interface _MigrationList {\n /** The Migration items on this page */\n readonly value: Migration[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _migrationListDeserializer(item: any): _MigrationList {\n return {\n value: migrationArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function migrationArraySerializer(result: Array<Migration>): any[] {\n return result.map((item) => {\n return migrationSerializer(item);\n });\n}\n\nexport function migrationArrayDeserializer(result: Array<Migration>): any[] {\n return result.map((item) => {\n return migrationDeserializer(item);\n });\n}\n\n/** Availability of a migration name. */\nexport interface MigrationNameAvailability {\n /** Name of the migration to check for validity and availability. */\n name: string;\n /** Type of resource. */\n type: string;\n /** Indicates if the migration name is available. */\n readonly nameAvailable?: boolean;\n /** Migration name availability reason. */\n readonly reason?: MigrationNameAvailabilityReason;\n /** Migration name availability message. */\n readonly message?: string;\n}\n\nexport function migrationNameAvailabilitySerializer(item: MigrationNameAvailability): any {\n return { name: item[\"name\"], type: item[\"type\"] };\n}\n\nexport function migrationNameAvailabilityDeserializer(item: any): MigrationNameAvailability {\n return {\n name: item[\"name\"],\n type: item[\"type\"],\n nameAvailable: item[\"nameAvailable\"],\n reason: item[\"reason\"],\n message: item[\"message\"],\n };\n}\n\n/** Migration name availability reason. */\nexport enum KnownMigrationNameAvailabilityReason {\n /** Migration name is invalid. */\n Invalid = \"Invalid\",\n /** Migration name already exists. */\n AlreadyExists = \"AlreadyExists\",\n}\n\n/**\n * Migration name availability reason. \\\n * {@link KnownMigrationNameAvailabilityReason} can be used interchangeably with MigrationNameAvailabilityReason,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Invalid**: Migration name is invalid. \\\n * **AlreadyExists**: Migration name already exists.\n */\nexport type MigrationNameAvailabilityReason = string;\n\n/** Properties of a server. */\nexport interface Server extends TrackedResource {\n /** Compute tier and size of a server. */\n sku?: Sku;\n /** User assigned managed identities assigned to the server. */\n identity?: UserAssignedIdentity;\n /** Name of the login designated as the first password based administrator assigned to your instance of PostgreSQL. Must be specified the first time that you enable password based authentication on a server. Once set to a given value, it cannot be changed for the rest of the life of a server. If you disable password based authentication on a server which had it enabled, this password based role isn't deleted. */\n administratorLogin?: string;\n /** Password assigned to the administrator login. As long as password authentication is enabled, this password can be changed at any time. */\n administratorLoginPassword?: string;\n /** Major version of PostgreSQL database engine. */\n version?: PostgresMajorVersion;\n /** Minor version of PostgreSQL database engine. */\n readonly minorVersion?: string;\n /** Possible states of a server. */\n readonly state?: ServerState;\n /** Fully qualified domain name of a server. */\n readonly fullyQualifiedDomainName?: string;\n /** Storage properties of a server. */\n storage?: Storage;\n /** Authentication configuration properties of a server. */\n authConfig?: AuthConfig;\n /** Data encryption properties of a server. */\n dataEncryption?: DataEncryption;\n /** Backup properties of a server. */\n backup?: Backup;\n /** Network properties of a server. Only required if you want your server to be integrated into a virtual network provided by customer. */\n network?: Network;\n /** High availability properties of a server. */\n highAvailability?: HighAvailability;\n /** Maintenance window properties of a server. */\n maintenanceWindow?: MaintenanceWindow;\n /** Identifier of the server to be used as the source of the new server. Required when 'createMode' is 'PointInTimeRestore', 'GeoRestore', 'Replica', or 'ReviveDropped'. This property is returned only when the target server is a read replica. */\n sourceServerResourceId?: string;\n /** Creation time (in ISO8601 format) of the backup which you want to restore in the new server. It's required when 'createMode' is 'PointInTimeRestore', 'GeoRestore', or 'ReviveDropped'. */\n pointInTimeUTC?: Date;\n /** Availability zone of a server. */\n availabilityZone?: string;\n /** Role of the server in a replication set. */\n replicationRole?: ReplicationRole;\n /** Maximum number of read replicas allowed for a server. */\n readonly replicaCapacity?: number;\n /** Read replica properties of a server. Required only in case that you want to promote a server. */\n replica?: Replica;\n /** Creation mode of a new server. */\n createMode?: CreateMode;\n /** List of private endpoint connections associated with the specified server. */\n readonly privateEndpointConnections?: PrivateEndpointConnection[];\n /** Cluster properties of a server. */\n cluster?: Cluster;\n}\n\nexport function serverSerializer(item: Server): any {\n return {\n tags: item[\"tags\"],\n location: item[\"location\"],\n properties: areAllPropsUndefined(item, [\n \"administratorLogin\",\n \"administratorLoginPassword\",\n \"version\",\n \"storage\",\n \"authConfig\",\n \"dataEncryption\",\n \"backup\",\n \"network\",\n \"highAvailability\",\n \"maintenanceWindow\",\n \"sourceServerResourceId\",\n \"pointInTimeUTC\",\n \"availabilityZone\",\n \"replicationRole\",\n \"replica\",\n \"createMode\",\n \"cluster\",\n ])\n ? undefined\n : _serverPropertiesSerializer(item),\n sku: !item[\"sku\"] ? item[\"sku\"] : skuSerializer(item[\"sku\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : userAssignedIdentitySerializer(item[\"identity\"]),\n };\n}\n\nexport function serverDeserializer(item: any): Server {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _serverPropertiesDeserializer(item[\"properties\"])),\n sku: !item[\"sku\"] ? item[\"sku\"] : skuDeserializer(item[\"sku\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : userAssignedIdentityDeserializer(item[\"identity\"]),\n };\n}\n\n/** Properties of a server. */\nexport interface ServerProperties {\n /** Name of the login designated as the first password based administrator assigned to your instance of PostgreSQL. Must be specified the first time that you enable password based authentication on a server. Once set to a given value, it cannot be changed for the rest of the life of a server. If you disable password based authentication on a server which had it enabled, this password based role isn't deleted. */\n administratorLogin?: string;\n /** Password assigned to the administrator login. As long as password authentication is enabled, this password can be changed at any time. */\n administratorLoginPassword?: string;\n /** Major version of PostgreSQL database engine. */\n version?: PostgresMajorVersion;\n /** Minor version of PostgreSQL database engine. */\n readonly minorVersion?: string;\n /** Possible states of a server. */\n readonly state?: ServerState;\n /** Fully qualified domain name of a server. */\n readonly fullyQualifiedDomainName?: string;\n /** Storage properties of a server. */\n storage?: Storage;\n /** Authentication configuration properties of a server. */\n authConfig?: AuthConfig;\n /** Data encryption properties of a server. */\n dataEncryption?: DataEncryption;\n /** Backup properties of a server. */\n backup?: Backup;\n /** Network properties of a server. Only required if you want your server to be integrated into a virtual network provided by customer. */\n network?: Network;\n /** High availability properties of a server. */\n highAvailability?: HighAvailability;\n /** Maintenance window properties of a server. */\n maintenanceWindow?: MaintenanceWindow;\n /** Identifier of the server to be used as the source of the new server. Required when 'createMode' is 'PointInTimeRestore', 'GeoRestore', 'Replica', or 'ReviveDropped'. This property is returned only when the target server is a read replica. */\n sourceServerResourceId?: string;\n /** Creation time (in ISO8601 format) of the backup which you want to restore in the new server. It's required when 'createMode' is 'PointInTimeRestore', 'GeoRestore', or 'ReviveDropped'. */\n pointInTimeUTC?: Date;\n /** Availability zone of a server. */\n availabilityZone?: string;\n /** Role of the server in a replication set. */\n replicationRole?: ReplicationRole;\n /** Maximum number of read replicas allowed for a server. */\n readonly replicaCapacity?: number;\n /** Read replica properties of a server. Required only in case that you want to promote a server. */\n replica?: Replica;\n /** Creation mode of a new server. */\n createMode?: CreateMode;\n /** List of private endpoint connections associated with the specified server. */\n readonly privateEndpointConnections?: PrivateEndpointConnection[];\n /** Cluster properties of a server. */\n cluster?: Cluster;\n}\n\nexport function serverPropertiesSerializer(item: ServerProperties): any {\n return {\n administratorLogin: item[\"administratorLogin\"],\n administratorLoginPassword: item[\"administratorLoginPassword\"],\n version: item[\"version\"],\n storage: !item[\"storage\"] ? item[\"storage\"] : storageSerializer(item[\"storage\"]),\n authConfig: !item[\"authConfig\"] ? item[\"authConfig\"] : authConfigSerializer(item[\"authConfig\"]),\n dataEncryption: !item[\"dataEncryption\"]\n ? item[\"dataEncryption\"]\n : dataEncryptionSerializer(item[\"dataEncryption\"]),\n backup: !item[\"backup\"] ? item[\"backup\"] : backupSerializer(item[\"backup\"]),\n network: !item[\"network\"] ? item[\"network\"] : networkSerializer(item[\"network\"]),\n highAvailability: !item[\"highAvailability\"]\n ? item[\"highAvailability\"]\n : highAvailabilitySerializer(item[\"highAvailability\"]),\n maintenanceWindow: !item[\"maintenanceWindow\"]\n ? item[\"maintenanceWindow\"]\n : maintenanceWindowSerializer(item[\"maintenanceWindow\"]),\n sourceServerResourceId: item[\"sourceServerResourceId\"],\n pointInTimeUTC: !item[\"pointInTimeUTC\"]\n ? item[\"pointInTimeUTC\"]\n : item[\"pointInTimeUTC\"].toISOString(),\n availabilityZone: item[\"availabilityZone\"],\n replicationRole: item[\"replicationRole\"],\n replica: !item[\"replica\"] ? item[\"replica\"] : replicaSerializer(item[\"replica\"]),\n createMode: item[\"createMode\"],\n cluster: !item[\"cluster\"] ? item[\"cluster\"] : clusterSerializer(item[\"cluster\"]),\n };\n}\n\nexport function serverPropertiesDeserializer(item: any): ServerProperties {\n return {\n administratorLogin: item[\"administratorLogin\"],\n administratorLoginPassword: item[\"administratorLoginPassword\"],\n version: item[\"version\"],\n minorVersion: item[\"minorVersion\"],\n state: item[\"state\"],\n fullyQualifiedDomainName: item[\"fullyQualifiedDomainName\"],\n storage: !item[\"storage\"] ? item[\"storage\"] : storageDeserializer(item[\"storage\"]),\n authConfig: !item[\"authConfig\"]\n ? item[\"authConfig\"]\n : authConfigDeserializer(item[\"authConfig\"]),\n dataEncryption: !item[\"dataEncryption\"]\n ? item[\"dataEncryption\"]\n : dataEncryptionDeserializer(item[\"dataEncryption\"]),\n backup: !item[\"backup\"] ? item[\"backup\"] : backupDeserializer(item[\"backup\"]),\n network: !item[\"network\"] ? item[\"network\"] : networkDeserializer(item[\"network\"]),\n highAvailability: !item[\"highAvailability\"]\n ? item[\"highAvailability\"]\n : highAvailabilityDeserializer(item[\"highAvailability\"]),\n maintenanceWindow: !item[\"maintenanceWindow\"]\n ? item[\"maintenanceWindow\"]\n : maintenanceWindowDeserializer(item[\"maintenanceWindow\"]),\n sourceServerResourceId: item[\"sourceServerResourceId\"],\n pointInTimeUTC: !item[\"pointInTimeUTC\"]\n ? item[\"pointInTimeUTC\"]\n : new Date(item[\"pointInTimeUTC\"]),\n availabilityZone: item[\"availabilityZone\"],\n replicationRole: item[\"replicationRole\"],\n replicaCapacity: item[\"replicaCapacity\"],\n replica: !item[\"replica\"] ? item[\"replica\"] : replicaDeserializer(item[\"replica\"]),\n createMode: item[\"createMode\"],\n privateEndpointConnections: !item[\"privateEndpointConnections\"]\n ? item[\"privateEndpointConnections\"]\n : privateEndpointConnectionArrayDeserializer(item[\"privateEndpointConnections\"]),\n cluster: !item[\"cluster\"] ? item[\"cluster\"] : clusterDeserializer(item[\"cluster\"]),\n };\n}\n\n/** Major version of PostgreSQL database engine. */\nexport enum KnownPostgresMajorVersion {\n /** PostgreSQL 18. */\n Eighteen = \"18\",\n /** PostgreSQL 17. */\n Seventeen = \"17\",\n /** PostgreSQL 16. */\n Sixteen = \"16\",\n /** PostgreSQL 15. */\n Fifteen = \"15\",\n /** PostgreSQL 14. */\n Fourteen = \"14\",\n /** PostgreSQL 13. */\n Thirteen = \"13\",\n /** PostgreSQL 12. */\n Twelve = \"12\",\n /** PostgreSQL 11. */\n Eleven = \"11\",\n}\n\n/**\n * Major version of PostgreSQL database engine. \\\n * {@link KnownPostgresMajorVersion} can be used interchangeably with PostgresMajorVersion,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **18**: PostgreSQL 18. \\\n * **17**: PostgreSQL 17. \\\n * **16**: PostgreSQL 16. \\\n * **15**: PostgreSQL 15. \\\n * **14**: PostgreSQL 14. \\\n * **13**: PostgreSQL 13. \\\n * **12**: PostgreSQL 12. \\\n * **11**: PostgreSQL 11.\n */\nexport type PostgresMajorVersion = string;\n\n/** State of a server. */\nexport enum KnownServerState {\n /** Server is healthy and not undergoing any operations at the management or control plane level. This doesn't mean that the server is fully operational at the data plane level. */\n Ready = \"Ready\",\n /** Server is being deleted. */\n Dropping = \"Dropping\",\n /** Server is disabled. Typical reasons include: the subscription on which the server is deployed is explicitly disabled or canceled by the administrator, the spending limit has been reached, or the bill is past due. May also happen when the server is being moved to another resource group or subscription. */\n Disabled = \"Disabled\",\n /** PostgreSQL database engine is being restarted. */\n Starting = \"Starting\",\n /** Compute resources associated with the server are being stopped and deallocated. If the server has high availability enabled, the compute resources of the standby server are also stopped and deallocated. */\n Stopping = \"Stopping\",\n /** Compute resources associated with the server are being stopped and deallocated. */\n Stopped = \"Stopped\",\n /** Server is undergoing some changes which may or may not impact the availability of the PostgreSQL database engine. For example, the compute resources of the server are being scaled up or down, which may cause temporary unavailability of the database engine. Or, for example, a firewall rule is being added or removed, which doesn't cause any unavailability of the database engine. */\n Updating = \"Updating\",\n /** PostgreSQL database engine is being restarted. */\n Restarting = \"Restarting\",\n /** Server isn't accessible, because the key provided to encrypt and decrypt the data is in invalid state. */\n Inaccessible = \"Inaccessible\",\n /** Server is in the process of being created. */\n Provisioning = \"Provisioning\",\n}\n\n/**\n * State of a server. \\\n * {@link KnownServerState} can be used interchangeably with ServerState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Ready**: Server is healthy and not undergoing any operations at the management or control plane level. This doesn't mean that the server is fully operational at the data plane level. \\\n * **Dropping**: Server is being deleted. \\\n * **Disabled**: Server is disabled. Typical reasons include: the subscription on which the server is deployed is explicitly disabled or canceled by the administrator, the spending limit has been reached, or the bill is past due. May also happen when the server is being moved to another resource group or subscription. \\\n * **Starting**: PostgreSQL database engine is being restarted. \\\n * **Stopping**: Compute resources associated with the server are being stopped and deallocated. If the server has high availability enabled, the compute resources of the standby server are also stopped and deallocated. \\\n * **Stopped**: Compute resources associated with the server are being stopped and deallocated. \\\n * **Updating**: Server is undergoing some changes which may or may not impact the availability of the PostgreSQL database engine. For example, the compute resources of the server are being scaled up or down, which may cause temporary unavailability of the database engine. Or, for example, a firewall rule is being added or removed, which doesn't cause any unavailability of the database engine. \\\n * **Restarting**: PostgreSQL database engine is being restarted. \\\n * **Inaccessible**: Server isn't accessible, because the key provided to encrypt and decrypt the data is in invalid state. \\\n * **Provisioning**: Server is in the process of being created.\n */\nexport type ServerState = string;\n\n/** Storage properties of a server. */\nexport interface Storage {\n /** Size of storage assigned to a server. */\n storageSizeGB?: number;\n /** Flag to enable or disable the automatic growth of storage size of a server when available space is nearing zero and conditions allow for automatically growing storage size. */\n autoGrow?: StorageAutoGrow;\n /** Storage tier of a server. */\n tier?: AzureManagedDiskPerformanceTier;\n /** Maximum IOPS supported for storage. Required when type of storage is PremiumV2_LRS or UltraSSD_LRS. */\n iops?: number;\n /** Maximum throughput supported for storage. Required when type of storage is PremiumV2_LRS or UltraSSD_LRS. */\n throughput?: number;\n /** Type of storage assigned to a server. Allowed values are Premium_LRS, PremiumV2_LRS, or UltraSSD_LRS. If not specified, it defaults to Premium_LRS. */\n type?: StorageType;\n}\n\nexport function storageSerializer(item: Storage): any {\n return {\n storageSizeGB: item[\"storageSizeGB\"],\n autoGrow: item[\"autoGrow\"],\n tier: item[\"tier\"],\n iops: item[\"iops\"],\n throughput: item[\"throughput\"],\n type: item[\"type\"],\n };\n}\n\nexport function storageDeserializer(item: any): Storage {\n return {\n storageSizeGB: item[\"storageSizeGB\"],\n autoGrow: item[\"autoGrow\"],\n tier: item[\"tier\"],\n iops: item[\"iops\"],\n throughput: item[\"throughput\"],\n type: item[\"type\"],\n };\n}\n\n/** Indicates if the server is configured to automatically grow storage size when available space is nearing zero and conditions allow for automatic growing storage size. */\nexport enum KnownStorageAutoGrow {\n /** Server should automatically grow storage size when available space is nearing zero and conditions allow for automatically growing storage size. */\n Enabled = \"Enabled\",\n /** Server should not automatically grow storage size when available space is nearing zero. */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if the server is configured to automatically grow storage size when available space is nearing zero and conditions allow for automatic growing storage size. \\\n * {@link KnownStorageAutoGrow} can be used interchangeably with StorageAutoGrow,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: Server should automatically grow storage size when available space is nearing zero and conditions allow for automatically growing storage size. \\\n * **Disabled**: Server should not automatically grow storage size when available space is nearing zero.\n */\nexport type StorageAutoGrow = string;\n\n/** Storage tier of a server. */\nexport enum KnownAzureManagedDiskPerformanceTier {\n /** Entry-level SSD for minimal IOPS, ideal for light development or testing workloads. */\n P1 = \"P1\",\n /** Slightly higher IOPS for small-scale applications needing consistent low latency. */\n P2 = \"P2\",\n /** Balanced performance for basic production workloads with moderate throughput. */\n P3 = \"P3\",\n /** Enhanced IOPS for growing apps with predictable performance needs. */\n P4 = \"P4\",\n /** Mid-tier SSD for steady workloads requiring reliable throughput and latency. */\n P6 = \"P6\",\n /** Popular choice for general-purpose production workloads with scalable performance. */\n P10 = \"P10\",\n /** High IOPS tier for demanding apps with frequent read/write operations. */\n P15 = \"P15\",\n /** Entry point for high-performance Solid State Disks (SSDs), suitable for small-scale I/O-intensive workloads. */\n P20 = \"P20\",\n /** Balanced tier for moderate throughput and latency-sensitive applications. */\n P30 = \"P30\",\n /** Enhanced performance for growing production workloads with consistent IOPS demands. */\n P40 = \"P40\",\n /** Optimized for enterprise-grade applications needing sustained high throughput. */\n P50 = \"P50\",\n /** High-capacity tier for large databases and analytics workloads with elevated IOPS. */\n P60 = \"P60\",\n /** Designed for mission-critical systems requiring ultra-low latency and high concurrency. */\n P70 = \"P70\",\n /** Top-tier SSD for maximum IOPS and throughput, ideal for the most demanding workloads. */\n P80 = \"P80\",\n}\n\n/**\n * Storage tier of a server. \\\n * {@link KnownAzureManagedDiskPerformanceTier} can be used interchangeably with AzureManagedDiskPerformanceTier,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **P1**: Entry-level SSD for minimal IOPS, ideal for light development or testing workloads. \\\n * **P2**: Slightly higher IOPS for small-scale applications needing consistent low latency. \\\n * **P3**: Balanced performance for basic production workloads with moderate throughput. \\\n * **P4**: Enhanced IOPS for growing apps with predictable performance needs. \\\n * **P6**: Mid-tier SSD for steady workloads requiring reliable throughput and latency. \\\n * **P10**: Popular choice for general-purpose production workloads with scalable performance. \\\n * **P15**: High IOPS tier for demanding apps with frequent read\\/write operations. \\\n * **P20**: Entry point for high-performance Solid State Disks (SSDs), suitable for small-scale I\\/O-intensive workloads. \\\n * **P30**: Balanced tier for moderate throughput and latency-sensitive applications. \\\n * **P40**: Enhanced performance for growing production workloads with consistent IOPS demands. \\\n * **P50**: Optimized for enterprise-grade applications needing sustained high throughput. \\\n * **P60**: High-capacity tier for large databases and analytics workloads with elevated IOPS. \\\n * **P70**: Designed for mission-critical systems requiring ultra-low latency and high concurrency. \\\n * **P80**: Top-tier SSD for maximum IOPS and throughput, ideal for the most demanding workloads.\n */\nexport type AzureManagedDiskPerformanceTier = string;\n\n/** Type of storage assigned to a server. If not specified, it defaults to Premium_LRS. */\nexport enum KnownStorageType {\n /** Standard Solid State Disk (SSD) backed storage offering consistent performance for general purpose workloads. */\n PremiumLRS = \"Premium_LRS\",\n /** Next generation Solid State Disk (SSD) storage with improved scalability and performance for demanding enterprise workloads. */\n PremiumV2LRS = \"PremiumV2_LRS\",\n /** High-end Solid State Disk (SSD) storage designed for extreme IOPS and latency-sensitive applications. */\n UltraSSDLRS = \"UltraSSD_LRS\",\n}\n\n/**\n * Type of storage assigned to a server. If not specified, it defaults to Premium_LRS. \\\n * {@link KnownStorageType} can be used interchangeably with StorageType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Premium_LRS**: Standard Solid State Disk (SSD) backed storage offering consistent performance for general purpose workloads. \\\n * **PremiumV2_LRS**: Next generation Solid State Disk (SSD) storage with improved scalability and performance for demanding enterprise workloads. \\\n * **UltraSSD_LRS**: High-end Solid State Disk (SSD) storage designed for extreme IOPS and latency-sensitive applications.\n */\nexport type StorageType = string;\n\n/** Authentication configuration properties of a server. */\nexport interface AuthConfig {\n /** Indicates if the server supports Microsoft Entra authentication. */\n activeDirectoryAuth?: MicrosoftEntraAuth;\n /** Indicates if the server supports password based authentication. */\n passwordAuth?: PasswordBasedAuth;\n /** Identifier of the tenant of the delegated resource. */\n tenantId?: string;\n}\n\nexport function authConfigSerializer(item: AuthConfig): any {\n return {\n activeDirectoryAuth: item[\"activeDirectoryAuth\"],\n passwordAuth: item[\"passwordAuth\"],\n tenantId: item[\"tenantId\"],\n };\n}\n\nexport function authConfigDeserializer(item: any): AuthConfig {\n return {\n activeDirectoryAuth: item[\"activeDirectoryAuth\"],\n passwordAuth: item[\"passwordAuth\"],\n tenantId: item[\"tenantId\"],\n };\n}\n\n/** Indicates if the server supports Microsoft Entra authentication. */\nexport enum KnownMicrosoftEntraAuth {\n /** Server supports Microsoft Entra authentication. */\n Enabled = \"Enabled\",\n /** Server does not support Microsoft Entra authentication. */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if the server supports Microsoft Entra authentication. \\\n * {@link KnownMicrosoftEntraAuth} can be used interchangeably with MicrosoftEntraAuth,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: Server supports Microsoft Entra authentication. \\\n * **Disabled**: Server does not support Microsoft Entra authentication.\n */\nexport type MicrosoftEntraAuth = string;\n\n/** Indicates if the server supports password based authentication. */\nexport enum KnownPasswordBasedAuth {\n /** Server supports password based authentication. */\n Enabled = \"Enabled\",\n /** Server does not support password based authentication. */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if the server supports password based authentication. \\\n * {@link KnownPasswordBasedAuth} can be used interchangeably with PasswordBasedAuth,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: Server supports password based authentication. \\\n * **Disabled**: Server does not support password based authentication.\n */\nexport type PasswordBasedAuth = string;\n\n/** Data encryption properties of a server. */\nexport interface DataEncryption {\n /** URI of the key in Azure Key Vault used for data encryption of the primary storage associated to a server. */\n primaryKeyURI?: string;\n /** Identifier of the user assigned managed identity used to access the key in Azure Key Vault for data encryption of the primary storage associated to a server. */\n primaryUserAssignedIdentityId?: string;\n /** Identifier of the user assigned managed identity used to access the key in Azure Key Vault for data encryption of the geographically redundant storage associated to a server that is configured to support geographically redundant backups. */\n geoBackupKeyURI?: string;\n /** Identifier of the user assigned managed identity used to access the key in Azure Key Vault for data encryption of the geographically redundant storage associated to a server that is configured to support geographically redundant backups. */\n geoBackupUserAssignedIdentityId?: string;\n /** Data encryption type used by a server. */\n type?: DataEncryptionType;\n /** Status of key used by a server configured with data encryption based on customer managed key, to encrypt the primary storage associated to the server. */\n readonly primaryEncryptionKeyStatus?: EncryptionKeyStatus;\n /** Status of key used by a server configured with data encryption based on customer managed key, to encrypt the geographically redundant storage associated to the server when it is configured to support geographically redundant backups. */\n readonly geoBackupEncryptionKeyStatus?: EncryptionKeyStatus;\n /** Client id of multi-tenant Microsoft Entra application. */\n primaryFederatedIdentityClientId?: string;\n /** Client id of multi-tenant Microsoft Entra application for when it is configured to support geographically redundant backups. */\n geoBackupFederatedIdentityClientId?: string;\n}\n\nexport function dataEncryptionSerializer(item: DataEncryption): any {\n return {\n primaryKeyURI: item[\"primaryKeyURI\"],\n primaryUserAssignedIdentityId: item[\"primaryUserAssignedIdentityId\"],\n geoBackupKeyURI: item[\"geoBackupKeyURI\"],\n geoBackupUserAssignedIdentityId: item[\"geoBackupUserAssignedIdentityId\"],\n type: item[\"type\"],\n primaryFederatedIdentityClientId: item[\"primaryFederatedIdentityClientId\"],\n geoBackupFederatedIdentityClientId: item[\"geoBackupFederatedIdentityClientId\"],\n };\n}\n\nexport function dataEncryptionDeserializer(item: any): DataEncryption {\n return {\n primaryKeyURI: item[\"primaryKeyURI\"],\n primaryUserAssignedIdentityId: item[\"primaryUserAssignedIdentityId\"],\n geoBackupKeyURI: item[\"geoBackupKeyURI\"],\n geoBackupUserAssignedIdentityId: item[\"geoBackupUserAssignedIdentityId\"],\n type: item[\"type\"],\n primaryEncryptionKeyStatus: item[\"primaryEncryptionKeyStatus\"],\n geoBackupEncryptionKeyStatus: item[\"geoBackupEncryptionKeyStatus\"],\n primaryFederatedIdentityClientId: item[\"primaryFederatedIdentityClientId\"],\n geoBackupFederatedIdentityClientId: item[\"geoBackupFederatedIdentityClientId\"],\n };\n}\n\n/** Data encryption type used by a server. */\nexport enum KnownDataEncryptionType {\n /** Encryption managed by Azure using platform managed keys for simplicity and compliance. */\n SystemManaged = \"SystemManaged\",\n /** Encryption using customer managed keys stored in Azure Key Vault for enhanced control and security. */\n AzureKeyVault = \"AzureKeyVault\",\n}\n\n/**\n * Data encryption type used by a server. \\\n * {@link KnownDataEncryptionType} can be used interchangeably with DataEncryptionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **SystemManaged**: Encryption managed by Azure using platform managed keys for simplicity and compliance. \\\n * **AzureKeyVault**: Encryption using customer managed keys stored in Azure Key Vault for enhanced control and security.\n */\nexport type DataEncryptionType = string;\n\n/** Status of key used by a server configured with data encryption based on customer managed key, to encrypt the primary storage associated to the server. */\nexport enum KnownEncryptionKeyStatus {\n /** Key is valid and can be used for encryption. */\n Valid = \"Valid\",\n /** Key is invalid and cannot be used for encryption. Possible causes include key deletion, permission changes, key being disabled, key type not supported, or current date being outside of validity period associated to the key. */\n Invalid = \"Invalid\",\n}\n\n/**\n * Status of key used by a server configured with data encryption based on customer managed key, to encrypt the primary storage associated to the server. \\\n * {@link KnownEncryptionKeyStatus} can be used interchangeably with EncryptionKeyStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Valid**: Key is valid and can be used for encryption. \\\n * **Invalid**: Key is invalid and cannot be used for encryption. Possible causes include key deletion, permission changes, key being disabled, key type not supported, or current date being outside of validity period associated to the key.\n */\nexport type EncryptionKeyStatus = string;\n\n/** Backup properties of a server. */\nexport interface Backup {\n /** Backup retention days for the server. */\n backupRetentionDays?: number;\n /** Indicates if the server is configured to create geographically redundant backups. */\n geoRedundantBackup?: GeographicallyRedundantBackup;\n /** Earliest restore point time (ISO8601 format) for a server. */\n readonly earliestRestoreDate?: Date;\n}\n\nexport function backupSerializer(item: Backup): any {\n return {\n backupRetentionDays: item[\"backupRetentionDays\"],\n geoRedundantBackup: item[\"geoRedundantBackup\"],\n };\n}\n\nexport function backupDeserializer(item: any): Backup {\n return {\n backupRetentionDays: item[\"backupRetentionDays\"],\n geoRedundantBackup: item[\"geoRedundantBackup\"],\n earliestRestoreDate: !item[\"earliestRestoreDate\"]\n ? item[\"earliestRestoreDate\"]\n : new Date(item[\"earliestRestoreDate\"]),\n };\n}\n\n/** Indicates if the server is configured to create geographically redundant backups. */\nexport enum KnownGeographicallyRedundantBackup {\n /** Server is configured to create geographically redundant backups. */\n Enabled = \"Enabled\",\n /** Server is not configured to create geographically redundant backups. */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if the server is configured to create geographically redundant backups. \\\n * {@link KnownGeographicallyRedundantBackup} can be used interchangeably with GeographicallyRedundantBackup,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: Server is configured to create geographically redundant backups. \\\n * **Disabled**: Server is not configured to create geographically redundant backups.\n */\nexport type GeographicallyRedundantBackup = string;\n\n/** Network properties of a server. */\nexport interface Network {\n /** Indicates if public network access is enabled or not. This is only supported for servers that are not integrated into a virtual network which is owned and provided by customer when server is deployed. */\n publicNetworkAccess?: ServerPublicNetworkAccessState;\n /** Resource identifier of the delegated subnet. Required during creation of a new server, in case you want the server to be integrated into your own virtual network. For an update operation, you only have to provide this property if you want to change the value assigned for the private DNS zone. */\n delegatedSubnetResourceId?: string;\n /** Identifier of the private DNS zone. Required during creation of a new server, in case you want the server to be integrated into your own virtual network. For an update operation, you only have to provide this property if you want to change the value assigned for the private DNS zone. */\n privateDnsZoneArmResourceId?: string;\n}\n\nexport function networkSerializer(item: Network): any {\n return {\n publicNetworkAccess: item[\"publicNetworkAccess\"],\n delegatedSubnetResourceId: item[\"delegatedSubnetResourceId\"],\n privateDnsZoneArmResourceId: item[\"privateDnsZoneArmResourceId\"],\n };\n}\n\nexport function networkDeserializer(item: any): Network {\n return {\n publicNetworkAccess: item[\"publicNetworkAccess\"],\n delegatedSubnetResourceId: item[\"delegatedSubnetResourceId\"],\n privateDnsZoneArmResourceId: item[\"privateDnsZoneArmResourceId\"],\n };\n}\n\n/** Indicates if public network access is enabled or not. */\nexport enum KnownServerPublicNetworkAccessState {\n /** Public network access is enabled. This allows the server to be accessed from the public internet, provided the necessary firewall rule that allows incoming traffic originating from the connecting client is in place. This is compatible with the use of private endpoints to connect to this server. */\n Enabled = \"Enabled\",\n /** Public network access is disabled. This means the server cannot be accessed from the public internet, but only via private endpoints. */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if public network access is enabled or not. \\\n * {@link KnownServerPublicNetworkAccessState} can be used interchangeably with ServerPublicNetworkAccessState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: Public network access is enabled. This allows the server to be accessed from the public internet, provided the necessary firewall rule that allows incoming traffic originating from the connecting client is in place. This is compatible with the use of private endpoints to connect to this server. \\\n * **Disabled**: Public network access is disabled. This means the server cannot be accessed from the public internet, but only via private endpoints.\n */\nexport type ServerPublicNetworkAccessState = string;\n\n/** High availability properties of a server. */\nexport interface HighAvailability {\n /** High availability mode for a server. */\n mode?: PostgreSqlFlexibleServerHighAvailabilityMode;\n /** Possible states of the standby server created when high availability is set to SameZone or ZoneRedundant. */\n readonly state?: HighAvailabilityState;\n /** Availability zone associated to the standby server created when high availability is set to SameZone or ZoneRedundant. */\n standbyAvailabilityZone?: string;\n}\n\nexport function highAvailabilitySerializer(item: HighAvailability): any {\n return { mode: item[\"mode\"], standbyAvailabilityZone: item[\"standbyAvailabilityZone\"] };\n}\n\nexport function highAvailabilityDeserializer(item: any): HighAvailability {\n return {\n mode: item[\"mode\"],\n state: item[\"state\"],\n standbyAvailabilityZone: item[\"standbyAvailabilityZone\"],\n };\n}\n\n/** Mode of high availability supported for this compute. */\nexport enum KnownPostgreSqlFlexibleServerHighAvailabilityMode {\n /** High availability is disabled for the server. */\n Disabled = \"Disabled\",\n /** High availability is enabled for the server, with standby server in a different availability zone than that of the primary. */\n ZoneRedundant = \"ZoneRedundant\",\n /** High availability is enabled for the server, with standby server in the same availability zone as the primary. */\n SameZone = \"SameZone\",\n}\n\n/**\n * Mode of high availability supported for this compute. \\\n * {@link KnownPostgreSqlFlexibleServerHighAvailabilityMode} can be used interchangeably with PostgreSqlFlexibleServerHighAvailabilityMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Disabled**: High availability is disabled for the server. \\\n * **ZoneRedundant**: High availability is enabled for the server, with standby server in a different availability zone than that of the primary. \\\n * **SameZone**: High availability is enabled for the server, with standby server in the same availability zone as the primary.\n */\nexport type PostgreSqlFlexibleServerHighAvailabilityMode = string;\n\n/** Possible states of the standby server created when high availability is set to SameZone or ZoneRedundant. */\nexport enum KnownHighAvailabilityState {\n /** High availability is not enabled for the server. */\n NotEnabled = \"NotEnabled\",\n /** Standby server is being created. */\n CreatingStandby = \"CreatingStandby\",\n /** Data is being replicated to the standby server. */\n ReplicatingData = \"ReplicatingData\",\n /** Failover operation to the standby server is in progress. */\n FailingOver = \"FailingOver\",\n /** Standby server is healthy and ready to take over in case of a failover. */\n Healthy = \"Healthy\",\n /** Standby server is being removed. */\n RemovingStandby = \"RemovingStandby\",\n /** Standby server is being recreated. */\n RecreatingStandby = \"RecreatingStandby\",\n /** Compute is being updated due to a failover. */\n ComputeUpdatingByFailover = \"ComputeUpdatingByFailover\",\n}\n\n/**\n * Possible states of the standby server created when high availability is set to SameZone or ZoneRedundant. \\\n * {@link KnownHighAvailabilityState} can be used interchangeably with HighAvailabilityState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **NotEnabled**: High availability is not enabled for the server. \\\n * **CreatingStandby**: Standby server is being created. \\\n * **ReplicatingData**: Data is being replicated to the standby server. \\\n * **FailingOver**: Failover operation to the standby server is in progress. \\\n * **Healthy**: Standby server is healthy and ready to take over in case of a failover. \\\n * **RemovingStandby**: Standby server is being removed. \\\n * **RecreatingStandby**: Standby server is being recreated. \\\n * **ComputeUpdatingByFailover**: Compute is being updated due to a failover.\n */\nexport type HighAvailabilityState = string;\n\n/** Maintenance window properties of a server. */\nexport interface MaintenanceWindow {\n /** Indicates whether custom window is enabled or disabled. */\n customWindow?: string;\n /** Start hour to be used for maintenance window. */\n startHour?: number;\n /** Start minute to be used for maintenance window. */\n startMinute?: number;\n /** Day of the week to be used for maintenance window. */\n dayOfWeek?: number;\n}\n\nexport function maintenanceWindowSerializer(item: MaintenanceWindow): any {\n return {\n customWindow: item[\"customWindow\"],\n startHour: item[\"startHour\"],\n startMinute: item[\"startMinute\"],\n dayOfWeek: item[\"dayOfWeek\"],\n };\n}\n\nexport function maintenanceWindowDeserializer(item: any): MaintenanceWindow {\n return {\n customWindow: item[\"customWindow\"],\n startHour: item[\"startHour\"],\n startMinute: item[\"startMinute\"],\n dayOfWeek: item[\"dayOfWeek\"],\n };\n}\n\n/** Role of the server in a replication set. */\nexport enum KnownReplicationRole {\n /** No replication role assigned; the server operates independently. */\n None = \"None\",\n /** Acts as the source server for replication to one or more replicas. */\n Primary = \"Primary\",\n /** Receives data asynchronously from a primary server within the same region. */\n AsyncReplica = \"AsyncReplica\",\n /** Receives data asynchronously from a primary server in a different region for geographical redundancy. */\n GeoAsyncReplica = \"GeoAsyncReplica\",\n}\n\n/**\n * Role of the server in a replication set. \\\n * {@link KnownReplicationRole} can be used interchangeably with ReplicationRole,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **None**: No replication role assigned; the server operates independently. \\\n * **Primary**: Acts as the source server for replication to one or more replicas. \\\n * **AsyncReplica**: Receives data asynchronously from a primary server within the same region. \\\n * **GeoAsyncReplica**: Receives data asynchronously from a primary server in a different region for geographical redundancy.\n */\nexport type ReplicationRole = string;\n\n/** Replica properties of a server. */\nexport interface Replica {\n /** Role of the server in a replication set. */\n role?: ReplicationRole;\n /** Maximum number of read replicas allowed for a server. */\n readonly capacity?: number;\n /** Indicates the replication state of a read replica. This property is returned only when the target server is a read replica. Possible values are Active, Broken, Catchup, Provisioning, Reconfiguring, and Updating */\n readonly replicationState?: ReplicationState;\n /** Type of operation to apply on the read replica. This property is write only. Standalone means that the read replica will be promoted to a standalone server, and will become a completely independent entity from the replication set. Switchover means that the read replica will roles with the primary server. */\n promoteMode?: ReadReplicaPromoteMode;\n /** Data synchronization option to use when processing the operation specified in the promoteMode property. This property is write only. */\n promoteOption?: ReadReplicaPromoteOption;\n}\n\nexport function replicaSerializer(item: Replica): any {\n return {\n role: item[\"role\"],\n promoteMode: item[\"promoteMode\"],\n promoteOption: item[\"promoteOption\"],\n };\n}\n\nexport function replicaDeserializer(item: any): Replica {\n return {\n role: item[\"role\"],\n capacity: item[\"capacity\"],\n replicationState: item[\"replicationState\"],\n promoteMode: item[\"promoteMode\"],\n promoteOption: item[\"promoteOption\"],\n };\n}\n\n/** Indicates the replication state of a read replica. This property is returned only when the target server is a read replica. */\nexport enum KnownReplicationState {\n /** Read replica server is fully synchronized and actively replicating data from the primary server. */\n Active = \"Active\",\n /** Read replica server is behind the primary server and is currently catching up with pending changes. */\n Catchup = \"Catchup\",\n /** Read replica server is being created and is in process of getting initialized. */\n Provisioning = \"Provisioning\",\n /** Read replica server is undergoing some changes it can be changing compute size of promoting it to primary server. */\n Updating = \"Updating\",\n /** Replication has failed or been interrupted. */\n Broken = \"Broken\",\n /** Read replica server is being reconfigured, possibly due to changes in source or settings. */\n Reconfiguring = \"Reconfiguring\",\n}\n\n/**\n * Indicates the replication state of a read replica. This property is returned only when the target server is a read replica. \\\n * {@link KnownReplicationState} can be used interchangeably with ReplicationState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Active**: Read replica server is fully synchronized and actively replicating data from the primary server. \\\n * **Catchup**: Read replica server is behind the primary server and is currently catching up with pending changes. \\\n * **Provisioning**: Read replica server is being created and is in process of getting initialized. \\\n * **Updating**: Read replica server is undergoing some changes it can be changing compute size of promoting it to primary server. \\\n * **Broken**: Replication has failed or been interrupted. \\\n * **Reconfiguring**: Read replica server is being reconfigured, possibly due to changes in source or settings.\n */\nexport type ReplicationState = string;\n\n/** Type of operation to apply on the read replica. This property is write only. */\nexport enum KnownReadReplicaPromoteMode {\n /** Read replica will become an independent server, and a completely independent entity from the replication set. */\n Standalone = \"Standalone\",\n /** Read replica will swap roles with primary server. */\n Switchover = \"Switchover\",\n}\n\n/**\n * Type of operation to apply on the read replica. This property is write only. \\\n * {@link KnownReadReplicaPromoteMode} can be used interchangeably with ReadReplicaPromoteMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Standalone**: Read replica will become an independent server, and a completely independent entity from the replication set. \\\n * **Switchover**: Read replica will swap roles with primary server.\n */\nexport type ReadReplicaPromoteMode = string;\n\n/** Data synchronization option to use when processing the operation specified in the promoteMode property. This property is write only. */\nexport enum KnownReadReplicaPromoteOption {\n /** Wait for data in the read replica to be fully synchronized with its source server before it initiates the operation. */\n Planned = \"Planned\",\n /** Initiate the operation immediately, without waiting for data in the read replica to be synchronized with its source server. */\n Forced = \"Forced\",\n}\n\n/**\n * Data synchronization option to use when processing the operation specified in the promoteMode property. This property is write only. \\\n * {@link KnownReadReplicaPromoteOption} can be used interchangeably with ReadReplicaPromoteOption,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Planned**: Wait for data in the read replica to be fully synchronized with its source server before it initiates the operation. \\\n * **Forced**: Initiate the operation immediately, without waiting for data in the read replica to be synchronized with its source server.\n */\nexport type ReadReplicaPromoteOption = string;\n\n/** Creation mode of a new server. */\nexport enum KnownCreateMode {\n /** If the operation is triggered on a non-existing server, it's equivalent to 'Create'. If the operation is triggered on an existing server, it's equivalent to 'Update'. */\n Default = \"Default\",\n /** Operation creates a new server. */\n Create = \"Create\",\n /** Operation updates an existing server. */\n Update = \"Update\",\n /** Operation restores an existing backup of an existing server. This operation creates a new server, and then restores on it the backup of an existing server at a specific point in time. */\n PointInTimeRestore = \"PointInTimeRestore\",\n /** Operation restores an existing backup of an existing server, on the paired region of the existing server. This operation creates a new server on the paired region of the existing server, and then restores on it the backup of an existing server at a specific point in time, in a different region. This operation is only supported on existing servers that were created with geographically redundant backups enabled. */\n GeoRestore = \"GeoRestore\",\n /** Operation creates a replica of an existing server. This operation creates a new server, restores a base backup of the existing server (referred to as primary), and configures physical replication to asynchronously stream all changes which are recorded in the transaction log of the primary. */\n Replica = \"Replica\",\n /** Operation creates a new server, initialized with the backup of a server that was recently deleted. */\n ReviveDropped = \"ReviveDropped\",\n}\n\n/**\n * Creation mode of a new server. \\\n * {@link KnownCreateMode} can be used interchangeably with CreateMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Default**: If the operation is triggered on a non-existing server, it's equivalent to 'Create'. If the operation is triggered on an existing server, it's equivalent to 'Update'. \\\n * **Create**: Operation creates a new server. \\\n * **Update**: Operation updates an existing server. \\\n * **PointInTimeRestore**: Operation restores an existing backup of an existing server. This operation creates a new server, and then restores on it the backup of an existing server at a specific point in time. \\\n * **GeoRestore**: Operation restores an existing backup of an existing server, on the paired region of the existing server. This operation creates a new server on the paired region of the existing server, and then restores on it the backup of an existing server at a specific point in time, in a different region. This operation is only supported on existing servers that were created with geographically redundant backups enabled. \\\n * **Replica**: Operation creates a replica of an existing server. This operation creates a new server, restores a base backup of the existing server (referred to as primary), and configures physical replication to asynchronously stream all changes which are recorded in the transaction log of the primary. \\\n * **ReviveDropped**: Operation creates a new server, initialized with the backup of a server that was recently deleted.\n */\nexport type CreateMode = string;\n\nexport function privateEndpointConnectionArraySerializer(\n result: Array<PrivateEndpointConnection>,\n): any[] {\n return result.map((item) => {\n return privateEndpointConnectionSerializer(item);\n });\n}\n\nexport function privateEndpointConnectionArrayDeserializer(\n result: Array<PrivateEndpointConnection>,\n): any[] {\n return result.map((item) => {\n return privateEndpointConnectionDeserializer(item);\n });\n}\n\n/** The private endpoint connection resource. */\nexport interface PrivateEndpointConnection extends Resource {\n /** The group ids for the private endpoint resource. */\n readonly groupIds?: string[];\n /** The private endpoint resource. */\n privateEndpoint?: PrivateEndpoint;\n /** A collection of information about the state of the connection between service consumer and provider. */\n privateLinkServiceConnectionState?: PrivateLinkServiceConnectionState;\n /** The provisioning state of the private endpoint connection resource. */\n readonly provisioningState?: PrivateEndpointConnectionProvisioningState;\n}\n\nexport function privateEndpointConnectionSerializer(item: PrivateEndpointConnection): any {\n return {\n properties: areAllPropsUndefined(item, [\"privateEndpoint\", \"privateLinkServiceConnectionState\"])\n ? undefined\n : _privateEndpointConnectionPropertiesSerializer(item),\n };\n}\n\nexport function privateEndpointConnectionDeserializer(item: any): PrivateEndpointConnection {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _privateEndpointConnectionPropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Properties of the private endpoint connection. */\nexport interface PrivateEndpointConnectionProperties {\n /** The group ids for the private endpoint resource. */\n readonly groupIds?: string[];\n /** The private endpoint resource. */\n privateEndpoint?: PrivateEndpoint;\n /** A collection of information about the state of the connection between service consumer and provider. */\n privateLinkServiceConnectionState: PrivateLinkServiceConnectionState;\n /** The provisioning state of the private endpoint connection resource. */\n readonly provisioningState?: PrivateEndpointConnectionProvisioningState;\n}\n\nexport function privateEndpointConnectionPropertiesSerializer(\n item: PrivateEndpointConnectionProperties,\n): any {\n return {\n privateEndpoint: !item[\"privateEndpoint\"]\n ? item[\"privateEndpoint\"]\n : privateEndpointSerializer(item[\"privateEndpoint\"]),\n privateLinkServiceConnectionState: privateLinkServiceConnectionStateSerializer(\n item[\"privateLinkServiceConnectionState\"],\n ),\n };\n}\n\nexport function privateEndpointConnectionPropertiesDeserializer(\n item: any,\n): PrivateEndpointConnectionProperties {\n return {\n groupIds: !item[\"groupIds\"]\n ? item[\"groupIds\"]\n : item[\"groupIds\"].map((p: any) => {\n return p;\n }),\n privateEndpoint: !item[\"privateEndpoint\"]\n ? item[\"privateEndpoint\"]\n : privateEndpointDeserializer(item[\"privateEndpoint\"]),\n privateLinkServiceConnectionState: privateLinkServiceConnectionStateDeserializer(\n item[\"privateLinkServiceConnectionState\"],\n ),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\n/** The private endpoint resource. */\nexport interface PrivateEndpoint {\n /** The resource identifier of the private endpoint */\n readonly id?: string;\n}\n\nexport function privateEndpointSerializer(_item: PrivateEndpoint): any {\n return {};\n}\n\nexport function privateEndpointDeserializer(item: any): PrivateEndpoint {\n return {\n id: item[\"id\"],\n };\n}\n\n/** A collection of information about the state of the connection between service consumer and provider. */\nexport interface PrivateLinkServiceConnectionState {\n /** Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service. */\n status?: PrivateEndpointServiceConnectionStatus;\n /** The reason for approval/rejection of the connection. */\n description?: string;\n /** A message indicating if changes on the service provider require any updates on the consumer. */\n actionsRequired?: string;\n}\n\nexport function privateLinkServiceConnectionStateSerializer(\n item: PrivateLinkServiceConnectionState,\n): any {\n return {\n status: item[\"status\"],\n description: item[\"description\"],\n actionsRequired: item[\"actionsRequired\"],\n };\n}\n\nexport function privateLinkServiceConnectionStateDeserializer(\n item: any,\n): PrivateLinkServiceConnectionState {\n return {\n status: item[\"status\"],\n description: item[\"description\"],\n actionsRequired: item[\"actionsRequired\"],\n };\n}\n\n/** The private endpoint connection status. */\nexport enum KnownPrivateEndpointServiceConnectionStatus {\n /** Connection waiting for approval or rejection */\n Pending = \"Pending\",\n /** Connection approved */\n Approved = \"Approved\",\n /** Connection Rejected */\n Rejected = \"Rejected\",\n}\n\n/**\n * The private endpoint connection status. \\\n * {@link KnownPrivateEndpointServiceConnectionStatus} can be used interchangeably with PrivateEndpointServiceConnectionStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Pending**: Connection waiting for approval or rejection \\\n * **Approved**: Connection approved \\\n * **Rejected**: Connection Rejected\n */\nexport type PrivateEndpointServiceConnectionStatus = string;\n\n/** The current provisioning state. */\nexport enum KnownPrivateEndpointConnectionProvisioningState {\n /** Connection has been provisioned */\n Succeeded = \"Succeeded\",\n /** Connection is being created */\n Creating = \"Creating\",\n /** Connection is being deleted */\n Deleting = \"Deleting\",\n /** Connection provisioning has failed */\n Failed = \"Failed\",\n}\n\n/**\n * The current provisioning state. \\\n * {@link KnownPrivateEndpointConnectionProvisioningState} can be used interchangeably with PrivateEndpointConnectionProvisioningState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Succeeded**: Connection has been provisioned \\\n * **Creating**: Connection is being created \\\n * **Deleting**: Connection is being deleted \\\n * **Failed**: Connection provisioning has failed\n */\nexport type PrivateEndpointConnectionProvisioningState = string;\n\n/** Cluster properties of a server. */\nexport interface Cluster {\n /** Number of nodes assigned to the elastic cluster. */\n clusterSize?: number;\n /** Default database name for the elastic cluster. */\n defaultDatabaseName?: string;\n}\n\nexport function clusterSerializer(item: Cluster): any {\n return { clusterSize: item[\"clusterSize\"], defaultDatabaseName: item[\"defaultDatabaseName\"] };\n}\n\nexport function clusterDeserializer(item: any): Cluster {\n return {\n clusterSize: item[\"clusterSize\"],\n defaultDatabaseName: item[\"defaultDatabaseName\"],\n };\n}\n\n/** Compute information of a server. */\nexport interface Sku {\n /** Name by which is known a given compute size assigned to a server. */\n name: string;\n /** Tier of the compute assigned to a server. */\n tier: SkuTier;\n}\n\nexport function skuSerializer(item: Sku): any {\n return { name: item[\"name\"], tier: item[\"tier\"] };\n}\n\nexport function skuDeserializer(item: any): Sku {\n return {\n name: item[\"name\"],\n tier: item[\"tier\"],\n };\n}\n\n/** Identities associated with a server. */\nexport interface UserAssignedIdentity {\n /** Map of user assigned managed identities. */\n userAssignedIdentities?: Record<string, UserIdentity>;\n /** Identifier of the object of the service principal associated to the user assigned managed identity. */\n principalId?: string;\n /** Types of identities associated with a server. */\n type: IdentityType;\n /** Identifier of the tenant of a server. */\n readonly tenantId?: string;\n}\n\nexport function userAssignedIdentitySerializer(item: UserAssignedIdentity): any {\n return {\n userAssignedIdentities: !item[\"userAssignedIdentities\"]\n ? item[\"userAssignedIdentities\"]\n : userIdentityRecordSerializer(item[\"userAssignedIdentities\"]),\n principalId: item[\"principalId\"],\n type: item[\"type\"],\n };\n}\n\nexport function userAssignedIdentityDeserializer(item: any): UserAssignedIdentity {\n return {\n userAssignedIdentities: !item[\"userAssignedIdentities\"]\n ? item[\"userAssignedIdentities\"]\n : userIdentityRecordDeserializer(item[\"userAssignedIdentities\"]),\n principalId: item[\"principalId\"],\n type: item[\"type\"],\n tenantId: item[\"tenantId\"],\n };\n}\n\nexport function userIdentityRecordSerializer(\n item: Record<string, UserIdentity>,\n): Record<string, any> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : userIdentitySerializer(item[key]);\n });\n return result;\n}\n\nexport function userIdentityRecordDeserializer(\n item: Record<string, any>,\n): Record<string, UserIdentity> {\n const result: Record<string, any> = {};\n Object.keys(item).map((key) => {\n result[key] = !item[key] ? item[key] : userIdentityDeserializer(item[key]);\n });\n return result;\n}\n\n/** User assigned managed identity associated with a server. */\nexport interface UserIdentity {\n /** Identifier of the object of the service principal associated to the user assigned managed identity. */\n principalId?: string;\n /** Identifier of the client of the service principal associated to the user assigned managed identity. */\n clientId?: string;\n}\n\nexport function userIdentitySerializer(item: UserIdentity): any {\n return { principalId: item[\"principalId\"], clientId: item[\"clientId\"] };\n}\n\nexport function userIdentityDeserializer(item: any): UserIdentity {\n return {\n principalId: item[\"principalId\"],\n clientId: item[\"clientId\"],\n };\n}\n\n/** Types of identities associated with a server. */\nexport enum KnownIdentityType {\n /** No managed identity is assigned to the server. */\n None = \"None\",\n /** One or more managed identities provided by the user are assigned to the server. */\n UserAssigned = \"UserAssigned\",\n /** Azure automatically creates and manages the identity associated to the lifecycle of the server. */\n SystemAssigned = \"SystemAssigned\",\n /** Both system-assigned and user-assigned identities are assigned to the server. */\n SystemAssignedUserAssigned = \"SystemAssigned,UserAssigned\",\n}\n\n/**\n * Types of identities associated with a server. \\\n * {@link KnownIdentityType} can be used interchangeably with IdentityType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **None**: No managed identity is assigned to the server. \\\n * **UserAssigned**: One or more managed identities provided by the user are assigned to the server. \\\n * **SystemAssigned**: Azure automatically creates and manages the identity associated to the lifecycle of the server. \\\n * **SystemAssigned,UserAssigned**: Both system-assigned and user-assigned identities are assigned to the server.\n */\nexport type IdentityType = string;\n\n/** Represents a server to be updated. */\nexport interface ServerForPatch {\n /** Compute tier and size of a server. */\n sku?: SkuForPatch;\n /** Describes the identity of the application. */\n identity?: UserAssignedIdentity;\n /** Application-specific metadata in the form of key-value pairs. */\n tags?: Record<string, string>;\n /** Name of the login designated as the first password based administrator assigned to your instance of PostgreSQL. Must be specified the first time that you enable password based authentication on a server. Once set to a given value, it cannot be changed for the rest of the life of a server. If you disable password based authentication on a server which had it enabled, this password based role isn't deleted. */\n readonly administratorLogin?: string;\n /** Password assigned to the administrator login. As long as password authentication is enabled, this password can be changed at any time. */\n administratorLoginPassword?: string;\n /** Major version of PostgreSQL database engine. */\n version?: PostgresMajorVersion;\n /** Storage properties of a server. */\n storage?: Storage;\n /** Backup properties of a server. */\n backup?: BackupForPatch;\n /** High availability properties of a server. */\n highAvailability?: HighAvailabilityForPatch;\n /** Maintenance window properties of a server. */\n maintenanceWindow?: MaintenanceWindowForPatch;\n /** Authentication configuration properties of a server. */\n authConfig?: AuthConfigForPatch;\n /** Data encryption properties of a server. */\n dataEncryption?: DataEncryption;\n /** Availability zone of a server. */\n availabilityZone?: string;\n /** Update mode of an existing server. */\n createMode?: CreateModeForPatch;\n /** Role of the server in a replication set. */\n replicationRole?: ReplicationRole;\n /** Read replica properties of a server. Required only in case that you want to promote a server. */\n replica?: Replica;\n /** Network properties of a server. Only required if you want your server to be integrated into a virtual network provided by customer. */\n network?: Network;\n /** Cluster properties of a server. */\n cluster?: Cluster;\n}\n\nexport function serverForPatchSerializer(item: ServerForPatch): any {\n return {\n sku: !item[\"sku\"] ? item[\"sku\"] : skuForPatchSerializer(item[\"sku\"]),\n identity: !item[\"identity\"]\n ? item[\"identity\"]\n : userAssignedIdentitySerializer(item[\"identity\"]),\n properties: areAllPropsUndefined(item, [\n \"administratorLoginPassword\",\n \"version\",\n \"storage\",\n \"backup\",\n \"highAvailability\",\n \"maintenanceWindow\",\n \"authConfig\",\n \"dataEncryption\",\n \"availabilityZone\",\n \"createMode\",\n \"replicationRole\",\n \"replica\",\n \"network\",\n \"cluster\",\n ])\n ? undefined\n : _serverForPatchPropertiesSerializer(item),\n tags: item[\"tags\"],\n };\n}\n\n/** Compute information of a server. */\nexport interface SkuForPatch {\n /** Name by which is known a given compute size assigned to a server. */\n name?: string;\n /** Tier of the compute assigned to a server. */\n tier?: SkuTier;\n}\n\nexport function skuForPatchSerializer(item: SkuForPatch): any {\n return { name: item[\"name\"], tier: item[\"tier\"] };\n}\n\n/** Properties of a server. */\nexport interface ServerPropertiesForPatch {\n /** Name of the login designated as the first password based administrator assigned to your instance of PostgreSQL. Must be specified the first time that you enable password based authentication on a server. Once set to a given value, it cannot be changed for the rest of the life of a server. If you disable password based authentication on a server which had it enabled, this password based role isn't deleted. */\n readonly administratorLogin?: string;\n /** Password assigned to the administrator login. As long as password authentication is enabled, this password can be changed at any time. */\n administratorLoginPassword?: string;\n /** Major version of PostgreSQL database engine. */\n version?: PostgresMajorVersion;\n /** Storage properties of a server. */\n storage?: Storage;\n /** Backup properties of a server. */\n backup?: BackupForPatch;\n /** High availability properties of a server. */\n highAvailability?: HighAvailabilityForPatch;\n /** Maintenance window properties of a server. */\n maintenanceWindow?: MaintenanceWindowForPatch;\n /** Authentication configuration properties of a server. */\n authConfig?: AuthConfigForPatch;\n /** Data encryption properties of a server. */\n dataEncryption?: DataEncryption;\n /** Availability zone of a server. */\n availabilityZone?: string;\n /** Update mode of an existing server. */\n createMode?: CreateModeForPatch;\n /** Role of the server in a replication set. */\n replicationRole?: ReplicationRole;\n /** Read replica properties of a server. Required only in case that you want to promote a server. */\n replica?: Replica;\n /** Network properties of a server. Only required if you want your server to be integrated into a virtual network provided by customer. */\n network?: Network;\n /** Cluster properties of a server. */\n cluster?: Cluster;\n}\n\nexport function serverPropertiesForPatchSerializer(item: ServerPropertiesForPatch): any {\n return {\n administratorLoginPassword: item[\"administratorLoginPassword\"],\n version: item[\"version\"],\n storage: !item[\"storage\"] ? item[\"storage\"] : storageSerializer(item[\"storage\"]),\n backup: !item[\"backup\"] ? item[\"backup\"] : backupForPatchSerializer(item[\"backup\"]),\n highAvailability: !item[\"highAvailability\"]\n ? item[\"highAvailability\"]\n : highAvailabilityForPatchSerializer(item[\"highAvailability\"]),\n maintenanceWindow: !item[\"maintenanceWindow\"]\n ? item[\"maintenanceWindow\"]\n : maintenanceWindowForPatchSerializer(item[\"maintenanceWindow\"]),\n authConfig: !item[\"authConfig\"]\n ? item[\"authConfig\"]\n : authConfigForPatchSerializer(item[\"authConfig\"]),\n dataEncryption: !item[\"dataEncryption\"]\n ? item[\"dataEncryption\"]\n : dataEncryptionSerializer(item[\"dataEncryption\"]),\n availabilityZone: item[\"availabilityZone\"],\n createMode: item[\"createMode\"],\n replicationRole: item[\"replicationRole\"],\n replica: !item[\"replica\"] ? item[\"replica\"] : replicaSerializer(item[\"replica\"]),\n network: !item[\"network\"] ? item[\"network\"] : networkSerializer(item[\"network\"]),\n cluster: !item[\"cluster\"] ? item[\"cluster\"] : clusterSerializer(item[\"cluster\"]),\n };\n}\n\n/** Backup properties of a server. */\nexport interface BackupForPatch {\n /** Backup retention days for the server. */\n backupRetentionDays?: number;\n /** Indicates if the server is configured to create geographically redundant backups. */\n readonly geoRedundantBackup?: GeographicallyRedundantBackup;\n /** Earliest restore point time (ISO8601 format) for a server. */\n readonly earliestRestoreDate?: Date;\n}\n\nexport function backupForPatchSerializer(item: BackupForPatch): any {\n return { backupRetentionDays: item[\"backupRetentionDays\"] };\n}\n\n/** High availability properties of a server. */\nexport interface HighAvailabilityForPatch {\n /** High availability mode for a server. */\n mode?: PostgreSqlFlexibleServerHighAvailabilityMode;\n /** Possible states of the standby server created when high availability is set to SameZone or ZoneRedundant. */\n readonly state?: HighAvailabilityState;\n /** Availability zone associated to the standby server created when high availability is set to SameZone or ZoneRedundant. */\n standbyAvailabilityZone?: string;\n}\n\nexport function highAvailabilityForPatchSerializer(item: HighAvailabilityForPatch): any {\n return { mode: item[\"mode\"], standbyAvailabilityZone: item[\"standbyAvailabilityZone\"] };\n}\n\n/** Maintenance window properties of a server. */\nexport interface MaintenanceWindowForPatch {\n /** Indicates whether custom window is enabled or disabled. */\n customWindow?: string;\n /** Start hour to be used for maintenance window. */\n startHour?: number;\n /** Start minute to be used for maintenance window. */\n startMinute?: number;\n /** Day of the week to be used for maintenance window. */\n dayOfWeek?: number;\n}\n\nexport function maintenanceWindowForPatchSerializer(item: MaintenanceWindowForPatch): any {\n return {\n customWindow: item[\"customWindow\"],\n startHour: item[\"startHour\"],\n startMinute: item[\"startMinute\"],\n dayOfWeek: item[\"dayOfWeek\"],\n };\n}\n\n/** Authentication configuration properties of a server. */\nexport interface AuthConfigForPatch {\n /** Indicates if the server supports Microsoft Entra authentication. */\n activeDirectoryAuth?: MicrosoftEntraAuth;\n /** Indicates if the server supports password based authentication. */\n passwordAuth?: PasswordBasedAuth;\n /** Identifier of the tenant of the delegated resource. */\n tenantId?: string;\n}\n\nexport function authConfigForPatchSerializer(item: AuthConfigForPatch): any {\n return {\n activeDirectoryAuth: item[\"activeDirectoryAuth\"],\n passwordAuth: item[\"passwordAuth\"],\n tenantId: item[\"tenantId\"],\n };\n}\n\n/** Update mode of an existing server. */\nexport enum KnownCreateModeForPatch {\n /** It's equivalent to 'Update'. */\n Default = \"Default\",\n /** Operation updates an existing server. */\n Update = \"Update\",\n}\n\n/**\n * Update mode of an existing server. \\\n * {@link KnownCreateModeForPatch} can be used interchangeably with CreateModeForPatch,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Default**: It's equivalent to 'Update'. \\\n * **Update**: Operation updates an existing server.\n */\nexport type CreateModeForPatch = string;\n\n/** A list of servers. */\nexport interface _ServerList {\n /** The Server items on this page */\n value: Server[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _serverListDeserializer(item: any): _ServerList {\n return {\n value: serverArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function serverArraySerializer(result: Array<Server>): any[] {\n return result.map((item) => {\n return serverSerializer(item);\n });\n}\n\nexport function serverArrayDeserializer(result: Array<Server>): any[] {\n return result.map((item) => {\n return serverDeserializer(item);\n });\n}\n\n/** PostgreSQL database engine restart parameters. */\nexport interface RestartParameter {\n /** Indicates if restart the PostgreSQL database engine should failover or switch over from primary to standby. This only works if server has high availability enabled. */\n restartWithFailover?: boolean;\n /** Failover mode. */\n failoverMode?: FailoverMode;\n}\n\nexport function restartParameterSerializer(item: RestartParameter): any {\n return { restartWithFailover: item[\"restartWithFailover\"], failoverMode: item[\"failoverMode\"] };\n}\n\n/** Failover mode. */\nexport enum KnownFailoverMode {\n /** Trigger a failover from primary to standby without killing the primary database process first. This is a graceful failover that attempts to preserve data consistency. */\n PlannedFailover = \"PlannedFailover\",\n /** Terminate the primary database process first, then triggers the failover. This is more aggressive and used when the primary is unresponsive or in an unhealthy state. */\n ForcedFailover = \"ForcedFailover\",\n /** Similar to 'PlannedFailover' but prefers a switch over operation where roles are swapped between primary and standby. */\n PlannedSwitchover = \"PlannedSwitchover\",\n /** Terminate the primary database process first, and then triggers a switch over with role swapping. */\n ForcedSwitchover = \"ForcedSwitchover\",\n}\n\n/**\n * Failover mode. \\\n * {@link KnownFailoverMode} can be used interchangeably with FailoverMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **PlannedFailover**: Trigger a failover from primary to standby without killing the primary database process first. This is a graceful failover that attempts to preserve data consistency. \\\n * **ForcedFailover**: Terminate the primary database process first, then triggers the failover. This is more aggressive and used when the primary is unresponsive or in an unhealthy state. \\\n * **PlannedSwitchover**: Similar to 'PlannedFailover' but prefers a switch over operation where roles are swapped between primary and standby. \\\n * **ForcedSwitchover**: Terminate the primary database process first, and then triggers a switch over with role swapping.\n */\nexport type FailoverMode = string;\n\n/** Status of a network migration operation. */\nexport interface MigrateNetworkStatus {\n /** Identifier of the subscription. */\n subscriptionId?: string;\n /** Name of the resource group. */\n resourceGroupName?: string;\n /** Name of the server. */\n serverName?: string;\n /** State of the network migration operation. */\n readonly state?: NetworkMigrationState;\n}\n\nexport function migrateNetworkStatusDeserializer(item: any): MigrateNetworkStatus {\n return {\n subscriptionId: item[\"subscriptionId\"],\n resourceGroupName: item[\"resourceGroupName\"],\n serverName: item[\"serverName\"],\n state: item[\"state\"],\n };\n}\n\n/** State of the network migration operation. */\nexport enum KnownNetworkMigrationState {\n /** Network migration is pending. */\n Pending = \"Pending\",\n /** Network migration is in progress. */\n InProgress = \"InProgress\",\n /** Network migration succeeded. */\n Succeeded = \"Succeeded\",\n /** Network migration failed. */\n Failed = \"Failed\",\n /** Network migration cancellation is in progress. */\n CancelInProgress = \"CancelInProgress\",\n /** Network migration was cancelled. */\n Cancelled = \"Cancelled\",\n}\n\n/**\n * State of the network migration operation. \\\n * {@link KnownNetworkMigrationState} can be used interchangeably with NetworkMigrationState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Pending**: Network migration is pending. \\\n * **InProgress**: Network migration is in progress. \\\n * **Succeeded**: Network migration succeeded. \\\n * **Failed**: Network migration failed. \\\n * **CancelInProgress**: Network migration cancellation is in progress. \\\n * **Cancelled**: Network migration was cancelled.\n */\nexport type NetworkMigrationState = string;\n\n/** Request model for starting a major version upgrade precheck. */\nexport interface StartMajorVersionUpgradePrecheckRequest {\n /** The target major version to upgrade to. */\n targetVersion: PostgresMajorVersion;\n}\n\nexport function startMajorVersionUpgradePrecheckRequestSerializer(\n item: StartMajorVersionUpgradePrecheckRequest,\n): any {\n return { targetVersion: item[\"targetVersion\"] };\n}\n\n/** Response model for starting a major version upgrade precheck. */\nexport interface StartMajorVersionUpgradePrecheckResponse {\n /** The precheck validation ID. */\n name?: string;\n /** The time when the precheck was created. */\n createTime?: Date;\n /** The status of the precheck validation. */\n status?: MajorVersionUpgradePrecheckStatus;\n}\n\nexport function startMajorVersionUpgradePrecheckResponseDeserializer(\n item: any,\n): StartMajorVersionUpgradePrecheckResponse {\n return {\n name: item[\"name\"],\n createTime: !item[\"createTime\"] ? item[\"createTime\"] : new Date(item[\"createTime\"]),\n status: item[\"status\"],\n };\n}\n\n/** The status of the major version upgrade precheck. */\nexport enum KnownMajorVersionUpgradePrecheckStatus {\n /** Executing prechecks against the source server */\n Validating = \"Validating\",\n /** Validation succeeded */\n Succeeded = \"Succeeded\",\n /** Validation failed */\n Failed = \"Failed\",\n /** Validation canceled */\n Canceled = \"Canceled\",\n}\n\n/**\n * The status of the major version upgrade precheck. \\\n * {@link KnownMajorVersionUpgradePrecheckStatus} can be used interchangeably with MajorVersionUpgradePrecheckStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Validating**: Executing prechecks against the source server \\\n * **Succeeded**: Validation succeeded \\\n * **Failed**: Validation failed \\\n * **Canceled**: Validation canceled\n */\nexport type MajorVersionUpgradePrecheckStatus = string;\n\n/** Configuration (also known as server parameter). */\nexport interface Configuration extends ProxyResource {\n /** Value of the configuration (also known as server parameter). Required to update the value assigned to a specific modifiable configuration. */\n value?: string;\n /** Description of the configuration (also known as server parameter). */\n readonly description?: string;\n /** Value assigned by default to the configuration (also known as server parameter). */\n readonly defaultValue?: string;\n /** Data type of the configuration (also known as server parameter). */\n readonly dataType?: ConfigurationDataType;\n /** Allowed values of the configuration (also known as server parameter). */\n readonly allowedValues?: string;\n /** Source of the value assigned to the configuration (also known as server parameter). Required to update the value assigned to a specific modifiable configuration. */\n source?: string;\n /** Indicates if it's a dynamic (true) or static (false) configuration (also known as server parameter). Static server parameters require a server restart after changing the value assigned to them, for the change to take effect. Dynamic server parameters do not require a server restart after changing the value assigned to them, for the change to take effect. */\n readonly isDynamicConfig?: boolean;\n /** Indicates if it's a read-only (true) or modifiable (false) configuration (also known as server parameter). */\n readonly isReadOnly?: boolean;\n /** Indicates if the value assigned to the configuration (also known as server parameter) is pending a server restart for it to take effect. */\n readonly isConfigPendingRestart?: boolean;\n /** Units in which the configuration (also known as server parameter) value is expressed. */\n readonly unit?: string;\n /** Link pointing to the documentation of the configuration (also known as server parameter). */\n readonly documentationLink?: string;\n}\n\nexport function configurationDeserializer(item: any): Configuration {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _configurationPropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Properties of a configuration (also known as server parameter). */\nexport interface ConfigurationProperties {\n /** Value of the configuration (also known as server parameter). Required to update the value assigned to a specific modifiable configuration. */\n value?: string;\n /** Description of the configuration (also known as server parameter). */\n readonly description?: string;\n /** Value assigned by default to the configuration (also known as server parameter). */\n readonly defaultValue?: string;\n /** Data type of the configuration (also known as server parameter). */\n readonly dataType?: ConfigurationDataType;\n /** Allowed values of the configuration (also known as server parameter). */\n readonly allowedValues?: string;\n /** Source of the value assigned to the configuration (also known as server parameter). Required to update the value assigned to a specific modifiable configuration. */\n source?: string;\n /** Indicates if it's a dynamic (true) or static (false) configuration (also known as server parameter). Static server parameters require a server restart after changing the value assigned to them, for the change to take effect. Dynamic server parameters do not require a server restart after changing the value assigned to them, for the change to take effect. */\n readonly isDynamicConfig?: boolean;\n /** Indicates if it's a read-only (true) or modifiable (false) configuration (also known as server parameter). */\n readonly isReadOnly?: boolean;\n /** Indicates if the value assigned to the configuration (also known as server parameter) is pending a server restart for it to take effect. */\n readonly isConfigPendingRestart?: boolean;\n /** Units in which the configuration (also known as server parameter) value is expressed. */\n readonly unit?: string;\n /** Link pointing to the documentation of the configuration (also known as server parameter). */\n readonly documentationLink?: string;\n}\n\nexport function configurationPropertiesSerializer(item: ConfigurationProperties): any {\n return { value: item[\"value\"], source: item[\"source\"] };\n}\n\nexport function configurationPropertiesDeserializer(item: any): ConfigurationProperties {\n return {\n value: item[\"value\"],\n description: item[\"description\"],\n defaultValue: item[\"defaultValue\"],\n dataType: item[\"dataType\"],\n allowedValues: item[\"allowedValues\"],\n source: item[\"source\"],\n isDynamicConfig: item[\"isDynamicConfig\"],\n isReadOnly: item[\"isReadOnly\"],\n isConfigPendingRestart: item[\"isConfigPendingRestart\"],\n unit: item[\"unit\"],\n documentationLink: item[\"documentationLink\"],\n };\n}\n\n/** Data type of the configuration (also known as server parameter). */\nexport enum KnownConfigurationDataType {\n /** A boolean value. */\n Boolean = \"Boolean\",\n /** A numeric value. */\n Numeric = \"Numeric\",\n /** An integer value. */\n Integer = \"Integer\",\n /** An enumeration value. */\n Enumeration = \"Enumeration\",\n /** A string value. */\n String = \"String\",\n /** A set of values. */\n Set = \"Set\",\n}\n\n/**\n * Data type of the configuration (also known as server parameter). \\\n * {@link KnownConfigurationDataType} can be used interchangeably with ConfigurationDataType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Boolean**: A boolean value. \\\n * **Numeric**: A numeric value. \\\n * **Integer**: An integer value. \\\n * **Enumeration**: An enumeration value. \\\n * **String**: A string value. \\\n * **Set**: A set of values.\n */\nexport type ConfigurationDataType = string;\n\n/** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */\nexport interface ProxyResource extends Resource {}\n\nexport function proxyResourceSerializer(_item: ProxyResource): any {\n return {};\n}\n\nexport function proxyResourceDeserializer(item: any): ProxyResource {\n return {\n id: item[\"id\"],\n name: item[\"name\"],\n type: item[\"type\"],\n systemData: !item[\"systemData\"]\n ? item[\"systemData\"]\n : systemDataDeserializer(item[\"systemData\"]),\n };\n}\n\n/** Configuration (also known as server parameter). */\nexport interface ConfigurationForUpdate {\n /** Value of the configuration (also known as server parameter). Required to update the value assigned to a specific modifiable configuration. */\n value?: string;\n /** Description of the configuration (also known as server parameter). */\n readonly description?: string;\n /** Value assigned by default to the configuration (also known as server parameter). */\n readonly defaultValue?: string;\n /** Data type of the configuration (also known as server parameter). */\n readonly dataType?: ConfigurationDataType;\n /** Allowed values of the configuration (also known as server parameter). */\n readonly allowedValues?: string;\n /** Source of the value assigned to the configuration (also known as server parameter). Required to update the value assigned to a specific modifiable configuration. */\n source?: string;\n /** Indicates if it's a dynamic (true) or static (false) configuration (also known as server parameter). Static server parameters require a server restart after changing the value assigned to them, for the change to take effect. Dynamic server parameters do not require a server restart after changing the value assigned to them, for the change to take effect. */\n readonly isDynamicConfig?: boolean;\n /** Indicates if it's a read-only (true) or modifiable (false) configuration (also known as server parameter). */\n readonly isReadOnly?: boolean;\n /** Indicates if the value assigned to the configuration (also known as server parameter) is pending a server restart for it to take effect. */\n readonly isConfigPendingRestart?: boolean;\n /** Units in which the configuration (also known as server parameter) value is expressed. */\n readonly unit?: string;\n /** Link pointing to the documentation of the configuration (also known as server parameter). */\n readonly documentationLink?: string;\n}\n\nexport function configurationForUpdateSerializer(item: ConfigurationForUpdate): any {\n return {\n properties: areAllPropsUndefined(item, [\"value\", \"source\"])\n ? undefined\n : _configurationForUpdatePropertiesSerializer(item),\n };\n}\n\n/** List of configurations (also known as server parameters). */\nexport interface _ConfigurationList {\n /** The Configuration items on this page */\n value: Configuration[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _configurationListDeserializer(item: any): _ConfigurationList {\n return {\n value: configurationArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function configurationArrayDeserializer(result: Array<Configuration>): any[] {\n return result.map((item) => {\n return configurationDeserializer(item);\n });\n}\n\n/** Represents a database. */\nexport interface Database extends ProxyResource {\n /** Character set of the database. */\n charset?: string;\n /** Collation of the database. */\n collation?: string;\n}\n\nexport function databaseSerializer(item: Database): any {\n return {\n properties: areAllPropsUndefined(item, [\"charset\", \"collation\"])\n ? undefined\n : _databasePropertiesSerializer(item),\n };\n}\n\nexport function databaseDeserializer(item: any): Database {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _databasePropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Properties of a database. */\nexport interface DatabaseProperties {\n /** Character set of the database. */\n charset?: string;\n /** Collation of the database. */\n collation?: string;\n}\n\nexport function databasePropertiesSerializer(item: DatabaseProperties): any {\n return { charset: item[\"charset\"], collation: item[\"collation\"] };\n}\n\nexport function databasePropertiesDeserializer(item: any): DatabaseProperties {\n return {\n charset: item[\"charset\"],\n collation: item[\"collation\"],\n };\n}\n\n/** List of all databases in a server. */\nexport interface _DatabaseList {\n /** The Database items on this page */\n value: Database[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _databaseListDeserializer(item: any): _DatabaseList {\n return {\n value: databaseArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function databaseArraySerializer(result: Array<Database>): any[] {\n return result.map((item) => {\n return databaseSerializer(item);\n });\n}\n\nexport function databaseArrayDeserializer(result: Array<Database>): any[] {\n return result.map((item) => {\n return databaseDeserializer(item);\n });\n}\n\n/** Firewall rule. */\nexport interface FirewallRule extends ProxyResource {\n /** IP address defining the start of the range of addresses of a firewall rule. Must be expressed in IPv4 format. */\n startIpAddress: string;\n /** IP address defining the end of the range of addresses of a firewall rule. Must be expressed in IPv4 format. */\n endIpAddress: string;\n}\n\nexport function firewallRuleSerializer(item: FirewallRule): any {\n return { properties: _firewallRulePropertiesSerializer(item) };\n}\n\nexport function firewallRuleDeserializer(item: any): FirewallRule {\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 ..._firewallRulePropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Properties of a firewall rule. */\nexport interface FirewallRuleProperties {\n /** IP address defining the start of the range of addresses of a firewall rule. Must be expressed in IPv4 format. */\n startIpAddress: string;\n /** IP address defining the end of the range of addresses of a firewall rule. Must be expressed in IPv4 format. */\n endIpAddress: string;\n}\n\nexport function firewallRulePropertiesSerializer(item: FirewallRuleProperties): any {\n return { startIpAddress: item[\"startIpAddress\"], endIpAddress: item[\"endIpAddress\"] };\n}\n\nexport function firewallRulePropertiesDeserializer(item: any): FirewallRuleProperties {\n return {\n startIpAddress: item[\"startIpAddress\"],\n endIpAddress: item[\"endIpAddress\"],\n };\n}\n\n/** List of firewall rules. */\nexport interface _FirewallRuleList {\n /** The FirewallRule items on this page */\n value: FirewallRule[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _firewallRuleListDeserializer(item: any): _FirewallRuleList {\n return {\n value: firewallRuleArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function firewallRuleArraySerializer(result: Array<FirewallRule>): any[] {\n return result.map((item) => {\n return firewallRuleSerializer(item);\n });\n}\n\nexport function firewallRuleArrayDeserializer(result: Array<FirewallRule>): any[] {\n return result.map((item) => {\n return firewallRuleDeserializer(item);\n });\n}\n\n/** List of private endpoint connections. */\nexport interface _PrivateEndpointConnectionList {\n /** The PrivateEndpointConnection items on this page */\n readonly value: PrivateEndpointConnection[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _privateEndpointConnectionListDeserializer(\n item: any,\n): _PrivateEndpointConnectionList {\n return {\n value: privateEndpointConnectionArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\n/** A private link resource. */\nexport interface PrivateLinkResource extends ProxyResource {\n /** The private link resource group id. */\n readonly groupId?: string;\n /** The private link resource required member names. */\n readonly requiredMembers?: string[];\n /** The private link resource private link DNS zone name. */\n requiredZoneNames?: string[];\n}\n\nexport function privateLinkResourceDeserializer(item: any): PrivateLinkResource {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _privateLinkResourcePropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Properties of a private link resource. */\nexport interface PrivateLinkResourceProperties {\n /** The private link resource group id. */\n readonly groupId?: string;\n /** The private link resource required member names. */\n readonly requiredMembers?: string[];\n /** The private link resource private link DNS zone name. */\n requiredZoneNames?: string[];\n}\n\nexport function privateLinkResourcePropertiesDeserializer(\n item: any,\n): PrivateLinkResourceProperties {\n return {\n groupId: item[\"groupId\"],\n requiredMembers: !item[\"requiredMembers\"]\n ? item[\"requiredMembers\"]\n : item[\"requiredMembers\"].map((p: any) => {\n return p;\n }),\n requiredZoneNames: !item[\"requiredZoneNames\"]\n ? item[\"requiredZoneNames\"]\n : item[\"requiredZoneNames\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** A list of private link resources */\nexport interface _PrivateLinkResourceList {\n /** The PrivateLinkResource items on this page */\n readonly value: PrivateLinkResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _privateLinkResourceListDeserializer(item: any): _PrivateLinkResourceList {\n return {\n value: privateLinkResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function privateLinkResourceArrayDeserializer(result: Array<PrivateLinkResource>): any[] {\n return result.map((item) => {\n return privateLinkResourceDeserializer(item);\n });\n}\n\n/** Pair of virtual endpoints for a server. */\nexport interface VirtualEndpoint extends ProxyResource {\n /** Type of endpoint for the virtual endpoints. */\n endpointType?: VirtualEndpointType;\n /** List of servers that one of the virtual endpoints can refer to. */\n members?: string[];\n /** List of virtual endpoints for a server. */\n readonly virtualEndpoints?: string[];\n}\n\nexport function virtualEndpointSerializer(item: VirtualEndpoint): any {\n return {\n properties: areAllPropsUndefined(item, [\"endpointType\", \"members\"])\n ? undefined\n : _virtualEndpointPropertiesSerializer(item),\n };\n}\n\nexport function virtualEndpointDeserializer(item: any): VirtualEndpoint {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _virtualEndpointPropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Properties of a pair of virtual endpoints. */\nexport interface VirtualEndpointResourceProperties {\n /** Type of endpoint for the virtual endpoints. */\n endpointType?: VirtualEndpointType;\n /** List of servers that one of the virtual endpoints can refer to. */\n members?: string[];\n /** List of virtual endpoints for a server. */\n readonly virtualEndpoints?: string[];\n}\n\nexport function virtualEndpointResourcePropertiesSerializer(\n item: VirtualEndpointResourceProperties,\n): any {\n return {\n endpointType: item[\"endpointType\"],\n members: !item[\"members\"]\n ? item[\"members\"]\n : item[\"members\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function virtualEndpointResourcePropertiesDeserializer(\n item: any,\n): VirtualEndpointResourceProperties {\n return {\n endpointType: item[\"endpointType\"],\n members: !item[\"members\"]\n ? item[\"members\"]\n : item[\"members\"].map((p: any) => {\n return p;\n }),\n virtualEndpoints: !item[\"virtualEndpoints\"]\n ? item[\"virtualEndpoints\"]\n : item[\"virtualEndpoints\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Type of endpoint for the virtual endpoints. */\nexport enum KnownVirtualEndpointType {\n /** Read-write endpoint. */\n ReadWrite = \"ReadWrite\",\n}\n\n/**\n * Type of endpoint for the virtual endpoints. \\\n * {@link KnownVirtualEndpointType} can be used interchangeably with VirtualEndpointType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ReadWrite**: Read-write endpoint.\n */\nexport type VirtualEndpointType = string;\n\n/** Pair of virtual endpoints for a server. */\nexport interface VirtualEndpointResourceForPatch {\n /** Type of endpoint for the virtual endpoints. */\n endpointType?: VirtualEndpointType;\n /** List of servers that one of the virtual endpoints can refer to. */\n members?: string[];\n /** List of virtual endpoints for a server. */\n readonly virtualEndpoints?: string[];\n}\n\nexport function virtualEndpointResourceForPatchSerializer(\n item: VirtualEndpointResourceForPatch,\n): any {\n return {\n properties: areAllPropsUndefined(item, [\"endpointType\", \"members\"])\n ? undefined\n : _virtualEndpointResourceForPatchPropertiesSerializer(item),\n };\n}\n\n/** List of virtual endpoints. */\nexport interface _VirtualEndpointsList {\n /** The VirtualEndpoint items on this page */\n value: VirtualEndpoint[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _virtualEndpointsListDeserializer(item: any): _VirtualEndpointsList {\n return {\n value: virtualEndpointArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function virtualEndpointArraySerializer(result: Array<VirtualEndpoint>): any[] {\n return result.map((item) => {\n return virtualEndpointSerializer(item);\n });\n}\n\nexport function virtualEndpointArrayDeserializer(result: Array<VirtualEndpoint>): any[] {\n return result.map((item) => {\n return virtualEndpointDeserializer(item);\n });\n}\n\n/** Maintenance event resource for a PostgreSQL flexible server. */\nexport interface MaintenanceEventResource extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: MaintenanceEventResourceProperties;\n}\n\nexport function maintenanceEventResourceDeserializer(item: any): MaintenanceEventResource {\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 : maintenanceEventResourcePropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Properties of a maintenance event resource. */\nexport interface MaintenanceEventResourceProperties {\n /** A service-generated identifier for this maintenance event, assigned by the platform (e.g., 'YL1T-HFG'). The format is not contractual and clients should not attempt to parse or construct this value. */\n readonly maintenanceEventId?: string;\n /** The maintenance type (e.g., 'PlannedMaintenance'). */\n readonly maintenanceType: MaintenanceType;\n /** The human-readable description of the maintenance event. */\n readonly description?: string;\n /** The customer-facing status of the maintenance event. */\n readonly status: MaintenanceEventStatus;\n /** The scheduled start time of the maintenance event (UTC). */\n readonly startTime: Date;\n /** The scheduled end time of the maintenance event (UTC). */\n readonly endTime: Date;\n /** The estimated downtime as an ISO 8601 duration string (e.g., 'PT60S' = 60 seconds). */\n readonly estimatedDowntime?: string;\n /** A value indicating whether this maintenance event can be rescheduled by the customer. */\n readonly deferrable: boolean;\n /** The latest date/time this maintenance event can be postponed to (UTC). Present only when deferrable is true. */\n readonly deferralDeadline?: Date;\n /** The previous scheduled start time before the most recent reschedule (UTC). Null if the event has never been rescheduled. */\n readonly rescheduledFrom?: Date;\n /** The time this maintenance event record was last updated (UTC). */\n readonly lastUpdatedTime?: Date;\n /** The initial scheduled start time before any reschedule (UTC). Equals startTime when the event has never been rescheduled. */\n readonly originalStartTime: Date;\n}\n\nexport function maintenanceEventResourcePropertiesDeserializer(\n item: any,\n): MaintenanceEventResourceProperties {\n return {\n maintenanceEventId: item[\"maintenanceEventId\"],\n maintenanceType: item[\"maintenanceType\"],\n description: item[\"description\"],\n status: item[\"status\"],\n startTime: new Date(item[\"startTime\"]),\n endTime: new Date(item[\"endTime\"]),\n estimatedDowntime: item[\"estimatedDowntime\"],\n deferrable: item[\"deferrable\"],\n deferralDeadline: !item[\"deferralDeadline\"]\n ? item[\"deferralDeadline\"]\n : new Date(item[\"deferralDeadline\"]),\n rescheduledFrom: !item[\"rescheduledFrom\"]\n ? item[\"rescheduledFrom\"]\n : new Date(item[\"rescheduledFrom\"]),\n lastUpdatedTime: !item[\"lastUpdatedTime\"]\n ? item[\"lastUpdatedTime\"]\n : new Date(item[\"lastUpdatedTime\"]),\n originalStartTime: new Date(item[\"originalStartTime\"]),\n };\n}\n\n/** Type of a maintenance event resource. */\nexport enum KnownMaintenanceType {\n /** Planned maintenance event. */\n PlannedMaintenance = \"PlannedMaintenance\",\n}\n\n/**\n * Type of a maintenance event resource. \\\n * {@link KnownMaintenanceType} can be used interchangeably with MaintenanceType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **PlannedMaintenance**: Planned maintenance event.\n */\nexport type MaintenanceType = string;\n\n/** The status of a maintenance event. */\nexport enum KnownMaintenanceEventStatus {\n /** The maintenance event is scheduled and has not yet started. */\n Planned = \"Planned\",\n /** The maintenance event is currently in progress. */\n InProgress = \"InProgress\",\n /** The maintenance event has completed successfully. */\n Complete = \"Complete\",\n /** The maintenance event has been rescheduled (postponed) by the customer. */\n Rescheduled = \"Rescheduled\",\n /** The maintenance event was canceled, failed, or timed out. */\n Canceled = \"Canceled\",\n}\n\n/**\n * The status of a maintenance event. \\\n * {@link KnownMaintenanceEventStatus} can be used interchangeably with MaintenanceEventStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Planned**: The maintenance event is scheduled and has not yet started. \\\n * **InProgress**: The maintenance event is currently in progress. \\\n * **Complete**: The maintenance event has completed successfully. \\\n * **Rescheduled**: The maintenance event has been rescheduled (postponed) by the customer. \\\n * **Canceled**: The maintenance event was canceled, failed, or timed out.\n */\nexport type MaintenanceEventStatus = string;\n\n/** The response of a MaintenanceEventResource list operation. */\nexport interface _MaintenanceEventResourceListResult {\n /** The MaintenanceEventResource items on this page */\n value: MaintenanceEventResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _maintenanceEventResourceListResultDeserializer(\n item: any,\n): _MaintenanceEventResourceListResult {\n return {\n value: maintenanceEventResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function maintenanceEventResourceArrayDeserializer(\n result: Array<MaintenanceEventResource>,\n): any[] {\n return result.map((item) => {\n return maintenanceEventResourceDeserializer(item);\n });\n}\n\n/** Parameters to reschedule a maintenance event. */\nexport interface MaintenanceEventRescheduleRequest {\n /** New start time in RFC3339 format. */\n postponeToDateTime: Date;\n}\n\nexport function maintenanceEventRescheduleRequestSerializer(\n item: MaintenanceEventRescheduleRequest,\n): any {\n return { postponeToDateTime: item[\"postponeToDateTime\"].toISOString() };\n}\n\n/** Response model for maintenance event reschedule and apply-now actions. */\nexport interface MaintenanceEventActionResponse {\n /** The maintenance event name (maintenance ID). */\n maintenanceEventId?: string;\n /** The full Azure resource ID of the server. */\n serverId?: string;\n /** The status of the maintenance event. */\n status?: MaintenanceEventStatus;\n /** The planned start time of the maintenance event (UTC). */\n plannedStartTime?: Date;\n /** The planned end time of the maintenance event (UTC). */\n plannedEndTime?: Date;\n /** A value indicating whether this was an apply-now (immediate) action. True for ApplyNow; false for Reschedule. */\n appliedNow?: boolean;\n /** The time this maintenance event record was last updated (UTC). */\n lastUpdatedTime?: Date;\n}\n\nexport function maintenanceEventActionResponseDeserializer(\n item: any,\n): MaintenanceEventActionResponse {\n return {\n maintenanceEventId: item[\"maintenanceEventId\"],\n serverId: item[\"serverId\"],\n status: item[\"status\"],\n plannedStartTime: !item[\"plannedStartTime\"]\n ? item[\"plannedStartTime\"]\n : new Date(item[\"plannedStartTime\"]),\n plannedEndTime: !item[\"plannedEndTime\"]\n ? item[\"plannedEndTime\"]\n : new Date(item[\"plannedEndTime\"]),\n appliedNow: item[\"appliedNow\"],\n lastUpdatedTime: !item[\"lastUpdatedTime\"]\n ? item[\"lastUpdatedTime\"]\n : new Date(item[\"lastUpdatedTime\"]),\n };\n}\n\n/** Major version upgrade precheck resource for a PostgreSQL flexible server. */\nexport interface MajorVersionUpgradePrecheckResource extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: MajorVersionUpgradePrecheckResourceProperties;\n}\n\nexport function majorVersionUpgradePrecheckResourceDeserializer(\n item: any,\n): MajorVersionUpgradePrecheckResource {\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 : majorVersionUpgradePrecheckResourcePropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Major version upgrade precheck resource with validation results. */\nexport interface MajorVersionUpgradePrecheckResourceProperties {\n /** The time when the precheck was created. */\n createTime?: Date;\n /** The status of the precheck validation. */\n status?: MajorVersionUpgradePrecheckStatus;\n /** The detailed result of the precheck operation. */\n precheckResult?: PrecheckResult;\n /** The target PostgreSQL major version for the upgrade. */\n targetVersion?: PostgresMajorVersion;\n /** Array of policy validation details. */\n policyDetails?: PolicyDetail[];\n}\n\nexport function majorVersionUpgradePrecheckResourcePropertiesDeserializer(\n item: any,\n): MajorVersionUpgradePrecheckResourceProperties {\n return {\n createTime: !item[\"createTime\"] ? item[\"createTime\"] : new Date(item[\"createTime\"]),\n status: item[\"status\"],\n precheckResult: !item[\"precheckResult\"]\n ? item[\"precheckResult\"]\n : precheckResultDeserializer(item[\"precheckResult\"]),\n targetVersion: item[\"targetVersion\"],\n policyDetails: !item[\"policyDetails\"]\n ? item[\"policyDetails\"]\n : policyDetailArrayDeserializer(item[\"policyDetails\"]),\n };\n}\n\n/** Precheck result details. */\nexport interface PrecheckResult {\n /** The action performed. */\n action?: string;\n /** The upgrade sequence information. */\n upgradeSequence?: UpgradeSequence;\n /** Array of error information. */\n errorInfo?: PrecheckErrorInfo[];\n}\n\nexport function precheckResultDeserializer(item: any): PrecheckResult {\n return {\n action: item[\"action\"],\n upgradeSequence: !item[\"upgradeSequence\"]\n ? item[\"upgradeSequence\"]\n : upgradeSequenceDeserializer(item[\"upgradeSequence\"]),\n errorInfo: !item[\"errorInfo\"]\n ? item[\"errorInfo\"]\n : precheckErrorInfoArrayDeserializer(item[\"errorInfo\"]),\n };\n}\n\n/** Upgrade sequence information. */\nexport interface UpgradeSequence {\n /** The source PostgreSQL version. */\n sourceVersion?: PostgresMajorVersion;\n /** The target PostgreSQL version. */\n targetVersion?: PostgresMajorVersion;\n}\n\nexport function upgradeSequenceDeserializer(item: any): UpgradeSequence {\n return {\n sourceVersion: item[\"sourceVersion\"],\n targetVersion: item[\"targetVersion\"],\n };\n}\n\nexport function precheckErrorInfoArrayDeserializer(result: Array<PrecheckErrorInfo>): any[] {\n return result.map((item) => {\n return precheckErrorInfoDeserializer(item);\n });\n}\n\n/** Error information from precheck validation. */\nexport interface PrecheckErrorInfo {\n /** The error code. */\n errorCode?: number;\n /** The error message. */\n errorMessage?: string;\n}\n\nexport function precheckErrorInfoDeserializer(item: any): PrecheckErrorInfo {\n return {\n errorCode: item[\"errorCode\"],\n errorMessage: item[\"errorMessage\"],\n };\n}\n\nexport function policyDetailArrayDeserializer(result: Array<PolicyDetail>): any[] {\n return result.map((item) => {\n return policyDetailDeserializer(item);\n });\n}\n\n/** Policy validation details. */\nexport interface PolicyDetail {\n /** The name of the policy. */\n policyName?: string;\n /** Whether the policy validation passed. */\n passed?: boolean;\n /** The error code if validation failed. */\n errorCode?: number;\n /** The error message if validation failed. */\n errorMessage?: string;\n /** Description of what the policy validates. */\n policyDescription?: string;\n}\n\nexport function policyDetailDeserializer(item: any): PolicyDetail {\n return {\n policyName: item[\"policyName\"],\n passed: item[\"passed\"],\n errorCode: item[\"errorCode\"],\n errorMessage: item[\"errorMessage\"],\n policyDescription: item[\"policyDescription\"],\n };\n}\n\n/** The response of a MajorVersionUpgradePrecheckResource list operation. */\nexport interface _MajorVersionUpgradePrecheckResourceListResult {\n /** The MajorVersionUpgradePrecheckResource items on this page */\n value: MajorVersionUpgradePrecheckResource[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _majorVersionUpgradePrecheckResourceListResultDeserializer(\n item: any,\n): _MajorVersionUpgradePrecheckResourceListResult {\n return {\n value: majorVersionUpgradePrecheckResourceArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function majorVersionUpgradePrecheckResourceArrayDeserializer(\n result: Array<MajorVersionUpgradePrecheckResource>,\n): any[] {\n return result.map((item) => {\n return majorVersionUpgradePrecheckResourceDeserializer(item);\n });\n}\n\n/** Server administrator associated to a Microsoft Entra principal. */\nexport interface AdministratorMicrosoftEntra extends ProxyResource {\n /** Type of Microsoft Entra principal to which the server administrator is associated. */\n principalType?: PrincipalType;\n /** Name of the Microsoft Entra principal. */\n principalName?: string;\n /** Object identifier of the Microsoft Entra principal. */\n objectId?: string;\n /** Identifier of the tenant in which the Microsoft Entra principal exists. */\n tenantId?: string;\n}\n\nexport function administratorMicrosoftEntraDeserializer(item: any): AdministratorMicrosoftEntra {\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 ..._administratorMicrosoftEntraPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Properties of a server administrator associated to a Microsoft Entra principal. */\nexport interface AdministratorMicrosoftEntraProperties {\n /** Type of Microsoft Entra principal to which the server administrator is associated. */\n principalType?: PrincipalType;\n /** Name of the Microsoft Entra principal. */\n principalName?: string;\n /** Object identifier of the Microsoft Entra principal. */\n objectId?: string;\n /** Identifier of the tenant in which the Microsoft Entra principal exists. */\n tenantId?: string;\n}\n\nexport function administratorMicrosoftEntraPropertiesDeserializer(\n item: any,\n): AdministratorMicrosoftEntraProperties {\n return {\n principalType: item[\"principalType\"],\n principalName: item[\"principalName\"],\n objectId: item[\"objectId\"],\n tenantId: item[\"tenantId\"],\n };\n}\n\n/** Type of Microsoft Entra principal to which the server administrator is associated. */\nexport enum KnownPrincipalType {\n /** Principal type is not known or not specified. */\n Unknown = \"Unknown\",\n /** A Microsoft Entra user. */\n User = \"User\",\n /** A Microsoft Entra group. */\n Group = \"Group\",\n /** A Microsoft Entra service principal, typically representing an application or service identity. */\n ServicePrincipal = \"ServicePrincipal\",\n}\n\n/**\n * Type of Microsoft Entra principal to which the server administrator is associated. \\\n * {@link KnownPrincipalType} can be used interchangeably with PrincipalType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Unknown**: Principal type is not known or not specified. \\\n * **User**: A Microsoft Entra user. \\\n * **Group**: A Microsoft Entra group. \\\n * **ServicePrincipal**: A Microsoft Entra service principal, typically representing an application or service identity.\n */\nexport type PrincipalType = string;\n\n/** Server administrator associated to a Microsoft Entra principal. */\nexport interface AdministratorMicrosoftEntraAdd {\n /** Type of Microsoft Entra principal to which the server administrator is associated. */\n principalType?: PrincipalType;\n /** Name of the Microsoft Entra principal. */\n principalName?: string;\n /** Identifier of the tenant in which the Microsoft Entra principal exists. */\n tenantId?: string;\n}\n\nexport function administratorMicrosoftEntraAddSerializer(\n item: AdministratorMicrosoftEntraAdd,\n): any {\n return {\n properties: areAllPropsUndefined(item, [\"principalType\", \"principalName\", \"tenantId\"])\n ? undefined\n : _administratorMicrosoftEntraAddPropertiesSerializer(item),\n };\n}\n\n/** Properties of a server administrator associated to a Microsoft Entra principal. */\nexport interface AdministratorMicrosoftEntraPropertiesForAdd {\n /** Type of Microsoft Entra principal to which the server administrator is associated. */\n principalType?: PrincipalType;\n /** Name of the Microsoft Entra principal. */\n principalName?: string;\n /** Identifier of the tenant in which the Microsoft Entra principal exists. */\n tenantId?: string;\n}\n\nexport function administratorMicrosoftEntraPropertiesForAddSerializer(\n item: AdministratorMicrosoftEntraPropertiesForAdd,\n): any {\n return {\n principalType: item[\"principalType\"],\n principalName: item[\"principalName\"],\n tenantId: item[\"tenantId\"],\n };\n}\n\n/** List of server administrators associated to Microsoft Entra principals. */\nexport interface _AdministratorMicrosoftEntraList {\n /** The AdministratorMicrosoftEntra items on this page */\n value: AdministratorMicrosoftEntra[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _administratorMicrosoftEntraListDeserializer(\n item: any,\n): _AdministratorMicrosoftEntraList {\n return {\n value: administratorMicrosoftEntraArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function administratorMicrosoftEntraArrayDeserializer(\n result: Array<AdministratorMicrosoftEntra>,\n): any[] {\n return result.map((item) => {\n return administratorMicrosoftEntraDeserializer(item);\n });\n}\n\n/** List of capabilities for the Azure Database for PostgreSQL flexible server. */\nexport interface _CapabilityList {\n /** The Capability items on this page */\n readonly value: Capability[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _capabilityListDeserializer(item: any): _CapabilityList {\n return {\n value: capabilityArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function capabilityArrayDeserializer(result: Array<Capability>): any[] {\n return result.map((item) => {\n return capabilityDeserializer(item);\n });\n}\n\n/** Capability for the Azure Database for PostgreSQL flexible server. */\nexport interface Capability extends CapabilityBase {\n /** Name of flexible servers capabilities. */\n name?: string;\n /** List of supported compute tiers. */\n readonly supportedServerEditions?: ServerEditionCapability[];\n /** List of supported major versions of PostgreSQL database engine. */\n readonly supportedServerVersions?: ServerVersionCapability[];\n /** Features supported. */\n readonly supportedFeatures?: SupportedFeature[];\n /** Indicates if fast provisioning is supported. 'Enabled' means fast provisioning is supported. 'Disabled' stands for fast provisioning is not supported. Will be deprecated in the future. Look to Supported Features for 'FastProvisioning'. */\n readonly fastProvisioningSupported?: FastProvisioningSupport;\n /** List of compute tiers supporting fast provisioning. */\n readonly supportedFastProvisioningEditions?: FastProvisioningEditionCapability[];\n /** Indicates if geographically redundant backups are supported in this location. 'Enabled' means geographically redundant backups are supported. 'Disabled' stands for geographically redundant backup is not supported. Will be deprecated in the future. Look to Supported Features for 'GeoBackup'. */\n readonly geoBackupSupported?: GeographicallyRedundantBackupSupport;\n /** Indicates if high availability with zone redundancy is supported in this location. 'Enabled' means high availability with zone redundancy is supported. 'Disabled' stands for high availability with zone redundancy is not supported. Will be deprecated in the future. Look to Supported Features for 'ZoneRedundantHa'. */\n readonly zoneRedundantHaSupported?: ZoneRedundantHighAvailabilitySupport;\n /** Indicates if high availability with zone redundancy is supported in conjunction with geographically redundant backups in this location. 'Enabled' means high availability with zone redundancy is supported in conjunction with geographically redundant backups is supported. 'Disabled' stands for high availability with zone redundancy is supported in conjunction with geographically redundant backups is not supported. Will be deprecated in the future. Look to Supported Features for 'ZoneRedundantHaAndGeoBackup'. */\n readonly zoneRedundantHaAndGeoBackupSupported?: ZoneRedundantHighAvailabilityAndGeographicallyRedundantBackupSupport;\n /** Indicates if storage autogrow is supported in this location. 'Enabled' means storage autogrow is supported. 'Disabled' stands for storage autogrow is not supported. Will be deprecated in the future. Look to Supported Features for 'StorageAutoGrowth'. */\n readonly storageAutoGrowthSupported?: StorageAutoGrowthSupport;\n /** Indicates if resizing the storage, without interrupting the operation of the database engine, is supported in this location for the given subscription. 'Enabled' means resizing the storage without interrupting the operation of the database engine is supported. 'Disabled' means resizing the storage without interrupting the operation of the database engine is not supported. Will be deprecated in the future. Look to Supported Features for 'OnlineResize'. */\n readonly onlineResizeSupported?: OnlineStorageResizeSupport;\n /** Indicates if this location is restricted. 'Enabled' means location is restricted. 'Disabled' stands for location is not restricted. Will be deprecated in the future. Look to Supported Features for 'Restricted'. */\n readonly restricted?: LocationRestricted;\n}\n\nexport function capabilityDeserializer(item: any): Capability {\n return {\n status: item[\"status\"],\n reason: item[\"reason\"],\n name: item[\"name\"],\n supportedServerEditions: !item[\"supportedServerEditions\"]\n ? item[\"supportedServerEditions\"]\n : serverEditionCapabilityArrayDeserializer(item[\"supportedServerEditions\"]),\n supportedServerVersions: !item[\"supportedServerVersions\"]\n ? item[\"supportedServerVersions\"]\n : serverVersionCapabilityArrayDeserializer(item[\"supportedServerVersions\"]),\n supportedFeatures: !item[\"supportedFeatures\"]\n ? item[\"supportedFeatures\"]\n : supportedFeatureArrayDeserializer(item[\"supportedFeatures\"]),\n fastProvisioningSupported: item[\"fastProvisioningSupported\"],\n supportedFastProvisioningEditions: !item[\"supportedFastProvisioningEditions\"]\n ? item[\"supportedFastProvisioningEditions\"]\n : fastProvisioningEditionCapabilityArrayDeserializer(\n item[\"supportedFastProvisioningEditions\"],\n ),\n geoBackupSupported: item[\"geoBackupSupported\"],\n zoneRedundantHaSupported: item[\"zoneRedundantHaSupported\"],\n zoneRedundantHaAndGeoBackupSupported: item[\"zoneRedundantHaAndGeoBackupSupported\"],\n storageAutoGrowthSupported: item[\"storageAutoGrowthSupported\"],\n onlineResizeSupported: item[\"onlineResizeSupported\"],\n restricted: item[\"restricted\"],\n };\n}\n\nexport function serverEditionCapabilityArrayDeserializer(\n result: Array<ServerEditionCapability>,\n): any[] {\n return result.map((item) => {\n return serverEditionCapabilityDeserializer(item);\n });\n}\n\n/** Capabilities in terms of compute tier. */\nexport interface ServerEditionCapability extends CapabilityBase {\n /** Name of compute tier. */\n readonly name?: string;\n /** Default compute name (SKU) for this computer tier. */\n readonly defaultSkuName?: string;\n /** List of storage editions supported by this compute tier and compute name. */\n readonly supportedStorageEditions?: StorageEditionCapability[];\n /** List of supported compute names (SKUs). */\n readonly supportedServerSkus?: ServerSkuCapability[];\n}\n\nexport function serverEditionCapabilityDeserializer(item: any): ServerEditionCapability {\n return {\n status: item[\"status\"],\n reason: item[\"reason\"],\n name: item[\"name\"],\n defaultSkuName: item[\"defaultSkuName\"],\n supportedStorageEditions: !item[\"supportedStorageEditions\"]\n ? item[\"supportedStorageEditions\"]\n : storageEditionCapabilityArrayDeserializer(item[\"supportedStorageEditions\"]),\n supportedServerSkus: !item[\"supportedServerSkus\"]\n ? item[\"supportedServerSkus\"]\n : serverSkuCapabilityArrayDeserializer(item[\"supportedServerSkus\"]),\n };\n}\n\nexport function storageEditionCapabilityArrayDeserializer(\n result: Array<StorageEditionCapability>,\n): any[] {\n return result.map((item) => {\n return storageEditionCapabilityDeserializer(item);\n });\n}\n\n/** Capabilities in terms of storage tier. */\nexport interface StorageEditionCapability extends CapabilityBase {\n /** Name of storage tier. */\n readonly name?: string;\n /** Default storage size (in MB) for this storage tier. */\n readonly defaultStorageSizeMb?: number;\n /** Configurations of storage supported for this storage tier. */\n readonly supportedStorageMb?: StorageMbCapability[];\n}\n\nexport function storageEditionCapabilityDeserializer(item: any): StorageEditionCapability {\n return {\n status: item[\"status\"],\n reason: item[\"reason\"],\n name: item[\"name\"],\n defaultStorageSizeMb: item[\"defaultStorageSizeMb\"],\n supportedStorageMb: !item[\"supportedStorageMb\"]\n ? item[\"supportedStorageMb\"]\n : storageMbCapabilityArrayDeserializer(item[\"supportedStorageMb\"]),\n };\n}\n\nexport function storageMbCapabilityArrayDeserializer(result: Array<StorageMbCapability>): any[] {\n return result.map((item) => {\n return storageMbCapabilityDeserializer(item);\n });\n}\n\n/** Storage size (in MB) capability. */\nexport interface StorageMbCapability extends CapabilityBase {\n /** Minimum IOPS supported by the storage size. */\n readonly supportedIops?: number;\n /** Maximum IOPS supported by the storage size. */\n readonly supportedMaximumIops?: number;\n /** Minimum supported size (in MB) of storage. */\n readonly storageSizeMb?: number;\n /** Maximum supported size (in MB) of storage. */\n readonly maximumStorageSizeMb?: number;\n /** Minimum supported throughput (in MB/s) of storage. */\n readonly supportedThroughput?: number;\n /** Maximum supported throughput (in MB/s) of storage. */\n readonly supportedMaximumThroughput?: number;\n /** Default IOPS for this tier and storage size. */\n readonly defaultIopsTier?: string;\n /** List of all supported storage tiers for this tier and storage size. */\n readonly supportedIopsTiers?: StorageTierCapability[];\n}\n\nexport function storageMbCapabilityDeserializer(item: any): StorageMbCapability {\n return {\n status: item[\"status\"],\n reason: item[\"reason\"],\n supportedIops: item[\"supportedIops\"],\n supportedMaximumIops: item[\"supportedMaximumIops\"],\n storageSizeMb: item[\"storageSizeMb\"],\n maximumStorageSizeMb: item[\"maximumStorageSizeMb\"],\n supportedThroughput: item[\"supportedThroughput\"],\n supportedMaximumThroughput: item[\"supportedMaximumThroughput\"],\n defaultIopsTier: item[\"defaultIopsTier\"],\n supportedIopsTiers: !item[\"supportedIopsTiers\"]\n ? item[\"supportedIopsTiers\"]\n : storageTierCapabilityArrayDeserializer(item[\"supportedIopsTiers\"]),\n };\n}\n\nexport function storageTierCapabilityArrayDeserializer(\n result: Array<StorageTierCapability>,\n): any[] {\n return result.map((item) => {\n return storageTierCapabilityDeserializer(item);\n });\n}\n\n/** Capability of a storage tier. */\nexport interface StorageTierCapability extends CapabilityBase {\n /** Name of the storage tier. */\n readonly name?: string;\n /** Supported IOPS for the storage tier. */\n readonly iops?: number;\n}\n\nexport function storageTierCapabilityDeserializer(item: any): StorageTierCapability {\n return {\n status: item[\"status\"],\n reason: item[\"reason\"],\n name: item[\"name\"],\n iops: item[\"iops\"],\n };\n}\n\nexport function serverSkuCapabilityArrayDeserializer(result: Array<ServerSkuCapability>): any[] {\n return result.map((item) => {\n return serverSkuCapabilityDeserializer(item);\n });\n}\n\n/** Capabilities in terms of compute. */\nexport interface ServerSkuCapability extends CapabilityBase {\n /** Name of the compute (SKU). */\n readonly name?: string;\n /** vCores available for this compute. */\n readonly vCores?: number;\n /** Maximum IOPS supported by this compute. */\n readonly supportedIops?: number;\n /** Supported memory (in MB) per virtual core assigned to this compute. */\n readonly supportedMemoryPerVcoreMb?: number;\n /** List of supported availability zones. E.g. '1', '2', '3' */\n readonly supportedZones?: string[];\n /** Modes of high availability supported for this compute. */\n readonly supportedHaMode?: HighAvailabilityMode[];\n /** Features supported. */\n readonly supportedFeatures?: SupportedFeature[];\n /** Security profile of the compute. Indicates if it's a Confidential Compute virtual machine. */\n readonly securityProfile?: string;\n}\n\nexport function serverSkuCapabilityDeserializer(item: any): ServerSkuCapability {\n return {\n status: item[\"status\"],\n reason: item[\"reason\"],\n name: item[\"name\"],\n vCores: item[\"vCores\"],\n supportedIops: item[\"supportedIops\"],\n supportedMemoryPerVcoreMb: item[\"supportedMemoryPerVcoreMb\"],\n supportedZones: !item[\"supportedZones\"]\n ? item[\"supportedZones\"]\n : item[\"supportedZones\"].map((p: any) => {\n return p;\n }),\n supportedHaMode: !item[\"supportedHaMode\"]\n ? item[\"supportedHaMode\"]\n : item[\"supportedHaMode\"].map((p: any) => {\n return p;\n }),\n supportedFeatures: !item[\"supportedFeatures\"]\n ? item[\"supportedFeatures\"]\n : supportedFeatureArrayDeserializer(item[\"supportedFeatures\"]),\n securityProfile: item[\"securityProfile\"],\n };\n}\n\n/** Mode of high availability supported for this compute. */\nexport enum KnownHighAvailabilityMode {\n /** High availability is supported for this compute, with standby server in a different availability zone than that of the primary. */\n ZoneRedundant = \"ZoneRedundant\",\n /** High availability is supported for this compute, with standby server in the same availability zone as the primary. */\n SameZone = \"SameZone\",\n}\n\n/**\n * Mode of high availability supported for this compute. \\\n * {@link KnownHighAvailabilityMode} can be used interchangeably with HighAvailabilityMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ZoneRedundant**: High availability is supported for this compute, with standby server in a different availability zone than that of the primary. \\\n * **SameZone**: High availability is supported for this compute, with standby server in the same availability zone as the primary.\n */\nexport type HighAvailabilityMode = string;\n\nexport function supportedFeatureArrayDeserializer(result: Array<SupportedFeature>): any[] {\n return result.map((item) => {\n return supportedFeatureDeserializer(item);\n });\n}\n\n/** Features supported. */\nexport interface SupportedFeature {\n /** Name of the feature. */\n readonly name?: string;\n /** Status of the feature. Indicates if the feature is enabled or not. */\n readonly status?: FeatureStatus;\n}\n\nexport function supportedFeatureDeserializer(item: any): SupportedFeature {\n return {\n name: item[\"name\"],\n status: item[\"status\"],\n };\n}\n\n/** Status of the feature. Indicates if the feature is enabled or not. */\nexport enum KnownFeatureStatus {\n /** Feature is enabled. */\n Enabled = \"Enabled\",\n /** Feature is disabled. */\n Disabled = \"Disabled\",\n}\n\n/**\n * Status of the feature. Indicates if the feature is enabled or not. \\\n * {@link KnownFeatureStatus} can be used interchangeably with FeatureStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: Feature is enabled. \\\n * **Disabled**: Feature is disabled.\n */\nexport type FeatureStatus = string;\n\nexport function serverVersionCapabilityArrayDeserializer(\n result: Array<ServerVersionCapability>,\n): any[] {\n return result.map((item) => {\n return serverVersionCapabilityDeserializer(item);\n });\n}\n\n/** Capabilities in terms of major versions of PostgreSQL database engine. */\nexport interface ServerVersionCapability extends CapabilityBase {\n /** Major version of PostgreSQL database engine. */\n readonly name?: string;\n /** Major versions of PostgreSQL database engine to which this version can be automatically upgraded. */\n readonly supportedVersionsToUpgrade?: string[];\n /** Features supported. */\n readonly supportedFeatures?: SupportedFeature[];\n}\n\nexport function serverVersionCapabilityDeserializer(item: any): ServerVersionCapability {\n return {\n status: item[\"status\"],\n reason: item[\"reason\"],\n name: item[\"name\"],\n supportedVersionsToUpgrade: !item[\"supportedVersionsToUpgrade\"]\n ? item[\"supportedVersionsToUpgrade\"]\n : item[\"supportedVersionsToUpgrade\"].map((p: any) => {\n return p;\n }),\n supportedFeatures: !item[\"supportedFeatures\"]\n ? item[\"supportedFeatures\"]\n : supportedFeatureArrayDeserializer(item[\"supportedFeatures\"]),\n };\n}\n\n/** Indicates if fast provisioning is supported. 'Enabled' means fast provisioning is supported. 'Disabled' stands for fast provisioning is not supported. Will be deprecated in the future. Look to Supported Features for 'FastProvisioning'. */\nexport enum KnownFastProvisioningSupport {\n /** Fast provisioning is supported. */\n Enabled = \"Enabled\",\n /** Fast provisioning is not supported. */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if fast provisioning is supported. 'Enabled' means fast provisioning is supported. 'Disabled' stands for fast provisioning is not supported. Will be deprecated in the future. Look to Supported Features for 'FastProvisioning'. \\\n * {@link KnownFastProvisioningSupport} can be used interchangeably with FastProvisioningSupport,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: Fast provisioning is supported. \\\n * **Disabled**: Fast provisioning is not supported.\n */\nexport type FastProvisioningSupport = string;\n\nexport function fastProvisioningEditionCapabilityArrayDeserializer(\n result: Array<FastProvisioningEditionCapability>,\n): any[] {\n return result.map((item) => {\n return fastProvisioningEditionCapabilityDeserializer(item);\n });\n}\n\n/** Capability of a fast provisioning compute tier. */\nexport interface FastProvisioningEditionCapability extends CapabilityBase {\n /** Compute tier supporting fast provisioning. */\n readonly supportedTier?: string;\n /** Compute name (SKU) supporting fast provisioning. */\n readonly supportedSku?: string;\n /** Storage size (in GB) supporting fast provisioning. */\n readonly supportedStorageGb?: number;\n /** Major version of PostgreSQL database engine supporting fast provisioning. */\n readonly supportedServerVersions?: string;\n /** Count of servers in cache matching this specification. */\n readonly serverCount?: number;\n}\n\nexport function fastProvisioningEditionCapabilityDeserializer(\n item: any,\n): FastProvisioningEditionCapability {\n return {\n status: item[\"status\"],\n reason: item[\"reason\"],\n supportedTier: item[\"supportedTier\"],\n supportedSku: item[\"supportedSku\"],\n supportedStorageGb: item[\"supportedStorageGb\"],\n supportedServerVersions: item[\"supportedServerVersions\"],\n serverCount: item[\"serverCount\"],\n };\n}\n\n/** Indicates if geographically redundant backups are supported in this location. Will be deprecated in the future. Look to Supported Features for 'GeoBackup'. */\nexport enum KnownGeographicallyRedundantBackupSupport {\n /** Geographically redundant backups are supported in this location. */\n Enabled = \"Enabled\",\n /** Geographically redundant backups are not supported in this location. */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if geographically redundant backups are supported in this location. Will be deprecated in the future. Look to Supported Features for 'GeoBackup'. \\\n * {@link KnownGeographicallyRedundantBackupSupport} can be used interchangeably with GeographicallyRedundantBackupSupport,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: Geographically redundant backups are supported in this location. \\\n * **Disabled**: Geographically redundant backups are not supported in this location.\n */\nexport type GeographicallyRedundantBackupSupport = string;\n\n/** Indicates if high availability with zone redundancy is supported in this location. Will be deprecated in the future. Look to Supported Features for 'ZoneRedundantHa'. */\nexport enum KnownZoneRedundantHighAvailabilitySupport {\n /** High availability with zone redundancy is supported. */\n Enabled = \"Enabled\",\n /** High availability with zone redundancy is not supported. */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if high availability with zone redundancy is supported in this location. Will be deprecated in the future. Look to Supported Features for 'ZoneRedundantHa'. \\\n * {@link KnownZoneRedundantHighAvailabilitySupport} can be used interchangeably with ZoneRedundantHighAvailabilitySupport,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: High availability with zone redundancy is supported. \\\n * **Disabled**: High availability with zone redundancy is not supported.\n */\nexport type ZoneRedundantHighAvailabilitySupport = string;\n\n/** Indicates if high availability with zone redundancy is supported in conjunction with geographically redundant backups in this location. Will be deprecated in the future. Look to Supported Features for 'ZoneRedundantHaAndGeoBackup'. */\nexport enum KnownZoneRedundantHighAvailabilityAndGeographicallyRedundantBackupSupport {\n /** High availability with zone redundancy is supported in conjunction with geographically redundant backups. */\n Enabled = \"Enabled\",\n /** High availability with zone redundancy is not supported in conjunction with geographically redundant backups. */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if high availability with zone redundancy is supported in conjunction with geographically redundant backups in this location. Will be deprecated in the future. Look to Supported Features for 'ZoneRedundantHaAndGeoBackup'. \\\n * {@link KnownZoneRedundantHighAvailabilityAndGeographicallyRedundantBackupSupport} can be used interchangeably with ZoneRedundantHighAvailabilityAndGeographicallyRedundantBackupSupport,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: High availability with zone redundancy is supported in conjunction with geographically redundant backups. \\\n * **Disabled**: High availability with zone redundancy is not supported in conjunction with geographically redundant backups.\n */\nexport type ZoneRedundantHighAvailabilityAndGeographicallyRedundantBackupSupport = string;\n\n/** Indicates if storage autogrow is supported in this location. Will be deprecated in the future. Look to Supported Features for 'StorageAutoGrowth'. */\nexport enum KnownStorageAutoGrowthSupport {\n /** Storage autogrow is supported. */\n Enabled = \"Enabled\",\n /** Storage autogrow is not supported. */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if storage autogrow is supported in this location. Will be deprecated in the future. Look to Supported Features for 'StorageAutoGrowth'. \\\n * {@link KnownStorageAutoGrowthSupport} can be used interchangeably with StorageAutoGrowthSupport,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: Storage autogrow is supported. \\\n * **Disabled**: Storage autogrow is not supported.\n */\nexport type StorageAutoGrowthSupport = string;\n\n/** Indicates if resizing the storage, without interrupting the operation of the database engine, is supported in this location for the given subscription. Will be deprecated in the future. Look to Supported Features for 'OnlineResize'. */\nexport enum KnownOnlineStorageResizeSupport {\n /** Resizing the storage without interrupting the operation of the database engine is supported. */\n Enabled = \"Enabled\",\n /** Resizing the storage without interrupting the operation of the database engine is not supported. */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if resizing the storage, without interrupting the operation of the database engine, is supported in this location for the given subscription. Will be deprecated in the future. Look to Supported Features for 'OnlineResize'. \\\n * {@link KnownOnlineStorageResizeSupport} can be used interchangeably with OnlineStorageResizeSupport,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: Resizing the storage without interrupting the operation of the database engine is supported. \\\n * **Disabled**: Resizing the storage without interrupting the operation of the database engine is not supported.\n */\nexport type OnlineStorageResizeSupport = string;\n\n/** Indicates if this location is restricted. Will be deprecated in the future. Look to Supported Features for 'Restricted'. */\nexport enum KnownLocationRestricted {\n /** Location is restricted. */\n Enabled = \"Enabled\",\n /** Location is not restricted. */\n Disabled = \"Disabled\",\n}\n\n/**\n * Indicates if this location is restricted. Will be deprecated in the future. Look to Supported Features for 'Restricted'. \\\n * {@link KnownLocationRestricted} can be used interchangeably with LocationRestricted,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled**: Location is restricted. \\\n * **Disabled**: Location is not restricted.\n */\nexport type LocationRestricted = string;\n\n/** Base object for representing capability */\nexport interface CapabilityBase {\n /** Status of the capability. */\n readonly status?: CapabilityStatus;\n /** Reason for the capability not being available. */\n readonly reason?: string;\n}\n\nexport function capabilityBaseDeserializer(item: any): CapabilityBase {\n return {\n status: item[\"status\"],\n reason: item[\"reason\"],\n };\n}\n\n/** Status of the capability. */\nexport type CapabilityStatus = \"Visible\" | \"Available\" | \"Default\" | \"Disabled\";\n\n/** List of log files. */\nexport interface _CapturedLogList {\n /** The CapturedLog items on this page */\n value: CapturedLog[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _capturedLogListDeserializer(item: any): _CapturedLogList {\n return {\n value: capturedLogArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function capturedLogArrayDeserializer(result: Array<CapturedLog>): any[] {\n return result.map((item) => {\n return capturedLogDeserializer(item);\n });\n}\n\n/** Log file. */\nexport interface CapturedLog extends ProxyResource {\n /** Creation timestamp of the log file. */\n createdTime?: Date;\n /** Last modified timestamp of the log file. */\n lastModifiedTime?: Date;\n /** Size (in KB) of the log file. */\n sizeInKb?: number;\n /** Type of log file. Can be 'ServerLogs' or 'UpgradeLogs'. */\n typePropertiesType?: string;\n /** URL to download the log file from. */\n url?: string;\n}\n\nexport function capturedLogDeserializer(item: any): CapturedLog {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _capturedLogPropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Properties of a log file. */\nexport interface CapturedLogProperties {\n /** Creation timestamp of the log file. */\n createdTime?: Date;\n /** Last modified timestamp of the log file. */\n lastModifiedTime?: Date;\n /** Size (in KB) of the log file. */\n sizeInKb?: number;\n /** Type of log file. Can be 'ServerLogs' or 'UpgradeLogs'. */\n type?: string;\n /** URL to download the log file from. */\n url?: string;\n}\n\nexport function capturedLogPropertiesDeserializer(item: any): CapturedLogProperties {\n return {\n createdTime: !item[\"createdTime\"] ? item[\"createdTime\"] : new Date(item[\"createdTime\"]),\n lastModifiedTime: !item[\"lastModifiedTime\"]\n ? item[\"lastModifiedTime\"]\n : new Date(item[\"lastModifiedTime\"]),\n sizeInKb: item[\"sizeInKb\"],\n type: item[\"type\"],\n url: item[\"url\"],\n };\n}\n\n/** A request that is made for pre-backup. */\nexport interface LtrPreBackupRequest extends BackupRequestBase {}\n\nexport function ltrPreBackupRequestSerializer(item: LtrPreBackupRequest): any {\n return { backupSettings: backupSettingsSerializer(item[\"backupSettings\"]) };\n}\n\n/** BackupRequestBase is the base for all backup request. */\nexport interface BackupRequestBase {\n /** Backup Settings */\n backupSettings: BackupSettings;\n}\n\nexport function backupRequestBaseSerializer(item: BackupRequestBase): any {\n return { backupSettings: backupSettingsSerializer(item[\"backupSettings\"]) };\n}\n\n/** Settings for the long term backup. */\nexport interface BackupSettings {\n /** Backup Name for the current backup */\n backupName: string;\n}\n\nexport function backupSettingsSerializer(item: BackupSettings): any {\n return { backupName: item[\"backupName\"] };\n}\n\n/** Response for the LTR pre-backup API call. */\nexport interface LtrPreBackupResponse {\n /** Number of storage containers the plugin will use during backup. More than one containers may be used for size limitations, parallelism, or redundancy etc. */\n numberOfContainers: number;\n}\n\nexport function ltrPreBackupResponseDeserializer(item: any): LtrPreBackupResponse {\n return {\n ..._ltrPreBackupResponsePropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Response for the pre-backup request. */\nexport interface BackupsLongTermRetentionResponseProperties {\n /** Number of storage containers the plugin will use during backup. More than one containers may be used for size limitations, parallelism, or redundancy etc. */\n numberOfContainers: number;\n}\n\nexport function backupsLongTermRetentionResponsePropertiesDeserializer(\n item: any,\n): BackupsLongTermRetentionResponseProperties {\n return {\n numberOfContainers: item[\"numberOfContainers\"],\n };\n}\n\n/** Request made for a long term retention backup. */\nexport interface BackupsLongTermRetentionRequest extends BackupRequestBase {\n /** Backup store detail for target server. */\n targetDetails: BackupStoreDetails;\n}\n\nexport function backupsLongTermRetentionRequestSerializer(\n item: BackupsLongTermRetentionRequest,\n): any {\n return {\n backupSettings: backupSettingsSerializer(item[\"backupSettings\"]),\n targetDetails: backupStoreDetailsSerializer(item[\"targetDetails\"]),\n };\n}\n\n/** Details about the target where the backup content will be stored. */\nexport interface BackupStoreDetails {\n /** List of SAS uri of storage containers where backup data is to be streamed/copied. */\n sasUriList: string[];\n}\n\nexport function backupStoreDetailsSerializer(item: BackupStoreDetails): any {\n return {\n sasUriList: item[\"sasUriList\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** Response for the LTR backup API call */\nexport interface BackupsLongTermRetentionResponse {\n /** Size of datasource in bytes. */\n datasourceSizeInBytes?: number;\n /** Data transferred in bytes. */\n dataTransferredInBytes?: number;\n /** Name of Backup operation. */\n backupName?: string;\n /** Metadata to be stored in RP. Store everything that will be required to perform a successful restore using this Recovery point. e.g. Versions, DataFormat etc. */\n backupMetadata?: string;\n /** Service-set extensible enum indicating the status of operation. */\n status?: ExecutionStatus;\n /** Start time of the operation. */\n startTime?: Date;\n /** End time of the operation. */\n endTime?: Date;\n /** Percentage completed. */\n percentComplete?: number;\n /** Error code. */\n readonly errorCode?: string;\n /** Error message. */\n readonly errorMessage?: string;\n}\n\nexport function backupsLongTermRetentionResponseDeserializer(\n item: any,\n): BackupsLongTermRetentionResponse {\n return {\n ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _backupsLongTermRetentionResponsePropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Response for the backup request. */\nexport interface LtrBackupOperationResponseProperties {\n /** Size of datasource in bytes. */\n datasourceSizeInBytes?: number;\n /** Data transferred in bytes. */\n dataTransferredInBytes?: number;\n /** Name of Backup operation. */\n backupName?: string;\n /** Metadata to be stored in RP. Store everything that will be required to perform a successful restore using this Recovery point. e.g. Versions, DataFormat etc. */\n backupMetadata?: string;\n /** Service-set extensible enum indicating the status of operation. */\n status: ExecutionStatus;\n /** Start time of the operation. */\n startTime: Date;\n /** End time of the operation. */\n endTime?: Date;\n /** Percentage completed. */\n percentComplete?: number;\n /** Error code. */\n readonly errorCode?: string;\n /** Error message. */\n readonly errorMessage?: string;\n}\n\nexport function ltrBackupOperationResponsePropertiesDeserializer(\n item: any,\n): LtrBackupOperationResponseProperties {\n return {\n datasourceSizeInBytes: item[\"datasourceSizeInBytes\"],\n dataTransferredInBytes: item[\"dataTransferredInBytes\"],\n backupName: item[\"backupName\"],\n backupMetadata: item[\"backupMetadata\"],\n status: item[\"status\"],\n startTime: new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n percentComplete: item[\"percentComplete\"],\n errorCode: item[\"errorCode\"],\n errorMessage: item[\"errorMessage\"],\n };\n}\n\n/** Service-set extensible enumeration indicating the status of operation. */\nexport enum KnownExecutionStatus {\n /** Operation is currently running. */\n Running = \"Running\",\n /** Operation has been cancelled. */\n Cancelled = \"Cancelled\",\n /** Operation has failed. */\n Failed = \"Failed\",\n /** Operation has succeeded. */\n Succeeded = \"Succeeded\",\n}\n\n/**\n * Service-set extensible enumeration indicating the status of operation. \\\n * {@link KnownExecutionStatus} can be used interchangeably with ExecutionStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Running**: Operation is currently running. \\\n * **Cancelled**: Operation has been cancelled. \\\n * **Failed**: Operation has failed. \\\n * **Succeeded**: Operation has succeeded.\n */\nexport type ExecutionStatus = string;\n\n/** Response for the LTR backup Operation API call */\nexport interface BackupsLongTermRetentionOperation extends ProxyResource {\n /** Size of datasource in bytes. */\n datasourceSizeInBytes?: number;\n /** Data transferred in bytes. */\n dataTransferredInBytes?: number;\n /** Name of Backup operation. */\n backupName?: string;\n /** Metadata to be stored in RP. Store everything that will be required to perform a successful restore using this Recovery point. e.g. Versions, DataFormat etc. */\n backupMetadata?: string;\n /** Service-set extensible enum indicating the status of operation. */\n status?: ExecutionStatus;\n /** Start time of the operation. */\n startTime?: Date;\n /** End time of the operation. */\n endTime?: Date;\n /** Percentage completed. */\n percentComplete?: number;\n /** Error code. */\n readonly errorCode?: string;\n /** Error message. */\n readonly errorMessage?: string;\n}\n\nexport function backupsLongTermRetentionOperationDeserializer(\n item: any,\n): BackupsLongTermRetentionOperation {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _backupsLongTermRetentionOperationPropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** A list of long term retention backup operations for server. */\nexport interface _LtrServerBackupOperationList {\n /** The BackupsLongTermRetentionOperation items on this page */\n value: BackupsLongTermRetentionOperation[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _ltrServerBackupOperationListDeserializer(\n item: any,\n): _LtrServerBackupOperationList {\n return {\n value: backupsLongTermRetentionOperationArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function backupsLongTermRetentionOperationArrayDeserializer(\n result: Array<BackupsLongTermRetentionOperation>,\n): any[] {\n return result.map((item) => {\n return backupsLongTermRetentionOperationDeserializer(item);\n });\n}\n\n/** Advanced threat protection settings of the server. */\nexport interface AdvancedThreatProtectionSettingsModel extends ProxyResource {\n /** Specifies the state of the advanced threat protection, whether it is enabled, disabled, or a state has not been applied yet on the server. */\n state?: ThreatProtectionState;\n /** Specifies the creation time (UTC) of the policy. */\n readonly creationTime?: Date;\n}\n\nexport function advancedThreatProtectionSettingsModelSerializer(\n item: AdvancedThreatProtectionSettingsModel,\n): any {\n return {\n properties: areAllPropsUndefined(item, [\"state\"])\n ? undefined\n : _advancedThreatProtectionSettingsModelPropertiesSerializer(item),\n };\n}\n\nexport function advancedThreatProtectionSettingsModelDeserializer(\n item: any,\n): AdvancedThreatProtectionSettingsModel {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _advancedThreatProtectionSettingsModelPropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Properties of advanced threat protection state for a server. */\nexport interface AdvancedThreatProtectionSettingsProperties {\n /** Specifies the state of the advanced threat protection, whether it is enabled, disabled, or a state has not been applied yet on the server. */\n state: ThreatProtectionState;\n /** Specifies the creation time (UTC) of the policy. */\n readonly creationTime?: Date;\n}\n\nexport function advancedThreatProtectionSettingsPropertiesSerializer(\n item: AdvancedThreatProtectionSettingsProperties,\n): any {\n return { state: item[\"state\"] };\n}\n\nexport function advancedThreatProtectionSettingsPropertiesDeserializer(\n item: any,\n): AdvancedThreatProtectionSettingsProperties {\n return {\n state: item[\"state\"],\n creationTime: !item[\"creationTime\"] ? item[\"creationTime\"] : new Date(item[\"creationTime\"]),\n };\n}\n\n/** Specifies the state of the advanced threat protection, whether it is enabled, disabled, or a state has not been applied yet on the server. */\nexport type ThreatProtectionState = \"Enabled\" | \"Disabled\";\n\n/** Known values of {@link ThreatProtectionName} that the service accepts. */\nexport enum KnownThreatProtectionName {\n /** Default advanced threat protection settings. */\n Default = \"Default\",\n}\n\n/** Type of ThreatProtectionName */\nexport type ThreatProtectionName = string;\n\n/** List of advanced threat protection settings for a server. */\nexport interface _AdvancedThreatProtectionSettingsList {\n /** The AdvancedThreatProtectionSettingsModel items on this page */\n readonly value: AdvancedThreatProtectionSettingsModel[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _advancedThreatProtectionSettingsListDeserializer(\n item: any,\n): _AdvancedThreatProtectionSettingsList {\n return {\n value: advancedThreatProtectionSettingsModelArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function advancedThreatProtectionSettingsModelArraySerializer(\n result: Array<AdvancedThreatProtectionSettingsModel>,\n): any[] {\n return result.map((item) => {\n return advancedThreatProtectionSettingsModelSerializer(item);\n });\n}\n\nexport function advancedThreatProtectionSettingsModelArrayDeserializer(\n result: Array<AdvancedThreatProtectionSettingsModel>,\n): any[] {\n return result.map((item) => {\n return advancedThreatProtectionSettingsModelDeserializer(item);\n });\n}\n\n/** Properties of a backup. */\nexport interface BackupAutomaticAndOnDemand extends ProxyResource {\n /** Type of backup. */\n backupType?: BackupType;\n /** Time(ISO8601 format) at which the backup was completed. */\n completedTime?: Date;\n /** Source of the backup. */\n source?: string;\n}\n\nexport function backupAutomaticAndOnDemandDeserializer(item: any): BackupAutomaticAndOnDemand {\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 ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _backupAutomaticAndOnDemandPropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Properties of a backup. */\nexport interface BackupAutomaticAndOnDemandProperties {\n /** Type of backup. */\n backupType?: BackupType;\n /** Time(ISO8601 format) at which the backup was completed. */\n completedTime?: Date;\n /** Source of the backup. */\n source?: string;\n}\n\nexport function backupAutomaticAndOnDemandPropertiesDeserializer(\n item: any,\n): BackupAutomaticAndOnDemandProperties {\n return {\n backupType: item[\"backupType\"],\n completedTime: !item[\"completedTime\"] ? item[\"completedTime\"] : new Date(item[\"completedTime\"]),\n source: item[\"source\"],\n };\n}\n\n/** Type of backup. */\nexport enum KnownBackupType {\n /** A full backup taken automatically by the service. These backups are retained for a period of time as defined by the backup retention policy, and they cannot be deleted by the customer. */\n Full = \"Full\",\n /** A full backup triggered by the customer. These backups are retained for a period of time as defined by the backup retention policy, and they can also be deleted by the customer. */\n CustomerOnDemand = \"Customer On-Demand\",\n}\n\n/**\n * Type of backup. \\\n * {@link KnownBackupType} can be used interchangeably with BackupType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Full**: A full backup taken automatically by the service. These backups are retained for a period of time as defined by the backup retention policy, and they cannot be deleted by the customer. \\\n * **Customer On-Demand**: A full backup triggered by the customer. These backups are retained for a period of time as defined by the backup retention policy, and they can also be deleted by the customer.\n */\nexport type BackupType = string;\n\n/** List of backups. */\nexport interface _BackupAutomaticAndOnDemandList {\n /** The BackupAutomaticAndOnDemand items on this page */\n value: BackupAutomaticAndOnDemand[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _backupAutomaticAndOnDemandListDeserializer(\n item: any,\n): _BackupAutomaticAndOnDemandList {\n return {\n value: backupAutomaticAndOnDemandArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function backupAutomaticAndOnDemandArrayDeserializer(\n result: Array<BackupAutomaticAndOnDemand>,\n): any[] {\n return result.map((item) => {\n return backupAutomaticAndOnDemandDeserializer(item);\n });\n}\n\n/** Impact on some metric if this recommended action is applied. */\nexport interface TuningOptions extends ProxyResource {\n /** The resource-specific properties for this resource. */\n properties?: TuningOptionsProperties;\n}\n\nexport function tuningOptionsDeserializer(item: any): TuningOptions {\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 : tuningOptionsPropertiesDeserializer(item[\"properties\"]),\n };\n}\n\n/** Properties of a tuning option. */\nexport interface TuningOptionsProperties {\n /** State of the tuning option. */\n readonly state?: string;\n}\n\nexport function tuningOptionsPropertiesDeserializer(item: any): TuningOptionsProperties {\n return {\n state: item[\"state\"],\n };\n}\n\n/** Name of the tuning option. */\nexport enum KnownTuningOptionParameterEnum {\n /** Index related recommendations. */\n Index = \"index\",\n /** Table related recommendations. */\n Table = \"table\",\n}\n\n/**\n * Name of the tuning option. \\\n * {@link KnownTuningOptionParameterEnum} can be used interchangeably with TuningOptionParameterEnum,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **index**: Index related recommendations. \\\n * **table**: Table related recommendations.\n */\nexport type TuningOptionParameterEnum = string;\n\n/** List of server tuning options. */\nexport interface _TuningOptionsList {\n /** The TuningOptions items on this page */\n value: TuningOptions[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _tuningOptionsListDeserializer(item: any): _TuningOptionsList {\n return {\n value: tuningOptionsArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function tuningOptionsArrayDeserializer(result: Array<TuningOptions>): any[] {\n return result.map((item) => {\n return tuningOptionsDeserializer(item);\n });\n}\n\n/** List of available object recommendations. */\nexport interface _ObjectRecommendationList {\n /** The ObjectRecommendation items on this page */\n value: ObjectRecommendation[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _objectRecommendationListDeserializer(item: any): _ObjectRecommendationList {\n return {\n value: objectRecommendationArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function objectRecommendationArrayDeserializer(result: Array<ObjectRecommendation>): any[] {\n return result.map((item) => {\n return objectRecommendationDeserializer(item);\n });\n}\n\n/** Object recommendation properties. */\nexport interface ObjectRecommendation extends ProxyResource {\n /** Always empty. */\n kind?: string;\n /** Creation time (UTC) of this recommendation. */\n initialRecommendedTime?: Date;\n /** Last time (UTC) that this recommendation was produced. */\n lastRecommendedTime?: Date;\n /** Number of times this recommendation has been produced. */\n timesRecommended?: number;\n /** List of identifiers for all queries identified as targets for improvement if the recommendation is applied. The list is only populated for CREATE INDEX recommendations. */\n improvedQueryIds?: number[];\n /** Reason for this recommendation. */\n recommendationReason?: string;\n /** Current state. */\n currentState?: string;\n /** Type for this recommendation. */\n recommendationType?: RecommendationTypeEnum;\n /** Implementation details for the recommended action. */\n implementationDetails?: ObjectRecommendationPropertiesImplementationDetails;\n /** Workload information for the recommended action. */\n analyzedWorkload?: ObjectRecommendationPropertiesAnalyzedWorkload;\n /** Estimated impact of this recommended action. */\n readonly estimatedImpact?: ImpactRecord[];\n /** Recommendation details for the recommended action. */\n readonly details?: ObjectRecommendationDetails;\n}\n\nexport function objectRecommendationDeserializer(item: any): ObjectRecommendation {\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 kind: item[\"kind\"],\n ...(!item[\"properties\"]\n ? item[\"properties\"]\n : _objectRecommendationPropertiesDeserializer(item[\"properties\"])),\n };\n}\n\n/** Object recommendation properties. */\nexport interface ObjectRecommendationProperties {\n /** Creation time (UTC) of this recommendation. */\n initialRecommendedTime?: Date;\n /** Last time (UTC) that this recommendation was produced. */\n lastRecommendedTime?: Date;\n /** Number of times this recommendation has been produced. */\n timesRecommended?: number;\n /** List of identifiers for all queries identified as targets for improvement if the recommendation is applied. The list is only populated for CREATE INDEX recommendations. */\n improvedQueryIds?: number[];\n /** Reason for this recommendation. */\n recommendationReason?: string;\n /** Current state. */\n currentState?: string;\n /** Type for this recommendation. */\n recommendationType?: RecommendationTypeEnum;\n /** Implementation details for the recommended action. */\n implementationDetails?: ObjectRecommendationPropertiesImplementationDetails;\n /** Workload information for the recommended action. */\n analyzedWorkload?: ObjectRecommendationPropertiesAnalyzedWorkload;\n /** Estimated impact of this recommended action. */\n readonly estimatedImpact?: ImpactRecord[];\n /** Recommendation details for the recommended action. */\n readonly details?: ObjectRecommendationDetails;\n}\n\nexport function objectRecommendationPropertiesDeserializer(\n item: any,\n): ObjectRecommendationProperties {\n return {\n initialRecommendedTime: !item[\"initialRecommendedTime\"]\n ? item[\"initialRecommendedTime\"]\n : new Date(item[\"initialRecommendedTime\"]),\n lastRecommendedTime: !item[\"lastRecommendedTime\"]\n ? item[\"lastRecommendedTime\"]\n : new Date(item[\"lastRecommendedTime\"]),\n timesRecommended: item[\"timesRecommended\"],\n improvedQueryIds: !item[\"improvedQueryIds\"]\n ? item[\"improvedQueryIds\"]\n : item[\"improvedQueryIds\"].map((p: any) => {\n return p;\n }),\n recommendationReason: item[\"recommendationReason\"],\n currentState: item[\"currentState\"],\n recommendationType: item[\"recommendationType\"],\n implementationDetails: !item[\"implementationDetails\"]\n ? item[\"implementationDetails\"]\n : objectRecommendationPropertiesImplementationDetailsDeserializer(\n item[\"implementationDetails\"],\n ),\n analyzedWorkload: !item[\"analyzedWorkload\"]\n ? item[\"analyzedWorkload\"]\n : objectRecommendationPropertiesAnalyzedWorkloadDeserializer(item[\"analyzedWorkload\"]),\n estimatedImpact: !item[\"estimatedImpact\"]\n ? item[\"estimatedImpact\"]\n : impactRecordArrayDeserializer(item[\"estimatedImpact\"]),\n details: !item[\"details\"]\n ? item[\"details\"]\n : objectRecommendationDetailsDeserializer(item[\"details\"]),\n };\n}\n\n/** Type for this recommendation. */\nexport enum KnownRecommendationTypeEnum {\n /** Recommendation to create an index to improve query performance. */\n CreateIndex = \"CreateIndex\",\n /** Recommendation to drop an existing index because it's duplicate or unused. */\n DropIndex = \"DropIndex\",\n /** Recommendation to reindex an existing invalid index. */\n ReIndex = \"ReIndex\",\n /** Recommendation to analyze a table to update statistics for the query optimizer. */\n AnalyzeTable = \"AnalyzeTable\",\n /** Recommendation to vacuum a table to reclaim storage and optimize performance. */\n VacuumTable = \"VacuumTable\",\n}\n\n/**\n * Type for this recommendation. \\\n * {@link KnownRecommendationTypeEnum} can be used interchangeably with RecommendationTypeEnum,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **CreateIndex**: Recommendation to create an index to improve query performance. \\\n * **DropIndex**: Recommendation to drop an existing index because it's duplicate or unused. \\\n * **ReIndex**: Recommendation to reindex an existing invalid index. \\\n * **AnalyzeTable**: Recommendation to analyze a table to update statistics for the query optimizer. \\\n * **VacuumTable**: Recommendation to vacuum a table to reclaim storage and optimize performance.\n */\nexport type RecommendationTypeEnum = string;\n\n/** Implementation details for the recommended action. */\nexport interface ObjectRecommendationPropertiesImplementationDetails {\n /** Method of implementation for recommended action. */\n method?: string;\n /** Implementation script for the recommended action. */\n script?: string;\n}\n\nexport function objectRecommendationPropertiesImplementationDetailsDeserializer(\n item: any,\n): ObjectRecommendationPropertiesImplementationDetails {\n return {\n method: item[\"method\"],\n script: item[\"script\"],\n };\n}\n\n/** Workload information for the recommended action. */\nexport interface ObjectRecommendationPropertiesAnalyzedWorkload {\n /** Start time (UTC) of the workload analyzed. */\n startTime?: Date;\n /** End time (UTC) of the workload analyzed. */\n endTime?: Date;\n /** Number of queries from the workload that were examined to produce this recommendation. For DROP INDEX recommendations it's 0 (zero). */\n queryCount?: number;\n}\n\nexport function objectRecommendationPropertiesAnalyzedWorkloadDeserializer(\n item: any,\n): ObjectRecommendationPropertiesAnalyzedWorkload {\n return {\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n queryCount: item[\"queryCount\"],\n };\n}\n\nexport function impactRecordArrayDeserializer(result: Array<ImpactRecord>): any[] {\n return result.map((item) => {\n return impactRecordDeserializer(item);\n });\n}\n\n/** Impact on some metric if this recommended action is applied. */\nexport interface ImpactRecord {\n /** Dimension name. */\n dimensionName?: string;\n /** Dimension unit. */\n unit?: string;\n /** Optional property that can be used to store the identifier of the query, if the metric is for a specific query. */\n queryId?: number;\n /** Absolute value. */\n absoluteValue?: number;\n}\n\nexport function impactRecordDeserializer(item: any): ImpactRecord {\n return {\n dimensionName: item[\"dimensionName\"],\n unit: item[\"unit\"],\n queryId: item[\"queryId\"],\n absoluteValue: item[\"absoluteValue\"],\n };\n}\n\n/** Recommendation details for the recommended action. */\nexport interface ObjectRecommendationDetails {\n /** Database name. */\n databaseName?: string;\n /** Schema name. */\n schema?: string;\n /** Table name. */\n table?: string;\n /** Index type. */\n indexType?: string;\n /** Index name. */\n indexName?: string;\n /** Index columns. */\n indexColumns?: string[];\n /** Index included columns. */\n includedColumns?: string[];\n}\n\nexport function objectRecommendationDetailsDeserializer(item: any): ObjectRecommendationDetails {\n return {\n databaseName: item[\"databaseName\"],\n schema: item[\"schema\"],\n table: item[\"table\"],\n indexType: item[\"indexType\"],\n indexName: item[\"indexName\"],\n indexColumns: !item[\"indexColumns\"]\n ? item[\"indexColumns\"]\n : item[\"indexColumns\"].map((p: any) => {\n return p;\n }),\n includedColumns: !item[\"includedColumns\"]\n ? item[\"includedColumns\"]\n : item[\"includedColumns\"].map((p: any) => {\n return p;\n }),\n };\n}\n\n/** The check availability request body. */\nexport interface CheckNameAvailabilityRequest {\n /** The name of the resource for which availability needs to be checked. */\n name?: string;\n /** The resource type. */\n type?: string;\n}\n\nexport function checkNameAvailabilityRequestSerializer(item: CheckNameAvailabilityRequest): any {\n return { name: item[\"name\"], type: item[\"type\"] };\n}\n\n/** Availability of a name. */\nexport interface NameAvailabilityModel extends CheckNameAvailabilityResponse {\n /** Name for which validity and availability was checked. */\n readonly name?: string;\n /** Type of resource. It can be 'Microsoft.DBforPostgreSQL/flexibleServers' or 'Microsoft.DBforPostgreSQL/flexibleServers/virtualendpoints'. */\n readonly type?: string;\n}\n\nexport function nameAvailabilityModelDeserializer(item: any): NameAvailabilityModel {\n return {\n nameAvailable: item[\"nameAvailable\"],\n reason: item[\"reason\"],\n message: item[\"message\"],\n name: item[\"name\"],\n type: item[\"type\"],\n };\n}\n\n/** The check availability result. */\nexport interface CheckNameAvailabilityResponse {\n /** Indicates if the resource name is available. */\n nameAvailable?: boolean;\n /** The reason why the given name is not available. */\n reason?: CheckNameAvailabilityReason;\n /** Detailed reason why the given name is not available. */\n message?: string;\n}\n\nexport function checkNameAvailabilityResponseDeserializer(\n item: any,\n): CheckNameAvailabilityResponse {\n return {\n nameAvailable: item[\"nameAvailable\"],\n reason: item[\"reason\"],\n message: item[\"message\"],\n };\n}\n\n/** Possible reasons for a name not being available. */\nexport enum KnownCheckNameAvailabilityReason {\n /** Name is invalid. */\n Invalid = \"Invalid\",\n /** Name already exists. */\n AlreadyExists = \"AlreadyExists\",\n}\n\n/**\n * Possible reasons for a name not being available. \\\n * {@link KnownCheckNameAvailabilityReason} can be used interchangeably with CheckNameAvailabilityReason,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Invalid**: Name is invalid. \\\n * **AlreadyExists**: Name already exists.\n */\nexport type CheckNameAvailabilityReason = string;\n\n/** Capability for the PostgreSQL server */\nexport interface _QuotaUsageList {\n /** The QuotaUsage items on this page */\n readonly value: QuotaUsage[];\n /** The link to the next page of items */\n nextLink?: string;\n}\n\nexport function _quotaUsageListDeserializer(item: any): _QuotaUsageList {\n return {\n value: quotaUsageArrayDeserializer(item[\"value\"]),\n nextLink: item[\"nextLink\"],\n };\n}\n\nexport function quotaUsageArrayDeserializer(result: Array<QuotaUsage>): any[] {\n return result.map((item) => {\n return quotaUsageDeserializer(item);\n });\n}\n\n/** Quota usage for servers */\nexport interface QuotaUsage {\n /** Name of quota usage for servers */\n name?: NameProperty;\n /** Quota limit */\n limit?: number;\n /** Quota unit */\n unit?: string;\n /** Current Quota usage value */\n currentValue?: number;\n /** Fully qualified ARM resource Id */\n id?: string;\n}\n\nexport function quotaUsageDeserializer(item: any): QuotaUsage {\n return {\n name: !item[\"name\"] ? item[\"name\"] : namePropertyDeserializer(item[\"name\"]),\n limit: item[\"limit\"],\n unit: item[\"unit\"],\n currentValue: item[\"currentValue\"],\n id: item[\"id\"],\n };\n}\n\n/** Name property for quota usage */\nexport interface NameProperty {\n /** Name value */\n value?: string;\n /** Localized name */\n localizedValue?: string;\n}\n\nexport function namePropertyDeserializer(item: any): NameProperty {\n return {\n value: item[\"value\"],\n localizedValue: item[\"localizedValue\"],\n };\n}\n\n/** Virtual network subnet usage parameter */\nexport interface VirtualNetworkSubnetUsageParameter {\n /** Virtual network resource id. */\n virtualNetworkArmResourceId?: string;\n}\n\nexport function virtualNetworkSubnetUsageParameterSerializer(\n item: VirtualNetworkSubnetUsageParameter,\n): any {\n return { virtualNetworkArmResourceId: item[\"virtualNetworkArmResourceId\"] };\n}\n\n/** Virtual network subnet usage data. */\nexport interface VirtualNetworkSubnetUsageModel {\n readonly delegatedSubnetsUsage?: DelegatedSubnetUsage[];\n /** location of the delegated subnet usage */\n readonly location?: string;\n /** subscriptionId of the delegated subnet usage */\n readonly subscriptionId?: string;\n}\n\nexport function virtualNetworkSubnetUsageModelDeserializer(\n item: any,\n): VirtualNetworkSubnetUsageModel {\n return {\n delegatedSubnetsUsage: !item[\"delegatedSubnetsUsage\"]\n ? item[\"delegatedSubnetsUsage\"]\n : delegatedSubnetUsageArrayDeserializer(item[\"delegatedSubnetsUsage\"]),\n location: item[\"location\"],\n subscriptionId: item[\"subscriptionId\"],\n };\n}\n\nexport function delegatedSubnetUsageArrayDeserializer(result: Array<DelegatedSubnetUsage>): any[] {\n return result.map((item) => {\n return delegatedSubnetUsageDeserializer(item);\n });\n}\n\n/** Delegated subnet usage data. */\nexport interface DelegatedSubnetUsage {\n /** Name of the delegated subnet for which IP addresses are in use */\n readonly subnetName?: string;\n /** Number of IP addresses used by the delegated subnet */\n readonly usage?: number;\n}\n\nexport function delegatedSubnetUsageDeserializer(item: any): DelegatedSubnetUsage {\n return {\n subnetName: item[\"subnetName\"],\n usage: item[\"usage\"],\n };\n}\n\n/** Indicates the filter to apply when listing migrations. */\nexport enum KnownMigrationListFilter {\n /** Only active (in-progress) migrations. */\n Active = \"Active\",\n /** All migrations. */\n All = \"All\",\n}\n\n/**\n * Indicates the filter to apply when listing migrations. \\\n * {@link KnownMigrationListFilter} can be used interchangeably with MigrationListFilter,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Active**: Only active (in-progress) migrations. \\\n * **All**: All migrations.\n */\nexport type MigrationListFilter = string;\n\n/** Filter for maintenance event status. */\nexport enum KnownMaintenanceEventStatusFilter {\n /** Return events that have a scheduled or in progress status. */\n Upcoming = \"Upcoming\",\n /** Return events that have a completed status. */\n Past = \"Past\",\n}\n\n/**\n * Filter for maintenance event status. \\\n * {@link KnownMaintenanceEventStatusFilter} can be used interchangeably with MaintenanceEventStatusFilter,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Upcoming**: Return events that have a scheduled or in progress status. \\\n * **Past**: Return events that have a completed status.\n */\nexport type MaintenanceEventStatusFilter = string;\n\n/** Recommendations list filter. Retrieves recommendations based on type. */\nexport enum KnownRecommendationTypeParameterEnum {\n /** Recommendation to create an index to improve query performance. */\n CreateIndex = \"CreateIndex\",\n /** Recommendation to drop an existing index because it's duplicate or unused. */\n DropIndex = \"DropIndex\",\n /** Recommendation to reindex an existing invalid index. */\n ReIndex = \"ReIndex\",\n /** Recommendation to analyze a table to update statistics for the query optimizer. */\n AnalyzeTable = \"AnalyzeTable\",\n /** Recommendation to vacuum a table to reclaim storage and optimize performance. */\n VacuumTable = \"VacuumTable\",\n}\n\n/**\n * Recommendations list filter. Retrieves recommendations based on type. \\\n * {@link KnownRecommendationTypeParameterEnum} can be used interchangeably with RecommendationTypeParameterEnum,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **CreateIndex**: Recommendation to create an index to improve query performance. \\\n * **DropIndex**: Recommendation to drop an existing index because it's duplicate or unused. \\\n * **ReIndex**: Recommendation to reindex an existing invalid index. \\\n * **AnalyzeTable**: Recommendation to analyze a table to update statistics for the query optimizer. \\\n * **VacuumTable**: Recommendation to vacuum a table to reclaim storage and optimize performance.\n */\nexport type RecommendationTypeParameterEnum = string;\n\n/** The available API versions. */\nexport enum KnownVersions {\n /** The 2025-08-01 API version. */\n V20250801 = \"2025-08-01\",\n /** The 2026-01-01-preview API version. */\n V20260101 = \"2026-01-01-preview\",\n /** The 2026-04-01-preview API version. */\n V20260401 = \"2026-04-01-preview\",\n}\n\nexport function _migrationPropertiesSerializer(item: Migration): any {\n return {\n migrationInstanceResourceId: item[\"migrationInstanceResourceId\"],\n migrationMode: item[\"migrationMode\"],\n migrationOption: item[\"migrationOption\"],\n sourceType: item[\"sourceType\"],\n sslMode: item[\"sslMode\"],\n sourceDbServerResourceId: item[\"sourceDbServerResourceId\"],\n sourceDbServerFullyQualifiedDomainName: item[\"sourceDbServerFullyQualifiedDomainName\"],\n targetDbServerFullyQualifiedDomainName: item[\"targetDbServerFullyQualifiedDomainName\"],\n secretParameters: !item[\"secretParameters\"]\n ? item[\"secretParameters\"]\n : migrationSecretParametersSerializer(item[\"secretParameters\"]),\n dbsToMigrate: !item[\"dbsToMigrate\"]\n ? item[\"dbsToMigrate\"]\n : item[\"dbsToMigrate\"].map((p: any) => {\n return p;\n }),\n setupLogicalReplicationOnSourceDbIfNeeded: item[\"setupLogicalReplicationOnSourceDbIfNeeded\"],\n overwriteDbsInTarget: item[\"overwriteDbsInTarget\"],\n migrationWindowStartTimeInUtc: !item[\"migrationWindowStartTimeInUtc\"]\n ? item[\"migrationWindowStartTimeInUtc\"]\n : item[\"migrationWindowStartTimeInUtc\"].toISOString(),\n migrationWindowEndTimeInUtc: !item[\"migrationWindowEndTimeInUtc\"]\n ? item[\"migrationWindowEndTimeInUtc\"]\n : item[\"migrationWindowEndTimeInUtc\"].toISOString(),\n migrateRoles: item[\"migrateRoles\"],\n startDataMigration: item[\"startDataMigration\"],\n triggerCutover: item[\"triggerCutover\"],\n dbsToTriggerCutoverOn: !item[\"dbsToTriggerCutoverOn\"]\n ? item[\"dbsToTriggerCutoverOn\"]\n : item[\"dbsToTriggerCutoverOn\"].map((p: any) => {\n return p;\n }),\n cancel: item[\"cancel\"],\n dbsToCancelMigrationOn: !item[\"dbsToCancelMigrationOn\"]\n ? item[\"dbsToCancelMigrationOn\"]\n : item[\"dbsToCancelMigrationOn\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function _migrationPropertiesDeserializer(item: any) {\n return {\n migrationId: item[\"migrationId\"],\n currentStatus: !item[\"currentStatus\"]\n ? item[\"currentStatus\"]\n : migrationStatusDeserializer(item[\"currentStatus\"]),\n migrationInstanceResourceId: item[\"migrationInstanceResourceId\"],\n migrationMode: item[\"migrationMode\"],\n migrationOption: item[\"migrationOption\"],\n sourceType: item[\"sourceType\"],\n sslMode: item[\"sslMode\"],\n sourceDbServerMetadata: !item[\"sourceDbServerMetadata\"]\n ? item[\"sourceDbServerMetadata\"]\n : dbServerMetadataDeserializer(item[\"sourceDbServerMetadata\"]),\n targetDbServerMetadata: !item[\"targetDbServerMetadata\"]\n ? item[\"targetDbServerMetadata\"]\n : dbServerMetadataDeserializer(item[\"targetDbServerMetadata\"]),\n sourceDbServerResourceId: item[\"sourceDbServerResourceId\"],\n sourceDbServerFullyQualifiedDomainName: item[\"sourceDbServerFullyQualifiedDomainName\"],\n targetDbServerResourceId: item[\"targetDbServerResourceId\"],\n targetDbServerFullyQualifiedDomainName: item[\"targetDbServerFullyQualifiedDomainName\"],\n secretParameters: !item[\"secretParameters\"]\n ? item[\"secretParameters\"]\n : migrationSecretParametersDeserializer(item[\"secretParameters\"]),\n dbsToMigrate: !item[\"dbsToMigrate\"]\n ? item[\"dbsToMigrate\"]\n : item[\"dbsToMigrate\"].map((p: any) => {\n return p;\n }),\n setupLogicalReplicationOnSourceDbIfNeeded: item[\"setupLogicalReplicationOnSourceDbIfNeeded\"],\n overwriteDbsInTarget: item[\"overwriteDbsInTarget\"],\n migrationWindowStartTimeInUtc: !item[\"migrationWindowStartTimeInUtc\"]\n ? item[\"migrationWindowStartTimeInUtc\"]\n : new Date(item[\"migrationWindowStartTimeInUtc\"]),\n migrationWindowEndTimeInUtc: !item[\"migrationWindowEndTimeInUtc\"]\n ? item[\"migrationWindowEndTimeInUtc\"]\n : new Date(item[\"migrationWindowEndTimeInUtc\"]),\n migrateRoles: item[\"migrateRoles\"],\n startDataMigration: item[\"startDataMigration\"],\n triggerCutover: item[\"triggerCutover\"],\n dbsToTriggerCutoverOn: !item[\"dbsToTriggerCutoverOn\"]\n ? item[\"dbsToTriggerCutoverOn\"]\n : item[\"dbsToTriggerCutoverOn\"].map((p: any) => {\n return p;\n }),\n cancel: item[\"cancel\"],\n dbsToCancelMigrationOn: !item[\"dbsToCancelMigrationOn\"]\n ? item[\"dbsToCancelMigrationOn\"]\n : item[\"dbsToCancelMigrationOn\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function _migrationResourceForPatchPropertiesSerializer(\n item: MigrationResourceForPatch,\n): any {\n return {\n sourceDbServerResourceId: item[\"sourceDbServerResourceId\"],\n sourceDbServerFullyQualifiedDomainName: item[\"sourceDbServerFullyQualifiedDomainName\"],\n targetDbServerFullyQualifiedDomainName: item[\"targetDbServerFullyQualifiedDomainName\"],\n secretParameters: !item[\"secretParameters\"]\n ? item[\"secretParameters\"]\n : migrationSecretParametersForPatchSerializer(item[\"secretParameters\"]),\n dbsToMigrate: !item[\"dbsToMigrate\"]\n ? item[\"dbsToMigrate\"]\n : item[\"dbsToMigrate\"].map((p: any) => {\n return p;\n }),\n setupLogicalReplicationOnSourceDbIfNeeded: item[\"setupLogicalReplicationOnSourceDbIfNeeded\"],\n overwriteDbsInTarget: item[\"overwriteDbsInTarget\"],\n migrationWindowStartTimeInUtc: !item[\"migrationWindowStartTimeInUtc\"]\n ? item[\"migrationWindowStartTimeInUtc\"]\n : item[\"migrationWindowStartTimeInUtc\"].toISOString(),\n migrateRoles: item[\"migrateRoles\"],\n startDataMigration: item[\"startDataMigration\"],\n triggerCutover: item[\"triggerCutover\"],\n dbsToTriggerCutoverOn: !item[\"dbsToTriggerCutoverOn\"]\n ? item[\"dbsToTriggerCutoverOn\"]\n : item[\"dbsToTriggerCutoverOn\"].map((p: any) => {\n return p;\n }),\n cancel: item[\"cancel\"],\n dbsToCancelMigrationOn: !item[\"dbsToCancelMigrationOn\"]\n ? item[\"dbsToCancelMigrationOn\"]\n : item[\"dbsToCancelMigrationOn\"].map((p: any) => {\n return p;\n }),\n migrationMode: item[\"migrationMode\"],\n };\n}\n\nexport function _privateEndpointConnectionPropertiesSerializer(\n item: PrivateEndpointConnection,\n): any {\n return {\n privateEndpoint: !item[\"privateEndpoint\"]\n ? item[\"privateEndpoint\"]\n : privateEndpointSerializer(item[\"privateEndpoint\"]),\n privateLinkServiceConnectionState: !item[\"privateLinkServiceConnectionState\"]\n ? item[\"privateLinkServiceConnectionState\"]\n : privateLinkServiceConnectionStateSerializer(item[\"privateLinkServiceConnectionState\"]),\n };\n}\n\nexport function _privateEndpointConnectionPropertiesDeserializer(item: any) {\n return {\n groupIds: !item[\"groupIds\"]\n ? item[\"groupIds\"]\n : item[\"groupIds\"].map((p: any) => {\n return p;\n }),\n privateEndpoint: !item[\"privateEndpoint\"]\n ? item[\"privateEndpoint\"]\n : privateEndpointDeserializer(item[\"privateEndpoint\"]),\n privateLinkServiceConnectionState: !item[\"privateLinkServiceConnectionState\"]\n ? item[\"privateLinkServiceConnectionState\"]\n : privateLinkServiceConnectionStateDeserializer(item[\"privateLinkServiceConnectionState\"]),\n provisioningState: item[\"provisioningState\"],\n };\n}\n\nexport function _serverPropertiesSerializer(item: Server): any {\n return {\n administratorLogin: item[\"administratorLogin\"],\n administratorLoginPassword: item[\"administratorLoginPassword\"],\n version: item[\"version\"],\n storage: !item[\"storage\"] ? item[\"storage\"] : storageSerializer(item[\"storage\"]),\n authConfig: !item[\"authConfig\"] ? item[\"authConfig\"] : authConfigSerializer(item[\"authConfig\"]),\n dataEncryption: !item[\"dataEncryption\"]\n ? item[\"dataEncryption\"]\n : dataEncryptionSerializer(item[\"dataEncryption\"]),\n backup: !item[\"backup\"] ? item[\"backup\"] : backupSerializer(item[\"backup\"]),\n network: !item[\"network\"] ? item[\"network\"] : networkSerializer(item[\"network\"]),\n highAvailability: !item[\"highAvailability\"]\n ? item[\"highAvailability\"]\n : highAvailabilitySerializer(item[\"highAvailability\"]),\n maintenanceWindow: !item[\"maintenanceWindow\"]\n ? item[\"maintenanceWindow\"]\n : maintenanceWindowSerializer(item[\"maintenanceWindow\"]),\n sourceServerResourceId: item[\"sourceServerResourceId\"],\n pointInTimeUTC: !item[\"pointInTimeUTC\"]\n ? item[\"pointInTimeUTC\"]\n : item[\"pointInTimeUTC\"].toISOString(),\n availabilityZone: item[\"availabilityZone\"],\n replicationRole: item[\"replicationRole\"],\n replica: !item[\"replica\"] ? item[\"replica\"] : replicaSerializer(item[\"replica\"]),\n createMode: item[\"createMode\"],\n cluster: !item[\"cluster\"] ? item[\"cluster\"] : clusterSerializer(item[\"cluster\"]),\n };\n}\n\nexport function _serverPropertiesDeserializer(item: any) {\n return {\n administratorLogin: item[\"administratorLogin\"],\n administratorLoginPassword: item[\"administratorLoginPassword\"],\n version: item[\"version\"],\n minorVersion: item[\"minorVersion\"],\n state: item[\"state\"],\n fullyQualifiedDomainName: item[\"fullyQualifiedDomainName\"],\n storage: !item[\"storage\"] ? item[\"storage\"] : storageDeserializer(item[\"storage\"]),\n authConfig: !item[\"authConfig\"]\n ? item[\"authConfig\"]\n : authConfigDeserializer(item[\"authConfig\"]),\n dataEncryption: !item[\"dataEncryption\"]\n ? item[\"dataEncryption\"]\n : dataEncryptionDeserializer(item[\"dataEncryption\"]),\n backup: !item[\"backup\"] ? item[\"backup\"] : backupDeserializer(item[\"backup\"]),\n network: !item[\"network\"] ? item[\"network\"] : networkDeserializer(item[\"network\"]),\n highAvailability: !item[\"highAvailability\"]\n ? item[\"highAvailability\"]\n : highAvailabilityDeserializer(item[\"highAvailability\"]),\n maintenanceWindow: !item[\"maintenanceWindow\"]\n ? item[\"maintenanceWindow\"]\n : maintenanceWindowDeserializer(item[\"maintenanceWindow\"]),\n sourceServerResourceId: item[\"sourceServerResourceId\"],\n pointInTimeUTC: !item[\"pointInTimeUTC\"]\n ? item[\"pointInTimeUTC\"]\n : new Date(item[\"pointInTimeUTC\"]),\n availabilityZone: item[\"availabilityZone\"],\n replicationRole: item[\"replicationRole\"],\n replicaCapacity: item[\"replicaCapacity\"],\n replica: !item[\"replica\"] ? item[\"replica\"] : replicaDeserializer(item[\"replica\"]),\n createMode: item[\"createMode\"],\n privateEndpointConnections: !item[\"privateEndpointConnections\"]\n ? item[\"privateEndpointConnections\"]\n : privateEndpointConnectionArrayDeserializer(item[\"privateEndpointConnections\"]),\n cluster: !item[\"cluster\"] ? item[\"cluster\"] : clusterDeserializer(item[\"cluster\"]),\n };\n}\n\nexport function _serverForPatchPropertiesSerializer(item: ServerForPatch): any {\n return {\n administratorLoginPassword: item[\"administratorLoginPassword\"],\n version: item[\"version\"],\n storage: !item[\"storage\"] ? item[\"storage\"] : storageSerializer(item[\"storage\"]),\n backup: !item[\"backup\"] ? item[\"backup\"] : backupForPatchSerializer(item[\"backup\"]),\n highAvailability: !item[\"highAvailability\"]\n ? item[\"highAvailability\"]\n : highAvailabilityForPatchSerializer(item[\"highAvailability\"]),\n maintenanceWindow: !item[\"maintenanceWindow\"]\n ? item[\"maintenanceWindow\"]\n : maintenanceWindowForPatchSerializer(item[\"maintenanceWindow\"]),\n authConfig: !item[\"authConfig\"]\n ? item[\"authConfig\"]\n : authConfigForPatchSerializer(item[\"authConfig\"]),\n dataEncryption: !item[\"dataEncryption\"]\n ? item[\"dataEncryption\"]\n : dataEncryptionSerializer(item[\"dataEncryption\"]),\n availabilityZone: item[\"availabilityZone\"],\n createMode: item[\"createMode\"],\n replicationRole: item[\"replicationRole\"],\n replica: !item[\"replica\"] ? item[\"replica\"] : replicaSerializer(item[\"replica\"]),\n network: !item[\"network\"] ? item[\"network\"] : networkSerializer(item[\"network\"]),\n cluster: !item[\"cluster\"] ? item[\"cluster\"] : clusterSerializer(item[\"cluster\"]),\n };\n}\n\nexport function _configurationPropertiesSerializer(item: Configuration): any {\n return { value: item[\"value\"], source: item[\"source\"] };\n}\n\nexport function _configurationPropertiesDeserializer(item: any) {\n return {\n value: item[\"value\"],\n description: item[\"description\"],\n defaultValue: item[\"defaultValue\"],\n dataType: item[\"dataType\"],\n allowedValues: item[\"allowedValues\"],\n source: item[\"source\"],\n isDynamicConfig: item[\"isDynamicConfig\"],\n isReadOnly: item[\"isReadOnly\"],\n isConfigPendingRestart: item[\"isConfigPendingRestart\"],\n unit: item[\"unit\"],\n documentationLink: item[\"documentationLink\"],\n };\n}\n\nexport function _configurationForUpdatePropertiesSerializer(item: ConfigurationForUpdate): any {\n return { value: item[\"value\"], source: item[\"source\"] };\n}\n\nexport function _configurationForUpdatePropertiesDeserializer(item: any) {\n return {\n value: item[\"value\"],\n description: item[\"description\"],\n defaultValue: item[\"defaultValue\"],\n dataType: item[\"dataType\"],\n allowedValues: item[\"allowedValues\"],\n source: item[\"source\"],\n isDynamicConfig: item[\"isDynamicConfig\"],\n isReadOnly: item[\"isReadOnly\"],\n isConfigPendingRestart: item[\"isConfigPendingRestart\"],\n unit: item[\"unit\"],\n documentationLink: item[\"documentationLink\"],\n };\n}\n\nexport function _databasePropertiesSerializer(item: Database): any {\n return { charset: item[\"charset\"], collation: item[\"collation\"] };\n}\n\nexport function _databasePropertiesDeserializer(item: any) {\n return {\n charset: item[\"charset\"],\n collation: item[\"collation\"],\n };\n}\n\nexport function _firewallRulePropertiesSerializer(item: FirewallRule): any {\n return { startIpAddress: item[\"startIpAddress\"], endIpAddress: item[\"endIpAddress\"] };\n}\n\nexport function _firewallRulePropertiesDeserializer(item: any) {\n return {\n startIpAddress: item[\"startIpAddress\"],\n endIpAddress: item[\"endIpAddress\"],\n };\n}\n\nexport function _privateLinkResourcePropertiesDeserializer(item: any) {\n return {\n groupId: item[\"groupId\"],\n requiredMembers: !item[\"requiredMembers\"]\n ? item[\"requiredMembers\"]\n : item[\"requiredMembers\"].map((p: any) => {\n return p;\n }),\n requiredZoneNames: !item[\"requiredZoneNames\"]\n ? item[\"requiredZoneNames\"]\n : item[\"requiredZoneNames\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function _virtualEndpointPropertiesSerializer(item: VirtualEndpoint): any {\n return {\n endpointType: item[\"endpointType\"],\n members: !item[\"members\"]\n ? item[\"members\"]\n : item[\"members\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function _virtualEndpointPropertiesDeserializer(item: any) {\n return {\n endpointType: item[\"endpointType\"],\n members: !item[\"members\"]\n ? item[\"members\"]\n : item[\"members\"].map((p: any) => {\n return p;\n }),\n virtualEndpoints: !item[\"virtualEndpoints\"]\n ? item[\"virtualEndpoints\"]\n : item[\"virtualEndpoints\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function _virtualEndpointResourceForPatchPropertiesSerializer(\n item: VirtualEndpointResourceForPatch,\n): any {\n return {\n endpointType: item[\"endpointType\"],\n members: !item[\"members\"]\n ? item[\"members\"]\n : item[\"members\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function _virtualEndpointResourceForPatchPropertiesDeserializer(item: any) {\n return {\n endpointType: item[\"endpointType\"],\n members: !item[\"members\"]\n ? item[\"members\"]\n : item[\"members\"].map((p: any) => {\n return p;\n }),\n virtualEndpoints: !item[\"virtualEndpoints\"]\n ? item[\"virtualEndpoints\"]\n : item[\"virtualEndpoints\"].map((p: any) => {\n return p;\n }),\n };\n}\n\nexport function _administratorMicrosoftEntraPropertiesDeserializer(item: any) {\n return {\n principalType: item[\"principalType\"],\n principalName: item[\"principalName\"],\n objectId: item[\"objectId\"],\n tenantId: item[\"tenantId\"],\n };\n}\n\nexport function _administratorMicrosoftEntraAddPropertiesSerializer(\n item: AdministratorMicrosoftEntraAdd,\n): any {\n return {\n principalType: item[\"principalType\"],\n principalName: item[\"principalName\"],\n tenantId: item[\"tenantId\"],\n };\n}\n\nexport function _capturedLogPropertiesDeserializer(item: any) {\n return {\n createdTime: !item[\"createdTime\"] ? item[\"createdTime\"] : new Date(item[\"createdTime\"]),\n lastModifiedTime: !item[\"lastModifiedTime\"]\n ? item[\"lastModifiedTime\"]\n : new Date(item[\"lastModifiedTime\"]),\n sizeInKb: item[\"sizeInKb\"],\n typePropertiesType: item[\"type\"],\n url: item[\"url\"],\n };\n}\n\nexport function _ltrPreBackupResponsePropertiesDeserializer(item: any) {\n return {\n numberOfContainers: item[\"numberOfContainers\"],\n };\n}\n\nexport function _backupsLongTermRetentionResponsePropertiesDeserializer(item: any) {\n return {\n datasourceSizeInBytes: item[\"datasourceSizeInBytes\"],\n dataTransferredInBytes: item[\"dataTransferredInBytes\"],\n backupName: item[\"backupName\"],\n backupMetadata: item[\"backupMetadata\"],\n status: item[\"status\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n percentComplete: item[\"percentComplete\"],\n errorCode: item[\"errorCode\"],\n errorMessage: item[\"errorMessage\"],\n };\n}\n\nexport function _backupsLongTermRetentionOperationPropertiesDeserializer(item: any) {\n return {\n datasourceSizeInBytes: item[\"datasourceSizeInBytes\"],\n dataTransferredInBytes: item[\"dataTransferredInBytes\"],\n backupName: item[\"backupName\"],\n backupMetadata: item[\"backupMetadata\"],\n status: item[\"status\"],\n startTime: !item[\"startTime\"] ? item[\"startTime\"] : new Date(item[\"startTime\"]),\n endTime: !item[\"endTime\"] ? item[\"endTime\"] : new Date(item[\"endTime\"]),\n percentComplete: item[\"percentComplete\"],\n errorCode: item[\"errorCode\"],\n errorMessage: item[\"errorMessage\"],\n };\n}\n\nexport function _advancedThreatProtectionSettingsModelPropertiesSerializer(\n item: AdvancedThreatProtectionSettingsModel,\n): any {\n return { state: item[\"state\"] };\n}\n\nexport function _advancedThreatProtectionSettingsModelPropertiesDeserializer(item: any) {\n return {\n state: item[\"state\"],\n creationTime: !item[\"creationTime\"] ? item[\"creationTime\"] : new Date(item[\"creationTime\"]),\n };\n}\n\nexport function _backupAutomaticAndOnDemandPropertiesDeserializer(item: any) {\n return {\n backupType: item[\"backupType\"],\n completedTime: !item[\"completedTime\"] ? item[\"completedTime\"] : new Date(item[\"completedTime\"]),\n source: item[\"source\"],\n };\n}\n\nexport function _objectRecommendationPropertiesDeserializer(item: any) {\n return {\n initialRecommendedTime: !item[\"initialRecommendedTime\"]\n ? item[\"initialRecommendedTime\"]\n : new Date(item[\"initialRecommendedTime\"]),\n lastRecommendedTime: !item[\"lastRecommendedTime\"]\n ? item[\"lastRecommendedTime\"]\n : new Date(item[\"lastRecommendedTime\"]),\n timesRecommended: item[\"timesRecommended\"],\n improvedQueryIds: !item[\"improvedQueryIds\"]\n ? item[\"improvedQueryIds\"]\n : item[\"improvedQueryIds\"].map((p: any) => {\n return p;\n }),\n recommendationReason: item[\"recommendationReason\"],\n currentState: item[\"currentState\"],\n recommendationType: item[\"recommendationType\"],\n implementationDetails: !item[\"implementationDetails\"]\n ? item[\"implementationDetails\"]\n : objectRecommendationPropertiesImplementationDetailsDeserializer(\n item[\"implementationDetails\"],\n ),\n analyzedWorkload: !item[\"analyzedWorkload\"]\n ? item[\"analyzedWorkload\"]\n : objectRecommendationPropertiesAnalyzedWorkloadDeserializer(item[\"analyzedWorkload\"]),\n estimatedImpact: !item[\"estimatedImpact\"]\n ? item[\"estimatedImpact\"]\n : impactRecordArrayDeserializer(item[\"estimatedImpact\"]),\n details: !item[\"details\"]\n ? item[\"details\"]\n : objectRecommendationDetailsDeserializer(item[\"details\"]),\n };\n}\n\nexport type PrivateDnsZoneSuffixGetResponse = { body: string };\n"]}