@microsoft/terraform-cdk-constructs 1.0.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (385) hide show
  1. package/.jsii +60999 -15780
  2. package/API.md +54947 -10610
  3. package/README.md +72 -36
  4. package/docs/monitoring-guide.md +206 -0
  5. package/docs/testing.md +84 -1
  6. package/lib/azure-actiongroup/index.d.ts +11 -0
  7. package/lib/azure-actiongroup/index.js +28 -0
  8. package/lib/azure-actiongroup/lib/action-group-schemas.d.ts +24 -0
  9. package/lib/azure-actiongroup/lib/action-group-schemas.js +201 -0
  10. package/lib/azure-actiongroup/lib/action-group.d.ts +312 -0
  11. package/lib/azure-actiongroup/lib/action-group.js +201 -0
  12. package/lib/azure-actiongroup/lib/index.d.ts +5 -0
  13. package/lib/azure-actiongroup/lib/index.js +22 -0
  14. package/lib/azure-actiongroup/test/action-group.integ.d.ts +9 -0
  15. package/lib/azure-actiongroup/test/action-group.integ.js +79 -0
  16. package/lib/azure-actiongroup/test/action-group.spec.d.ts +8 -0
  17. package/lib/azure-actiongroup/test/action-group.spec.js +602 -0
  18. package/lib/azure-activitylogalert/index.d.ts +11 -0
  19. package/lib/azure-activitylogalert/index.js +28 -0
  20. package/lib/azure-activitylogalert/lib/activity-log-alert-schemas.d.ts +24 -0
  21. package/lib/azure-activitylogalert/lib/activity-log-alert-schemas.js +182 -0
  22. package/lib/azure-activitylogalert/lib/activity-log-alert.d.ts +236 -0
  23. package/lib/azure-activitylogalert/lib/activity-log-alert.js +212 -0
  24. package/lib/azure-activitylogalert/lib/index.d.ts +5 -0
  25. package/lib/azure-activitylogalert/lib/index.js +22 -0
  26. package/lib/azure-activitylogalert/test/activity-log-alert.integ.d.ts +9 -0
  27. package/lib/azure-activitylogalert/test/activity-log-alert.integ.js +98 -0
  28. package/lib/azure-activitylogalert/test/activity-log-alert.spec.d.ts +9 -0
  29. package/lib/azure-activitylogalert/test/activity-log-alert.spec.js +1101 -0
  30. package/lib/azure-aks/index.d.ts +9 -0
  31. package/lib/azure-aks/index.js +28 -0
  32. package/lib/azure-aks/lib/aks-cluster-schemas.d.ts +505 -0
  33. package/lib/azure-aks/lib/aks-cluster-schemas.js +572 -0
  34. package/lib/azure-aks/lib/aks-cluster.d.ts +395 -0
  35. package/lib/azure-aks/lib/aks-cluster.js +489 -0
  36. package/lib/azure-aks/lib/index.d.ts +11 -0
  37. package/lib/azure-aks/lib/index.js +38 -0
  38. package/lib/azure-aks/test/aks-cluster.integ.d.ts +9 -0
  39. package/lib/azure-aks/test/aks-cluster.integ.js +260 -0
  40. package/lib/azure-aks/test/aks-cluster.spec.d.ts +8 -0
  41. package/lib/azure-aks/test/aks-cluster.spec.js +1396 -0
  42. package/lib/azure-diagnosticsettings/index.d.ts +7 -0
  43. package/lib/azure-diagnosticsettings/index.js +24 -0
  44. package/lib/azure-diagnosticsettings/lib/diagnostic-settings-schemas.d.ts +50 -0
  45. package/lib/azure-diagnosticsettings/lib/diagnostic-settings-schemas.js +207 -0
  46. package/lib/azure-diagnosticsettings/lib/diagnostic-settings.d.ts +193 -0
  47. package/lib/azure-diagnosticsettings/lib/diagnostic-settings.js +200 -0
  48. package/lib/azure-diagnosticsettings/lib/index.d.ts +8 -0
  49. package/lib/azure-diagnosticsettings/lib/index.js +25 -0
  50. package/lib/azure-diagnosticsettings/test/diagnostic-settings.spec.d.ts +8 -0
  51. package/lib/azure-diagnosticsettings/test/diagnostic-settings.spec.js +432 -0
  52. package/lib/azure-metricalert/index.d.ts +11 -0
  53. package/lib/azure-metricalert/index.js +28 -0
  54. package/lib/azure-metricalert/lib/index.d.ts +5 -0
  55. package/lib/azure-metricalert/lib/index.js +22 -0
  56. package/lib/azure-metricalert/lib/metric-alert-schemas.d.ts +24 -0
  57. package/lib/azure-metricalert/lib/metric-alert-schemas.js +242 -0
  58. package/lib/azure-metricalert/lib/metric-alert.d.ts +344 -0
  59. package/lib/azure-metricalert/lib/metric-alert.js +252 -0
  60. package/lib/azure-metricalert/test/metric-alert.integ.d.ts +9 -0
  61. package/lib/azure-metricalert/test/metric-alert.integ.js +123 -0
  62. package/lib/azure-metricalert/test/metric-alert.spec.d.ts +9 -0
  63. package/lib/azure-metricalert/test/metric-alert.spec.js +1266 -0
  64. package/lib/azure-networkinterface/index.d.ts +4 -0
  65. package/lib/azure-networkinterface/index.js +21 -0
  66. package/lib/azure-networkinterface/lib/index.d.ts +6 -0
  67. package/lib/azure-networkinterface/lib/index.js +22 -0
  68. package/lib/azure-networkinterface/lib/network-interface-schemas.d.ts +32 -0
  69. package/lib/azure-networkinterface/lib/network-interface-schemas.js +222 -0
  70. package/lib/azure-networkinterface/lib/network-interface.d.ts +265 -0
  71. package/lib/azure-networkinterface/lib/network-interface.js +228 -0
  72. package/lib/azure-networkinterface/test/network-interface.integ.d.ts +9 -0
  73. package/lib/azure-networkinterface/test/network-interface.integ.js +102 -0
  74. package/lib/azure-networkinterface/test/network-interface.spec.d.ts +8 -0
  75. package/lib/azure-networkinterface/test/network-interface.spec.js +655 -0
  76. package/lib/azure-networksecuritygroup/index.d.ts +6 -0
  77. package/lib/azure-networksecuritygroup/index.js +23 -0
  78. package/lib/azure-networksecuritygroup/lib/index.d.ts +5 -0
  79. package/lib/azure-networksecuritygroup/lib/index.js +16 -0
  80. package/lib/azure-networksecuritygroup/lib/network-security-group-schemas.d.ts +32 -0
  81. package/lib/azure-networksecuritygroup/lib/network-security-group-schemas.js +198 -0
  82. package/lib/azure-networksecuritygroup/lib/network-security-group.d.ts +268 -0
  83. package/lib/azure-networksecuritygroup/lib/network-security-group.js +248 -0
  84. package/lib/azure-networksecuritygroup/test/network-security-group.integ.d.ts +9 -0
  85. package/lib/azure-networksecuritygroup/test/network-security-group.integ.js +151 -0
  86. package/lib/azure-networksecuritygroup/test/network-security-group.spec.d.ts +8 -0
  87. package/lib/azure-networksecuritygroup/test/network-security-group.spec.js +652 -0
  88. package/lib/azure-publicipaddress/index.d.ts +6 -0
  89. package/lib/azure-publicipaddress/index.js +23 -0
  90. package/lib/azure-publicipaddress/lib/index.d.ts +9 -0
  91. package/lib/azure-publicipaddress/lib/index.js +19 -0
  92. package/lib/azure-publicipaddress/lib/public-ip-address-schemas.d.ts +32 -0
  93. package/lib/azure-publicipaddress/lib/public-ip-address-schemas.js +227 -0
  94. package/lib/azure-publicipaddress/lib/public-ip-address.d.ts +256 -0
  95. package/lib/azure-publicipaddress/lib/public-ip-address.js +267 -0
  96. package/lib/azure-publicipaddress/test/public-ip-address.integ.d.ts +9 -0
  97. package/lib/azure-publicipaddress/test/public-ip-address.integ.js +75 -0
  98. package/lib/azure-publicipaddress/test/public-ip-address.spec.d.ts +15 -0
  99. package/lib/azure-publicipaddress/test/public-ip-address.spec.js +498 -0
  100. package/lib/azure-resourcegroup/lib/resource-group.js +1 -1
  101. package/lib/azure-resourcegroup/test/resource-group.integ.js +23 -11
  102. package/lib/azure-storageaccount/lib/storage-account-schemas.d.ts +98 -0
  103. package/lib/azure-storageaccount/lib/storage-account-schemas.js +1 -1
  104. package/lib/azure-storageaccount/lib/storage-account.d.ts +38 -1
  105. package/lib/azure-storageaccount/lib/storage-account.js +138 -2
  106. package/lib/azure-storageaccount/test/storage-account.integ.js +91 -12
  107. package/lib/azure-subnet/index.d.ts +4 -0
  108. package/lib/azure-subnet/index.js +21 -0
  109. package/lib/azure-subnet/lib/index.d.ts +5 -0
  110. package/lib/azure-subnet/lib/index.js +22 -0
  111. package/lib/azure-subnet/lib/subnet-schemas.d.ts +32 -0
  112. package/lib/azure-subnet/lib/subnet-schemas.js +237 -0
  113. package/lib/azure-subnet/lib/subnet.d.ts +285 -0
  114. package/lib/azure-subnet/lib/subnet.js +254 -0
  115. package/lib/azure-subnet/test/subnet.integ.d.ts +11 -0
  116. package/lib/azure-subnet/test/subnet.integ.js +80 -0
  117. package/lib/azure-subnet/test/subnet.spec.d.ts +8 -0
  118. package/lib/azure-subnet/test/subnet.spec.js +396 -0
  119. package/lib/azure-virtualmachine/index.d.ts +7 -0
  120. package/lib/azure-virtualmachine/index.js +24 -0
  121. package/lib/azure-virtualmachine/lib/index.d.ts +11 -0
  122. package/lib/azure-virtualmachine/lib/index.js +38 -0
  123. package/lib/azure-virtualmachine/lib/virtual-machine-schemas.d.ts +327 -0
  124. package/lib/azure-virtualmachine/lib/virtual-machine-schemas.js +544 -0
  125. package/lib/azure-virtualmachine/lib/virtual-machine.d.ts +377 -0
  126. package/lib/azure-virtualmachine/lib/virtual-machine.js +462 -0
  127. package/lib/azure-virtualmachine/test/virtual-machine.integ.d.ts +9 -0
  128. package/lib/azure-virtualmachine/test/virtual-machine.integ.js +220 -0
  129. package/lib/azure-virtualmachine/test/virtual-machine.spec.d.ts +9 -0
  130. package/lib/azure-virtualmachine/test/virtual-machine.spec.js +1032 -0
  131. package/lib/azure-virtualnetwork/index.d.ts +10 -0
  132. package/lib/azure-virtualnetwork/index.js +28 -0
  133. package/lib/azure-virtualnetwork/lib/index.d.ts +9 -0
  134. package/lib/azure-virtualnetwork/lib/index.js +22 -0
  135. package/lib/azure-virtualnetwork/lib/virtual-network-schemas.d.ts +32 -0
  136. package/lib/azure-virtualnetwork/lib/virtual-network-schemas.js +236 -0
  137. package/lib/azure-virtualnetwork/lib/virtual-network.d.ts +213 -0
  138. package/lib/azure-virtualnetwork/lib/virtual-network.js +245 -0
  139. package/lib/azure-virtualnetwork/test/virtual-network.integ.d.ts +9 -0
  140. package/lib/azure-virtualnetwork/test/virtual-network.integ.js +91 -0
  141. package/lib/azure-virtualnetwork/test/virtual-network.spec.d.ts +8 -0
  142. package/lib/azure-virtualnetwork/test/virtual-network.spec.js +398 -0
  143. package/lib/azure-vmss/index.d.ts +6 -0
  144. package/lib/azure-vmss/index.js +23 -0
  145. package/lib/azure-vmss/lib/index.d.ts +9 -0
  146. package/lib/azure-vmss/lib/index.js +39 -0
  147. package/lib/azure-vmss/lib/virtual-machine-scale-set.d.ts +258 -0
  148. package/lib/azure-vmss/lib/virtual-machine-scale-set.js +503 -0
  149. package/lib/azure-vmss/lib/vmss-schemas.d.ts +472 -0
  150. package/lib/azure-vmss/lib/vmss-schemas.js +444 -0
  151. package/lib/azure-vmss/test/virtual-machine-scale-set.integ.d.ts +15 -0
  152. package/lib/azure-vmss/test/virtual-machine-scale-set.integ.js +261 -0
  153. package/lib/azure-vmss/test/virtual-machine-scale-set.spec.d.ts +8 -0
  154. package/lib/azure-vmss/test/virtual-machine-scale-set.spec.js +997 -0
  155. package/lib/core-azure/lib/azapi/azapi-resource.d.ts +95 -27
  156. package/lib/core-azure/lib/azapi/azapi-resource.js +95 -58
  157. package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-client-config/index.d.ts +33 -21
  158. package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-client-config/index.js +69 -27
  159. package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource/index.d.ts +134 -120
  160. package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource/index.js +209 -59
  161. package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource-action/index.d.ts +141 -128
  162. package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource-action/index.js +183 -36
  163. package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource-id/index.d.ts +55 -43
  164. package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource-id/index.js +94 -26
  165. package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource-list/index.d.ts +129 -116
  166. package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource-list/index.js +155 -32
  167. package/lib/core-azure/lib/azapi/providers-azapi/data-plane-resource/index.d.ts +187 -174
  168. package/lib/core-azure/lib/azapi/providers-azapi/data-plane-resource/index.js +267 -48
  169. package/lib/core-azure/lib/azapi/providers-azapi/index.d.ts +10 -10
  170. package/lib/core-azure/lib/azapi/providers-azapi/index.js +1 -1
  171. package/lib/core-azure/lib/azapi/providers-azapi/lazy-index.d.ts +0 -0
  172. package/lib/core-azure/lib/azapi/providers-azapi/lazy-index.js +13 -0
  173. package/lib/core-azure/lib/azapi/providers-azapi/provider/index.d.ts +174 -162
  174. package/lib/core-azure/lib/azapi/providers-azapi/provider/index.js +274 -14
  175. package/lib/core-azure/lib/azapi/providers-azapi/resource/index.d.ts +239 -225
  176. package/lib/core-azure/lib/azapi/providers-azapi/resource/index.js +360 -76
  177. package/lib/core-azure/lib/azapi/providers-azapi/resource-action/index.d.ts +163 -150
  178. package/lib/core-azure/lib/azapi/providers-azapi/resource-action/index.js +221 -46
  179. package/lib/core-azure/lib/azapi/providers-azapi/update-resource/index.d.ts +162 -149
  180. package/lib/core-azure/lib/azapi/providers-azapi/update-resource/index.js +249 -50
  181. package/lib/core-azure/lib/azapi/schema-mapper/schema-mapper.js +4 -2
  182. package/lib/core-azure/lib/version-manager/api-version-manager.js +1 -1
  183. package/lib/core-azure/lib/version-manager/interfaces/version-interfaces.js +7 -7
  184. package/lib/index.d.ts +37 -0
  185. package/lib/index.js +40 -2
  186. package/lib/testing/index.d.ts +92 -2
  187. package/lib/testing/index.js +258 -18
  188. package/lib/testing/lib/cleanup.d.ts +229 -0
  189. package/lib/testing/lib/cleanup.js +331 -0
  190. package/lib/testing/lib/metadata.d.ts +151 -0
  191. package/lib/testing/lib/metadata.js +180 -0
  192. package/lib/testing/lib/naming.d.ts +96 -0
  193. package/lib/testing/lib/naming.js +336 -0
  194. package/node_modules/uuid/LICENSE.md +9 -0
  195. package/node_modules/uuid/README.md +510 -0
  196. package/node_modules/uuid/dist/cjs/index.d.ts +15 -0
  197. package/node_modules/uuid/dist/cjs/index.js +31 -0
  198. package/node_modules/uuid/dist/cjs/max.d.ts +2 -0
  199. package/node_modules/uuid/dist/cjs/max.js +3 -0
  200. package/node_modules/uuid/dist/cjs/md5.d.ts +4 -0
  201. package/node_modules/uuid/dist/cjs/md5.js +13 -0
  202. package/node_modules/uuid/dist/cjs/native.d.ts +6 -0
  203. package/node_modules/uuid/dist/cjs/native.js +4 -0
  204. package/node_modules/uuid/dist/cjs/nil.d.ts +2 -0
  205. package/node_modules/uuid/dist/cjs/nil.js +3 -0
  206. package/node_modules/uuid/dist/cjs/package.json +1 -0
  207. package/node_modules/uuid/dist/cjs/parse.d.ts +2 -0
  208. package/node_modules/uuid/dist/cjs/parse.js +11 -0
  209. package/node_modules/uuid/dist/cjs/regex.d.ts +2 -0
  210. package/node_modules/uuid/dist/cjs/regex.js +3 -0
  211. package/node_modules/uuid/dist/cjs/rng.d.ts +1 -0
  212. package/node_modules/uuid/dist/cjs/rng.js +13 -0
  213. package/node_modules/uuid/dist/cjs/sha1.d.ts +4 -0
  214. package/node_modules/uuid/dist/cjs/sha1.js +13 -0
  215. package/node_modules/uuid/dist/cjs/stringify.d.ts +3 -0
  216. package/node_modules/uuid/dist/cjs/stringify.js +39 -0
  217. package/node_modules/uuid/dist/cjs/types.d.ts +21 -0
  218. package/node_modules/uuid/dist/cjs/types.js +2 -0
  219. package/node_modules/uuid/dist/cjs/uuid-bin.d.ts +1 -0
  220. package/node_modules/uuid/dist/cjs/uuid-bin.js +72 -0
  221. package/node_modules/uuid/dist/cjs/v1.d.ts +11 -0
  222. package/node_modules/uuid/dist/cjs/v1.js +87 -0
  223. package/node_modules/uuid/dist/cjs/v1ToV6.d.ts +2 -0
  224. package/node_modules/uuid/dist/cjs/v1ToV6.js +13 -0
  225. package/node_modules/uuid/dist/cjs/v3.d.ts +9 -0
  226. package/node_modules/uuid/dist/cjs/v3.js +14 -0
  227. package/node_modules/uuid/dist/cjs/v35.d.ts +7 -0
  228. package/node_modules/uuid/dist/cjs/v35.js +41 -0
  229. package/node_modules/uuid/dist/cjs/v4.d.ts +4 -0
  230. package/node_modules/uuid/dist/cjs/v4.js +29 -0
  231. package/node_modules/uuid/dist/cjs/v5.d.ts +9 -0
  232. package/node_modules/uuid/dist/cjs/v5.js +14 -0
  233. package/node_modules/uuid/dist/cjs/v6.d.ts +4 -0
  234. package/node_modules/uuid/dist/cjs/v6.js +19 -0
  235. package/node_modules/uuid/dist/cjs/v6ToV1.d.ts +2 -0
  236. package/node_modules/uuid/dist/cjs/v6ToV1.js +13 -0
  237. package/node_modules/uuid/dist/cjs/v7.d.ts +9 -0
  238. package/node_modules/uuid/dist/cjs/v7.js +69 -0
  239. package/node_modules/uuid/dist/cjs/validate.d.ts +2 -0
  240. package/node_modules/uuid/dist/cjs/validate.js +7 -0
  241. package/node_modules/uuid/dist/cjs/version.d.ts +2 -0
  242. package/node_modules/uuid/dist/cjs/version.js +10 -0
  243. package/node_modules/uuid/dist/cjs-browser/index.d.ts +15 -0
  244. package/node_modules/uuid/dist/cjs-browser/index.js +31 -0
  245. package/node_modules/uuid/dist/cjs-browser/max.d.ts +2 -0
  246. package/node_modules/uuid/dist/cjs-browser/max.js +3 -0
  247. package/node_modules/uuid/dist/cjs-browser/md5.d.ts +2 -0
  248. package/node_modules/uuid/dist/cjs-browser/md5.js +137 -0
  249. package/node_modules/uuid/dist/cjs-browser/native.d.ts +4 -0
  250. package/node_modules/uuid/dist/cjs-browser/native.js +4 -0
  251. package/node_modules/uuid/dist/cjs-browser/nil.d.ts +2 -0
  252. package/node_modules/uuid/dist/cjs-browser/nil.js +3 -0
  253. package/node_modules/uuid/dist/cjs-browser/package.json +1 -0
  254. package/node_modules/uuid/dist/cjs-browser/parse.d.ts +2 -0
  255. package/node_modules/uuid/dist/cjs-browser/parse.js +11 -0
  256. package/node_modules/uuid/dist/cjs-browser/regex.d.ts +2 -0
  257. package/node_modules/uuid/dist/cjs-browser/regex.js +3 -0
  258. package/node_modules/uuid/dist/cjs-browser/rng.d.ts +1 -0
  259. package/node_modules/uuid/dist/cjs-browser/rng.js +14 -0
  260. package/node_modules/uuid/dist/cjs-browser/sha1.d.ts +2 -0
  261. package/node_modules/uuid/dist/cjs-browser/sha1.js +72 -0
  262. package/node_modules/uuid/dist/cjs-browser/stringify.d.ts +3 -0
  263. package/node_modules/uuid/dist/cjs-browser/stringify.js +39 -0
  264. package/node_modules/uuid/dist/cjs-browser/types.d.ts +21 -0
  265. package/node_modules/uuid/dist/cjs-browser/types.js +2 -0
  266. package/node_modules/uuid/dist/cjs-browser/uuid-bin.d.ts +1 -0
  267. package/node_modules/uuid/dist/cjs-browser/uuid-bin.js +72 -0
  268. package/node_modules/uuid/dist/cjs-browser/v1.d.ts +11 -0
  269. package/node_modules/uuid/dist/cjs-browser/v1.js +87 -0
  270. package/node_modules/uuid/dist/cjs-browser/v1ToV6.d.ts +2 -0
  271. package/node_modules/uuid/dist/cjs-browser/v1ToV6.js +13 -0
  272. package/node_modules/uuid/dist/cjs-browser/v3.d.ts +9 -0
  273. package/node_modules/uuid/dist/cjs-browser/v3.js +14 -0
  274. package/node_modules/uuid/dist/cjs-browser/v35.d.ts +7 -0
  275. package/node_modules/uuid/dist/cjs-browser/v35.js +41 -0
  276. package/node_modules/uuid/dist/cjs-browser/v4.d.ts +4 -0
  277. package/node_modules/uuid/dist/cjs-browser/v4.js +29 -0
  278. package/node_modules/uuid/dist/cjs-browser/v5.d.ts +9 -0
  279. package/node_modules/uuid/dist/cjs-browser/v5.js +14 -0
  280. package/node_modules/uuid/dist/cjs-browser/v6.d.ts +4 -0
  281. package/node_modules/uuid/dist/cjs-browser/v6.js +19 -0
  282. package/node_modules/uuid/dist/cjs-browser/v6ToV1.d.ts +2 -0
  283. package/node_modules/uuid/dist/cjs-browser/v6ToV1.js +13 -0
  284. package/node_modules/uuid/dist/cjs-browser/v7.d.ts +9 -0
  285. package/node_modules/uuid/dist/cjs-browser/v7.js +69 -0
  286. package/node_modules/uuid/dist/cjs-browser/validate.d.ts +2 -0
  287. package/node_modules/uuid/dist/cjs-browser/validate.js +7 -0
  288. package/node_modules/uuid/dist/cjs-browser/version.d.ts +2 -0
  289. package/node_modules/uuid/dist/cjs-browser/version.js +10 -0
  290. package/node_modules/uuid/dist/esm/bin/uuid +2 -0
  291. package/node_modules/uuid/dist/esm/index.d.ts +15 -0
  292. package/node_modules/uuid/dist/esm/index.js +14 -0
  293. package/node_modules/uuid/dist/esm/max.d.ts +2 -0
  294. package/node_modules/uuid/dist/esm/max.js +1 -0
  295. package/node_modules/uuid/dist/esm/md5.d.ts +4 -0
  296. package/node_modules/uuid/dist/esm/md5.js +11 -0
  297. package/node_modules/uuid/dist/esm/native.d.ts +6 -0
  298. package/node_modules/uuid/dist/esm/native.js +2 -0
  299. package/node_modules/uuid/dist/esm/nil.d.ts +2 -0
  300. package/node_modules/uuid/dist/esm/nil.js +1 -0
  301. package/node_modules/uuid/dist/esm/parse.d.ts +2 -0
  302. package/node_modules/uuid/dist/esm/parse.js +9 -0
  303. package/node_modules/uuid/dist/esm/regex.d.ts +2 -0
  304. package/node_modules/uuid/dist/esm/regex.js +1 -0
  305. package/node_modules/uuid/dist/esm/rng.d.ts +1 -0
  306. package/node_modules/uuid/dist/esm/rng.js +10 -0
  307. package/node_modules/uuid/dist/esm/sha1.d.ts +4 -0
  308. package/node_modules/uuid/dist/esm/sha1.js +11 -0
  309. package/node_modules/uuid/dist/esm/stringify.d.ts +3 -0
  310. package/node_modules/uuid/dist/esm/stringify.js +35 -0
  311. package/node_modules/uuid/dist/esm/types.d.ts +21 -0
  312. package/node_modules/uuid/dist/esm/types.js +1 -0
  313. package/node_modules/uuid/dist/esm/uuid-bin.d.ts +1 -0
  314. package/node_modules/uuid/dist/esm/uuid-bin.js +70 -0
  315. package/node_modules/uuid/dist/esm/v1.d.ts +11 -0
  316. package/node_modules/uuid/dist/esm/v1.js +83 -0
  317. package/node_modules/uuid/dist/esm/v1ToV6.d.ts +2 -0
  318. package/node_modules/uuid/dist/esm/v1ToV6.js +10 -0
  319. package/node_modules/uuid/dist/esm/v3.d.ts +9 -0
  320. package/node_modules/uuid/dist/esm/v3.js +9 -0
  321. package/node_modules/uuid/dist/esm/v35.d.ts +7 -0
  322. package/node_modules/uuid/dist/esm/v35.js +36 -0
  323. package/node_modules/uuid/dist/esm/v4.d.ts +4 -0
  324. package/node_modules/uuid/dist/esm/v4.js +27 -0
  325. package/node_modules/uuid/dist/esm/v5.d.ts +9 -0
  326. package/node_modules/uuid/dist/esm/v5.js +9 -0
  327. package/node_modules/uuid/dist/esm/v6.d.ts +4 -0
  328. package/node_modules/uuid/dist/esm/v6.js +17 -0
  329. package/node_modules/uuid/dist/esm/v6ToV1.d.ts +2 -0
  330. package/node_modules/uuid/dist/esm/v6ToV1.js +10 -0
  331. package/node_modules/uuid/dist/esm/v7.d.ts +9 -0
  332. package/node_modules/uuid/dist/esm/v7.js +65 -0
  333. package/node_modules/uuid/dist/esm/validate.d.ts +2 -0
  334. package/node_modules/uuid/dist/esm/validate.js +5 -0
  335. package/node_modules/uuid/dist/esm/version.d.ts +2 -0
  336. package/node_modules/uuid/dist/esm/version.js +8 -0
  337. package/node_modules/uuid/dist/esm-browser/index.d.ts +15 -0
  338. package/node_modules/uuid/dist/esm-browser/index.js +14 -0
  339. package/node_modules/uuid/dist/esm-browser/max.d.ts +2 -0
  340. package/node_modules/uuid/dist/esm-browser/max.js +1 -0
  341. package/node_modules/uuid/dist/esm-browser/md5.d.ts +2 -0
  342. package/node_modules/uuid/dist/esm-browser/md5.js +135 -0
  343. package/node_modules/uuid/dist/esm-browser/native.d.ts +4 -0
  344. package/node_modules/uuid/dist/esm-browser/native.js +2 -0
  345. package/node_modules/uuid/dist/esm-browser/nil.d.ts +2 -0
  346. package/node_modules/uuid/dist/esm-browser/nil.js +1 -0
  347. package/node_modules/uuid/dist/esm-browser/parse.d.ts +2 -0
  348. package/node_modules/uuid/dist/esm-browser/parse.js +9 -0
  349. package/node_modules/uuid/dist/esm-browser/regex.d.ts +2 -0
  350. package/node_modules/uuid/dist/esm-browser/regex.js +1 -0
  351. package/node_modules/uuid/dist/esm-browser/rng.d.ts +1 -0
  352. package/node_modules/uuid/dist/esm-browser/rng.js +11 -0
  353. package/node_modules/uuid/dist/esm-browser/sha1.d.ts +2 -0
  354. package/node_modules/uuid/dist/esm-browser/sha1.js +70 -0
  355. package/node_modules/uuid/dist/esm-browser/stringify.d.ts +3 -0
  356. package/node_modules/uuid/dist/esm-browser/stringify.js +35 -0
  357. package/node_modules/uuid/dist/esm-browser/types.d.ts +21 -0
  358. package/node_modules/uuid/dist/esm-browser/types.js +1 -0
  359. package/node_modules/uuid/dist/esm-browser/uuid-bin.d.ts +1 -0
  360. package/node_modules/uuid/dist/esm-browser/uuid-bin.js +70 -0
  361. package/node_modules/uuid/dist/esm-browser/v1.d.ts +11 -0
  362. package/node_modules/uuid/dist/esm-browser/v1.js +83 -0
  363. package/node_modules/uuid/dist/esm-browser/v1ToV6.d.ts +2 -0
  364. package/node_modules/uuid/dist/esm-browser/v1ToV6.js +10 -0
  365. package/node_modules/uuid/dist/esm-browser/v3.d.ts +9 -0
  366. package/node_modules/uuid/dist/esm-browser/v3.js +9 -0
  367. package/node_modules/uuid/dist/esm-browser/v35.d.ts +7 -0
  368. package/node_modules/uuid/dist/esm-browser/v35.js +36 -0
  369. package/node_modules/uuid/dist/esm-browser/v4.d.ts +4 -0
  370. package/node_modules/uuid/dist/esm-browser/v4.js +27 -0
  371. package/node_modules/uuid/dist/esm-browser/v5.d.ts +9 -0
  372. package/node_modules/uuid/dist/esm-browser/v5.js +9 -0
  373. package/node_modules/uuid/dist/esm-browser/v6.d.ts +4 -0
  374. package/node_modules/uuid/dist/esm-browser/v6.js +17 -0
  375. package/node_modules/uuid/dist/esm-browser/v6ToV1.d.ts +2 -0
  376. package/node_modules/uuid/dist/esm-browser/v6ToV1.js +10 -0
  377. package/node_modules/uuid/dist/esm-browser/v7.d.ts +9 -0
  378. package/node_modules/uuid/dist/esm-browser/v7.js +65 -0
  379. package/node_modules/uuid/dist/esm-browser/validate.d.ts +2 -0
  380. package/node_modules/uuid/dist/esm-browser/validate.js +5 -0
  381. package/node_modules/uuid/dist/esm-browser/version.d.ts +2 -0
  382. package/node_modules/uuid/dist/esm-browser/version.js +8 -0
  383. package/node_modules/uuid/package.json +132 -0
  384. package/package.json +17 -12
  385. package/scripts/cleanup-test-resources.ts +369 -0
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Azure Diagnostic Settings construct library
3
+ *
4
+ * This library provides a unified implementation for creating and managing
5
+ * Azure Diagnostic Settings resources using the CDKTF AzapiResource framework.
6
+ */
7
+ export * from "./lib";
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ /**
3
+ * Azure Diagnostic Settings construct library
4
+ *
5
+ * This library provides a unified implementation for creating and managing
6
+ * Azure Diagnostic Settings resources using the CDKTF AzapiResource framework.
7
+ */
8
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ var desc = Object.getOwnPropertyDescriptor(m, k);
11
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
+ desc = { enumerable: true, get: function() { return m[k]; } };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ }) : (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ }));
19
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
20
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
+ };
22
+ Object.defineProperty(exports, "__esModule", { value: true });
23
+ __exportStar(require("./lib"), exports);
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXp1cmUtZGlhZ25vc3RpY3NldHRpbmdzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7R0FLRzs7Ozs7Ozs7Ozs7Ozs7OztBQUVILHdDQUFzQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQXp1cmUgRGlhZ25vc3RpYyBTZXR0aW5ncyBjb25zdHJ1Y3QgbGlicmFyeVxuICpcbiAqIFRoaXMgbGlicmFyeSBwcm92aWRlcyBhIHVuaWZpZWQgaW1wbGVtZW50YXRpb24gZm9yIGNyZWF0aW5nIGFuZCBtYW5hZ2luZ1xuICogQXp1cmUgRGlhZ25vc3RpYyBTZXR0aW5ncyByZXNvdXJjZXMgdXNpbmcgdGhlIENES1RGIEF6YXBpUmVzb3VyY2UgZnJhbWV3b3JrLlxuICovXG5cbmV4cG9ydCAqIGZyb20gXCIuL2xpYlwiO1xuIl19
@@ -0,0 +1,50 @@
1
+ /**
2
+ * API schemas for Azure Diagnostic Settings across all supported versions
3
+ *
4
+ * This file defines the complete API schemas for Microsoft.Insights/diagnosticSettings
5
+ * across all supported API versions. The schemas are used by the AzapiResource
6
+ * framework for validation, transformation, and version management.
7
+ */
8
+ import { ApiSchema, VersionConfig } from "../../core-azure/lib/version-manager/interfaces/version-interfaces";
9
+ /**
10
+ * API Schema for Diagnostic Settings version 2016-09-01
11
+ *
12
+ * This is the latest stable (non-preview) version for diagnostic settings.
13
+ * It includes support for:
14
+ * - Log Analytics workspaces
15
+ * - Storage accounts
16
+ * - Event Hubs (via serviceBusRuleId)
17
+ * - Log categories
18
+ * - Metrics
19
+ */
20
+ export declare const DIAGNOSTIC_SETTINGS_SCHEMA_2016_09_01: ApiSchema;
21
+ /**
22
+ * API Schema for Diagnostic Settings version 2021-05-01-preview
23
+ *
24
+ * This is the most recent preview version for diagnostic settings.
25
+ * It includes support for:
26
+ * - Log Analytics workspaces
27
+ * - Storage accounts
28
+ * - Event Hubs
29
+ * - Log categories and category groups
30
+ * - Metrics
31
+ * - Marketplace partner integrations
32
+ */
33
+ export declare const DIAGNOSTIC_SETTINGS_SCHEMA_2021_05_01_PREVIEW: ApiSchema;
34
+ /**
35
+ * Version configuration for Diagnostic Settings 2016-09-01
36
+ */
37
+ export declare const DIAGNOSTIC_SETTINGS_VERSION_2016_09_01: VersionConfig;
38
+ /**
39
+ * Version configuration for Diagnostic Settings 2021-05-01-preview
40
+ */
41
+ export declare const DIAGNOSTIC_SETTINGS_VERSION_2021_05_01_PREVIEW: VersionConfig;
42
+ /**
43
+ * All supported Diagnostic Settings versions for registration
44
+ * Ordered with latest stable version first, then preview versions
45
+ */
46
+ export declare const ALL_DIAGNOSTIC_SETTINGS_VERSIONS: VersionConfig[];
47
+ /**
48
+ * Resource type constant
49
+ */
50
+ export declare const DIAGNOSTIC_SETTINGS_TYPE = "Microsoft.Insights/diagnosticSettings";
@@ -0,0 +1,207 @@
1
+ "use strict";
2
+ /**
3
+ * API schemas for Azure Diagnostic Settings across all supported versions
4
+ *
5
+ * This file defines the complete API schemas for Microsoft.Insights/diagnosticSettings
6
+ * across all supported API versions. The schemas are used by the AzapiResource
7
+ * framework for validation, transformation, and version management.
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.DIAGNOSTIC_SETTINGS_TYPE = exports.ALL_DIAGNOSTIC_SETTINGS_VERSIONS = exports.DIAGNOSTIC_SETTINGS_VERSION_2021_05_01_PREVIEW = exports.DIAGNOSTIC_SETTINGS_VERSION_2016_09_01 = exports.DIAGNOSTIC_SETTINGS_SCHEMA_2021_05_01_PREVIEW = exports.DIAGNOSTIC_SETTINGS_SCHEMA_2016_09_01 = void 0;
11
+ const version_interfaces_1 = require("../../core-azure/lib/version-manager/interfaces/version-interfaces");
12
+ // =============================================================================
13
+ // COMMON PROPERTY DEFINITIONS
14
+ // =============================================================================
15
+ /**
16
+ * Common property definitions shared across all Diagnostic Settings versions
17
+ */
18
+ const COMMON_DIAGNOSTIC_SETTINGS_PROPERTIES = {
19
+ name: {
20
+ dataType: version_interfaces_1.PropertyType.STRING,
21
+ required: true,
22
+ description: "Name of the diagnostic setting",
23
+ validation: [
24
+ {
25
+ ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
26
+ message: "Name is required",
27
+ },
28
+ ],
29
+ },
30
+ workspaceId: {
31
+ dataType: version_interfaces_1.PropertyType.STRING,
32
+ required: false,
33
+ description: "Log Analytics workspace resource ID for log/metric destination",
34
+ },
35
+ storageAccountId: {
36
+ dataType: version_interfaces_1.PropertyType.STRING,
37
+ required: false,
38
+ description: "Storage account resource ID for log/metric destination",
39
+ },
40
+ eventHubAuthorizationRuleId: {
41
+ dataType: version_interfaces_1.PropertyType.STRING,
42
+ required: false,
43
+ description: "Event Hub authorization rule ID for streaming",
44
+ },
45
+ eventHubName: {
46
+ dataType: version_interfaces_1.PropertyType.STRING,
47
+ required: false,
48
+ description: "Event Hub name for streaming",
49
+ },
50
+ logs: {
51
+ dataType: version_interfaces_1.PropertyType.ARRAY,
52
+ required: false,
53
+ description: "Log category configurations",
54
+ },
55
+ metrics: {
56
+ dataType: version_interfaces_1.PropertyType.ARRAY,
57
+ required: false,
58
+ description: "Metric category configurations",
59
+ },
60
+ logAnalyticsDestinationType: {
61
+ dataType: version_interfaces_1.PropertyType.STRING,
62
+ required: false,
63
+ description: "Log Analytics destination type (Dedicated or AzureDiagnostics)",
64
+ },
65
+ };
66
+ // =============================================================================
67
+ // VERSION-SPECIFIC SCHEMAS
68
+ // =============================================================================
69
+ /**
70
+ * API Schema for Diagnostic Settings version 2016-09-01
71
+ *
72
+ * This is the latest stable (non-preview) version for diagnostic settings.
73
+ * It includes support for:
74
+ * - Log Analytics workspaces
75
+ * - Storage accounts
76
+ * - Event Hubs (via serviceBusRuleId)
77
+ * - Log categories
78
+ * - Metrics
79
+ */
80
+ exports.DIAGNOSTIC_SETTINGS_SCHEMA_2016_09_01 = {
81
+ resourceType: "Microsoft.Insights/diagnosticSettings",
82
+ version: "2016-09-01",
83
+ properties: {
84
+ ...COMMON_DIAGNOSTIC_SETTINGS_PROPERTIES,
85
+ },
86
+ required: ["name"],
87
+ optional: [
88
+ "workspaceId",
89
+ "storageAccountId",
90
+ "eventHubAuthorizationRuleId",
91
+ "eventHubName",
92
+ "logs",
93
+ "metrics",
94
+ "logAnalyticsDestinationType",
95
+ ],
96
+ deprecated: [],
97
+ transformationRules: {},
98
+ validationRules: [
99
+ {
100
+ property: "name",
101
+ rules: [
102
+ {
103
+ ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
104
+ message: "Name is required for Diagnostic Settings",
105
+ },
106
+ ],
107
+ },
108
+ ],
109
+ };
110
+ /**
111
+ * API Schema for Diagnostic Settings version 2021-05-01-preview
112
+ *
113
+ * This is the most recent preview version for diagnostic settings.
114
+ * It includes support for:
115
+ * - Log Analytics workspaces
116
+ * - Storage accounts
117
+ * - Event Hubs
118
+ * - Log categories and category groups
119
+ * - Metrics
120
+ * - Marketplace partner integrations
121
+ */
122
+ exports.DIAGNOSTIC_SETTINGS_SCHEMA_2021_05_01_PREVIEW = {
123
+ resourceType: "Microsoft.Insights/diagnosticSettings",
124
+ version: "2021-05-01-preview",
125
+ properties: {
126
+ ...COMMON_DIAGNOSTIC_SETTINGS_PROPERTIES,
127
+ },
128
+ required: ["name"],
129
+ optional: [
130
+ "workspaceId",
131
+ "storageAccountId",
132
+ "eventHubAuthorizationRuleId",
133
+ "eventHubName",
134
+ "logs",
135
+ "metrics",
136
+ "logAnalyticsDestinationType",
137
+ ],
138
+ deprecated: [],
139
+ transformationRules: {},
140
+ validationRules: [
141
+ {
142
+ property: "name",
143
+ rules: [
144
+ {
145
+ ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
146
+ message: "Name is required for Diagnostic Settings",
147
+ },
148
+ ],
149
+ },
150
+ ],
151
+ };
152
+ // =============================================================================
153
+ // VERSION CONFIGURATIONS
154
+ // =============================================================================
155
+ /**
156
+ * Version configuration for Diagnostic Settings 2016-09-01
157
+ */
158
+ exports.DIAGNOSTIC_SETTINGS_VERSION_2016_09_01 = {
159
+ version: "2016-09-01",
160
+ schema: exports.DIAGNOSTIC_SETTINGS_SCHEMA_2016_09_01,
161
+ supportLevel: version_interfaces_1.VersionSupportLevel.ACTIVE,
162
+ releaseDate: "2016-09-01",
163
+ deprecationDate: undefined,
164
+ sunsetDate: undefined,
165
+ breakingChanges: [],
166
+ migrationGuide: "/docs/diagnostic-settings/migration-2016-09-01",
167
+ changeLog: [
168
+ {
169
+ changeType: "updated",
170
+ description: "Stable API version for diagnostic settings",
171
+ breaking: false,
172
+ },
173
+ ],
174
+ };
175
+ /**
176
+ * Version configuration for Diagnostic Settings 2021-05-01-preview
177
+ */
178
+ exports.DIAGNOSTIC_SETTINGS_VERSION_2021_05_01_PREVIEW = {
179
+ version: "2021-05-01-preview",
180
+ schema: exports.DIAGNOSTIC_SETTINGS_SCHEMA_2021_05_01_PREVIEW,
181
+ supportLevel: version_interfaces_1.VersionSupportLevel.ACTIVE,
182
+ releaseDate: "2021-05-01",
183
+ deprecationDate: undefined,
184
+ sunsetDate: undefined,
185
+ breakingChanges: [],
186
+ migrationGuide: "/docs/diagnostic-settings/migration-2021-05-01-preview",
187
+ changeLog: [
188
+ {
189
+ changeType: "added",
190
+ description: "Preview API with support for category groups and marketplace partners",
191
+ breaking: false,
192
+ },
193
+ ],
194
+ };
195
+ /**
196
+ * All supported Diagnostic Settings versions for registration
197
+ * Ordered with latest stable version first, then preview versions
198
+ */
199
+ exports.ALL_DIAGNOSTIC_SETTINGS_VERSIONS = [
200
+ exports.DIAGNOSTIC_SETTINGS_VERSION_2016_09_01,
201
+ exports.DIAGNOSTIC_SETTINGS_VERSION_2021_05_01_PREVIEW,
202
+ ];
203
+ /**
204
+ * Resource type constant
205
+ */
206
+ exports.DIAGNOSTIC_SETTINGS_TYPE = "Microsoft.Insights/diagnosticSettings";
207
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhZ25vc3RpYy1zZXR0aW5ncy1zY2hlbWFzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F6dXJlLWRpYWdub3N0aWNzZXR0aW5ncy9saWIvZGlhZ25vc3RpYy1zZXR0aW5ncy1zY2hlbWFzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7OztBQUVILDJHQU80RTtBQUU1RSxnRkFBZ0Y7QUFDaEYsOEJBQThCO0FBQzlCLGdGQUFnRjtBQUVoRjs7R0FFRztBQUNILE1BQU0scUNBQXFDLEdBRXZDO0lBQ0YsSUFBSSxFQUFFO1FBQ0osUUFBUSxFQUFFLGlDQUFZLENBQUMsTUFBTTtRQUM3QixRQUFRLEVBQUUsSUFBSTtRQUNkLFdBQVcsRUFBRSxnQ0FBZ0M7UUFDN0MsVUFBVSxFQUFFO1lBQ1Y7Z0JBQ0UsUUFBUSxFQUFFLHVDQUFrQixDQUFDLFFBQVE7Z0JBQ3JDLE9BQU8sRUFBRSxrQkFBa0I7YUFDNUI7U0FDRjtLQUNGO0lBQ0QsV0FBVyxFQUFFO1FBQ1gsUUFBUSxFQUFFLGlDQUFZLENBQUMsTUFBTTtRQUM3QixRQUFRLEVBQUUsS0FBSztRQUNmLFdBQVcsRUFDVCxnRUFBZ0U7S0FDbkU7SUFDRCxnQkFBZ0IsRUFBRTtRQUNoQixRQUFRLEVBQUUsaUNBQVksQ0FBQyxNQUFNO1FBQzdCLFFBQVEsRUFBRSxLQUFLO1FBQ2YsV0FBVyxFQUFFLHdEQUF3RDtLQUN0RTtJQUNELDJCQUEyQixFQUFFO1FBQzNCLFFBQVEsRUFBRSxpQ0FBWSxDQUFDLE1BQU07UUFDN0IsUUFBUSxFQUFFLEtBQUs7UUFDZixXQUFXLEVBQUUsK0NBQStDO0tBQzdEO0lBQ0QsWUFBWSxFQUFFO1FBQ1osUUFBUSxFQUFFLGlDQUFZLENBQUMsTUFBTTtRQUM3QixRQUFRLEVBQUUsS0FBSztRQUNmLFdBQVcsRUFBRSw4QkFBOEI7S0FDNUM7SUFDRCxJQUFJLEVBQUU7UUFDSixRQUFRLEVBQUUsaUNBQVksQ0FBQyxLQUFLO1FB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VSxFQUFFLE9BQU87WUFDbkIsV0FBVyxFQUNULHVFQUF1RTtZQUN6RSxRQUFRLEVBQUUsS0FBSztTQUNoQjtLQUNGO0NBQ0YsQ0FBQztBQUVGOzs7R0FHRztBQUNVLFFBQUEsZ0NBQWdDLEdBQW9CO0lBQy9ELDhDQUFzQztJQUN0QyxzREFBOEM7Q0FDL0MsQ0FBQztBQUVGOztHQUVHO0FBQ1UsUUFBQSx3QkFBd0IsR0FBRyx1Q0FBdUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQVBJIHNjaGVtYXMgZm9yIEF6dXJlIERpYWdub3N0aWMgU2V0dGluZ3MgYWNyb3NzIGFsbCBzdXBwb3J0ZWQgdmVyc2lvbnNcbiAqXG4gKiBUaGlzIGZpbGUgZGVmaW5lcyB0aGUgY29tcGxldGUgQVBJIHNjaGVtYXMgZm9yIE1pY3Jvc29mdC5JbnNpZ2h0cy9kaWFnbm9zdGljU2V0dGluZ3NcbiAqIGFjcm9zcyBhbGwgc3VwcG9ydGVkIEFQSSB2ZXJzaW9ucy4gVGhlIHNjaGVtYXMgYXJlIHVzZWQgYnkgdGhlIEF6YXBpUmVzb3VyY2VcbiAqIGZyYW1ld29yayBmb3IgdmFsaWRhdGlvbiwgdHJhbnNmb3JtYXRpb24sIGFuZCB2ZXJzaW9uIG1hbmFnZW1lbnQuXG4gKi9cblxuaW1wb3J0IHtcbiAgQXBpU2NoZW1hLFxuICBQcm9wZXJ0eURlZmluaXRpb24sXG4gIFByb3BlcnR5VHlwZSxcbiAgVmFsaWRhdGlvblJ1bGVUeXBlLFxuICBWZXJzaW9uQ29uZmlnLFxuICBWZXJzaW9uU3VwcG9ydExldmVsLFxufSBmcm9tIFwiLi4vLi4vY29yZS1henVyZS9saWIvdmVyc2lvbi1tYW5hZ2VyL2ludGVyZmFjZXMvdmVyc2lvbi1pbnRlcmZhY2VzXCI7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBDT01NT04gUFJPUEVSVFkgREVGSU5JVElPTlNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogQ29tbW9uIHByb3BlcnR5IGRlZmluaXRpb25zIHNoYXJlZCBhY3Jvc3MgYWxsIERpYWdub3N0aWMgU2V0dGluZ3MgdmVyc2lvbnNcbiAqL1xuY29uc3QgQ09NTU9OX0RJQUdOT1NUSUNfU0VUVElOR1NfUFJPUEVSVElFUzoge1xuICBba2V5OiBzdHJpbmddOiBQcm9wZXJ0eURlZmluaXRpb247XG59ID0ge1xuICBuYW1lOiB7XG4gICAgZGF0YVR5cGU6IFByb3BlcnR5VHlwZS5TVFJJTkcsXG4gICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgZGVzY3JpcHRpb246IFwiTmFtZSBvZiB0aGUgZGlhZ25vc3RpYyBzZXR0aW5nXCIsXG4gICAgdmFsaWRhdGlvbjogW1xuICAgICAge1xuICAgICAgICBydWxlVHlwZTogVmFsaWRhdGlvblJ1bGVUeXBlLlJFUVVJUkVELFxuICAgICAgICBtZXNzYWdlOiBcIk5hbWUgaXMgcmVxdWlyZWRcIixcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcbiAgd29ya3NwYWNlSWQ6IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLlNUUklORyxcbiAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgZGVzY3JpcHRpb246XG4gICAgICBcIkxvZyBBbmFseXRpY3Mgd29ya3NwYWNlIHJlc291cmNlIElEIGZvciBsb2cvbWV0cmljIGRlc3RpbmF0aW9uXCIsXG4gIH0sXG4gIHN0b3JhZ2VBY2NvdW50SWQ6IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLlNUUklORyxcbiAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgZGVzY3JpcHRpb246IFwiU3RvcmFnZSBhY2NvdW50IHJlc291cmNlIElEIGZvciBsb2cvbWV0cmljIGRlc3RpbmF0aW9uXCIsXG4gIH0sXG4gIGV2ZW50SHViQXV0aG9yaXphdGlvblJ1bGVJZDoge1xuICAgIGRhdGFUeXBlOiBQcm9wZXJ0eVR5cGUuU1RSSU5HLFxuICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICBkZXNjcmlwdGlvbjogXCJFdmVudCBIdWIgYXV0aG9yaXphdGlvbiBydWxlIElEIGZvciBzdHJlYW1pbmdcIixcbiAgfSxcbiAgZXZlbnRIdWJOYW1lOiB7XG4gICAgZGF0YVR5cGU6IFByb3BlcnR5VHlwZS5TVFJJTkcsXG4gICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgIGRlc2NyaXB0aW9uOiBcIkV2ZW50IEh1YiBuYW1lIGZvciBzdHJlYW1pbmdcIixcbiAgfSxcbiAgbG9nczoge1xuICAgIGRhdGFUeXBlOiBQcm9wZXJ0eVR5cGUuQVJSQVksXG4gICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgIGRlc2NyaXB0aW9uOiBcIkxvZyBjYXRlZ29yeSBjb25maWd1cmF0aW9uc1wiLFxuICB9LFxuICBtZXRyaWNzOiB7XG4gICAgZGF0YVR5cGU6IFByb3BlcnR5VHlwZS5BUlJBWSxcbiAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgZGVzY3JpcHRpb246IFwiTWV0cmljIGNhdGVnb3J5IGNvbmZpZ3VyYXRpb25zXCIsXG4gIH0sXG4gIGxvZ0FuYWx5dGljc0Rlc3RpbmF0aW9uVHlwZToge1xuICAgIGRhdGFUeXBlOiBQcm9wZXJ0eVR5cGUuU1RSSU5HLFxuICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICBkZXNjcmlwdGlvbjpcbiAgICAgIFwiTG9nIEFuYWx5dGljcyBkZXN0aW5hdGlvbiB0eXBlIChEZWRpY2F0ZWQgb3IgQXp1cmVEaWFnbm9zdGljcylcIixcbiAgfSxcbn07XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBWRVJTSU9OLVNQRUNJRklDIFNDSEVNQVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogQVBJIFNjaGVtYSBmb3IgRGlhZ25vc3RpYyBTZXR0aW5ncyB2ZXJzaW9uIDIwMTYtMDktMDFcbiAqXG4gKiBUaGlzIGlzIHRoZSBsYXRlc3Qgc3RhYmxlIChub24tcHJldmlldykgdmVyc2lvbiBmb3IgZGlhZ25vc3RpYyBzZXR0aW5ncy5cbiAqIEl0IGluY2x1ZGVzIHN1cHBvcnQgZm9yOlxuICogLSBMb2cgQW5hbHl0aWNzIHdvcmtzcGFjZXNcbiAqIC0gU3RvcmFnZSBhY2NvdW50c1xuICogLSBFdmVudCBIdWJzICh2aWEgc2VydmljZUJ1c1J1bGVJZClcbiAqIC0gTG9nIGNhdGVnb3JpZXNcbiAqIC0gTWV0cmljc1xuICovXG5leHBvcnQgY29uc3QgRElBR05PU1RJQ19TRVRUSU5HU19TQ0hFTUFfMjAxNl8wOV8wMTogQXBpU2NoZW1hID0ge1xuICByZXNvdXJjZVR5cGU6IFwiTWljcm9zb2Z0Lkluc2lnaHRzL2RpYWdub3N0aWNTZXR0aW5nc1wiLFxuICB2ZXJzaW9uOiBcIjIwMTYtMDktMDFcIixcbiAgcHJvcGVydGllczoge1xuICAgIC4uLkNPTU1PTl9ESUFHTk9TVElDX1NFVFRJTkdTX1BST1BFUlRJRVMsXG4gIH0sXG4gIHJlcXVpcmVkOiBbXCJuYW1lXCJdLFxuICBvcHRpb25hbDogW1xuICAgIFwid29ya3NwYWNlSWRcIixcbiAgICBcInN0b3JhZ2VBY2NvdW50SWRcIixcbiAgICBcImV2ZW50SHViQXV0aG9yaXphdGlvblJ1bGVJZFwiLFxuICAgIFwiZXZlbnRIdWJOYW1lXCIsXG4gICAgXCJsb2dzXCIsXG4gICAgXCJtZXRyaWNzXCIsXG4gICAgXCJsb2dBbmFseXRpY3NEZXN0aW5hdGlvblR5cGVcIixcbiAgXSxcbiAgZGVwcmVjYXRlZDogW10sXG4gIHRyYW5zZm9ybWF0aW9uUnVsZXM6IHt9LFxuICB2YWxpZGF0aW9uUnVsZXM6IFtcbiAgICB7XG4gICAgICBwcm9wZXJ0eTogXCJuYW1lXCIsXG4gICAgICBydWxlczogW1xuICAgICAgICB7XG4gICAgICAgICAgcnVsZVR5cGU6IFZhbGlkYXRpb25SdWxlVHlwZS5SRVFVSVJFRCxcbiAgICAgICAgICBtZXNzYWdlOiBcIk5hbWUgaXMgcmVxdWlyZWQgZm9yIERpYWdub3N0aWMgU2V0dGluZ3NcIixcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgXSxcbn07XG5cbi8qKlxuICogQVBJIFNjaGVtYSBmb3IgRGlhZ25vc3RpYyBTZXR0aW5ncyB2ZXJzaW9uIDIwMjEtMDUtMDEtcHJldmlld1xuICpcbiAqIFRoaXMgaXMgdGhlIG1vc3QgcmVjZW50IHByZXZpZXcgdmVyc2lvbiBmb3IgZGlhZ25vc3RpYyBzZXR0aW5ncy5cbiAqIEl0IGluY2x1ZGVzIHN1cHBvcnQgZm9yOlxuICogLSBMb2cgQW5hbHl0aWNzIHdvcmtzcGFjZXNcbiAqIC0gU3RvcmFnZSBhY2NvdW50c1xuICogLSBFdmVudCBIdWJzXG4gKiAtIExvZyBjYXRlZ29yaWVzIGFuZCBjYXRlZ29yeSBncm91cHNcbiAqIC0gTWV0cmljc1xuICogLSBNYXJrZXRwbGFjZSBwYXJ0bmVyIGludGVncmF0aW9uc1xuICovXG5leHBvcnQgY29uc3QgRElBR05PU1RJQ19TRVRUSU5HU19TQ0hFTUFfMjAyMV8wNV8wMV9QUkVWSUVXOiBBcGlTY2hlbWEgPSB7XG4gIHJlc291cmNlVHlwZTogXCJNaWNyb3NvZnQuSW5zaWdodHMvZGlhZ25vc3RpY1NldHRpbmdzXCIsXG4gIHZlcnNpb246IFwiMjAyMS0wNS0wMS1wcmV2aWV3XCIsXG4gIHByb3BlcnRpZXM6IHtcbiAgICAuLi5DT01NT05fRElBR05PU1RJQ19TRVRUSU5HU19QUk9QRVJUSUVTLFxuICB9LFxuICByZXF1aXJlZDogW1wibmFtZVwiXSxcbiAgb3B0aW9uYWw6IFtcbiAgICBcIndvcmtzcGFjZUlkXCIsXG4gICAgXCJzdG9yYWdlQWNjb3VudElkXCIsXG4gICAgXCJldmVudEh1YkF1dGhvcml6YXRpb25SdWxlSWRcIixcbiAgICBcImV2ZW50SHViTmFtZVwiLFxuICAgIFwibG9nc1wiLFxuICAgIFwibWV0cmljc1wiLFxuICAgIFwibG9nQW5hbHl0aWNzRGVzdGluYXRpb25UeXBlXCIsXG4gIF0sXG4gIGRlcHJlY2F0ZWQ6IFtdLFxuICB0cmFuc2Zvcm1hdGlvblJ1bGVzOiB7fSxcbiAgdmFsaWRhdGlvblJ1bGVzOiBbXG4gICAge1xuICAgICAgcHJvcGVydHk6IFwibmFtZVwiLFxuICAgICAgcnVsZXM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHJ1bGVUeXBlOiBWYWxpZGF0aW9uUnVsZVR5cGUuUkVRVUlSRUQsXG4gICAgICAgICAgbWVzc2FnZTogXCJOYW1lIGlzIHJlcXVpcmVkIGZvciBEaWFnbm9zdGljIFNldHRpbmdzXCIsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gIF0sXG59O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVkVSU0lPTiBDT05GSUdVUkFUSU9OU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBWZXJzaW9uIGNvbmZpZ3VyYXRpb24gZm9yIERpYWdub3N0aWMgU2V0dGluZ3MgMjAxNi0wOS0wMVxuICovXG5leHBvcnQgY29uc3QgRElBR05PU1RJQ19TRVRUSU5HU19WRVJTSU9OXzIwMTZfMDlfMDE6IFZlcnNpb25Db25maWcgPSB7XG4gIHZlcnNpb246IFwiMjAxNi0wOS0wMVwiLFxuICBzY2hlbWE6IERJQUdOT1NUSUNfU0VUVElOR1NfU0NIRU1BXzIwMTZfMDlfMDEsXG4gIHN1cHBvcnRMZXZlbDogVmVyc2lvblN1cHBvcnRMZXZlbC5BQ1RJVkUsXG4gIHJlbGVhc2VEYXRlOiBcIjIwMTYtMDktMDFcIixcbiAgZGVwcmVjYXRpb25EYXRlOiB1bmRlZmluZWQsXG4gIHN1bnNldERhdGU6IHVuZGVmaW5lZCxcbiAgYnJlYWtpbmdDaGFuZ2VzOiBbXSxcbiAgbWlncmF0aW9uR3VpZGU6IFwiL2RvY3MvZGlhZ25vc3RpYy1zZXR0aW5ncy9taWdyYXRpb24tMjAxNi0wOS0wMVwiLFxuICBjaGFuZ2VMb2c6IFtcbiAgICB7XG4gICAgICBjaGFuZ2VUeXBlOiBcInVwZGF0ZWRcIixcbiAgICAgIGRlc2NyaXB0aW9uOiBcIlN0YWJsZSBBUEkgdmVyc2lvbiBmb3IgZGlhZ25vc3RpYyBzZXR0aW5nc1wiLFxuICAgICAgYnJlYWtpbmc6IGZhbHNlLFxuICAgIH0sXG4gIF0sXG59O1xuXG4vKipcbiAqIFZlcnNpb24gY29uZmlndXJhdGlvbiBmb3IgRGlhZ25vc3RpYyBTZXR0aW5ncyAyMDIxLTA1LTAxLXByZXZpZXdcbiAqL1xuZXhwb3J0IGNvbnN0IERJQUdOT1NUSUNfU0VUVElOR1NfVkVSU0lPTl8yMDIxXzA1XzAxX1BSRVZJRVc6IFZlcnNpb25Db25maWcgPSB7XG4gIHZlcnNpb246IFwiMjAyMS0wNS0wMS1wcmV2aWV3XCIsXG4gIHNjaGVtYTogRElBR05PU1RJQ19TRVRUSU5HU19TQ0hFTUFfMjAyMV8wNV8wMV9QUkVWSUVXLFxuICBzdXBwb3J0TGV2ZWw6IFZlcnNpb25TdXBwb3J0TGV2ZWwuQUNUSVZFLFxuICByZWxlYXNlRGF0ZTogXCIyMDIxLTA1LTAxXCIsXG4gIGRlcHJlY2F0aW9uRGF0ZTogdW5kZWZpbmVkLFxuICBzdW5zZXREYXRlOiB1bmRlZmluZWQsXG4gIGJyZWFraW5nQ2hhbmdlczogW10sXG4gIG1pZ3JhdGlvbkd1aWRlOiBcIi9kb2NzL2RpYWdub3N0aWMtc2V0dGluZ3MvbWlncmF0aW9uLTIwMjEtMDUtMDEtcHJldmlld1wiLFxuICBjaGFuZ2VMb2c6IFtcbiAgICB7XG4gICAgICBjaGFuZ2VUeXBlOiBcImFkZGVkXCIsXG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgXCJQcmV2aWV3IEFQSSB3aXRoIHN1cHBvcnQgZm9yIGNhdGVnb3J5IGdyb3VwcyBhbmQgbWFya2V0cGxhY2UgcGFydG5lcnNcIixcbiAgICAgIGJyZWFraW5nOiBmYWxzZSxcbiAgICB9LFxuICBdLFxufTtcblxuLyoqXG4gKiBBbGwgc3VwcG9ydGVkIERpYWdub3N0aWMgU2V0dGluZ3MgdmVyc2lvbnMgZm9yIHJlZ2lzdHJhdGlvblxuICogT3JkZXJlZCB3aXRoIGxhdGVzdCBzdGFibGUgdmVyc2lvbiBmaXJzdCwgdGhlbiBwcmV2aWV3IHZlcnNpb25zXG4gKi9cbmV4cG9ydCBjb25zdCBBTExfRElBR05PU1RJQ19TRVRUSU5HU19WRVJTSU9OUzogVmVyc2lvbkNvbmZpZ1tdID0gW1xuICBESUFHTk9TVElDX1NFVFRJTkdTX1ZFUlNJT05fMjAxNl8wOV8wMSxcbiAgRElBR05PU1RJQ19TRVRUSU5HU19WRVJTSU9OXzIwMjFfMDVfMDFfUFJFVklFVyxcbl07XG5cbi8qKlxuICogUmVzb3VyY2UgdHlwZSBjb25zdGFudFxuICovXG5leHBvcnQgY29uc3QgRElBR05PU1RJQ19TRVRUSU5HU19UWVBFID0gXCJNaWNyb3NvZnQuSW5zaWdodHMvZGlhZ25vc3RpY1NldHRpbmdzXCI7XG4iXX0=
@@ -0,0 +1,193 @@
1
+ /**
2
+ * Unified Azure Diagnostic Settings implementation using AzapiResource framework
3
+ *
4
+ * This class provides a version-aware implementation for Azure Diagnostic Settings
5
+ * that automatically handles version management, schema validation, and property
6
+ * transformation across all supported API versions.
7
+ *
8
+ * Supported API Versions:
9
+ * - 2021-05-01-preview (Active, Latest)
10
+ *
11
+ * Features:
12
+ * - Automatic latest version resolution when no version is specified
13
+ * - Explicit version pinning for stability requirements
14
+ * - Schema-driven validation and transformation
15
+ * - Full JSII compliance for multi-language support
16
+ * - Support for multiple destinations (Log Analytics, Storage, Event Hub)
17
+ */
18
+ import * as cdktf from "cdktf";
19
+ import { Construct } from "constructs";
20
+ import { AzapiResource, AzapiResourceProps, DiagnosticLogConfig, DiagnosticMetricConfig } from "../../core-azure/lib/azapi/azapi-resource";
21
+ import { ApiSchema } from "../../core-azure/lib/version-manager/interfaces/version-interfaces";
22
+ /**
23
+ * Properties for the unified Azure Diagnostic Settings
24
+ *
25
+ * Extends AzapiResourceProps with Diagnostic Settings specific properties
26
+ */
27
+ export interface DiagnosticSettingsProps extends AzapiResourceProps {
28
+ /**
29
+ * Target resource ID to attach diagnostic settings to
30
+ * This is the resource being monitored
31
+ */
32
+ readonly targetResourceId: string;
33
+ /**
34
+ * Log Analytics workspace ID for log/metric destination
35
+ * At least one destination (workspace, storage, or event hub) must be specified
36
+ */
37
+ readonly workspaceId?: string;
38
+ /**
39
+ * Storage account ID for log/metric destination
40
+ * At least one destination (workspace, storage, or event hub) must be specified
41
+ */
42
+ readonly storageAccountId?: string;
43
+ /**
44
+ * Event Hub authorization rule ID for streaming
45
+ * Requires eventHubName to be specified as well
46
+ */
47
+ readonly eventHubAuthorizationRuleId?: string;
48
+ /**
49
+ * Event Hub name for streaming
50
+ * Required when eventHubAuthorizationRuleId is specified
51
+ */
52
+ readonly eventHubName?: string;
53
+ /**
54
+ * Log categories to enable
55
+ * Defines which log categories should be exported
56
+ */
57
+ readonly logs?: DiagnosticLogConfig[];
58
+ /**
59
+ * Metric categories to enable
60
+ * Defines which metric categories should be exported
61
+ */
62
+ readonly metrics?: DiagnosticMetricConfig[];
63
+ /**
64
+ * Log Analytics destination type
65
+ * Determines the table structure in Log Analytics
66
+ * @defaultValue undefined (uses default behavior)
67
+ */
68
+ readonly logAnalyticsDestinationType?: string;
69
+ }
70
+ /**
71
+ * Diagnostic Settings properties for the request body
72
+ */
73
+ export interface DiagnosticSettingsBodyProperties {
74
+ readonly workspaceId?: string;
75
+ readonly storageAccountId?: string;
76
+ readonly eventHubAuthorizationRuleId?: string;
77
+ readonly eventHubName?: string;
78
+ readonly logs?: DiagnosticLogConfig[];
79
+ readonly metrics?: DiagnosticMetricConfig[];
80
+ readonly logAnalyticsDestinationType?: string;
81
+ }
82
+ /**
83
+ * The resource body interface for Azure Diagnostic Settings API calls
84
+ */
85
+ export interface DiagnosticSettingsBody {
86
+ readonly properties: DiagnosticSettingsBodyProperties;
87
+ }
88
+ /**
89
+ * Unified Azure Diagnostic Settings implementation
90
+ *
91
+ * This class provides a single, version-aware implementation that automatically handles version
92
+ * resolution, schema validation, and property transformation while maintaining full JSII compliance.
93
+ *
94
+ * Diagnostic Settings enable monitoring and observability by exporting platform logs and metrics
95
+ * to one or more destinations including Log Analytics workspaces, Storage accounts, and Event Hubs.
96
+ *
97
+ * @example
98
+ * // Basic diagnostic settings with Log Analytics:
99
+ * const diagnostics = new DiagnosticSettings(this, "vm-diagnostics", {
100
+ * name: "vm-diagnostics",
101
+ * targetResourceId: virtualMachine.id,
102
+ * workspaceId: logAnalyticsWorkspace.id,
103
+ * logs: [{
104
+ * categoryGroup: "allLogs",
105
+ * enabled: true
106
+ * }],
107
+ * metrics: [{
108
+ * category: "AllMetrics",
109
+ * enabled: true
110
+ * }]
111
+ * });
112
+ *
113
+ * @example
114
+ * // Diagnostic settings with multiple destinations:
115
+ * const diagnostics = new DiagnosticSettings(this, "storage-diagnostics", {
116
+ * name: "storage-diagnostics",
117
+ * targetResourceId: storageAccount.id,
118
+ * workspaceId: logAnalyticsWorkspace.id,
119
+ * storageAccountId: archiveStorageAccount.id,
120
+ * eventHubAuthorizationRuleId: eventHub.authRuleId,
121
+ * eventHubName: "monitoring-hub",
122
+ * logs: [{
123
+ * category: "StorageRead",
124
+ * enabled: true,
125
+ * retentionPolicy: {
126
+ * enabled: true,
127
+ * days: 90
128
+ * }
129
+ * }],
130
+ * metrics: [{
131
+ * category: "Transaction",
132
+ * enabled: true
133
+ * }]
134
+ * });
135
+ *
136
+ * @stability stable
137
+ */
138
+ export declare class DiagnosticSettings extends AzapiResource {
139
+ /**
140
+ * Static initialization flag to ensure schemas are registered only once
141
+ */
142
+ private static schemasRegistered;
143
+ /**
144
+ * Ensures that Diagnostic Settings schemas are registered with the ApiVersionManager
145
+ * This is called once during the first DiagnosticSettings instantiation
146
+ */
147
+ private static ensureSchemasRegistered;
148
+ /**
149
+ * The input properties for this Diagnostic Settings instance
150
+ */
151
+ readonly props: DiagnosticSettingsProps;
152
+ readonly idOutput: cdktf.TerraformOutput;
153
+ readonly nameOutput: cdktf.TerraformOutput;
154
+ readonly id: string;
155
+ /**
156
+ * Creates a new Azure Diagnostic Settings using the AzapiResource framework
157
+ *
158
+ * The constructor automatically handles version resolution, schema registration,
159
+ * validation, and resource creation.
160
+ *
161
+ * @param scope - The scope in which to define this construct
162
+ * @param id - The unique identifier for this instance
163
+ * @param props - Configuration properties for the Diagnostic Settings
164
+ */
165
+ constructor(scope: Construct, id: string, props: DiagnosticSettingsProps);
166
+ /**
167
+ * Gets the default API version to use when no explicit version is specified
168
+ * Returns the latest stable (non-preview) version as the default
169
+ */
170
+ protected defaultVersion(): string;
171
+ /**
172
+ * Gets the Azure resource type for Diagnostic Settings
173
+ */
174
+ protected resourceType(): string;
175
+ /**
176
+ * Gets the API schema for the resolved version
177
+ * Uses the framework's schema resolution to get the appropriate schema
178
+ */
179
+ protected apiSchema(): ApiSchema;
180
+ /**
181
+ * Creates the resource body for the Azure API call
182
+ * Transforms the input properties into the JSON format expected by Azure REST API
183
+ */
184
+ protected createResourceBody(props: any): any;
185
+ /**
186
+ * Resolves the parent resource ID for Diagnostic Settings
187
+ * Diagnostic Settings are child resources attached to the monitored resource
188
+ *
189
+ * @param props - The resource properties
190
+ * @returns The parent resource ID (the target resource being monitored)
191
+ */
192
+ protected resolveParentId(props: any): string;
193
+ }