@microsoft/terraform-cdk-constructs 2.2.0 → 2.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (259) hide show
  1. package/.jsii +64029 -35477
  2. package/API.md +89314 -49618
  3. package/README.md +15 -0
  4. package/cdktf.json +1 -1
  5. package/docs/azure-api-version-update-pipeline.md +271 -0
  6. package/lib/azure-actiongroup/lib/action-group.js +1 -1
  7. package/lib/azure-activitylogalert/lib/activity-log-alert.js +1 -1
  8. package/lib/azure-aks/lib/aks-cluster.js +1 -1
  9. package/lib/azure-applicationinsights/index.d.ts +7 -0
  10. package/lib/azure-applicationinsights/index.js +24 -0
  11. package/lib/azure-applicationinsights/lib/application-insights-schemas.d.ts +29 -0
  12. package/lib/azure-applicationinsights/lib/application-insights-schemas.js +162 -0
  13. package/lib/azure-applicationinsights/lib/application-insights.d.ts +206 -0
  14. package/lib/azure-applicationinsights/lib/application-insights.js +209 -0
  15. package/lib/azure-applicationinsights/lib/index.d.ts +5 -0
  16. package/lib/azure-applicationinsights/lib/index.js +22 -0
  17. package/lib/azure-applicationinsights/test/application-insights.integ.d.ts +9 -0
  18. package/lib/azure-applicationinsights/test/application-insights.integ.js +84 -0
  19. package/lib/azure-applicationinsights/test/application-insights.spec.d.ts +8 -0
  20. package/lib/azure-applicationinsights/test/application-insights.spec.js +209 -0
  21. package/lib/azure-containerapps/lib/container-app-environment-schemas.d.ts +1 -1
  22. package/lib/azure-containerapps/lib/container-app-environment-schemas.js +2 -2
  23. package/lib/azure-containerapps/lib/container-app-environment.js +1 -1
  24. package/lib/azure-containerapps/lib/container-app-schemas.d.ts +1 -1
  25. package/lib/azure-containerapps/lib/container-app-schemas.js +2 -2
  26. package/lib/azure-containerapps/lib/container-app.js +1 -1
  27. package/lib/azure-containerapps/lib/container-apps-job-schemas.d.ts +8 -0
  28. package/lib/azure-containerapps/lib/container-apps-job-schemas.js +179 -0
  29. package/lib/azure-containerapps/lib/container-apps-job.d.ts +128 -0
  30. package/lib/azure-containerapps/lib/container-apps-job.js +81 -0
  31. package/lib/azure-containerapps/lib/index.d.ts +2 -0
  32. package/lib/azure-containerapps/lib/index.js +3 -1
  33. package/lib/azure-containerapps/test/container-apps-job.integ.d.ts +6 -0
  34. package/lib/azure-containerapps/test/container-apps-job.integ.js +95 -0
  35. package/lib/azure-containerapps/test/container-apps-job.spec.d.ts +1 -0
  36. package/lib/azure-containerapps/test/container-apps-job.spec.js +261 -0
  37. package/lib/azure-containerregistry/index.d.ts +1 -0
  38. package/lib/azure-containerregistry/index.js +18 -0
  39. package/lib/azure-containerregistry/lib/container-registry-schemas.d.ts +32 -0
  40. package/lib/azure-containerregistry/lib/container-registry-schemas.js +316 -0
  41. package/lib/azure-containerregistry/lib/container-registry.d.ts +330 -0
  42. package/lib/azure-containerregistry/lib/container-registry.js +217 -0
  43. package/lib/azure-containerregistry/lib/index.d.ts +2 -0
  44. package/lib/azure-containerregistry/lib/index.js +19 -0
  45. package/lib/azure-containerregistry/test/container-registry.integ.d.ts +9 -0
  46. package/lib/azure-containerregistry/test/container-registry.integ.js +101 -0
  47. package/lib/azure-containerregistry/test/container-registry.spec.d.ts +4 -0
  48. package/lib/azure-containerregistry/test/container-registry.spec.js +425 -0
  49. package/lib/azure-cosmosdb/index.d.ts +1 -0
  50. package/lib/azure-cosmosdb/index.js +18 -0
  51. package/lib/azure-cosmosdb/lib/cosmos-db-schemas.d.ts +40 -0
  52. package/lib/azure-cosmosdb/lib/cosmos-db-schemas.js +330 -0
  53. package/lib/azure-cosmosdb/lib/cosmos-db.d.ts +290 -0
  54. package/lib/azure-cosmosdb/lib/cosmos-db.js +222 -0
  55. package/lib/azure-cosmosdb/lib/index.d.ts +2 -0
  56. package/lib/azure-cosmosdb/lib/index.js +19 -0
  57. package/lib/azure-cosmosdb/test/cosmos-db.integ.d.ts +9 -0
  58. package/lib/azure-cosmosdb/test/cosmos-db.integ.js +98 -0
  59. package/lib/azure-cosmosdb/test/cosmos-db.spec.d.ts +4 -0
  60. package/lib/azure-cosmosdb/test/cosmos-db.spec.js +339 -0
  61. package/lib/azure-dataexplorer/index.d.ts +1 -0
  62. package/lib/azure-dataexplorer/index.js +18 -0
  63. package/lib/azure-dataexplorer/lib/data-explorer-cluster-schemas.d.ts +5 -0
  64. package/lib/azure-dataexplorer/lib/data-explorer-cluster-schemas.js +131 -0
  65. package/lib/azure-dataexplorer/lib/data-explorer-cluster.d.ts +54 -0
  66. package/lib/azure-dataexplorer/lib/data-explorer-cluster.js +91 -0
  67. package/lib/azure-dataexplorer/lib/data-explorer-database-schemas.d.ts +5 -0
  68. package/lib/azure-dataexplorer/lib/data-explorer-database-schemas.js +78 -0
  69. package/lib/azure-dataexplorer/lib/data-explorer-database.d.ts +24 -0
  70. package/lib/azure-dataexplorer/lib/data-explorer-database.js +68 -0
  71. package/lib/azure-dataexplorer/lib/data-explorer-table-schemas.d.ts +5 -0
  72. package/lib/azure-dataexplorer/lib/data-explorer-table-schemas.js +94 -0
  73. package/lib/azure-dataexplorer/lib/data-explorer-table.d.ts +25 -0
  74. package/lib/azure-dataexplorer/lib/data-explorer-table.js +62 -0
  75. package/lib/azure-dataexplorer/lib/index.d.ts +6 -0
  76. package/lib/azure-dataexplorer/lib/index.js +23 -0
  77. package/lib/azure-dataexplorer/test/data-explorer.integ.d.ts +1 -0
  78. package/lib/azure-dataexplorer/test/data-explorer.integ.js +78 -0
  79. package/lib/azure-dataexplorer/test/data-explorer.spec.d.ts +1 -0
  80. package/lib/azure-dataexplorer/test/data-explorer.spec.js +248 -0
  81. package/lib/azure-diagnosticsettings/lib/diagnostic-settings.js +1 -1
  82. package/lib/azure-dnsforwardingruleset/lib/dns-forwarding-ruleset.js +1 -1
  83. package/lib/azure-dnsforwardingruleset/lib/forwarding-rule.js +1 -1
  84. package/lib/azure-dnsforwardingruleset/lib/virtual-network-link.js +1 -1
  85. package/lib/azure-dnsresolver/lib/dns-resolver.js +1 -1
  86. package/lib/azure-dnsresolver/lib/inbound-endpoint.js +1 -1
  87. package/lib/azure-dnsresolver/lib/outbound-endpoint.js +1 -1
  88. package/lib/azure-dnszone/lib/dns-zone.js +1 -1
  89. package/lib/azure-dnszone/lib/records/dns-records.js +10 -10
  90. package/lib/azure-eventgrideventsubscription/index.d.ts +1 -0
  91. package/lib/azure-eventgrideventsubscription/index.js +18 -0
  92. package/lib/azure-eventgrideventsubscription/lib/event-grid-event-subscription-schemas.d.ts +5 -0
  93. package/lib/azure-eventgrideventsubscription/lib/event-grid-event-subscription-schemas.js +151 -0
  94. package/lib/azure-eventgrideventsubscription/lib/event-grid-event-subscription.d.ts +59 -0
  95. package/lib/azure-eventgrideventsubscription/lib/event-grid-event-subscription.js +67 -0
  96. package/lib/azure-eventgrideventsubscription/lib/index.d.ts +2 -0
  97. package/lib/azure-eventgrideventsubscription/lib/index.js +19 -0
  98. package/lib/azure-eventgrideventsubscription/test/event-grid-event-subscription.integ.d.ts +1 -0
  99. package/lib/azure-eventgrideventsubscription/test/event-grid-event-subscription.integ.js +100 -0
  100. package/lib/azure-eventgrideventsubscription/test/event-grid-event-subscription.spec.d.ts +1 -0
  101. package/lib/azure-eventgrideventsubscription/test/event-grid-event-subscription.spec.js +242 -0
  102. package/lib/azure-eventgridsystemtopic/index.d.ts +1 -0
  103. package/lib/azure-eventgridsystemtopic/index.js +18 -0
  104. package/lib/azure-eventgridsystemtopic/lib/event-grid-system-topic-schemas.d.ts +5 -0
  105. package/lib/azure-eventgridsystemtopic/lib/event-grid-system-topic-schemas.js +164 -0
  106. package/lib/azure-eventgridsystemtopic/lib/event-grid-system-topic.d.ts +46 -0
  107. package/lib/azure-eventgridsystemtopic/lib/event-grid-system-topic.js +68 -0
  108. package/lib/azure-eventgridsystemtopic/lib/index.d.ts +2 -0
  109. package/lib/azure-eventgridsystemtopic/lib/index.js +19 -0
  110. package/lib/azure-eventgridsystemtopic/test/event-grid-system-topic.integ.d.ts +1 -0
  111. package/lib/azure-eventgridsystemtopic/test/event-grid-system-topic.integ.js +64 -0
  112. package/lib/azure-eventgridsystemtopic/test/event-grid-system-topic.spec.d.ts +1 -0
  113. package/lib/azure-eventgridsystemtopic/test/event-grid-system-topic.spec.js +241 -0
  114. package/lib/azure-eventhub/index.d.ts +7 -0
  115. package/lib/azure-eventhub/index.js +24 -0
  116. package/lib/azure-eventhub/lib/event-hub-namespace.d.ts +204 -0
  117. package/lib/azure-eventhub/lib/event-hub-namespace.js +178 -0
  118. package/lib/azure-eventhub/lib/event-hub-schemas.d.ts +63 -0
  119. package/lib/azure-eventhub/lib/event-hub-schemas.js +370 -0
  120. package/lib/azure-eventhub/lib/event-hub.d.ts +153 -0
  121. package/lib/azure-eventhub/lib/event-hub.js +171 -0
  122. package/lib/azure-eventhub/lib/index.d.ts +6 -0
  123. package/lib/azure-eventhub/lib/index.js +23 -0
  124. package/lib/azure-eventhub/test/event-hub.integ.d.ts +9 -0
  125. package/lib/azure-eventhub/test/event-hub.integ.js +113 -0
  126. package/lib/azure-eventhub/test/event-hub.spec.d.ts +8 -0
  127. package/lib/azure-eventhub/test/event-hub.spec.js +438 -0
  128. package/lib/azure-functionapp/index.d.ts +1 -0
  129. package/lib/azure-functionapp/index.js +18 -0
  130. package/lib/azure-functionapp/lib/function-app-schemas.d.ts +32 -0
  131. package/lib/azure-functionapp/lib/function-app-schemas.js +303 -0
  132. package/lib/azure-functionapp/lib/function-app.d.ts +367 -0
  133. package/lib/azure-functionapp/lib/function-app.js +223 -0
  134. package/lib/azure-functionapp/lib/index.d.ts +2 -0
  135. package/lib/azure-functionapp/lib/index.js +19 -0
  136. package/lib/azure-functionapp/test/function-app.integ.d.ts +12 -0
  137. package/lib/azure-functionapp/test/function-app.integ.js +134 -0
  138. package/lib/azure-functionapp/test/function-app.spec.d.ts +4 -0
  139. package/lib/azure-functionapp/test/function-app.spec.js +566 -0
  140. package/lib/azure-keyvault/index.d.ts +1 -0
  141. package/lib/azure-keyvault/index.js +18 -0
  142. package/lib/azure-keyvault/lib/index.d.ts +2 -0
  143. package/lib/azure-keyvault/lib/index.js +19 -0
  144. package/lib/azure-keyvault/lib/key-vault-schemas.d.ts +40 -0
  145. package/lib/azure-keyvault/lib/key-vault-schemas.js +312 -0
  146. package/lib/azure-keyvault/lib/key-vault.d.ts +344 -0
  147. package/lib/azure-keyvault/lib/key-vault.js +243 -0
  148. package/lib/azure-keyvault/test/key-vault.integ.d.ts +9 -0
  149. package/lib/azure-keyvault/test/key-vault.integ.js +108 -0
  150. package/lib/azure-keyvault/test/key-vault.spec.d.ts +4 -0
  151. package/lib/azure-keyvault/test/key-vault.spec.js +264 -0
  152. package/lib/azure-loganalyticsworkspace/lib/log-analytics-workspace.js +1 -1
  153. package/lib/azure-metricalert/lib/metric-alert.js +1 -1
  154. package/lib/azure-networkinterface/lib/network-interface.js +1 -1
  155. package/lib/azure-networksecuritygroup/lib/network-security-group.js +1 -1
  156. package/lib/azure-networkwatcher/lib/network-watcher.js +1 -1
  157. package/lib/azure-policyassignment/lib/policy-assignment.js +1 -1
  158. package/lib/azure-policydefinition/lib/policy-definition.js +1 -1
  159. package/lib/azure-policysetdefinition/lib/policy-set-definition.js +1 -1
  160. package/lib/azure-privatednszone/lib/private-dns-zone.js +1 -1
  161. package/lib/azure-privatednszone/lib/records/private-dns-records.js +8 -8
  162. package/lib/azure-privatednszonelink/lib/private-dns-zone-link.js +1 -1
  163. package/lib/azure-publicipaddress/lib/public-ip-address.js +1 -1
  164. package/lib/azure-resourcegroup/lib/resource-group.js +1 -1
  165. package/lib/azure-roleassignment/lib/role-assignment.js +1 -1
  166. package/lib/azure-roledefinition/lib/role-definition.js +1 -1
  167. package/lib/azure-sreagent/index.d.ts +1 -0
  168. package/lib/azure-sreagent/index.js +18 -0
  169. package/lib/azure-sreagent/lib/index.d.ts +2 -0
  170. package/lib/azure-sreagent/lib/index.js +19 -0
  171. package/lib/azure-sreagent/lib/sre-agent-schemas.d.ts +29 -0
  172. package/lib/azure-sreagent/lib/sre-agent-schemas.js +296 -0
  173. package/lib/azure-sreagent/lib/sre-agent.d.ts +208 -0
  174. package/lib/azure-sreagent/lib/sre-agent.js +217 -0
  175. package/lib/azure-sreagent/test/sre-agent.integ.d.ts +9 -0
  176. package/lib/azure-sreagent/test/sre-agent.integ.js +78 -0
  177. package/lib/azure-sreagent/test/sre-agent.spec.d.ts +4 -0
  178. package/lib/azure-sreagent/test/sre-agent.spec.js +216 -0
  179. package/lib/azure-staticwebapp/index.d.ts +1 -0
  180. package/lib/azure-staticwebapp/index.js +18 -0
  181. package/lib/azure-staticwebapp/lib/index.d.ts +2 -0
  182. package/lib/azure-staticwebapp/lib/index.js +19 -0
  183. package/lib/azure-staticwebapp/lib/static-web-app-schemas.d.ts +40 -0
  184. package/lib/azure-staticwebapp/lib/static-web-app-schemas.js +236 -0
  185. package/lib/azure-staticwebapp/lib/static-web-app.d.ts +242 -0
  186. package/lib/azure-staticwebapp/lib/static-web-app.js +232 -0
  187. package/lib/azure-staticwebapp/test/static-web-app.integ.d.ts +9 -0
  188. package/lib/azure-staticwebapp/test/static-web-app.integ.js +76 -0
  189. package/lib/azure-staticwebapp/test/static-web-app.spec.d.ts +15 -0
  190. package/lib/azure-staticwebapp/test/static-web-app.spec.js +293 -0
  191. package/lib/azure-storageaccount/lib/storage-account.js +1 -1
  192. package/lib/azure-storageblobcontainer/index.d.ts +1 -0
  193. package/lib/azure-storageblobcontainer/index.js +18 -0
  194. package/lib/azure-storageblobcontainer/lib/index.d.ts +2 -0
  195. package/lib/azure-storageblobcontainer/lib/index.js +19 -0
  196. package/lib/azure-storageblobcontainer/lib/storage-blob-container-schemas.d.ts +5 -0
  197. package/lib/azure-storageblobcontainer/lib/storage-blob-container-schemas.js +108 -0
  198. package/lib/azure-storageblobcontainer/lib/storage-blob-container.d.ts +37 -0
  199. package/lib/azure-storageblobcontainer/lib/storage-blob-container.js +63 -0
  200. package/lib/azure-storageblobcontainer/test/storage-blob-container.integ.d.ts +1 -0
  201. package/lib/azure-storageblobcontainer/test/storage-blob-container.integ.js +60 -0
  202. package/lib/azure-storageblobcontainer/test/storage-blob-container.spec.d.ts +1 -0
  203. package/lib/azure-storageblobcontainer/test/storage-blob-container.spec.js +172 -0
  204. package/lib/azure-subnet/lib/subnet.js +1 -1
  205. package/lib/azure-userassignedidentity/index.d.ts +1 -0
  206. package/lib/azure-userassignedidentity/index.js +18 -0
  207. package/lib/azure-userassignedidentity/lib/index.d.ts +2 -0
  208. package/lib/azure-userassignedidentity/lib/index.js +19 -0
  209. package/lib/azure-userassignedidentity/lib/user-assigned-identity-schemas.d.ts +8 -0
  210. package/lib/azure-userassignedidentity/lib/user-assigned-identity-schemas.js +107 -0
  211. package/lib/azure-userassignedidentity/lib/user-assigned-identity.d.ts +37 -0
  212. package/lib/azure-userassignedidentity/lib/user-assigned-identity.js +85 -0
  213. package/lib/azure-userassignedidentity/test/user-assigned-identity.integ.d.ts +1 -0
  214. package/lib/azure-userassignedidentity/test/user-assigned-identity.integ.js +64 -0
  215. package/lib/azure-userassignedidentity/test/user-assigned-identity.spec.d.ts +1 -0
  216. package/lib/azure-userassignedidentity/test/user-assigned-identity.spec.js +241 -0
  217. package/lib/azure-virtualmachine/lib/virtual-machine.js +1 -1
  218. package/lib/azure-virtualnetwork/lib/virtual-network.js +1 -1
  219. package/lib/azure-virtualnetworkgateway/lib/virtual-network-gateway.js +1 -1
  220. package/lib/azure-virtualnetworkgatewayconnection/lib/virtual-network-gateway-connection.js +1 -1
  221. package/lib/azure-virtualnetworkmanager/lib/connectivity-configuration.js +1 -1
  222. package/lib/azure-virtualnetworkmanager/lib/ipam-pool-static-cidr.js +1 -1
  223. package/lib/azure-virtualnetworkmanager/lib/ipam-pool.js +1 -1
  224. package/lib/azure-virtualnetworkmanager/lib/network-group-static-member.js +1 -1
  225. package/lib/azure-virtualnetworkmanager/lib/network-group.js +1 -1
  226. package/lib/azure-virtualnetworkmanager/lib/security-admin-configuration.js +1 -1
  227. package/lib/azure-virtualnetworkmanager/lib/security-admin-rule-collection.js +1 -1
  228. package/lib/azure-virtualnetworkmanager/lib/security-admin-rule.js +1 -1
  229. package/lib/azure-virtualnetworkmanager/lib/virtual-network-manager.js +1 -1
  230. package/lib/azure-vmss/lib/virtual-machine-scale-set.d.ts +66 -1
  231. package/lib/azure-vmss/lib/virtual-machine-scale-set.js +141 -2
  232. package/lib/azure-vmss/lib/vmss-schemas.d.ts +195 -0
  233. package/lib/azure-vmss/lib/vmss-schemas.js +33 -1
  234. package/lib/azure-vmss/test/virtual-machine-scale-set.spec.js +463 -1
  235. package/lib/core-azure/lib/azapi/azapi-resource.js +2 -2
  236. package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-client-config/index.js +4 -4
  237. package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource/index.js +7 -7
  238. package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource-action/index.js +2 -2
  239. package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource-id/index.js +2 -2
  240. package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource-list/index.js +2 -2
  241. package/lib/core-azure/lib/azapi/providers-azapi/data-plane-resource/index.js +2 -2
  242. package/lib/core-azure/lib/azapi/providers-azapi/provider/index.js +3 -3
  243. package/lib/core-azure/lib/azapi/providers-azapi/resource/index.js +7 -7
  244. package/lib/core-azure/lib/azapi/providers-azapi/resource-action/index.js +5 -5
  245. package/lib/core-azure/lib/azapi/providers-azapi/update-resource/index.js +5 -5
  246. package/lib/core-azure/lib/azapi/schema-mapper/schema-mapper.js +1 -1
  247. package/lib/core-azure/lib/version-manager/api-version-manager.js +1 -1
  248. package/lib/core-azure/lib/version-manager/interfaces/version-interfaces.js +7 -7
  249. package/lib/index.d.ts +39 -0
  250. package/lib/index.js +41 -2
  251. package/lib/testing/index.js +20 -3
  252. package/lib/testing/lib/cleanup.js +1 -1
  253. package/lib/testing/lib/metadata.js +12 -4
  254. package/lib/testing/lib/naming.js +57 -1
  255. package/package.json +1 -1
  256. package/scripts/azure-version-updater/create-issue.ts +189 -0
  257. package/scripts/azure-version-updater/discover.ts +382 -0
  258. package/scripts/azure-version-updater/spec-mapping.ts +164 -0
  259. package/scripts/azure-version-updater/tsconfig.json +11 -0
@@ -0,0 +1,242 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const cdktn_1 = require("cdktn");
4
+ const cdktn = require("cdktn");
5
+ const api_version_manager_1 = require("../../core-azure/lib/version-manager/api-version-manager");
6
+ const version_interfaces_1 = require("../../core-azure/lib/version-manager/interfaces/version-interfaces");
7
+ const event_grid_event_subscription_1 = require("../lib/event-grid-event-subscription");
8
+ const event_grid_event_subscription_schemas_1 = require("../lib/event-grid-event-subscription-schemas");
9
+ describe("EventGridEventSubscription - Implementation", () => {
10
+ let app;
11
+ let stack;
12
+ let manager;
13
+ const scope = "/subscriptions/test-sub/resourceGroups/test-rg/providers/Microsoft.EventGrid/systemTopics/test-topic";
14
+ const destination = {
15
+ endpointType: "WebHook",
16
+ properties: {
17
+ endpointUrl: "https://example.com/webhook",
18
+ },
19
+ };
20
+ beforeEach(() => {
21
+ app = cdktn_1.Testing.app();
22
+ stack = new cdktn.TerraformStack(app, "TestStack");
23
+ manager = api_version_manager_1.ApiVersionManager.instance();
24
+ try {
25
+ manager.registerResourceType(event_grid_event_subscription_schemas_1.EVENT_SUBSCRIPTION_TYPE, event_grid_event_subscription_schemas_1.ALL_EVENT_SUBSCRIPTION_VERSIONS);
26
+ }
27
+ catch (error) {
28
+ // Ignore if already registered
29
+ }
30
+ });
31
+ describe("Constructor and Basic Properties", () => {
32
+ it("should create event subscription with automatic latest version resolution", () => {
33
+ const props = {
34
+ name: "test-event-subscription",
35
+ scope,
36
+ destination,
37
+ };
38
+ const eventSubscription = new event_grid_event_subscription_1.EventGridEventSubscription(stack, "TestEventSubscription", props);
39
+ expect(eventSubscription).toBeInstanceOf(event_grid_event_subscription_1.EventGridEventSubscription);
40
+ expect(eventSubscription.resolvedApiVersion).toBe("2025-02-15");
41
+ expect(eventSubscription.props).toBe(props);
42
+ expect(eventSubscription.name).toBe("test-event-subscription");
43
+ });
44
+ it("should create event subscription with explicit version pinning", () => {
45
+ const props = {
46
+ name: "test-event-subscription-pinned",
47
+ scope,
48
+ destination,
49
+ apiVersion: "2025-02-15",
50
+ };
51
+ const eventSubscription = new event_grid_event_subscription_1.EventGridEventSubscription(stack, "PinnedEventSubscription", props);
52
+ expect(eventSubscription.resolvedApiVersion).toBe("2025-02-15");
53
+ });
54
+ it("should create event subscription with optional filter and delivery properties", () => {
55
+ const props = {
56
+ name: "test-event-subscription-full",
57
+ scope,
58
+ destination,
59
+ filter: {
60
+ subjectBeginsWith: "/blobServices/default/containers/images/",
61
+ subjectEndsWith: ".jpg",
62
+ includedEventTypes: ["Microsoft.Storage.BlobCreated"],
63
+ isSubjectCaseSensitive: false,
64
+ advancedFilters: [
65
+ {
66
+ operatorType: "NumberGreaterThan",
67
+ key: "data.contentLength",
68
+ value: 0,
69
+ },
70
+ ],
71
+ },
72
+ retryPolicy: {
73
+ maxDeliveryAttempts: 10,
74
+ eventTimeToLiveInMinutes: 1440,
75
+ },
76
+ deadLetterDestination: {
77
+ endpointType: "StorageBlob",
78
+ properties: {
79
+ resourceId: "/subscriptions/test-sub/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/testdeadletter",
80
+ blobContainerName: "deadletters",
81
+ },
82
+ },
83
+ labels: ["production", "images"],
84
+ expirationTimeUtc: "2026-01-01T00:00:00Z",
85
+ };
86
+ const eventSubscription = new event_grid_event_subscription_1.EventGridEventSubscription(stack, "FullEventSubscription", props);
87
+ expect(eventSubscription.props.filter).toEqual(props.filter);
88
+ expect(eventSubscription.props.retryPolicy).toEqual(props.retryPolicy);
89
+ expect(eventSubscription.props.deadLetterDestination).toEqual(props.deadLetterDestination);
90
+ expect(eventSubscription.props.labels).toEqual(props.labels);
91
+ expect(eventSubscription.props.expirationTimeUtc).toBe(props.expirationTimeUtc);
92
+ });
93
+ });
94
+ describe("Framework Integration", () => {
95
+ it("should resolve latest API version automatically", () => {
96
+ const eventSubscription = new event_grid_event_subscription_1.EventGridEventSubscription(stack, "TestEventSubscription", {
97
+ name: "test-event-subscription",
98
+ scope,
99
+ destination,
100
+ });
101
+ expect(eventSubscription.resolvedApiVersion).toBe("2025-02-15");
102
+ expect(eventSubscription.latestVersion()).toBe("2025-02-15");
103
+ });
104
+ it("should provide supported versions", () => {
105
+ const eventSubscription = new event_grid_event_subscription_1.EventGridEventSubscription(stack, "TestEventSubscription", {
106
+ name: "test-event-subscription",
107
+ scope,
108
+ destination,
109
+ });
110
+ expect(eventSubscription.supportedVersions()).toEqual(["2025-02-15"]);
111
+ });
112
+ it("should validate version support", () => {
113
+ expect(() => {
114
+ new event_grid_event_subscription_1.EventGridEventSubscription(stack, "ValidVersion", {
115
+ name: "test-event-subscription",
116
+ scope,
117
+ destination,
118
+ apiVersion: "2025-02-15",
119
+ });
120
+ }).not.toThrow();
121
+ expect(() => {
122
+ new event_grid_event_subscription_1.EventGridEventSubscription(stack, "InvalidVersion", {
123
+ name: "test-event-subscription",
124
+ scope,
125
+ destination,
126
+ apiVersion: "2026-01-01",
127
+ });
128
+ }).toThrow("Unsupported API version '2026-01-01'");
129
+ });
130
+ it("should load correct schema for resolved version", () => {
131
+ const eventSubscription = new event_grid_event_subscription_1.EventGridEventSubscription(stack, "TestEventSubscription", {
132
+ name: "test-event-subscription",
133
+ scope,
134
+ destination,
135
+ });
136
+ expect(eventSubscription.schema).toBeDefined();
137
+ expect(eventSubscription.schema.resourceType).toBe(event_grid_event_subscription_schemas_1.EVENT_SUBSCRIPTION_TYPE);
138
+ expect(eventSubscription.schema.version).toBe("2025-02-15");
139
+ expect(eventSubscription.schema.properties).toBeDefined();
140
+ });
141
+ it("should load version configuration correctly", () => {
142
+ const eventSubscription = new event_grid_event_subscription_1.EventGridEventSubscription(stack, "TestEventSubscription", {
143
+ name: "test-event-subscription",
144
+ scope,
145
+ destination,
146
+ });
147
+ expect(eventSubscription.versionConfig).toBeDefined();
148
+ expect(eventSubscription.versionConfig.version).toBe("2025-02-15");
149
+ expect(eventSubscription.versionConfig.supportLevel).toBe(version_interfaces_1.VersionSupportLevel.ACTIVE);
150
+ });
151
+ });
152
+ describe("Property Validation", () => {
153
+ it("should validate properties when validation is enabled", () => {
154
+ expect(() => {
155
+ new event_grid_event_subscription_1.EventGridEventSubscription(stack, "ValidatedEventSubscription", {
156
+ name: "validated-event-subscription",
157
+ scope,
158
+ destination,
159
+ enableValidation: true,
160
+ });
161
+ }).not.toThrow();
162
+ });
163
+ it("should have validation results for valid properties", () => {
164
+ const eventSubscription = new event_grid_event_subscription_1.EventGridEventSubscription(stack, "ValidatedEventSubscription", {
165
+ name: "validated-event-subscription",
166
+ scope,
167
+ destination,
168
+ enableValidation: true,
169
+ });
170
+ expect(eventSubscription.validationResult).toBeDefined();
171
+ expect(eventSubscription.validationResult.valid).toBe(true);
172
+ expect(eventSubscription.validationResult.errors).toHaveLength(0);
173
+ });
174
+ it("should create Terraform outputs", () => {
175
+ const eventSubscription = new event_grid_event_subscription_1.EventGridEventSubscription(stack, "OutputsEventSubscription", {
176
+ name: "outputs-event-subscription",
177
+ scope,
178
+ destination,
179
+ });
180
+ expect(eventSubscription.idOutput).toBeInstanceOf(cdktn.TerraformOutput);
181
+ expect(eventSubscription.nameOutput).toBeInstanceOf(cdktn.TerraformOutput);
182
+ });
183
+ });
184
+ describe("Parent-Child Resource Relationship", () => {
185
+ it("should use scope as parent ID", () => {
186
+ const eventSubscription = new event_grid_event_subscription_1.EventGridEventSubscription(stack, "ParentEventSubscription", {
187
+ name: "parent-event-subscription",
188
+ scope,
189
+ destination,
190
+ });
191
+ expect(eventSubscription.props.scope).toBe(scope);
192
+ });
193
+ it("should synthesize as a child resource without location", () => {
194
+ new event_grid_event_subscription_1.EventGridEventSubscription(stack, "SynthEventSubscription", {
195
+ name: "synth-event-subscription",
196
+ scope,
197
+ destination,
198
+ });
199
+ const synthesized = cdktn_1.Testing.synth(stack);
200
+ expect(synthesized).toContain("eventSubscriptions");
201
+ expect(synthesized).toContain(scope);
202
+ });
203
+ });
204
+ describe("Version Compatibility", () => {
205
+ it("should work with all supported API versions", () => {
206
+ const versions = ["2025-02-15"];
207
+ versions.forEach((version) => {
208
+ const eventSubscription = new event_grid_event_subscription_1.EventGridEventSubscription(stack, `EventSubscription-${version.replace(/-/g, "")}`, {
209
+ name: `test-event-subscription-${version}`,
210
+ scope,
211
+ destination,
212
+ apiVersion: version,
213
+ });
214
+ expect(eventSubscription.resolvedApiVersion).toBe(version);
215
+ expect(eventSubscription.schema.version).toBe(version);
216
+ });
217
+ });
218
+ it("should expose expected schema properties", () => {
219
+ const eventSubscription = new event_grid_event_subscription_1.EventGridEventSubscription(stack, "SchemaEventSubscription", {
220
+ name: "schema-event-subscription",
221
+ scope,
222
+ destination,
223
+ });
224
+ expect(eventSubscription.schema.properties.name).toBeDefined();
225
+ expect(eventSubscription.schema.properties.destination).toBeDefined();
226
+ expect(eventSubscription.schema.properties.filter).toBeDefined();
227
+ expect(eventSubscription.schema.properties.retryPolicy).toBeDefined();
228
+ expect(eventSubscription.schema.properties.labels).toBeDefined();
229
+ });
230
+ });
231
+ describe("Public Methods and Properties", () => {
232
+ it("should have resourceId property matching id", () => {
233
+ const eventSubscription = new event_grid_event_subscription_1.EventGridEventSubscription(stack, "ResourceIdEventSubscription", {
234
+ name: "resource-id-event-subscription",
235
+ scope,
236
+ destination,
237
+ });
238
+ expect(eventSubscription.resourceId).toBe(eventSubscription.id);
239
+ });
240
+ });
241
+ });
242
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtZ3JpZC1ldmVudC1zdWJzY3JpcHRpb24uc3BlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9henVyZS1ldmVudGdyaWRldmVudHN1YnNjcmlwdGlvbi90ZXN0L2V2ZW50LWdyaWQtZXZlbnQtc3Vic2NyaXB0aW9uLnNwZWMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxpQ0FBZ0M7QUFDaEMsK0JBQStCO0FBQy9CLGtHQUE2RjtBQUM3RiwyR0FBeUc7QUFDekcsd0ZBRzhDO0FBQzlDLHdHQUdzRDtBQUV0RCxRQUFRLENBQUMsNkNBQTZDLEVBQUUsR0FBRyxFQUFFO0lBQzNELElBQUksR0FBYyxDQUFDO0lBQ25CLElBQUksS0FBMkIsQ0FBQztJQUNoQyxJQUFJLE9BQTBCLENBQUM7SUFFL0IsTUFBTSxLQUFLLEdBQ1Qsc0dBQXNHLENBQUM7SUFDekcsTUFBTSxXQUFXLEdBQUc7UUFDbEIsWUFBWSxFQUFFLFNBQVM7UUFDdkIsVUFBVSxFQUFFO1lBQ1YsV0FBVyxFQUFFLDZCQUE2QjtTQUMzQztLQUNGLENBQUM7SUFFRixVQUFVLENBQUMsR0FBRyxFQUFFO1FBQ2QsR0FBRyxHQUFHLGVBQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNwQixLQUFLLEdBQUcsSUFBSSxLQUFLLENBQUMsY0FBYyxDQUFDLEdBQUcsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUNuRCxPQUFPLEdBQUcsdUNBQWlCLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFdkMsSUFBSSxDQUFDO1lBQ0gsT0FBTyxDQUFDLG9CQUFvQixDQUMxQiwrREFBdUIsRUFDdkIsdUVBQStCLENBQ2hDLENBQUM7UUFDSixDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLCtCQUErQjtRQUNqQyxDQUFDO0lBQ0gsQ0FBQyxDQUFDLENBQUM7SUFFSCxRQUFRLENBQUMsa0NBQWtDLEVBQUUsR0FBRyxFQUFFO1FBQ2hELEVBQUUsQ0FBQywyRUFBMkUs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IjtcbmltcG9ydCAqIGFzIGNka3RuIGZyb20gXCJjZGt0blwiO1xuaW1wb3J0IHsgQXBpVmVyc2lvbk1hbmFnZXIgfSBmcm9tIFwiLi4vLi4vY29yZS1henVyZS9saWIvdmVyc2lvbi1tYW5hZ2VyL2FwaS12ZXJzaW9uLW1hbmFnZXJcIjtcbmltcG9ydCB7IFZlcnNpb25TdXBwb3J0TGV2ZWwgfSBmcm9tIFwiLi4vLi4vY29yZS1henVyZS9saWIvdmVyc2lvbi1tYW5hZ2VyL2ludGVyZmFjZXMvdmVyc2lvbi1pbnRlcmZhY2VzXCI7XG5pbXBvcnQge1xuICBFdmVudEdyaWRFdmVudFN1YnNjcmlwdGlvbixcbiAgRXZlbnRHcmlkRXZlbnRTdWJzY3JpcHRpb25Qcm9wcyxcbn0gZnJvbSBcIi4uL2xpYi9ldmVudC1ncmlkLWV2ZW50LXN1YnNjcmlwdGlvblwiO1xuaW1wb3J0IHtcbiAgQUxMX0VWRU5UX1NVQlNDUklQVElPTl9WRVJTSU9OUyxcbiAgRVZFTlRfU1VCU0NSSVBUSU9OX1RZUEUsXG59IGZyb20gXCIuLi9saWIvZXZlbnQtZ3JpZC1ldmVudC1zdWJzY3JpcHRpb24tc2NoZW1hc1wiO1xuXG5kZXNjcmliZShcIkV2ZW50R3JpZEV2ZW50U3Vic2NyaXB0aW9uIC0gSW1wbGVtZW50YXRpb25cIiwgKCkgPT4ge1xuICBsZXQgYXBwOiBjZGt0bi5BcHA7XG4gIGxldCBzdGFjazogY2RrdG4uVGVycmFmb3JtU3RhY2s7XG4gIGxldCBtYW5hZ2VyOiBBcGlWZXJzaW9uTWFuYWdlcjtcblxuICBjb25zdCBzY29wZSA9XG4gICAgXCIvc3Vic2NyaXB0aW9ucy90ZXN0LXN1Yi9yZXNvdXJjZUdyb3Vwcy90ZXN0LXJnL3Byb3ZpZGVycy9NaWNyb3NvZnQuRXZlbnRHcmlkL3N5c3RlbVRvcGljcy90ZXN0LXRvcGljXCI7XG4gIGNvbnN0IGRlc3RpbmF0aW9uID0ge1xuICAgIGVuZHBvaW50VHlwZTogXCJXZWJIb29rXCIsXG4gICAgcHJvcGVydGllczoge1xuICAgICAgZW5kcG9pbnRVcmw6IFwiaHR0cHM6Ly9leGFtcGxlLmNvbS93ZWJob29rXCIsXG4gICAgfSxcbiAgfTtcblxuICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICBhcHAgPSBUZXN0aW5nLmFwcCgpO1xuICAgIHN0YWNrID0gbmV3IGNka3RuLlRlcnJhZm9ybVN0YWNrKGFwcCwgXCJUZXN0U3RhY2tcIik7XG4gICAgbWFuYWdlciA9IEFwaVZlcnNpb25NYW5hZ2VyLmluc3RhbmNlKCk7XG5cbiAgICB0cnkge1xuICAgICAgbWFuYWdlci5yZWdpc3RlclJlc291cmNlVHlwZShcbiAgICAgICAgRVZFTlRfU1VCU0NSSVBUSU9OX1RZUEUsXG4gICAgICAgIEFMTF9FVkVOVF9TVUJTQ1JJUFRJT05fVkVSU0lPTlMsXG4gICAgICApO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAvLyBJZ25vcmUgaWYgYWxyZWFkeSByZWdpc3RlcmVkXG4gICAgfVxuICB9KTtcblxuICBkZXNjcmliZShcIkNvbnN0cnVjdG9yIGFuZCBCYXNpYyBQcm9wZXJ0aWVzXCIsICgpID0+IHtcbiAgICBpdChcInNob3VsZCBjcmVhdGUgZXZlbnQgc3Vic2NyaXB0aW9uIHdpdGggYXV0b21hdGljIGxhdGVzdCB2ZXJzaW9uIHJlc29sdXRpb25cIiwgKCkgPT4ge1xuICAgICAgY29uc3QgcHJvcHM6IEV2ZW50R3JpZEV2ZW50U3Vic2NyaXB0aW9uUHJvcHMgPSB7XG4gICAgICAgIG5hbWU6IFwidGVzdC1ldmVudC1zdWJzY3JpcHRpb25cIixcbiAgICAgICAgc2NvcGUsXG4gICAgICAgIGRlc3RpbmF0aW9uLFxuICAgICAgfTtcblxuICAgICAgY29uc3QgZXZlbnRTdWJzY3JpcHRpb24gPSBuZXcgRXZlbnRHcmlkRXZlbnRTdWJzY3JpcHRpb24oXG4gICAgICAgIHN0YWNrLFxuICAgICAgICBcIlRlc3RFdmVudFN1YnNjcmlwdGlvblwiLFxuICAgICAgICBwcm9wcyxcbiAgICAgICk7XG5cbiAgICAgIGV4cGVjdChldmVudFN1YnNjcmlwdGlvbikudG9CZUluc3RhbmNlT2YoRXZlbnRHcmlkRXZlbnRTdWJzY3JpcHRpb24pO1xuICAgICAgZXhwZWN0KGV2ZW50U3Vic2NyaXB0aW9uLnJlc29sdmVkQXBpVmVyc2lvbikudG9CZShcIjIwMjUtMDItMTVcIik7XG4gICAgICBleHBlY3QoZXZlbnRTdWJzY3JpcHRpb24ucHJvcHMpLnRvQmUocHJvcHMpO1xuICAgICAgZXhwZWN0KGV2ZW50U3Vic2NyaXB0aW9uLm5hbWUpLnRvQmUoXCJ0ZXN0LWV2ZW50LXN1YnNjcmlwdGlvblwiKTtcbiAgICB9KTtcblxuICAgIGl0KFwic2hvdWxkIGNyZWF0ZSBldmVudCBzdWJzY3JpcHRpb24gd2l0aCBleHBsaWNpdCB2ZXJzaW9uIHBpbm5pbmdcIiwgKCkgPT4ge1xuICAgICAgY29uc3QgcHJvcHM6IEV2ZW50R3JpZEV2ZW50U3Vic2NyaXB0aW9uUHJvcHMgPSB7XG4gICAgICAgIG5hbWU6IFwidGVzdC1ldmVudC1zdWJzY3JpcHRpb24tcGlubmVkXCIsXG4gICAgICAgIHNjb3BlLFxuICAgICAgICBkZXN0aW5hdGlvbixcbiAgICAgICAgYXBpVmVyc2lvbjogXCIyMDI1LTAyLTE1XCIsXG4gICAgICB9O1xuXG4gICAgICBjb25zdCBldmVudFN1YnNjcmlwdGlvbiA9IG5ldyBFdmVudEdyaWRFdmVudFN1YnNjcmlwdGlvbihcbiAgICAgICAgc3RhY2ssXG4gICAgICAgIFwiUGlubmVkRXZlbnRTdWJzY3JpcHRpb25cIixcbiAgICAgICAgcHJvcHMsXG4gICAgICApO1xuXG4gICAgICBleHBlY3QoZXZlbnRTdWJzY3JpcHRpb24ucmVzb2x2ZWRBcGlWZXJzaW9uKS50b0JlKFwiMjAyNS0wMi0xNVwiKTtcbiAgICB9KTtcblxuICAgIGl0KFwic2hvdWxkIGNyZWF0ZSBldmVudCBzdWJzY3JpcHRpb24gd2l0aCBvcHRpb25hbCBmaWx0ZXIgYW5kIGRlbGl2ZXJ5IHByb3BlcnRpZXNcIiwgKCkgPT4ge1xuICAgICAgY29uc3QgcHJvcHM6IEV2ZW50R3JpZEV2ZW50U3Vic2NyaXB0aW9uUHJvcHMgPSB7XG4gICAgICAgIG5hbWU6IFwidGVzdC1ldmVudC1zdWJzY3JpcHRpb24tZnVsbFwiLFxuICAgICAgICBzY29wZSxcbiAgICAgICAgZGVzdGluYXRpb24sXG4gICAgICAgIGZpbHRlcjoge1xuICAgICAgICAgIHN1YmplY3RCZWdpbnNXaXRoOiBcIi9ibG9iU2VydmljZXMvZGVmYXVsdC9jb250YWluZXJzL2ltYWdlcy9cIixcbiAgICAgICAgICBzdWJqZWN0RW5kc1dpdGg6IFwiLmpwZ1wiLFxuICAgICAgICAgIGluY2x1ZGVkRXZlbnRUeXBlczogW1wiTWljcm9zb2Z0LlN0b3JhZ2UuQmxvYkNyZWF0ZWRcIl0sXG4gICAgICAgICAgaXNTdWJqZWN0Q2FzZVNlbnNpdGl2ZTogZmFsc2UsXG4gICAgICAgICAgYWR2YW5jZWRGaWx0ZXJzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG9wZXJhdG9yVHlwZTogXCJOdW1iZXJHcmVhdGVyVGhhblwiLFxuICAgICAgICAgICAgICBrZXk6IFwiZGF0YS5jb250ZW50TGVuZ3RoXCIsXG4gICAgICAgICAgICAgIHZhbHVlOiAwLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICByZXRyeVBvbGljeToge1xuICAgICAgICAgIG1heERlbGl2ZXJ5QXR0ZW1wdHM6IDEwLFxuICAgICAgICAgIGV2ZW50VGltZVRvTGl2ZUluTWludXRlczogMTQ0MCxcbiAgICAgICAgfSxcbiAgICAgICAgZGVhZExldHRlckRlc3RpbmF0aW9uOiB7XG4gICAgICAgICAgZW5kcG9pbnRUeXBlOiBcIlN0b3JhZ2VCbG9iXCIsXG4gICAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgICAgcmVzb3VyY2VJZDpcbiAgICAgICAgICAgICAgXCIvc3Vic2NyaXB0aW9ucy90ZXN0LXN1Yi9yZXNvdXJjZUdyb3Vwcy90ZXN0LXJnL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZS9zdG9yYWdlQWNjb3VudHMvdGVzdGRlYWRsZXR0ZXJcIixcbiAgICAgICAgICAgIGJsb2JDb250YWluZXJOYW1lOiBcImRlYWRsZXR0ZXJzXCIsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgbGFiZWxzOiBbXCJwcm9kdWN0aW9uXCIsIFwiaW1hZ2VzXCJdLFxuICAgICAgICBleHBpcmF0aW9uVGltZVV0YzogXCIyMDI2LTAxLTAxVDAwOjAwOjAwWlwiLFxuICAgICAgfTtcblxuICAgICAgY29uc3QgZXZlbnRTdWJzY3JpcHRpb24gPSBuZXcgRXZlbnRHcmlkRXZlbnRTdWJzY3JpcHRpb24oXG4gICAgICAgIHN0YWNrLFxuICAgICAgICBcIkZ1bGxFdmVudFN1YnNjcmlwdGlvblwiLFxuICAgICAgICBwcm9wcyxcbiAgICAgICk7XG5cbiAgICAgIGV4cGVjdChldmVudFN1YnNjcmlwdGlvbi5wcm9wcy5maWx0ZXIpLnRvRXF1YWwocHJvcHMuZmlsdGVyKTtcbiAgICAgIGV4cGVjdChldmVudFN1YnNjcmlwdGlvbi5wcm9wcy5yZXRyeVBvbGljeSkudG9FcXVhbChwcm9wcy5yZXRyeVBvbGljeSk7XG4gICAgICBleHBlY3QoZXZlbnRTdWJzY3JpcHRpb24ucHJvcHMuZGVhZExldHRlckRlc3RpbmF0aW9uKS50b0VxdWFsKFxuICAgICAgICBwcm9wcy5kZWFkTGV0dGVyRGVzdGluYXRpb24sXG4gICAgICApO1xuICAgICAgZXhwZWN0KGV2ZW50U3Vic2NyaXB0aW9uLnByb3BzLmxhYmVscykudG9FcXVhbChwcm9wcy5sYWJlbHMpO1xuICAgICAgZXhwZWN0KGV2ZW50U3Vic2NyaXB0aW9uLnByb3BzLmV4cGlyYXRpb25UaW1lVXRjKS50b0JlKFxuICAgICAgICBwcm9wcy5leHBpcmF0aW9uVGltZVV0YyxcbiAgICAgICk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKFwiRnJhbWV3b3JrIEludGVncmF0aW9uXCIsICgpID0+IHtcbiAgICBpdChcInNob3VsZCByZXNvbHZlIGxhdGVzdCBBUEkgdmVyc2lvbiBhdXRvbWF0aWNhbGx5XCIsICgpID0+IHtcbiAgICAgIGNvbnN0IGV2ZW50U3Vic2NyaXB0aW9uID0gbmV3IEV2ZW50R3JpZEV2ZW50U3Vic2NyaXB0aW9uKFxuICAgICAgICBzdGFjayxcbiAgICAgICAgXCJUZXN0RXZlbnRTdWJzY3JpcHRpb25cIixcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6IFwidGVzdC1ldmVudC1zdWJzY3JpcHRpb25cIixcbiAgICAgICAgICBzY29wZSxcbiAgICAgICAgICBkZXN0aW5hdGlvbixcbiAgICAgICAgfSxcbiAgICAgICk7XG5cbiAgICAgIGV4cGVjdChldmVudFN1YnNjcmlwdGlvbi5yZXNvbHZlZEFwaVZlcnNpb24pLnRvQmUoXCIyMDI1LTAyLTE1XCIpO1xuICAgICAgZXhwZWN0KGV2ZW50U3Vic2NyaXB0aW9uLmxhdGVzdFZlcnNpb24oKSkudG9CZShcIjIwMjUtMDItMTVcIik7XG4gICAgfSk7XG5cbiAgICBpdChcInNob3VsZCBwcm92aWRlIHN1cHBvcnRlZCB2ZXJzaW9uc1wiLCAoKSA9PiB7XG4gICAgICBjb25zdCBldmVudFN1YnNjcmlwdGlvbiA9IG5ldyBFdmVudEdyaWRFdmVudFN1YnNjcmlwdGlvbihcbiAgICAgICAgc3RhY2ssXG4gICAgICAgIFwiVGVzdEV2ZW50U3Vic2NyaXB0aW9uXCIsXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiBcInRlc3QtZXZlbnQtc3Vic2NyaXB0aW9uXCIsXG4gICAgICAgICAgc2NvcGUsXG4gICAgICAgICAgZGVzdGluYXRpb24sXG4gICAgICAgIH0sXG4gICAgICApO1xuXG4gICAgICBleHBlY3QoZXZlbnRTdWJzY3JpcHRpb24uc3VwcG9ydGVkVmVyc2lvbnMoKSkudG9FcXVhbChbXCIyMDI1LTAyLTE1XCJdKTtcbiAgICB9KTtcblxuICAgIGl0KFwic2hvdWxkIHZhbGlkYXRlIHZlcnNpb24gc3VwcG9ydFwiLCAoKSA9PiB7XG4gICAgICBleHBlY3QoKCkgPT4ge1xuICAgICAgICBuZXcgRXZlbnRHcmlkRXZlbnRTdWJzY3JpcHRpb24oc3RhY2ssIFwiVmFsaWRWZXJzaW9uXCIsIHtcbiAgICAgICAgICBuYW1lOiBcInRlc3QtZXZlbnQtc3Vic2NyaXB0aW9uXCIsXG4gICAgICAgICAgc2NvcGUsXG4gICAgICAgICAgZGVzdGluYXRpb24sXG4gICAgICAgICAgYXBpVmVyc2lvbjogXCIyMDI1LTAyLTE1XCIsXG4gICAgICAgIH0pO1xuICAgICAgfSkubm90LnRvVGhyb3coKTtcblxuICAgICAgZXhwZWN0KCgpID0+IHtcbiAgICAgICAgbmV3IEV2ZW50R3JpZEV2ZW50U3Vic2NyaXB0aW9uKHN0YWNrLCBcIkludmFsaWRWZXJzaW9uXCIsIHtcbiAgICAgICAgICBuYW1lOiBcInRlc3QtZXZlbnQtc3Vic2NyaXB0aW9uXCIsXG4gICAgICAgICAgc2NvcGUsXG4gICAgICAgICAgZGVzdGluYXRpb24sXG4gICAgICAgICAgYXBpVmVyc2lvbjogXCIyMDI2LTAxLTAxXCIsXG4gICAgICAgIH0pO1xuICAgICAgfSkudG9UaHJvdyhcIlVuc3VwcG9ydGVkIEFQSSB2ZXJzaW9uICcyMDI2LTAxLTAxJ1wiKTtcbiAgICB9KTtcblxuICAgIGl0KFwic2hvdWxkIGxvYWQgY29ycmVjdCBzY2hlbWEgZm9yIHJlc29sdmVkIHZlcnNpb25cIiwgKCkgPT4ge1xuICAgICAgY29uc3QgZXZlbnRTdWJzY3JpcHRpb24gPSBuZXcgRXZlbnRHcmlkRXZlbnRTdWJzY3JpcHRpb24oXG4gICAgICAgIHN0YWNrLFxuICAgICAgICBcIlRlc3RFdmVudFN1YnNjcmlwdGlvblwiLFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogXCJ0ZXN0LWV2ZW50LXN1YnNjcmlwdGlvblwiLFxuICAgICAgICAgIHNjb3BlLFxuICAgICAgICAgIGRlc3RpbmF0aW9uLFxuICAgICAgICB9LFxuICAgICAgKTtcblxuICAgICAgZXhwZWN0KGV2ZW50U3Vic2NyaXB0aW9uLnNjaGVtYSkudG9CZURlZmluZWQoKTtcbiAgICAgIGV4cGVjdChldmVudFN1YnNjcmlwdGlvbi5zY2hlbWEucmVzb3VyY2VUeXBlKS50b0JlKFxuICAgICAgICBFVkVOVF9TVUJTQ1JJUFRJT05fVFlQRSxcbiAgICAgICk7XG4gICAgICBleHBlY3QoZXZlbnRTdWJzY3JpcHRpb24uc2NoZW1hLnZlcnNpb24pLnRvQmUoXCIyMDI1LTAyLTE1XCIpO1xuICAgICAgZXhwZWN0KGV2ZW50U3Vic2NyaXB0aW9uLnNjaGVtYS5wcm9wZXJ0aWVzKS50b0JlRGVmaW5lZCgpO1xuICAgIH0pO1xuXG4gICAgaXQoXCJzaG91bGQgbG9hZCB2ZXJzaW9uIGNvbmZpZ3VyYXRpb24gY29ycmVjdGx5XCIsICgpID0+IHtcbiAgICAgIGNvbnN0IGV2ZW50U3Vic2NyaXB0aW9uID0gbmV3IEV2ZW50R3JpZEV2ZW50U3Vic2NyaXB0aW9uKFxuICAgICAgICBzdGFjayxcbiAgICAgICAgXCJUZXN0RXZlbnRTdWJzY3JpcHRpb25cIixcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6IFwidGVzdC1ldmVudC1zdWJzY3JpcHRpb25cIixcbiAgICAgICAgICBzY29wZSxcbiAgICAgICAgICBkZXN0aW5hdGlvbixcbiAgICAgICAgfSxcbiAgICAgICk7XG5cbiAgICAgIGV4cGVjdChldmVudFN1YnNjcmlwdGlvbi52ZXJzaW9uQ29uZmlnKS50b0JlRGVmaW5lZCgpO1xuICAgICAgZXhwZWN0KGV2ZW50U3Vic2NyaXB0aW9uLnZlcnNpb25Db25maWcudmVyc2lvbikudG9CZShcIjIwMjUtMDItMTVcIik7XG4gICAgICBleHBlY3QoZXZlbnRTdWJzY3JpcHRpb24udmVyc2lvbkNvbmZpZy5zdXBwb3J0TGV2ZWwpLnRvQmUoXG4gICAgICAgIFZlcnNpb25TdXBwb3J0TGV2ZWwuQUNUSVZFLFxuICAgICAgKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoXCJQcm9wZXJ0eSBWYWxpZGF0aW9uXCIsICgpID0+IHtcbiAgICBpdChcInNob3VsZCB2YWxpZGF0ZSBwcm9wZXJ0aWVzIHdoZW4gdmFsaWRhdGlvbiBpcyBlbmFibGVkXCIsICgpID0+IHtcbiAgICAgIGV4cGVjdCgoKSA9PiB7XG4gICAgICAgIG5ldyBFdmVudEdyaWRFdmVudFN1YnNjcmlwdGlvbihzdGFjaywgXCJWYWxpZGF0ZWRFdmVudFN1YnNjcmlwdGlvblwiLCB7XG4gICAgICAgICAgbmFtZTogXCJ2YWxpZGF0ZWQtZXZlbnQtc3Vic2NyaXB0aW9uXCIsXG4gICAgICAgICAgc2NvcGUsXG4gICAgICAgICAgZGVzdGluYXRpb24sXG4gICAgICAgICAgZW5hYmxlVmFsaWRhdGlvbjogdHJ1ZSxcbiAgICAgICAgfSk7XG4gICAgICB9KS5ub3QudG9UaHJvdygpO1xuICAgIH0pO1xuXG4gICAgaXQoXCJzaG91bGQgaGF2ZSB2YWxpZGF0aW9uIHJlc3VsdHMgZm9yIHZhbGlkIHByb3BlcnRpZXNcIiwgKCkgPT4ge1xuICAgICAgY29uc3QgZXZlbnRTdWJzY3JpcHRpb24gPSBuZXcgRXZlbnRHcmlkRXZlbnRTdWJzY3JpcHRpb24oXG4gICAgICAgIHN0YWNrLFxuICAgICAgICBcIlZhbGlkYXRlZEV2ZW50U3Vic2NyaXB0aW9uXCIsXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiBcInZhbGlkYXRlZC1ldmVudC1zdWJzY3JpcHRpb25cIixcbiAgICAgICAgICBzY29wZSxcbiAgICAgICAgICBkZXN0aW5hdGlvbixcbiAgICAgICAgICBlbmFibGVWYWxpZGF0aW9uOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgKTtcblxuICAgICAgZXhwZWN0KGV2ZW50U3Vic2NyaXB0aW9uLnZhbGlkYXRpb25SZXN1bHQpLnRvQmVEZWZpbmVkKCk7XG4gICAgICBleHBlY3QoZXZlbnRTdWJzY3JpcHRpb24udmFsaWRhdGlvblJlc3VsdCEudmFsaWQpLnRvQmUodHJ1ZSk7XG4gICAgICBleHBlY3QoZXZlbnRTdWJzY3JpcHRpb24udmFsaWRhdGlvblJlc3VsdCEuZXJyb3JzKS50b0hhdmVMZW5ndGgoMCk7XG4gICAgfSk7XG5cbiAgICBpdChcInNob3VsZCBjcmVhdGUgVGVycmFmb3JtIG91dHB1dHNcIiwgKCkgPT4ge1xuICAgICAgY29uc3QgZXZlbnRTdWJzY3JpcHRpb24gPSBuZXcgRXZlbnRHcmlkRXZlbnRTdWJzY3JpcHRpb24oXG4gICAgICAgIHN0YWNrLFxuICAgICAgICBcIk91dHB1dHNFdmVudFN1YnNjcmlwdGlvblwiLFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogXCJvdXRwdXRzLWV2ZW50LXN1YnNjcmlwdGlvblwiLFxuICAgICAgICAgIHNjb3BlLFxuICAgICAgICAgIGRlc3RpbmF0aW9uLFxuICAgICAgICB9LFxuICAgICAgKTtcblxuICAgICAgZXhwZWN0KGV2ZW50U3Vic2NyaXB0aW9uLmlkT3V0cHV0KS50b0JlSW5zdGFuY2VPZihjZGt0bi5UZXJyYWZvcm1PdXRwdXQpO1xuICAgICAgZXhwZWN0KGV2ZW50U3Vic2NyaXB0aW9uLm5hbWVPdXRwdXQpLnRvQmVJbnN0YW5jZU9mKFxuICAgICAgICBjZGt0bi5UZXJyYWZvcm1PdXRwdXQsXG4gICAgICApO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZShcIlBhcmVudC1DaGlsZCBSZXNvdXJjZSBSZWxhdGlvbnNoaXBcIiwgKCkgPT4ge1xuICAgIGl0KFwic2hvdWxkIHVzZSBzY29wZSBhcyBwYXJlbnQgSURcIiwgKCkgPT4ge1xuICAgICAgY29uc3QgZXZlbnRTdWJzY3JpcHRpb24gPSBuZXcgRXZlbnRHcmlkRXZlbnRTdWJzY3JpcHRpb24oXG4gICAgICAgIHN0YWNrLFxuICAgICAgICBcIlBhcmVudEV2ZW50U3Vic2NyaXB0aW9uXCIsXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiBcInBhcmVudC1ldmVudC1zdWJzY3JpcHRpb25cIixcbiAgICAgICAgICBzY29wZSxcbiAgICAgICAgICBkZXN0aW5hdGlvbixcbiAgICAgICAgfSxcbiAgICAgICk7XG5cbiAgICAgIGV4cGVjdChldmVudFN1YnNjcmlwdGlvbi5wcm9wcy5zY29wZSkudG9CZShzY29wZSk7XG4gICAgfSk7XG5cbiAgICBpdChcInNob3VsZCBzeW50aGVzaXplIGFzIGEgY2hpbGQgcmVzb3VyY2Ugd2l0aG91dCBsb2NhdGlvblwiLCAoKSA9PiB7XG4gICAgICBuZXcgRXZlbnRHcmlkRXZlbnRTdWJzY3JpcHRpb24oc3RhY2ssIFwiU3ludGhFdmVudFN1YnNjcmlwdGlvblwiLCB7XG4gICAgICAgIG5hbWU6IFwic3ludGgtZXZlbnQtc3Vic2NyaXB0aW9uXCIsXG4gICAgICAgIHNjb3BlLFxuICAgICAgICBkZXN0aW5hdGlvbixcbiAgICAgIH0pO1xuXG4gICAgICBjb25zdCBzeW50aGVzaXplZCA9IFRlc3Rpbmcuc3ludGgoc3RhY2spO1xuICAgICAgZXhwZWN0KHN5bnRoZXNpemVkKS50b0NvbnRhaW4oXCJldmVudFN1YnNjcmlwdGlvbnNcIik7XG4gICAgICBleHBlY3Qoc3ludGhlc2l6ZWQpLnRvQ29udGFpbihzY29wZSk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKFwiVmVyc2lvbiBDb21wYXRpYmlsaXR5XCIsICgpID0+IHtcbiAgICBpdChcInNob3VsZCB3b3JrIHdpdGggYWxsIHN1cHBvcnRlZCBBUEkgdmVyc2lvbnNcIiwgKCkgPT4ge1xuICAgICAgY29uc3QgdmVyc2lvbnMgPSBbXCIyMDI1LTAyLTE1XCJdO1xuXG4gICAgICB2ZXJzaW9ucy5mb3JFYWNoKCh2ZXJzaW9uKSA9PiB7XG4gICAgICAgIGNvbnN0IGV2ZW50U3Vic2NyaXB0aW9uID0gbmV3IEV2ZW50R3JpZEV2ZW50U3Vic2NyaXB0aW9uKFxuICAgICAgICAgIHN0YWNrLFxuICAgICAgICAgIGBFdmVudFN1YnNjcmlwdGlvbi0ke3ZlcnNpb24ucmVwbGFjZSgvLS9nLCBcIlwiKX1gLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6IGB0ZXN0LWV2ZW50LXN1YnNjcmlwdGlvbi0ke3ZlcnNpb259YCxcbiAgICAgICAgICAgIHNjb3BlLFxuICAgICAgICAgICAgZGVzdGluYXRpb24sXG4gICAgICAgICAgICBhcGlWZXJzaW9uOiB2ZXJzaW9uLFxuICAgICAgICAgIH0sXG4gICAgICAgICk7XG5cbiAgICAgICAgZXhwZWN0KGV2ZW50U3Vic2NyaXB0aW9uLnJlc29sdmVkQXBpVmVyc2lvbikudG9CZSh2ZXJzaW9uKTtcbiAgICAgICAgZXhwZWN0KGV2ZW50U3Vic2NyaXB0aW9uLnNjaGVtYS52ZXJzaW9uKS50b0JlKHZlcnNpb24pO1xuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdChcInNob3VsZCBleHBvc2UgZXhwZWN0ZWQgc2NoZW1hIHByb3BlcnRpZXNcIiwgKCkgPT4ge1xuICAgICAgY29uc3QgZXZlbnRTdWJzY3JpcHRpb24gPSBuZXcgRXZlbnRHcmlkRXZlbnRTdWJzY3JpcHRpb24oXG4gICAgICAgIHN0YWNrLFxuICAgICAgICBcIlNjaGVtYUV2ZW50U3Vic2NyaXB0aW9uXCIsXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiBcInNjaGVtYS1ldmVudC1zdWJzY3JpcHRpb25cIixcbiAgICAgICAgICBzY29wZSxcbiAgICAgICAgICBkZXN0aW5hdGlvbixcbiAgICAgICAgfSxcbiAgICAgICk7XG5cbiAgICAgIGV4cGVjdChldmVudFN1YnNjcmlwdGlvbi5zY2hlbWEucHJvcGVydGllcy5uYW1lKS50b0JlRGVmaW5lZCgpO1xuICAgICAgZXhwZWN0KGV2ZW50U3Vic2NyaXB0aW9uLnNjaGVtYS5wcm9wZXJ0aWVzLmRlc3RpbmF0aW9uKS50b0JlRGVmaW5lZCgpO1xuICAgICAgZXhwZWN0KGV2ZW50U3Vic2NyaXB0aW9uLnNjaGVtYS5wcm9wZXJ0aWVzLmZpbHRlcikudG9CZURlZmluZWQoKTtcbiAgICAgIGV4cGVjdChldmVudFN1YnNjcmlwdGlvbi5zY2hlbWEucHJvcGVydGllcy5yZXRyeVBvbGljeSkudG9CZURlZmluZWQoKTtcbiAgICAgIGV4cGVjdChldmVudFN1YnNjcmlwdGlvbi5zY2hlbWEucHJvcGVydGllcy5sYWJlbHMpLnRvQmVEZWZpbmVkKCk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKFwiUHVibGljIE1ldGhvZHMgYW5kIFByb3BlcnRpZXNcIiwgKCkgPT4ge1xuICAgIGl0KFwic2hvdWxkIGhhdmUgcmVzb3VyY2VJZCBwcm9wZXJ0eSBtYXRjaGluZyBpZFwiLCAoKSA9PiB7XG4gICAgICBjb25zdCBldmVudFN1YnNjcmlwdGlvbiA9IG5ldyBFdmVudEdyaWRFdmVudFN1YnNjcmlwdGlvbihcbiAgICAgICAgc3RhY2ssXG4gICAgICAgIFwiUmVzb3VyY2VJZEV2ZW50U3Vic2NyaXB0aW9uXCIsXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiBcInJlc291cmNlLWlkLWV2ZW50LXN1YnNjcmlwdGlvblwiLFxuICAgICAgICAgIHNjb3BlLFxuICAgICAgICAgIGRlc3RpbmF0aW9uLFxuICAgICAgICB9LFxuICAgICAgKTtcblxuICAgICAgZXhwZWN0KGV2ZW50U3Vic2NyaXB0aW9uLnJlc291cmNlSWQpLnRvQmUoZXZlbnRTdWJzY3JpcHRpb24uaWQpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
@@ -0,0 +1 @@
1
+ export * from "./lib";
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./lib"), exports);
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXp1cmUtZXZlbnRncmlkc3lzdGVtdG9waWMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHdDQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL2xpYlwiO1xuIl19
@@ -0,0 +1,5 @@
1
+ import { ApiSchema, VersionConfig } from "../../core-azure/lib/version-manager/interfaces/version-interfaces";
2
+ export declare const SYSTEM_TOPIC_SCHEMA_2025_02_15: ApiSchema;
3
+ export declare const SYSTEM_TOPIC_VERSION_2025_02_15: VersionConfig;
4
+ export declare const ALL_SYSTEM_TOPIC_VERSIONS: VersionConfig[];
5
+ export declare const SYSTEM_TOPIC_TYPE = "Microsoft.EventGrid/systemTopics";
@@ -0,0 +1,164 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SYSTEM_TOPIC_TYPE = exports.ALL_SYSTEM_TOPIC_VERSIONS = exports.SYSTEM_TOPIC_VERSION_2025_02_15 = exports.SYSTEM_TOPIC_SCHEMA_2025_02_15 = void 0;
4
+ const version_interfaces_1 = require("../../core-azure/lib/version-manager/interfaces/version-interfaces");
5
+ const COMMON_PROPERTIES = {
6
+ location: {
7
+ dataType: version_interfaces_1.PropertyType.STRING,
8
+ required: true,
9
+ description: "The Azure region where the Event Grid System Topic will be created",
10
+ validation: [
11
+ {
12
+ ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
13
+ message: "Location is required for Event Grid System Topics",
14
+ },
15
+ {
16
+ ruleType: version_interfaces_1.ValidationRuleType.PATTERN_MATCH,
17
+ value: "^[a-z0-9]+$",
18
+ message: "Location must contain only lowercase letters and numbers",
19
+ },
20
+ ],
21
+ },
22
+ tags: {
23
+ dataType: version_interfaces_1.PropertyType.OBJECT,
24
+ required: false,
25
+ defaultValue: {},
26
+ description: "A dictionary of tags to apply to the Event Grid System Topic",
27
+ validation: [
28
+ {
29
+ ruleType: version_interfaces_1.ValidationRuleType.TYPE_CHECK,
30
+ value: version_interfaces_1.PropertyType.OBJECT,
31
+ message: "Tags must be an object with string key-value pairs",
32
+ },
33
+ ],
34
+ },
35
+ name: {
36
+ dataType: version_interfaces_1.PropertyType.STRING,
37
+ required: true,
38
+ description: "The name of the Event Grid System Topic",
39
+ validation: [
40
+ {
41
+ ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
42
+ message: "Name is required for Event Grid System Topics",
43
+ },
44
+ {
45
+ ruleType: version_interfaces_1.ValidationRuleType.VALUE_RANGE,
46
+ value: { minLength: 1, maxLength: 64 },
47
+ message: "Name must be between 1 and 64 characters",
48
+ },
49
+ ],
50
+ },
51
+ source: {
52
+ dataType: version_interfaces_1.PropertyType.STRING,
53
+ required: true,
54
+ description: "The source Azure resource ID for the system topic",
55
+ validation: [
56
+ {
57
+ ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
58
+ message: "Source is required for Event Grid System Topics",
59
+ },
60
+ {
61
+ ruleType: version_interfaces_1.ValidationRuleType.TYPE_CHECK,
62
+ value: version_interfaces_1.PropertyType.STRING,
63
+ message: "Source must be a string containing a resource ID",
64
+ },
65
+ ],
66
+ },
67
+ topicType: {
68
+ dataType: version_interfaces_1.PropertyType.STRING,
69
+ required: true,
70
+ description: "The type of the source resource",
71
+ validation: [
72
+ {
73
+ ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
74
+ message: "Topic type is required for Event Grid System Topics",
75
+ },
76
+ {
77
+ ruleType: version_interfaces_1.ValidationRuleType.TYPE_CHECK,
78
+ value: version_interfaces_1.PropertyType.STRING,
79
+ message: "Topic type must be a string",
80
+ },
81
+ ],
82
+ },
83
+ identity: {
84
+ dataType: version_interfaces_1.PropertyType.OBJECT,
85
+ required: false,
86
+ description: "Managed identity configuration for the Event Grid System Topic",
87
+ },
88
+ resourceGroupId: {
89
+ dataType: version_interfaces_1.PropertyType.STRING,
90
+ required: false,
91
+ description: "The resource group ID where the Event Grid System Topic is created",
92
+ },
93
+ };
94
+ exports.SYSTEM_TOPIC_SCHEMA_2025_02_15 = {
95
+ resourceType: "Microsoft.EventGrid/systemTopics",
96
+ version: "2025-02-15",
97
+ properties: {
98
+ ...COMMON_PROPERTIES,
99
+ },
100
+ required: ["location", "name", "source", "topicType"],
101
+ optional: ["tags", "identity", "resourceGroupId"],
102
+ deprecated: [],
103
+ transformationRules: {},
104
+ validationRules: [
105
+ {
106
+ property: "location",
107
+ rules: [
108
+ {
109
+ ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
110
+ message: "Location is required for Event Grid System Topics",
111
+ },
112
+ ],
113
+ },
114
+ {
115
+ property: "name",
116
+ rules: [
117
+ {
118
+ ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
119
+ message: "Name is required for Event Grid System Topics",
120
+ },
121
+ ],
122
+ },
123
+ {
124
+ property: "source",
125
+ rules: [
126
+ {
127
+ ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
128
+ message: "Source is required for Event Grid System Topics",
129
+ },
130
+ ],
131
+ },
132
+ {
133
+ property: "topicType",
134
+ rules: [
135
+ {
136
+ ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
137
+ message: "Topic type is required for Event Grid System Topics",
138
+ },
139
+ ],
140
+ },
141
+ ],
142
+ };
143
+ exports.SYSTEM_TOPIC_VERSION_2025_02_15 = {
144
+ version: "2025-02-15",
145
+ schema: exports.SYSTEM_TOPIC_SCHEMA_2025_02_15,
146
+ supportLevel: version_interfaces_1.VersionSupportLevel.ACTIVE,
147
+ releaseDate: "2025-02-15",
148
+ deprecationDate: undefined,
149
+ sunsetDate: undefined,
150
+ breakingChanges: [],
151
+ migrationGuide: "/docs/event-grid-system-topic/migration-2025-02-15",
152
+ changeLog: [
153
+ {
154
+ changeType: "added",
155
+ description: "Initial stable release of Event Grid System Topic support",
156
+ breaking: false,
157
+ },
158
+ ],
159
+ };
160
+ exports.ALL_SYSTEM_TOPIC_VERSIONS = [
161
+ exports.SYSTEM_TOPIC_VERSION_2025_02_15,
162
+ ];
163
+ exports.SYSTEM_TOPIC_TYPE = "Microsoft.EventGrid/systemTopics";
164
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtZ3JpZC1zeXN0ZW0tdG9waWMtc2NoZW1hcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9henVyZS1ldmVudGdyaWRzeXN0ZW10b3BpYy9saWIvZXZlbnQtZ3JpZC1zeXN0ZW0tdG9waWMtc2NoZW1hcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwyR0FPNEU7QUFFNUUsTUFBTSxpQkFBaUIsR0FBMEM7SUFDL0QsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFLGlDQUFZLENBQUMsTUFBTTtRQUM3QixRQUFRLEVBQUUsSUFBSTtRQUNkLFdBQVcsRUFDVCxvRUFBb0U7UUFDdEUsVUFBVSxFQUFFO1lBQ1Y7Z0JBQ0UsUUFBUSxFQUFFLHVDQUFrQixDQUFDLFFBQVE7Z0JBQ3JDLE9BQU8sRUFBRSxtREFBbUQ7YUFDN0Q7WUFDRDtnQkFDRSxRQUFRLEVBQUUsdUNBQWtCLENBQUMsYUFBYTtnQkFDMUMsS0FBSyxFQUFFLGFBQWE7Z0JBQ3BCLE9BQU8sRUFBRSwwREFBMEQ7YUFDcEU7U0FDRjtLQUNGO0lBQ0QsSUFBSSxFQUFFO1FBQ0osUUFBUSxFQUFFLGlDQUFZLENBQUMsTUFBTTtRQUM3QixRQUFRLEVBQUUsS0FBSztRQUNmLFlBQVksRUFBRSxFQUFFO1FBQ2hCLFdBQVcsRUFBRSw4REFBOEQ7UUFDM0UsVUFBVSxFQUFFO1lBQ1Y7Z0JBQ0UsUUFBUSxFQUFFLHVDQUFrQixDQUFDLFVBQVU7Z0JBQ3ZDLEtBQUssRUFBRSxpQ0FBWSxDQUFDLE1BQU07Z0JBQzFCLE9BQU8sRUFBRSxvREFBb0Q7YUFDOUQ7U0FDRjtLQUNGO0lBQ0QsSUFBSSxFQUFFO1FBQ0osUUFBUSxFQUFFLGlDQUFZLENBQUMsTUFBTTtRQUM3QixRQUFRLEVBQUUsSUFBSTtRQUNkLFdBQVcsRUFBRSx5Q0FBeUM7UUFDdEQsVUFBVSxFQUFFO1lBQ1Y7Z0JBQ0UsUUFBUSxFQUFFLHVDQUFrQixDQUFDLFFBQVE7Z0JBQ3JDLE9BQU8sRUFBRSwr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QyxXQUFXLEVBQUUsWUFBWTtJQUN6QixlQUFlLEVBQUUsU0FBUztJQUMxQixVQUFVLEVBQUUsU0FBUztJQUNyQixlQUFlLEVBQUUsRUFBRTtJQUNuQixjQUFjLEVBQUUsb0RBQW9EO0lBQ3BFLFNBQVMsRUFBRTtRQUNUO1lBQ0UsVUFBVSxFQUFFLE9BQU87WUFDbkIsV0FBVyxFQUFFLDJEQUEyRDtZQUN4RSxRQUFRLEVBQUUsS0FBSztTQUNoQjtLQUNGO0NBQ0YsQ0FBQztBQUVXLFFBQUEseUJBQXlCLEdBQW9CO0lBQ3hELHVDQUErQjtDQUNoQyxDQUFDO0FBRVcsUUFBQSxpQkFBaUIsR0FBRyxrQ0FBa0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFwaVNjaGVtYSxcbiAgUHJvcGVydHlEZWZpbml0aW9uLFxuICBQcm9wZXJ0eVR5cGUsXG4gIFZhbGlkYXRpb25SdWxlVHlwZSxcbiAgVmVyc2lvbkNvbmZpZyxcbiAgVmVyc2lvblN1cHBvcnRMZXZlbCxcbn0gZnJvbSBcIi4uLy4uL2NvcmUtYXp1cmUvbGliL3ZlcnNpb24tbWFuYWdlci9pbnRlcmZhY2VzL3ZlcnNpb24taW50ZXJmYWNlc1wiO1xuXG5jb25zdCBDT01NT05fUFJPUEVSVElFUzogeyBba2V5OiBzdHJpbmddOiBQcm9wZXJ0eURlZmluaXRpb24gfSA9IHtcbiAgbG9jYXRpb246IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLlNUUklORyxcbiAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICBkZXNjcmlwdGlvbjpcbiAgICAgIFwiVGhlIEF6dXJlIHJlZ2lvbiB3aGVyZSB0aGUgRXZlbnQgR3JpZCBTeXN0ZW0gVG9waWMgd2lsbCBiZSBjcmVhdGVkXCIsXG4gICAgdmFsaWRhdGlvbjogW1xuICAgICAge1xuICAgICAgICBydWxlVHlwZTogVmFsaWRhdGlvblJ1bGVUeXBlLlJFUVVJUkVELFxuICAgICAgICBtZXNzYWdlOiBcIkxvY2F0aW9uIGlzIHJlcXVpcmVkIGZvciBFdmVudCBHcmlkIFN5c3RlbSBUb3BpY3NcIixcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHJ1bGVUeXBlOiBWYWxpZGF0aW9uUnVsZVR5cGUuUEFUVEVSTl9NQVRDSCxcbiAgICAgICAgdmFsdWU6IFwiXlthLXowLTldKyRcIixcbiAgICAgICAgbWVzc2FnZTogXCJMb2NhdGlvbiBtdXN0IGNvbnRhaW4gb25seSBsb3dlcmNhc2UgbGV0dGVycyBhbmQgbnVtYmVyc1wiLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxuICB0YWdzOiB7XG4gICAgZGF0YVR5cGU6IFByb3BlcnR5VHlwZS5PQkpFQ1QsXG4gICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgIGRlZmF1bHRWYWx1ZToge30sXG4gICAgZGVzY3JpcHRpb246IFwiQSBkaWN0aW9uYXJ5IG9mIHRhZ3MgdG8gYXBwbHkgdG8gdGhlIEV2ZW50IEdyaWQgU3lzdGVtIFRvcGljXCIsXG4gICAgdmFsaWRhdGlvbjogW1xuICAgICAge1xuICAgICAgICBydWxlVHlwZTogVmFsaWRhdGlvblJ1bGVUeXBlLlRZUEVfQ0hFQ0ssXG4gICAgICAgIHZhbHVlOiBQcm9wZXJ0eVR5cGUuT0JKRUNULFxuICAgICAgICBtZXNzYWdlOiBcIlRhZ3MgbXVzdCBiZSBhbiBvYmplY3Qgd2l0aCBzdHJpbmcga2V5LXZhbHVlIHBhaXJzXCIsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG4gIG5hbWU6IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLlNUUklORyxcbiAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICBkZXNjcmlwdGlvbjogXCJUaGUgbmFtZSBvZiB0aGUgRXZlbnQgR3JpZCBTeXN0ZW0gVG9waWNcIixcbiAgICB2YWxpZGF0aW9uOiBbXG4gICAgICB7XG4gICAgICAgIHJ1bGVUeXBlOiBWYWxpZGF0aW9uUnVsZVR5cGUuUkVRVUlSRUQsXG4gICAgICAgIG1lc3NhZ2U6IFwiTmFtZSBpcyByZXF1aXJlZCBmb3IgRXZlbnQgR3JpZCBTeXN0ZW0gVG9waWNzXCIsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBydWxlVHlwZTogVmFsaWRhdGlvblJ1bGVUeXBlLlZBTFVFX1JBTkdFLFxuICAgICAgICB2YWx1ZTogeyBtaW5MZW5ndGg6IDEsIG1heExlbmd0aDogNjQgfSxcbiAgICAgICAgbWVzc2FnZTogXCJOYW1lIG11c3QgYmUgYmV0d2VlbiAxIGFuZCA2NCBjaGFyYWN0ZXJzXCIsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG4gIHNvdXJjZToge1xuICAgIGRhdGFUeXBlOiBQcm9wZXJ0eVR5cGUuU1RSSU5HLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgIGRlc2NyaXB0aW9uOiBcIlRoZSBzb3VyY2UgQXp1cmUgcmVzb3VyY2UgSUQgZm9yIHRoZSBzeXN0ZW0gdG9waWNcIixcbiAgICB2YWxpZGF0aW9uOiBbXG4gICAgICB7XG4gICAgICAgIHJ1bGVUeXBlOiBWYWxpZGF0aW9uUnVsZVR5cGUuUkVRVUlSRUQsXG4gICAgICAgIG1lc3NhZ2U6IFwiU291cmNlIGlzIHJlcXVpcmVkIGZvciBFdmVudCBHcmlkIFN5c3RlbSBUb3BpY3NcIixcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHJ1bGVUeXBlOiBWYWxpZGF0aW9uUnVsZVR5cGUuVFlQRV9DSEVDSyxcbiAgICAgICAgdmFsdWU6IFByb3BlcnR5VHlwZS5TVFJJTkcsXG4gICAgICAgIG1lc3NhZ2U6IFwiU291cmNlIG11c3QgYmUgYSBzdHJpbmcgY29udGFpbmluZyBhIHJlc291cmNlIElEXCIsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG4gIHRvcGljVHlwZToge1xuICAgIGRhdGFUeXBlOiBQcm9wZXJ0eVR5cGUuU1RSSU5HLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgIGRlc2NyaXB0aW9uOiBcIlRoZSB0eXBlIG9mIHRoZSBzb3VyY2UgcmVzb3VyY2VcIixcbiAgICB2YWxpZGF0aW9uOiBbXG4gICAgICB7XG4gICAgICAgIHJ1bGVUeXBlOiBWYWxpZGF0aW9uUnVsZVR5cGUuUkVRVUlSRUQsXG4gICAgICAgIG1lc3NhZ2U6IFwiVG9waWMgdHlwZSBpcyByZXF1aXJlZCBmb3IgRXZlbnQgR3JpZCBTeXN0ZW0gVG9waWNzXCIsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBydWxlVHlwZTogVmFsaWRhdGlvblJ1bGVUeXBlLlRZUEVfQ0hFQ0ssXG4gICAgICAgIHZhbHVlOiBQcm9wZXJ0eVR5cGUuU1RSSU5HLFxuICAgICAgICBtZXNzYWdlOiBcIlRvcGljIHR5cGUgbXVzdCBiZSBhIHN0cmluZ1wiLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxuICBpZGVudGl0eToge1xuICAgIGRhdGFUeXBlOiBQcm9wZXJ0eVR5cGUuT0JKRUNULFxuICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICBkZXNjcmlwdGlvbjpcbiAgICAgIFwiTWFuYWdlZCBpZGVudGl0eSBjb25maWd1cmF0aW9uIGZvciB0aGUgRXZlbnQgR3JpZCBTeXN0ZW0gVG9waWNcIixcbiAgfSxcbiAgcmVzb3VyY2VHcm91cElkOiB7XG4gICAgZGF0YVR5cGU6IFByb3BlcnR5VHlwZS5TVFJJTkcsXG4gICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgIGRlc2NyaXB0aW9uOlxuICAgICAgXCJUaGUgcmVzb3VyY2UgZ3JvdXAgSUQgd2hlcmUgdGhlIEV2ZW50IEdyaWQgU3lzdGVtIFRvcGljIGlzIGNyZWF0ZWRcIixcbiAgfSxcbn07XG5cbmV4cG9ydCBjb25zdCBTWVNURU1fVE9QSUNfU0NIRU1BXzIwMjVfMDJfMTU6IEFwaVNjaGVtYSA9IHtcbiAgcmVzb3VyY2VUeXBlOiBcIk1pY3Jvc29mdC5FdmVudEdyaWQvc3lzdGVtVG9waWNzXCIsXG4gIHZlcnNpb246IFwiMjAyNS0wMi0xNVwiLFxuICBwcm9wZXJ0aWVzOiB7XG4gICAgLi4uQ09NTU9OX1BST1BFUlRJRVMsXG4gIH0sXG4gIHJlcXVpcmVkOiBbXCJsb2NhdGlvblwiLCBcIm5hbWVcIiwgXCJzb3VyY2VcIiwgXCJ0b3BpY1R5cGVcIl0sXG4gIG9wdGlvbmFsOiBbXCJ0YWdzXCIsIFwiaWRlbnRpdHlcIiwgXCJyZXNvdXJjZUdyb3VwSWRcIl0sXG4gIGRlcHJlY2F0ZWQ6IFtdLFxuICB0cmFuc2Zvcm1hdGlvblJ1bGVzOiB7fSxcbiAgdmFsaWRhdGlvblJ1bGVzOiBbXG4gICAge1xuICAgICAgcHJvcGVydHk6IFwibG9jYXRpb25cIixcbiAgICAgIHJ1bGVzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBydWxlVHlwZTogVmFsaWRhdGlvblJ1bGVUeXBlLlJFUVVJUkVELFxuICAgICAgICAgIG1lc3NhZ2U6IFwiTG9jYXRpb24gaXMgcmVxdWlyZWQgZm9yIEV2ZW50IEdyaWQgU3lzdGVtIFRvcGljc1wiLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3BlcnR5OiBcIm5hbWVcIixcbiAgICAgIHJ1bGVzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBydWxlVHlwZTogVmFsaWRhdGlvblJ1bGVUeXBlLlJFUVVJUkVELFxuICAgICAgICAgIG1lc3NhZ2U6IFwiTmFtZSBpcyByZXF1aXJlZCBmb3IgRXZlbnQgR3JpZCBTeXN0ZW0gVG9waWNzXCIsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvcGVydHk6IFwic291cmNlXCIsXG4gICAgICBydWxlczogW1xuICAgICAgICB7XG4gICAgICAgICAgcnVsZVR5cGU6IFZhbGlkYXRpb25SdWxlVHlwZS5SRVFVSVJFRCxcbiAgICAgICAgICBtZXNzYWdlOiBcIlNvdXJjZSBpcyByZXF1aXJlZCBmb3IgRXZlbnQgR3JpZCBTeXN0ZW0gVG9waWNzXCIsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvcGVydHk6IFwidG9waWNUeXBlXCIsXG4gICAgICBydWxlczogW1xuICAgICAgICB7XG4gICAgICAgICAgcnVsZVR5cGU6IFZhbGlkYXRpb25SdWxlVHlwZS5SRVFVSVJFRCxcbiAgICAgICAgICBtZXNzYWdlOiBcIlRvcGljIHR5cGUgaXMgcmVxdWlyZWQgZm9yIEV2ZW50IEdyaWQgU3lzdGVtIFRvcGljc1wiLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICBdLFxufTtcblxuZXhwb3J0IGNvbnN0IFNZU1RFTV9UT1BJQ19WRVJTSU9OXzIwMjVfMDJfMTU6IFZlcnNpb25Db25maWcgPSB7XG4gIHZlcnNpb246IFwiMjAyNS0wMi0xNVwiLFxuICBzY2hlbWE6IFNZU1RFTV9UT1BJQ19TQ0hFTUFfMjAyNV8wMl8xNSxcbiAgc3VwcG9ydExldmVsOiBWZXJzaW9uU3VwcG9ydExldmVsLkFDVElWRSxcbiAgcmVsZWFzZURhdGU6IFwiMjAyNS0wMi0xNVwiLFxuICBkZXByZWNhdGlvbkRhdGU6IHVuZGVmaW5lZCxcbiAgc3Vuc2V0RGF0ZTogdW5kZWZpbmVkLFxuICBicmVha2luZ0NoYW5nZXM6IFtdLFxuICBtaWdyYXRpb25HdWlkZTogXCIvZG9jcy9ldmVudC1ncmlkLXN5c3RlbS10b3BpYy9taWdyYXRpb24tMjAyNS0wMi0xNVwiLFxuICBjaGFuZ2VMb2c6IFtcbiAgICB7XG4gICAgICBjaGFuZ2VUeXBlOiBcImFkZGVkXCIsXG4gICAgICBkZXNjcmlwdGlvbjogXCJJbml0aWFsIHN0YWJsZSByZWxlYXNlIG9mIEV2ZW50IEdyaWQgU3lzdGVtIFRvcGljIHN1cHBvcnRcIixcbiAgICAgIGJyZWFraW5nOiBmYWxzZSxcbiAgICB9LFxuICBdLFxufTtcblxuZXhwb3J0IGNvbnN0IEFMTF9TWVNURU1fVE9QSUNfVkVSU0lPTlM6IFZlcnNpb25Db25maWdbXSA9IFtcbiAgU1lTVEVNX1RPUElDX1ZFUlNJT05fMjAyNV8wMl8xNSxcbl07XG5cbmV4cG9ydCBjb25zdCBTWVNURU1fVE9QSUNfVFlQRSA9IFwiTWljcm9zb2Z0LkV2ZW50R3JpZC9zeXN0ZW1Ub3BpY3NcIjtcbiJdfQ==
@@ -0,0 +1,46 @@
1
+ import * as cdktn from "cdktn";
2
+ import { Construct } from "constructs";
3
+ import { AzapiResource, AzapiResourceProps } from "../../core-azure/lib/azapi/azapi-resource";
4
+ import { ApiSchema } from "../../core-azure/lib/version-manager/interfaces/version-interfaces";
5
+ export interface EventGridSystemTopicIdentity {
6
+ readonly type: string;
7
+ readonly userAssignedIdentities?: {
8
+ [key: string]: any;
9
+ };
10
+ }
11
+ export interface EventGridSystemTopicProps extends AzapiResourceProps {
12
+ /** Source Azure resource ID for the system topic */
13
+ readonly source: string;
14
+ /** Topic type (e.g., "Microsoft.Storage.StorageAccounts") */
15
+ readonly topicType: string;
16
+ /** Managed identity configuration */
17
+ readonly identity?: EventGridSystemTopicIdentity;
18
+ /** Resource group ID */
19
+ readonly resourceGroupId?: string;
20
+ }
21
+ export interface EventGridSystemTopicBodyProperties {
22
+ readonly source: string;
23
+ readonly topicType: string;
24
+ }
25
+ export interface EventGridSystemTopicBody {
26
+ readonly location: string;
27
+ readonly tags?: {
28
+ [key: string]: string;
29
+ };
30
+ readonly properties: EventGridSystemTopicBodyProperties;
31
+ readonly identity?: EventGridSystemTopicIdentity;
32
+ }
33
+ export declare class EventGridSystemTopic extends AzapiResource {
34
+ readonly props: EventGridSystemTopicProps;
35
+ readonly idOutput: cdktn.TerraformOutput;
36
+ readonly locationOutput: cdktn.TerraformOutput;
37
+ readonly nameOutput: cdktn.TerraformOutput;
38
+ readonly tagsOutput: cdktn.TerraformOutput;
39
+ constructor(scope: Construct, id: string, props: EventGridSystemTopicProps);
40
+ protected defaultVersion(): string;
41
+ protected resourceType(): string;
42
+ protected apiSchema(): ApiSchema;
43
+ protected requiresLocation(): boolean;
44
+ protected createResourceBody(props: any): any;
45
+ get resourceId(): string;
46
+ }
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.EventGridSystemTopic = void 0;
5
+ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
+ const cdktn = require("cdktn");
7
+ const event_grid_system_topic_schemas_1 = require("./event-grid-system-topic-schemas");
8
+ const azapi_resource_1 = require("../../core-azure/lib/azapi/azapi-resource");
9
+ class EventGridSystemTopic extends azapi_resource_1.AzapiResource {
10
+ constructor(scope, id, props) {
11
+ super(scope, id, props);
12
+ this.props = props;
13
+ this.idOutput = new cdktn.TerraformOutput(this, "id", {
14
+ value: this.id,
15
+ description: "The ID of the Event Grid System Topic",
16
+ });
17
+ this.locationOutput = new cdktn.TerraformOutput(this, "location", {
18
+ value: `\${${this.terraformResource.fqn}.location}`,
19
+ description: "The location of the Event Grid System Topic",
20
+ });
21
+ this.nameOutput = new cdktn.TerraformOutput(this, "name", {
22
+ value: `\${${this.terraformResource.fqn}.name}`,
23
+ description: "The name of the Event Grid System Topic",
24
+ });
25
+ this.tagsOutput = new cdktn.TerraformOutput(this, "tags", {
26
+ value: `\${${this.terraformResource.fqn}.tags}`,
27
+ description: "The tags assigned to the Event Grid System Topic",
28
+ });
29
+ this.idOutput.overrideLogicalId("id");
30
+ this.locationOutput.overrideLogicalId("location");
31
+ this.nameOutput.overrideLogicalId("name");
32
+ this.tagsOutput.overrideLogicalId("tags");
33
+ }
34
+ defaultVersion() {
35
+ return "2025-02-15";
36
+ }
37
+ resourceType() {
38
+ return event_grid_system_topic_schemas_1.SYSTEM_TOPIC_TYPE;
39
+ }
40
+ apiSchema() {
41
+ return this.resolveSchema();
42
+ }
43
+ requiresLocation() {
44
+ return true;
45
+ }
46
+ createResourceBody(props) {
47
+ const typedProps = props;
48
+ return {
49
+ location: this.location,
50
+ tags: this.allTags(),
51
+ properties: {
52
+ source: typedProps.source,
53
+ topicType: typedProps.topicType,
54
+ },
55
+ identity: typedProps.identity,
56
+ };
57
+ }
58
+ get resourceId() {
59
+ return this.id;
60
+ }
61
+ }
62
+ exports.EventGridSystemTopic = EventGridSystemTopic;
63
+ _a = JSII_RTTI_SYMBOL_1;
64
+ EventGridSystemTopic[_a] = { fqn: "@microsoft/terraform-cdk-constructs.EventGridSystemTopic", version: "2.5.1" };
65
+ (() => {
66
+ azapi_resource_1.AzapiResource.registerSchemas(event_grid_system_topic_schemas_1.SYSTEM_TOPIC_TYPE, event_grid_system_topic_schemas_1.ALL_SYSTEM_TOPIC_VERSIONS);
67
+ })();
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtZ3JpZC1zeXN0ZW0tdG9waWMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXp1cmUtZXZlbnRncmlkc3lzdGVtdG9waWMvbGliL2V2ZW50LWdyaWQtc3lzdGVtLXRvcGljLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsK0JBQStCO0FBRS9CLHVGQUcyQztBQUMzQyw4RUFHbUQ7QUErQm5ELE1BQWEsb0JBQXFCLFNBQVEsOEJBQWE7SUFXckQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFnQztRQUN4RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN4QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUVuQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksS0FBSyxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFO1lBQ3BELEtBQUssRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNkLFdBQVcsRUFBRSx1Q0FBdUM7U0FDckQsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUNoRSxLQUFLLEVBQUUsTUFBTSxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxZQUFZO1lBQ25ELFdBQVcsRUFBRSw2Q0FBNkM7U0FDM0QsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRTtZQUN4RCxLQUFLLEVBQUUsTUFBTSxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxRQUFRO1lBQy9DLFdBQVcsRUFBRSx5Q0FBeUM7U0FDdkQsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRTtZQUN4RCxLQUFLLEVBQUUsTUFBTSxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxRQUFRO1lBQy9DLFdBQVcsRUFBRSxrREFBa0Q7U0FDaEUsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsY0FBYyxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxVQUFVLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRVMsY0FBYztRQUN0QixPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDO0lBRVMsWUFBWTtRQUNwQixPQUFPLG1EQUFpQixDQUFDO0lBQzNCLENBQUM7SUFFUyxTQUFTO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFUyxnQkFBZ0I7UUFDeEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRVMsa0JBQWtCLENBQUMsS0FBVTtRQUNyQyxNQUFNLFVBQVUsR0FBRyxLQUFrQyxDQUFDO1FBQ3RELE9BQU87WUFDTCxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDdkIsSUFBSSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDcEIsVUFBVSxFQUFFO2dCQUNWLE1BQU0sRUFBRSxVQUFVLENBQUMsTUFBTTtnQkFDekIsU0FBUyxFQUFFLFVBQVUsQ0FBQyxTQUFTO2FBQ2hDO1lBQ0QsUUFBUSxFQUFFLFVBQVUsQ0FBQyxRQUFRO1NBQzlCLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQztJQUNqQixDQUFDOztBQXJFSCxvREFzRUM7OztBQXJFQztJQUNFLDhCQUFhLENBQUMsZUFBZSxDQUFDLG1EQUFpQixFQUFFLDJEQUF5QixDQUFDLENBQUM7QUFDOUUsQ0FBQyxHQUFBLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjZGt0biBmcm9tIFwiY2RrdG5cIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge1xuICBBTExfU1lTVEVNX1RPUElDX1ZFUlNJT05TLFxuICBTWVNURU1fVE9QSUNfVFlQRSxcbn0gZnJvbSBcIi4vZXZlbnQtZ3JpZC1zeXN0ZW0tdG9waWMtc2NoZW1hc1wiO1xuaW1wb3J0IHtcbiAgQXphcGlSZXNvdXJjZSxcbiAgQXphcGlSZXNvdXJjZVByb3BzLFxufSBmcm9tIFwiLi4vLi4vY29yZS1henVyZS9saWIvYXphcGkvYXphcGktcmVzb3VyY2VcIjtcbmltcG9ydCB7IEFwaVNjaGVtYSB9IGZyb20gXCIuLi8uLi9jb3JlLWF6dXJlL2xpYi92ZXJzaW9uLW1hbmFnZXIvaW50ZXJmYWNlcy92ZXJzaW9uLWludGVyZmFjZXNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBFdmVudEdyaWRTeXN0ZW1Ub3BpY0lkZW50aXR5IHtcbiAgcmVhZG9ubHkgdHlwZTogc3RyaW5nO1xuICByZWFkb25seSB1c2VyQXNzaWduZWRJZGVudGl0aWVzPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFdmVudEdyaWRTeXN0ZW1Ub3BpY1Byb3BzIGV4dGVuZHMgQXphcGlSZXNvdXJjZVByb3BzIHtcbiAgLyoqIFNvdXJjZSBBenVyZSByZXNvdXJjZSBJRCBmb3IgdGhlIHN5c3RlbSB0b3BpYyAqL1xuICByZWFkb25seSBzb3VyY2U6IHN0cmluZztcbiAgLyoqIFRvcGljIHR5cGUgKGUuZy4sIFwiTWljcm9zb2Z0LlN0b3JhZ2UuU3RvcmFnZUFjY291bnRzXCIpICovXG4gIHJlYWRvbmx5IHRvcGljVHlwZTogc3RyaW5nO1xuICAvKiogTWFuYWdlZCBpZGVudGl0eSBjb25maWd1cmF0aW9uICovXG4gIHJlYWRvbmx5IGlkZW50aXR5PzogRXZlbnRHcmlkU3lzdGVtVG9waWNJZGVudGl0eTtcbiAgLyoqIFJlc291cmNlIGdyb3VwIElEICovXG4gIHJlYWRvbmx5IHJlc291cmNlR3JvdXBJZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFdmVudEdyaWRTeXN0ZW1Ub3BpY0JvZHlQcm9wZXJ0aWVzIHtcbiAgcmVhZG9ubHkgc291cmNlOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHRvcGljVHlwZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50R3JpZFN5c3RlbVRvcGljQm9keSB7XG4gIHJlYWRvbmx5IGxvY2F0aW9uOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHRhZ3M/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuICByZWFkb25seSBwcm9wZXJ0aWVzOiBFdmVudEdyaWRTeXN0ZW1Ub3BpY0JvZHlQcm9wZXJ0aWVzO1xuICByZWFkb25seSBpZGVudGl0eT86IEV2ZW50R3JpZFN5c3RlbVRvcGljSWRlbnRpdHk7XG59XG5cbmV4cG9ydCBjbGFzcyBFdmVudEdyaWRTeXN0ZW1Ub3BpYyBleHRlbmRzIEF6YXBpUmVzb3VyY2Uge1xuICBzdGF0aWMge1xuICAgIEF6YXBpUmVzb3VyY2UucmVnaXN0ZXJTY2hlbWFzKFNZU1RFTV9UT1BJQ19UWVBFLCBBTExfU1lTVEVNX1RPUElDX1ZFUlNJT05TKTtcbiAgfVxuXG4gIHB1YmxpYyByZWFkb25seSBwcm9wczogRXZlbnRHcmlkU3lzdGVtVG9waWNQcm9wcztcbiAgcHVibGljIHJlYWRvbmx5IGlkT3V0cHV0OiBjZGt0bi5UZXJyYWZvcm1PdXRwdXQ7XG4gIHB1YmxpYyByZWFkb25seSBsb2NhdGlvbk91dHB1dDogY2RrdG4uVGVycmFmb3JtT3V0cHV0O1xuICBwdWJsaWMgcmVhZG9ubHkgbmFtZU91dHB1dDogY2RrdG4uVGVycmFmb3JtT3V0cHV0O1xuICBwdWJsaWMgcmVhZG9ubHkgdGFnc091dHB1dDogY2RrdG4uVGVycmFmb3JtT3V0cHV0O1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBFdmVudEdyaWRTeXN0ZW1Ub3BpY1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCBwcm9wcyk7XG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuXG4gICAgdGhpcy5pZE91dHB1dCA9IG5ldyBjZGt0bi5UZXJyYWZvcm1PdXRwdXQodGhpcywgXCJpZFwiLCB7XG4gICAgICB2YWx1ZTogdGhpcy5pZCxcbiAgICAgIGRlc2NyaXB0aW9uOiBcIlRoZSBJRCBvZiB0aGUgRXZlbnQgR3JpZCBTeXN0ZW0gVG9waWNcIixcbiAgICB9KTtcbiAgICB0aGlzLmxvY2F0aW9uT3V0cHV0ID0gbmV3IGNka3RuLlRlcnJhZm9ybU91dHB1dCh0aGlzLCBcImxvY2F0aW9uXCIsIHtcbiAgICAgIHZhbHVlOiBgXFwkeyR7dGhpcy50ZXJyYWZvcm1SZXNvdXJjZS5mcW59LmxvY2F0aW9ufWAsXG4gICAgICBkZXNjcmlwdGlvbjogXCJUaGUgbG9jYXRpb24gb2YgdGhlIEV2ZW50IEdyaWQgU3lzdGVtIFRvcGljXCIsXG4gICAgfSk7XG4gICAgdGhpcy5uYW1lT3V0cHV0ID0gbmV3IGNka3RuLlRlcnJhZm9ybU91dHB1dCh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgdmFsdWU6IGBcXCR7JHt0aGlzLnRlcnJhZm9ybVJlc291cmNlLmZxbn0ubmFtZX1gLFxuICAgICAgZGVzY3JpcHRpb246IFwiVGhlIG5hbWUgb2YgdGhlIEV2ZW50IEdyaWQgU3lzdGVtIFRvcGljXCIsXG4gICAgfSk7XG4gICAgdGhpcy50YWdzT3V0cHV0ID0gbmV3IGNka3RuLlRlcnJhZm9ybU91dHB1dCh0aGlzLCBcInRhZ3NcIiwge1xuICAgICAgdmFsdWU6IGBcXCR7JHt0aGlzLnRlcnJhZm9ybVJlc291cmNlLmZxbn0udGFnc31gLFxuICAgICAgZGVzY3JpcHRpb246IFwiVGhlIHRhZ3MgYXNzaWduZWQgdG8gdGhlIEV2ZW50IEdyaWQgU3lzdGVtIFRvcGljXCIsXG4gICAgfSk7XG5cbiAgICB0aGlzLmlkT3V0cHV0Lm92ZXJyaWRlTG9naWNhbElkKFwiaWRcIik7XG4gICAgdGhpcy5sb2NhdGlvbk91dHB1dC5vdmVycmlkZUxvZ2ljYWxJZChcImxvY2F0aW9uXCIpO1xuICAgIHRoaXMubmFtZU91dHB1dC5vdmVycmlkZUxvZ2ljYWxJZChcIm5hbWVcIik7XG4gICAgdGhpcy50YWdzT3V0cHV0Lm92ZXJyaWRlTG9naWNhbElkKFwidGFnc1wiKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBkZWZhdWx0VmVyc2lvbigpOiBzdHJpbmcge1xuICAgIHJldHVybiBcIjIwMjUtMDItMTVcIjtcbiAgfVxuXG4gIHByb3RlY3RlZCByZXNvdXJjZVR5cGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gU1lTVEVNX1RPUElDX1RZUEU7XG4gIH1cblxuICBwcm90ZWN0ZWQgYXBpU2NoZW1hKCk6IEFwaVNjaGVtYSB7XG4gICAgcmV0dXJuIHRoaXMucmVzb2x2ZVNjaGVtYSgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlcXVpcmVzTG9jYXRpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlUmVzb3VyY2VCb2R5KHByb3BzOiBhbnkpOiBhbnkge1xuICAgIGNvbnN0IHR5cGVkUHJvcHMgPSBwcm9wcyBhcyBFdmVudEdyaWRTeXN0ZW1Ub3BpY1Byb3BzO1xuICAgIHJldHVybiB7XG4gICAgICBsb2NhdGlvbjogdGhpcy5sb2NhdGlvbixcbiAgICAgIHRhZ3M6IHRoaXMuYWxsVGFncygpLFxuICAgICAgcHJvcGVydGllczoge1xuICAgICAgICBzb3VyY2U6IHR5cGVkUHJvcHMuc291cmNlLFxuICAgICAgICB0b3BpY1R5cGU6IHR5cGVkUHJvcHMudG9waWNUeXBlLFxuICAgICAgfSxcbiAgICAgIGlkZW50aXR5OiB0eXBlZFByb3BzLmlkZW50aXR5LFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgZ2V0IHJlc291cmNlSWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pZDtcbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export * from "./event-grid-system-topic-schemas";
2
+ export * from "./event-grid-system-topic";