@cdktf-providers/newrelic 3.75.4

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 (147) hide show
  1. package/LICENSE +355 -0
  2. package/README.md +19 -0
  3. package/dist/account-management/index.d.ts +64 -0
  4. package/dist/account-management/index.js +131 -0
  5. package/dist/alert-channel/index.d.ts +347 -0
  6. package/dist/alert-channel/index.js +810 -0
  7. package/dist/alert-condition/index.d.ts +267 -0
  8. package/dist/alert-condition/index.js +587 -0
  9. package/dist/alert-muting-rule/index.d.ts +305 -0
  10. package/dist/alert-muting-rule/index.js +731 -0
  11. package/dist/alert-policy/index.d.ts +87 -0
  12. package/dist/alert-policy/index.js +180 -0
  13. package/dist/alert-policy-channel/index.d.ts +110 -0
  14. package/dist/alert-policy-channel/index.js +260 -0
  15. package/dist/api-access-key/index.d.ts +98 -0
  16. package/dist/api-access-key/index.js +230 -0
  17. package/dist/application-settings/index.d.ts +410 -0
  18. package/dist/application-settings/index.js +966 -0
  19. package/dist/browser-application/index.d.ts +101 -0
  20. package/dist/browser-application/index.js +215 -0
  21. package/dist/cloud-aws-govcloud-integrations/index.d.ts +1519 -0
  22. package/dist/cloud-aws-govcloud-integrations/index.js +3846 -0
  23. package/dist/cloud-aws-govcloud-link-account/index.d.ts +86 -0
  24. package/dist/cloud-aws-govcloud-link-account/index.js +177 -0
  25. package/dist/cloud-aws-integrations/index.d.ts +3294 -0
  26. package/dist/cloud-aws-integrations/index.js +8554 -0
  27. package/dist/cloud-aws-link-account/index.d.ts +86 -0
  28. package/dist/cloud-aws-link-account/index.js +177 -0
  29. package/dist/cloud-azure-integrations/index.d.ts +1662 -0
  30. package/dist/cloud-azure-integrations/index.js +4338 -0
  31. package/dist/cloud-azure-link-account/index.d.ts +105 -0
  32. package/dist/cloud-azure-link-account/index.js +214 -0
  33. package/dist/cloud-gcp-integrations/index.d.ts +1045 -0
  34. package/dist/cloud-gcp-integrations/index.js +2742 -0
  35. package/dist/cloud-gcp-link-account/index.d.ts +75 -0
  36. package/dist/cloud-gcp-link-account/index.js +154 -0
  37. package/dist/cloud-oci-link-account/index.d.ts +191 -0
  38. package/dist/cloud-oci-link-account/index.js +392 -0
  39. package/dist/data-newrelic-account/index.d.ts +77 -0
  40. package/dist/data-newrelic-account/index.js +160 -0
  41. package/dist/data-newrelic-alert-channel/index.d.ts +122 -0
  42. package/dist/data-newrelic-alert-channel/index.js +295 -0
  43. package/dist/data-newrelic-alert-policy/index.d.ts +78 -0
  44. package/dist/data-newrelic-alert-policy/index.js +165 -0
  45. package/dist/data-newrelic-application/index.d.ts +56 -0
  46. package/dist/data-newrelic-application/index.js +119 -0
  47. package/dist/data-newrelic-authentication-domain/index.d.ts +43 -0
  48. package/dist/data-newrelic-authentication-domain/index.js +92 -0
  49. package/dist/data-newrelic-cloud-account/index.d.ts +75 -0
  50. package/dist/data-newrelic-cloud-account/index.js +154 -0
  51. package/dist/data-newrelic-entity/index.d.ts +185 -0
  52. package/dist/data-newrelic-entity/index.js +414 -0
  53. package/dist/data-newrelic-group/index.d.ts +54 -0
  54. package/dist/data-newrelic-group/index.js +116 -0
  55. package/dist/data-newrelic-key-transaction/index.d.ts +78 -0
  56. package/dist/data-newrelic-key-transaction/index.js +165 -0
  57. package/dist/data-newrelic-notification-destination/index.d.ts +161 -0
  58. package/dist/data-newrelic-notification-destination/index.js +368 -0
  59. package/dist/data-newrelic-obfuscation-expression/index.d.ts +65 -0
  60. package/dist/data-newrelic-obfuscation-expression/index.js +134 -0
  61. package/dist/data-newrelic-service-level-alert-helper/index.d.ts +107 -0
  62. package/dist/data-newrelic-service-level-alert-helper/index.js +256 -0
  63. package/dist/data-newrelic-synthetics-private-location/index.d.ts +76 -0
  64. package/dist/data-newrelic-synthetics-private-location/index.js +157 -0
  65. package/dist/data-newrelic-synthetics-secure-credential/index.d.ts +67 -0
  66. package/dist/data-newrelic-synthetics-secure-credential/index.js +142 -0
  67. package/dist/data-newrelic-test-grok-pattern/index.d.ts +145 -0
  68. package/dist/data-newrelic-test-grok-pattern/index.js +312 -0
  69. package/dist/data-newrelic-user/index.d.ts +65 -0
  70. package/dist/data-newrelic-user/index.js +138 -0
  71. package/dist/data-partition-rule/index.d.ts +142 -0
  72. package/dist/data-partition-rule/index.js +327 -0
  73. package/dist/entity-tags/index.d.ts +152 -0
  74. package/dist/entity-tags/index.js +367 -0
  75. package/dist/events-to-metrics-rule/index.d.ts +98 -0
  76. package/dist/events-to-metrics-rule/index.js +204 -0
  77. package/dist/group/index.d.ts +75 -0
  78. package/dist/group/index.js +154 -0
  79. package/dist/index.d.ts +67 -0
  80. package/dist/index.js +68 -0
  81. package/dist/infra-alert-condition/index.d.ts +289 -0
  82. package/dist/infra-alert-condition/index.js +691 -0
  83. package/dist/insights-event/index.d.ts +182 -0
  84. package/dist/insights-event/index.js +427 -0
  85. package/dist/key-transaction/index.d.ts +96 -0
  86. package/dist/key-transaction/index.js +199 -0
  87. package/dist/lazy-index.d.ts +0 -0
  88. package/dist/lazy-index.js +68 -0
  89. package/dist/log-parsing-rule/index.d.ts +128 -0
  90. package/dist/log-parsing-rule/index.js +264 -0
  91. package/dist/monitor-downtime/index.d.ts +255 -0
  92. package/dist/monitor-downtime/index.js +603 -0
  93. package/dist/notification-channel/index.d.ts +236 -0
  94. package/dist/notification-channel/index.js +561 -0
  95. package/dist/notification-destination/index.d.ts +402 -0
  96. package/dist/notification-destination/index.js +1039 -0
  97. package/dist/nrql-alert-condition/index.d.ts +892 -0
  98. package/dist/nrql-alert-condition/index.js +2177 -0
  99. package/dist/nrql-drop-rule/index.d.ts +123 -0
  100. package/dist/nrql-drop-rule/index.js +291 -0
  101. package/dist/obfuscation-expression/index.d.ts +86 -0
  102. package/dist/obfuscation-expression/index.js +177 -0
  103. package/dist/obfuscation-rule/index.d.ts +169 -0
  104. package/dist/obfuscation-rule/index.js +372 -0
  105. package/dist/one-dashboard/index-structs/index.d.ts +2 -0
  106. package/dist/one-dashboard/index-structs/index.js +2 -0
  107. package/dist/one-dashboard/index-structs/structs0.d.ts +6996 -0
  108. package/dist/one-dashboard/index-structs/structs0.js +18191 -0
  109. package/dist/one-dashboard/index-structs/structs400.d.ts +3699 -0
  110. package/dist/one-dashboard/index-structs/structs400.js +9611 -0
  111. package/dist/one-dashboard/index.d.ts +112 -0
  112. package/dist/one-dashboard/index.js +232 -0
  113. package/dist/one-dashboard-json/index.d.ts +112 -0
  114. package/dist/one-dashboard-json/index.js +280 -0
  115. package/dist/one-dashboard-raw/index.d.ts +274 -0
  116. package/dist/one-dashboard-raw/index.js +666 -0
  117. package/dist/pipeline-cloud-rule/index.d.ts +86 -0
  118. package/dist/pipeline-cloud-rule/index.js +177 -0
  119. package/dist/provider/index.d.ts +160 -0
  120. package/dist/provider/index.js +378 -0
  121. package/dist/service-level/index.d.ts +501 -0
  122. package/dist/service-level/index.js +1425 -0
  123. package/dist/synthetics-alert-condition/index.d.ts +97 -0
  124. package/dist/synthetics-alert-condition/index.js +201 -0
  125. package/dist/synthetics-broken-links-monitor/index.d.ts +217 -0
  126. package/dist/synthetics-broken-links-monitor/index.js +474 -0
  127. package/dist/synthetics-cert-check-monitor/index.d.ts +222 -0
  128. package/dist/synthetics-cert-check-monitor/index.js +490 -0
  129. package/dist/synthetics-monitor/index.d.ts +404 -0
  130. package/dist/synthetics-monitor/index.js +885 -0
  131. package/dist/synthetics-multilocation-alert-condition/index.d.ts +177 -0
  132. package/dist/synthetics-multilocation-alert-condition/index.js +407 -0
  133. package/dist/synthetics-private-location/index.d.ts +90 -0
  134. package/dist/synthetics-private-location/index.js +193 -0
  135. package/dist/synthetics-script-monitor/index.d.ts +348 -0
  136. package/dist/synthetics-script-monitor/index.js +768 -0
  137. package/dist/synthetics-secure-credential/index.d.ts +132 -0
  138. package/dist/synthetics-secure-credential/index.js +306 -0
  139. package/dist/synthetics-step-monitor/index.d.ts +368 -0
  140. package/dist/synthetics-step-monitor/index.js +834 -0
  141. package/dist/user/index.d.ts +85 -0
  142. package/dist/user/index.js +174 -0
  143. package/dist/workflow/index.d.ts +441 -0
  144. package/dist/workflow/index.js +1066 -0
  145. package/dist/workload/index.d.ts +514 -0
  146. package/dist/workload/index.js +1283 -0
  147. package/package.json +50 -0
@@ -0,0 +1,4338 @@
1
+ // https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/cloud_azure_integrations
2
+ // generated from terraform resource schema
3
+ import * as cdktf from 'cdktf';
4
+ export function cloudAzureIntegrationsApiManagementToTerraform(struct) {
5
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
6
+ return struct;
7
+ }
8
+ if (cdktf.isComplexElement(struct)) {
9
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
10
+ }
11
+ return {
12
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
13
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
14
+ };
15
+ }
16
+ export function cloudAzureIntegrationsApiManagementToHclTerraform(struct) {
17
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
18
+ return struct;
19
+ }
20
+ if (cdktf.isComplexElement(struct)) {
21
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
22
+ }
23
+ const attrs = {
24
+ metrics_polling_interval: {
25
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
26
+ isBlock: false,
27
+ type: "simple",
28
+ storageClassType: "number",
29
+ },
30
+ resource_groups: {
31
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
32
+ isBlock: false,
33
+ type: "list",
34
+ storageClassType: "stringList",
35
+ },
36
+ };
37
+ // remove undefined attributes
38
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
39
+ }
40
+ export class CloudAzureIntegrationsApiManagementOutputReference extends cdktf.ComplexObject {
41
+ isEmptyObject = false;
42
+ /**
43
+ * @param terraformResource The parent resource
44
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
45
+ */
46
+ constructor(terraformResource, terraformAttribute) {
47
+ super(terraformResource, terraformAttribute, false, 0);
48
+ }
49
+ get internalValue() {
50
+ let hasAnyValues = this.isEmptyObject;
51
+ const internalValueResult = {};
52
+ if (this._metricsPollingInterval !== undefined) {
53
+ hasAnyValues = true;
54
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
55
+ }
56
+ if (this._resourceGroups !== undefined) {
57
+ hasAnyValues = true;
58
+ internalValueResult.resourceGroups = this._resourceGroups;
59
+ }
60
+ return hasAnyValues ? internalValueResult : undefined;
61
+ }
62
+ set internalValue(value) {
63
+ if (value === undefined) {
64
+ this.isEmptyObject = false;
65
+ this._metricsPollingInterval = undefined;
66
+ this._resourceGroups = undefined;
67
+ }
68
+ else {
69
+ this.isEmptyObject = Object.keys(value).length === 0;
70
+ this._metricsPollingInterval = value.metricsPollingInterval;
71
+ this._resourceGroups = value.resourceGroups;
72
+ }
73
+ }
74
+ // metrics_polling_interval - computed: false, optional: true, required: false
75
+ _metricsPollingInterval;
76
+ get metricsPollingInterval() {
77
+ return this.getNumberAttribute('metrics_polling_interval');
78
+ }
79
+ set metricsPollingInterval(value) {
80
+ this._metricsPollingInterval = value;
81
+ }
82
+ resetMetricsPollingInterval() {
83
+ this._metricsPollingInterval = undefined;
84
+ }
85
+ // Temporarily expose input value. Use with caution.
86
+ get metricsPollingIntervalInput() {
87
+ return this._metricsPollingInterval;
88
+ }
89
+ // resource_groups - computed: false, optional: true, required: false
90
+ _resourceGroups;
91
+ get resourceGroups() {
92
+ return this.getListAttribute('resource_groups');
93
+ }
94
+ set resourceGroups(value) {
95
+ this._resourceGroups = value;
96
+ }
97
+ resetResourceGroups() {
98
+ this._resourceGroups = undefined;
99
+ }
100
+ // Temporarily expose input value. Use with caution.
101
+ get resourceGroupsInput() {
102
+ return this._resourceGroups;
103
+ }
104
+ }
105
+ export function cloudAzureIntegrationsAppGatewayToTerraform(struct) {
106
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
107
+ return struct;
108
+ }
109
+ if (cdktf.isComplexElement(struct)) {
110
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
111
+ }
112
+ return {
113
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
114
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
115
+ };
116
+ }
117
+ export function cloudAzureIntegrationsAppGatewayToHclTerraform(struct) {
118
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
119
+ return struct;
120
+ }
121
+ if (cdktf.isComplexElement(struct)) {
122
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
123
+ }
124
+ const attrs = {
125
+ metrics_polling_interval: {
126
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
127
+ isBlock: false,
128
+ type: "simple",
129
+ storageClassType: "number",
130
+ },
131
+ resource_groups: {
132
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
133
+ isBlock: false,
134
+ type: "list",
135
+ storageClassType: "stringList",
136
+ },
137
+ };
138
+ // remove undefined attributes
139
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
140
+ }
141
+ export class CloudAzureIntegrationsAppGatewayOutputReference extends cdktf.ComplexObject {
142
+ isEmptyObject = false;
143
+ /**
144
+ * @param terraformResource The parent resource
145
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
146
+ */
147
+ constructor(terraformResource, terraformAttribute) {
148
+ super(terraformResource, terraformAttribute, false, 0);
149
+ }
150
+ get internalValue() {
151
+ let hasAnyValues = this.isEmptyObject;
152
+ const internalValueResult = {};
153
+ if (this._metricsPollingInterval !== undefined) {
154
+ hasAnyValues = true;
155
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
156
+ }
157
+ if (this._resourceGroups !== undefined) {
158
+ hasAnyValues = true;
159
+ internalValueResult.resourceGroups = this._resourceGroups;
160
+ }
161
+ return hasAnyValues ? internalValueResult : undefined;
162
+ }
163
+ set internalValue(value) {
164
+ if (value === undefined) {
165
+ this.isEmptyObject = false;
166
+ this._metricsPollingInterval = undefined;
167
+ this._resourceGroups = undefined;
168
+ }
169
+ else {
170
+ this.isEmptyObject = Object.keys(value).length === 0;
171
+ this._metricsPollingInterval = value.metricsPollingInterval;
172
+ this._resourceGroups = value.resourceGroups;
173
+ }
174
+ }
175
+ // metrics_polling_interval - computed: false, optional: true, required: false
176
+ _metricsPollingInterval;
177
+ get metricsPollingInterval() {
178
+ return this.getNumberAttribute('metrics_polling_interval');
179
+ }
180
+ set metricsPollingInterval(value) {
181
+ this._metricsPollingInterval = value;
182
+ }
183
+ resetMetricsPollingInterval() {
184
+ this._metricsPollingInterval = undefined;
185
+ }
186
+ // Temporarily expose input value. Use with caution.
187
+ get metricsPollingIntervalInput() {
188
+ return this._metricsPollingInterval;
189
+ }
190
+ // resource_groups - computed: false, optional: true, required: false
191
+ _resourceGroups;
192
+ get resourceGroups() {
193
+ return this.getListAttribute('resource_groups');
194
+ }
195
+ set resourceGroups(value) {
196
+ this._resourceGroups = value;
197
+ }
198
+ resetResourceGroups() {
199
+ this._resourceGroups = undefined;
200
+ }
201
+ // Temporarily expose input value. Use with caution.
202
+ get resourceGroupsInput() {
203
+ return this._resourceGroups;
204
+ }
205
+ }
206
+ export function cloudAzureIntegrationsAppServiceToTerraform(struct) {
207
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
208
+ return struct;
209
+ }
210
+ if (cdktf.isComplexElement(struct)) {
211
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
212
+ }
213
+ return {
214
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
215
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
216
+ };
217
+ }
218
+ export function cloudAzureIntegrationsAppServiceToHclTerraform(struct) {
219
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
220
+ return struct;
221
+ }
222
+ if (cdktf.isComplexElement(struct)) {
223
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
224
+ }
225
+ const attrs = {
226
+ metrics_polling_interval: {
227
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
228
+ isBlock: false,
229
+ type: "simple",
230
+ storageClassType: "number",
231
+ },
232
+ resource_groups: {
233
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
234
+ isBlock: false,
235
+ type: "list",
236
+ storageClassType: "stringList",
237
+ },
238
+ };
239
+ // remove undefined attributes
240
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
241
+ }
242
+ export class CloudAzureIntegrationsAppServiceOutputReference extends cdktf.ComplexObject {
243
+ isEmptyObject = false;
244
+ /**
245
+ * @param terraformResource The parent resource
246
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
247
+ */
248
+ constructor(terraformResource, terraformAttribute) {
249
+ super(terraformResource, terraformAttribute, false, 0);
250
+ }
251
+ get internalValue() {
252
+ let hasAnyValues = this.isEmptyObject;
253
+ const internalValueResult = {};
254
+ if (this._metricsPollingInterval !== undefined) {
255
+ hasAnyValues = true;
256
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
257
+ }
258
+ if (this._resourceGroups !== undefined) {
259
+ hasAnyValues = true;
260
+ internalValueResult.resourceGroups = this._resourceGroups;
261
+ }
262
+ return hasAnyValues ? internalValueResult : undefined;
263
+ }
264
+ set internalValue(value) {
265
+ if (value === undefined) {
266
+ this.isEmptyObject = false;
267
+ this._metricsPollingInterval = undefined;
268
+ this._resourceGroups = undefined;
269
+ }
270
+ else {
271
+ this.isEmptyObject = Object.keys(value).length === 0;
272
+ this._metricsPollingInterval = value.metricsPollingInterval;
273
+ this._resourceGroups = value.resourceGroups;
274
+ }
275
+ }
276
+ // metrics_polling_interval - computed: false, optional: true, required: false
277
+ _metricsPollingInterval;
278
+ get metricsPollingInterval() {
279
+ return this.getNumberAttribute('metrics_polling_interval');
280
+ }
281
+ set metricsPollingInterval(value) {
282
+ this._metricsPollingInterval = value;
283
+ }
284
+ resetMetricsPollingInterval() {
285
+ this._metricsPollingInterval = undefined;
286
+ }
287
+ // Temporarily expose input value. Use with caution.
288
+ get metricsPollingIntervalInput() {
289
+ return this._metricsPollingInterval;
290
+ }
291
+ // resource_groups - computed: false, optional: true, required: false
292
+ _resourceGroups;
293
+ get resourceGroups() {
294
+ return this.getListAttribute('resource_groups');
295
+ }
296
+ set resourceGroups(value) {
297
+ this._resourceGroups = value;
298
+ }
299
+ resetResourceGroups() {
300
+ this._resourceGroups = undefined;
301
+ }
302
+ // Temporarily expose input value. Use with caution.
303
+ get resourceGroupsInput() {
304
+ return this._resourceGroups;
305
+ }
306
+ }
307
+ export function cloudAzureIntegrationsAutoDiscoveryToTerraform(struct) {
308
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
309
+ return struct;
310
+ }
311
+ if (cdktf.isComplexElement(struct)) {
312
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
313
+ }
314
+ return {
315
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
316
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
317
+ };
318
+ }
319
+ export function cloudAzureIntegrationsAutoDiscoveryToHclTerraform(struct) {
320
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
321
+ return struct;
322
+ }
323
+ if (cdktf.isComplexElement(struct)) {
324
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
325
+ }
326
+ const attrs = {
327
+ metrics_polling_interval: {
328
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
329
+ isBlock: false,
330
+ type: "simple",
331
+ storageClassType: "number",
332
+ },
333
+ resource_groups: {
334
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
335
+ isBlock: false,
336
+ type: "list",
337
+ storageClassType: "stringList",
338
+ },
339
+ };
340
+ // remove undefined attributes
341
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
342
+ }
343
+ export class CloudAzureIntegrationsAutoDiscoveryOutputReference extends cdktf.ComplexObject {
344
+ isEmptyObject = false;
345
+ /**
346
+ * @param terraformResource The parent resource
347
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
348
+ */
349
+ constructor(terraformResource, terraformAttribute) {
350
+ super(terraformResource, terraformAttribute, false, 0);
351
+ }
352
+ get internalValue() {
353
+ let hasAnyValues = this.isEmptyObject;
354
+ const internalValueResult = {};
355
+ if (this._metricsPollingInterval !== undefined) {
356
+ hasAnyValues = true;
357
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
358
+ }
359
+ if (this._resourceGroups !== undefined) {
360
+ hasAnyValues = true;
361
+ internalValueResult.resourceGroups = this._resourceGroups;
362
+ }
363
+ return hasAnyValues ? internalValueResult : undefined;
364
+ }
365
+ set internalValue(value) {
366
+ if (value === undefined) {
367
+ this.isEmptyObject = false;
368
+ this._metricsPollingInterval = undefined;
369
+ this._resourceGroups = undefined;
370
+ }
371
+ else {
372
+ this.isEmptyObject = Object.keys(value).length === 0;
373
+ this._metricsPollingInterval = value.metricsPollingInterval;
374
+ this._resourceGroups = value.resourceGroups;
375
+ }
376
+ }
377
+ // metrics_polling_interval - computed: false, optional: true, required: false
378
+ _metricsPollingInterval;
379
+ get metricsPollingInterval() {
380
+ return this.getNumberAttribute('metrics_polling_interval');
381
+ }
382
+ set metricsPollingInterval(value) {
383
+ this._metricsPollingInterval = value;
384
+ }
385
+ resetMetricsPollingInterval() {
386
+ this._metricsPollingInterval = undefined;
387
+ }
388
+ // Temporarily expose input value. Use with caution.
389
+ get metricsPollingIntervalInput() {
390
+ return this._metricsPollingInterval;
391
+ }
392
+ // resource_groups - computed: false, optional: true, required: false
393
+ _resourceGroups;
394
+ get resourceGroups() {
395
+ return this.getListAttribute('resource_groups');
396
+ }
397
+ set resourceGroups(value) {
398
+ this._resourceGroups = value;
399
+ }
400
+ resetResourceGroups() {
401
+ this._resourceGroups = undefined;
402
+ }
403
+ // Temporarily expose input value. Use with caution.
404
+ get resourceGroupsInput() {
405
+ return this._resourceGroups;
406
+ }
407
+ }
408
+ export function cloudAzureIntegrationsContainersToTerraform(struct) {
409
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
410
+ return struct;
411
+ }
412
+ if (cdktf.isComplexElement(struct)) {
413
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
414
+ }
415
+ return {
416
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
417
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
418
+ };
419
+ }
420
+ export function cloudAzureIntegrationsContainersToHclTerraform(struct) {
421
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
422
+ return struct;
423
+ }
424
+ if (cdktf.isComplexElement(struct)) {
425
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
426
+ }
427
+ const attrs = {
428
+ metrics_polling_interval: {
429
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
430
+ isBlock: false,
431
+ type: "simple",
432
+ storageClassType: "number",
433
+ },
434
+ resource_groups: {
435
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
436
+ isBlock: false,
437
+ type: "list",
438
+ storageClassType: "stringList",
439
+ },
440
+ };
441
+ // remove undefined attributes
442
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
443
+ }
444
+ export class CloudAzureIntegrationsContainersOutputReference extends cdktf.ComplexObject {
445
+ isEmptyObject = false;
446
+ /**
447
+ * @param terraformResource The parent resource
448
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
449
+ */
450
+ constructor(terraformResource, terraformAttribute) {
451
+ super(terraformResource, terraformAttribute, false, 0);
452
+ }
453
+ get internalValue() {
454
+ let hasAnyValues = this.isEmptyObject;
455
+ const internalValueResult = {};
456
+ if (this._metricsPollingInterval !== undefined) {
457
+ hasAnyValues = true;
458
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
459
+ }
460
+ if (this._resourceGroups !== undefined) {
461
+ hasAnyValues = true;
462
+ internalValueResult.resourceGroups = this._resourceGroups;
463
+ }
464
+ return hasAnyValues ? internalValueResult : undefined;
465
+ }
466
+ set internalValue(value) {
467
+ if (value === undefined) {
468
+ this.isEmptyObject = false;
469
+ this._metricsPollingInterval = undefined;
470
+ this._resourceGroups = undefined;
471
+ }
472
+ else {
473
+ this.isEmptyObject = Object.keys(value).length === 0;
474
+ this._metricsPollingInterval = value.metricsPollingInterval;
475
+ this._resourceGroups = value.resourceGroups;
476
+ }
477
+ }
478
+ // metrics_polling_interval - computed: false, optional: true, required: false
479
+ _metricsPollingInterval;
480
+ get metricsPollingInterval() {
481
+ return this.getNumberAttribute('metrics_polling_interval');
482
+ }
483
+ set metricsPollingInterval(value) {
484
+ this._metricsPollingInterval = value;
485
+ }
486
+ resetMetricsPollingInterval() {
487
+ this._metricsPollingInterval = undefined;
488
+ }
489
+ // Temporarily expose input value. Use with caution.
490
+ get metricsPollingIntervalInput() {
491
+ return this._metricsPollingInterval;
492
+ }
493
+ // resource_groups - computed: false, optional: true, required: false
494
+ _resourceGroups;
495
+ get resourceGroups() {
496
+ return this.getListAttribute('resource_groups');
497
+ }
498
+ set resourceGroups(value) {
499
+ this._resourceGroups = value;
500
+ }
501
+ resetResourceGroups() {
502
+ this._resourceGroups = undefined;
503
+ }
504
+ // Temporarily expose input value. Use with caution.
505
+ get resourceGroupsInput() {
506
+ return this._resourceGroups;
507
+ }
508
+ }
509
+ export function cloudAzureIntegrationsCosmosDbToTerraform(struct) {
510
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
511
+ return struct;
512
+ }
513
+ if (cdktf.isComplexElement(struct)) {
514
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
515
+ }
516
+ return {
517
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
518
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
519
+ };
520
+ }
521
+ export function cloudAzureIntegrationsCosmosDbToHclTerraform(struct) {
522
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
523
+ return struct;
524
+ }
525
+ if (cdktf.isComplexElement(struct)) {
526
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
527
+ }
528
+ const attrs = {
529
+ metrics_polling_interval: {
530
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
531
+ isBlock: false,
532
+ type: "simple",
533
+ storageClassType: "number",
534
+ },
535
+ resource_groups: {
536
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
537
+ isBlock: false,
538
+ type: "list",
539
+ storageClassType: "stringList",
540
+ },
541
+ };
542
+ // remove undefined attributes
543
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
544
+ }
545
+ export class CloudAzureIntegrationsCosmosDbOutputReference extends cdktf.ComplexObject {
546
+ isEmptyObject = false;
547
+ /**
548
+ * @param terraformResource The parent resource
549
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
550
+ */
551
+ constructor(terraformResource, terraformAttribute) {
552
+ super(terraformResource, terraformAttribute, false, 0);
553
+ }
554
+ get internalValue() {
555
+ let hasAnyValues = this.isEmptyObject;
556
+ const internalValueResult = {};
557
+ if (this._metricsPollingInterval !== undefined) {
558
+ hasAnyValues = true;
559
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
560
+ }
561
+ if (this._resourceGroups !== undefined) {
562
+ hasAnyValues = true;
563
+ internalValueResult.resourceGroups = this._resourceGroups;
564
+ }
565
+ return hasAnyValues ? internalValueResult : undefined;
566
+ }
567
+ set internalValue(value) {
568
+ if (value === undefined) {
569
+ this.isEmptyObject = false;
570
+ this._metricsPollingInterval = undefined;
571
+ this._resourceGroups = undefined;
572
+ }
573
+ else {
574
+ this.isEmptyObject = Object.keys(value).length === 0;
575
+ this._metricsPollingInterval = value.metricsPollingInterval;
576
+ this._resourceGroups = value.resourceGroups;
577
+ }
578
+ }
579
+ // metrics_polling_interval - computed: false, optional: true, required: false
580
+ _metricsPollingInterval;
581
+ get metricsPollingInterval() {
582
+ return this.getNumberAttribute('metrics_polling_interval');
583
+ }
584
+ set metricsPollingInterval(value) {
585
+ this._metricsPollingInterval = value;
586
+ }
587
+ resetMetricsPollingInterval() {
588
+ this._metricsPollingInterval = undefined;
589
+ }
590
+ // Temporarily expose input value. Use with caution.
591
+ get metricsPollingIntervalInput() {
592
+ return this._metricsPollingInterval;
593
+ }
594
+ // resource_groups - computed: false, optional: true, required: false
595
+ _resourceGroups;
596
+ get resourceGroups() {
597
+ return this.getListAttribute('resource_groups');
598
+ }
599
+ set resourceGroups(value) {
600
+ this._resourceGroups = value;
601
+ }
602
+ resetResourceGroups() {
603
+ this._resourceGroups = undefined;
604
+ }
605
+ // Temporarily expose input value. Use with caution.
606
+ get resourceGroupsInput() {
607
+ return this._resourceGroups;
608
+ }
609
+ }
610
+ export function cloudAzureIntegrationsCostManagementToTerraform(struct) {
611
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
612
+ return struct;
613
+ }
614
+ if (cdktf.isComplexElement(struct)) {
615
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
616
+ }
617
+ return {
618
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
619
+ tag_keys: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.tagKeys),
620
+ };
621
+ }
622
+ export function cloudAzureIntegrationsCostManagementToHclTerraform(struct) {
623
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
624
+ return struct;
625
+ }
626
+ if (cdktf.isComplexElement(struct)) {
627
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
628
+ }
629
+ const attrs = {
630
+ metrics_polling_interval: {
631
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
632
+ isBlock: false,
633
+ type: "simple",
634
+ storageClassType: "number",
635
+ },
636
+ tag_keys: {
637
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.tagKeys),
638
+ isBlock: false,
639
+ type: "list",
640
+ storageClassType: "stringList",
641
+ },
642
+ };
643
+ // remove undefined attributes
644
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
645
+ }
646
+ export class CloudAzureIntegrationsCostManagementOutputReference extends cdktf.ComplexObject {
647
+ isEmptyObject = false;
648
+ /**
649
+ * @param terraformResource The parent resource
650
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
651
+ */
652
+ constructor(terraformResource, terraformAttribute) {
653
+ super(terraformResource, terraformAttribute, false, 0);
654
+ }
655
+ get internalValue() {
656
+ let hasAnyValues = this.isEmptyObject;
657
+ const internalValueResult = {};
658
+ if (this._metricsPollingInterval !== undefined) {
659
+ hasAnyValues = true;
660
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
661
+ }
662
+ if (this._tagKeys !== undefined) {
663
+ hasAnyValues = true;
664
+ internalValueResult.tagKeys = this._tagKeys;
665
+ }
666
+ return hasAnyValues ? internalValueResult : undefined;
667
+ }
668
+ set internalValue(value) {
669
+ if (value === undefined) {
670
+ this.isEmptyObject = false;
671
+ this._metricsPollingInterval = undefined;
672
+ this._tagKeys = undefined;
673
+ }
674
+ else {
675
+ this.isEmptyObject = Object.keys(value).length === 0;
676
+ this._metricsPollingInterval = value.metricsPollingInterval;
677
+ this._tagKeys = value.tagKeys;
678
+ }
679
+ }
680
+ // metrics_polling_interval - computed: false, optional: true, required: false
681
+ _metricsPollingInterval;
682
+ get metricsPollingInterval() {
683
+ return this.getNumberAttribute('metrics_polling_interval');
684
+ }
685
+ set metricsPollingInterval(value) {
686
+ this._metricsPollingInterval = value;
687
+ }
688
+ resetMetricsPollingInterval() {
689
+ this._metricsPollingInterval = undefined;
690
+ }
691
+ // Temporarily expose input value. Use with caution.
692
+ get metricsPollingIntervalInput() {
693
+ return this._metricsPollingInterval;
694
+ }
695
+ // tag_keys - computed: false, optional: true, required: false
696
+ _tagKeys;
697
+ get tagKeys() {
698
+ return this.getListAttribute('tag_keys');
699
+ }
700
+ set tagKeys(value) {
701
+ this._tagKeys = value;
702
+ }
703
+ resetTagKeys() {
704
+ this._tagKeys = undefined;
705
+ }
706
+ // Temporarily expose input value. Use with caution.
707
+ get tagKeysInput() {
708
+ return this._tagKeys;
709
+ }
710
+ }
711
+ export function cloudAzureIntegrationsDataFactoryToTerraform(struct) {
712
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
713
+ return struct;
714
+ }
715
+ if (cdktf.isComplexElement(struct)) {
716
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
717
+ }
718
+ return {
719
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
720
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
721
+ };
722
+ }
723
+ export function cloudAzureIntegrationsDataFactoryToHclTerraform(struct) {
724
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
725
+ return struct;
726
+ }
727
+ if (cdktf.isComplexElement(struct)) {
728
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
729
+ }
730
+ const attrs = {
731
+ metrics_polling_interval: {
732
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
733
+ isBlock: false,
734
+ type: "simple",
735
+ storageClassType: "number",
736
+ },
737
+ resource_groups: {
738
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
739
+ isBlock: false,
740
+ type: "list",
741
+ storageClassType: "stringList",
742
+ },
743
+ };
744
+ // remove undefined attributes
745
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
746
+ }
747
+ export class CloudAzureIntegrationsDataFactoryOutputReference extends cdktf.ComplexObject {
748
+ isEmptyObject = false;
749
+ /**
750
+ * @param terraformResource The parent resource
751
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
752
+ */
753
+ constructor(terraformResource, terraformAttribute) {
754
+ super(terraformResource, terraformAttribute, false, 0);
755
+ }
756
+ get internalValue() {
757
+ let hasAnyValues = this.isEmptyObject;
758
+ const internalValueResult = {};
759
+ if (this._metricsPollingInterval !== undefined) {
760
+ hasAnyValues = true;
761
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
762
+ }
763
+ if (this._resourceGroups !== undefined) {
764
+ hasAnyValues = true;
765
+ internalValueResult.resourceGroups = this._resourceGroups;
766
+ }
767
+ return hasAnyValues ? internalValueResult : undefined;
768
+ }
769
+ set internalValue(value) {
770
+ if (value === undefined) {
771
+ this.isEmptyObject = false;
772
+ this._metricsPollingInterval = undefined;
773
+ this._resourceGroups = undefined;
774
+ }
775
+ else {
776
+ this.isEmptyObject = Object.keys(value).length === 0;
777
+ this._metricsPollingInterval = value.metricsPollingInterval;
778
+ this._resourceGroups = value.resourceGroups;
779
+ }
780
+ }
781
+ // metrics_polling_interval - computed: false, optional: true, required: false
782
+ _metricsPollingInterval;
783
+ get metricsPollingInterval() {
784
+ return this.getNumberAttribute('metrics_polling_interval');
785
+ }
786
+ set metricsPollingInterval(value) {
787
+ this._metricsPollingInterval = value;
788
+ }
789
+ resetMetricsPollingInterval() {
790
+ this._metricsPollingInterval = undefined;
791
+ }
792
+ // Temporarily expose input value. Use with caution.
793
+ get metricsPollingIntervalInput() {
794
+ return this._metricsPollingInterval;
795
+ }
796
+ // resource_groups - computed: false, optional: true, required: false
797
+ _resourceGroups;
798
+ get resourceGroups() {
799
+ return this.getListAttribute('resource_groups');
800
+ }
801
+ set resourceGroups(value) {
802
+ this._resourceGroups = value;
803
+ }
804
+ resetResourceGroups() {
805
+ this._resourceGroups = undefined;
806
+ }
807
+ // Temporarily expose input value. Use with caution.
808
+ get resourceGroupsInput() {
809
+ return this._resourceGroups;
810
+ }
811
+ }
812
+ export function cloudAzureIntegrationsEventHubToTerraform(struct) {
813
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
814
+ return struct;
815
+ }
816
+ if (cdktf.isComplexElement(struct)) {
817
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
818
+ }
819
+ return {
820
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
821
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
822
+ };
823
+ }
824
+ export function cloudAzureIntegrationsEventHubToHclTerraform(struct) {
825
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
826
+ return struct;
827
+ }
828
+ if (cdktf.isComplexElement(struct)) {
829
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
830
+ }
831
+ const attrs = {
832
+ metrics_polling_interval: {
833
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
834
+ isBlock: false,
835
+ type: "simple",
836
+ storageClassType: "number",
837
+ },
838
+ resource_groups: {
839
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
840
+ isBlock: false,
841
+ type: "list",
842
+ storageClassType: "stringList",
843
+ },
844
+ };
845
+ // remove undefined attributes
846
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
847
+ }
848
+ export class CloudAzureIntegrationsEventHubOutputReference extends cdktf.ComplexObject {
849
+ isEmptyObject = false;
850
+ /**
851
+ * @param terraformResource The parent resource
852
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
853
+ */
854
+ constructor(terraformResource, terraformAttribute) {
855
+ super(terraformResource, terraformAttribute, false, 0);
856
+ }
857
+ get internalValue() {
858
+ let hasAnyValues = this.isEmptyObject;
859
+ const internalValueResult = {};
860
+ if (this._metricsPollingInterval !== undefined) {
861
+ hasAnyValues = true;
862
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
863
+ }
864
+ if (this._resourceGroups !== undefined) {
865
+ hasAnyValues = true;
866
+ internalValueResult.resourceGroups = this._resourceGroups;
867
+ }
868
+ return hasAnyValues ? internalValueResult : undefined;
869
+ }
870
+ set internalValue(value) {
871
+ if (value === undefined) {
872
+ this.isEmptyObject = false;
873
+ this._metricsPollingInterval = undefined;
874
+ this._resourceGroups = undefined;
875
+ }
876
+ else {
877
+ this.isEmptyObject = Object.keys(value).length === 0;
878
+ this._metricsPollingInterval = value.metricsPollingInterval;
879
+ this._resourceGroups = value.resourceGroups;
880
+ }
881
+ }
882
+ // metrics_polling_interval - computed: false, optional: true, required: false
883
+ _metricsPollingInterval;
884
+ get metricsPollingInterval() {
885
+ return this.getNumberAttribute('metrics_polling_interval');
886
+ }
887
+ set metricsPollingInterval(value) {
888
+ this._metricsPollingInterval = value;
889
+ }
890
+ resetMetricsPollingInterval() {
891
+ this._metricsPollingInterval = undefined;
892
+ }
893
+ // Temporarily expose input value. Use with caution.
894
+ get metricsPollingIntervalInput() {
895
+ return this._metricsPollingInterval;
896
+ }
897
+ // resource_groups - computed: false, optional: true, required: false
898
+ _resourceGroups;
899
+ get resourceGroups() {
900
+ return this.getListAttribute('resource_groups');
901
+ }
902
+ set resourceGroups(value) {
903
+ this._resourceGroups = value;
904
+ }
905
+ resetResourceGroups() {
906
+ this._resourceGroups = undefined;
907
+ }
908
+ // Temporarily expose input value. Use with caution.
909
+ get resourceGroupsInput() {
910
+ return this._resourceGroups;
911
+ }
912
+ }
913
+ export function cloudAzureIntegrationsExpressRouteToTerraform(struct) {
914
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
915
+ return struct;
916
+ }
917
+ if (cdktf.isComplexElement(struct)) {
918
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
919
+ }
920
+ return {
921
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
922
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
923
+ };
924
+ }
925
+ export function cloudAzureIntegrationsExpressRouteToHclTerraform(struct) {
926
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
927
+ return struct;
928
+ }
929
+ if (cdktf.isComplexElement(struct)) {
930
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
931
+ }
932
+ const attrs = {
933
+ metrics_polling_interval: {
934
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
935
+ isBlock: false,
936
+ type: "simple",
937
+ storageClassType: "number",
938
+ },
939
+ resource_groups: {
940
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
941
+ isBlock: false,
942
+ type: "list",
943
+ storageClassType: "stringList",
944
+ },
945
+ };
946
+ // remove undefined attributes
947
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
948
+ }
949
+ export class CloudAzureIntegrationsExpressRouteOutputReference extends cdktf.ComplexObject {
950
+ isEmptyObject = false;
951
+ /**
952
+ * @param terraformResource The parent resource
953
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
954
+ */
955
+ constructor(terraformResource, terraformAttribute) {
956
+ super(terraformResource, terraformAttribute, false, 0);
957
+ }
958
+ get internalValue() {
959
+ let hasAnyValues = this.isEmptyObject;
960
+ const internalValueResult = {};
961
+ if (this._metricsPollingInterval !== undefined) {
962
+ hasAnyValues = true;
963
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
964
+ }
965
+ if (this._resourceGroups !== undefined) {
966
+ hasAnyValues = true;
967
+ internalValueResult.resourceGroups = this._resourceGroups;
968
+ }
969
+ return hasAnyValues ? internalValueResult : undefined;
970
+ }
971
+ set internalValue(value) {
972
+ if (value === undefined) {
973
+ this.isEmptyObject = false;
974
+ this._metricsPollingInterval = undefined;
975
+ this._resourceGroups = undefined;
976
+ }
977
+ else {
978
+ this.isEmptyObject = Object.keys(value).length === 0;
979
+ this._metricsPollingInterval = value.metricsPollingInterval;
980
+ this._resourceGroups = value.resourceGroups;
981
+ }
982
+ }
983
+ // metrics_polling_interval - computed: false, optional: true, required: false
984
+ _metricsPollingInterval;
985
+ get metricsPollingInterval() {
986
+ return this.getNumberAttribute('metrics_polling_interval');
987
+ }
988
+ set metricsPollingInterval(value) {
989
+ this._metricsPollingInterval = value;
990
+ }
991
+ resetMetricsPollingInterval() {
992
+ this._metricsPollingInterval = undefined;
993
+ }
994
+ // Temporarily expose input value. Use with caution.
995
+ get metricsPollingIntervalInput() {
996
+ return this._metricsPollingInterval;
997
+ }
998
+ // resource_groups - computed: false, optional: true, required: false
999
+ _resourceGroups;
1000
+ get resourceGroups() {
1001
+ return this.getListAttribute('resource_groups');
1002
+ }
1003
+ set resourceGroups(value) {
1004
+ this._resourceGroups = value;
1005
+ }
1006
+ resetResourceGroups() {
1007
+ this._resourceGroups = undefined;
1008
+ }
1009
+ // Temporarily expose input value. Use with caution.
1010
+ get resourceGroupsInput() {
1011
+ return this._resourceGroups;
1012
+ }
1013
+ }
1014
+ export function cloudAzureIntegrationsFirewallsToTerraform(struct) {
1015
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1016
+ return struct;
1017
+ }
1018
+ if (cdktf.isComplexElement(struct)) {
1019
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1020
+ }
1021
+ return {
1022
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
1023
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
1024
+ };
1025
+ }
1026
+ export function cloudAzureIntegrationsFirewallsToHclTerraform(struct) {
1027
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1028
+ return struct;
1029
+ }
1030
+ if (cdktf.isComplexElement(struct)) {
1031
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1032
+ }
1033
+ const attrs = {
1034
+ metrics_polling_interval: {
1035
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
1036
+ isBlock: false,
1037
+ type: "simple",
1038
+ storageClassType: "number",
1039
+ },
1040
+ resource_groups: {
1041
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
1042
+ isBlock: false,
1043
+ type: "list",
1044
+ storageClassType: "stringList",
1045
+ },
1046
+ };
1047
+ // remove undefined attributes
1048
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
1049
+ }
1050
+ export class CloudAzureIntegrationsFirewallsOutputReference extends cdktf.ComplexObject {
1051
+ isEmptyObject = false;
1052
+ /**
1053
+ * @param terraformResource The parent resource
1054
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1055
+ */
1056
+ constructor(terraformResource, terraformAttribute) {
1057
+ super(terraformResource, terraformAttribute, false, 0);
1058
+ }
1059
+ get internalValue() {
1060
+ let hasAnyValues = this.isEmptyObject;
1061
+ const internalValueResult = {};
1062
+ if (this._metricsPollingInterval !== undefined) {
1063
+ hasAnyValues = true;
1064
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
1065
+ }
1066
+ if (this._resourceGroups !== undefined) {
1067
+ hasAnyValues = true;
1068
+ internalValueResult.resourceGroups = this._resourceGroups;
1069
+ }
1070
+ return hasAnyValues ? internalValueResult : undefined;
1071
+ }
1072
+ set internalValue(value) {
1073
+ if (value === undefined) {
1074
+ this.isEmptyObject = false;
1075
+ this._metricsPollingInterval = undefined;
1076
+ this._resourceGroups = undefined;
1077
+ }
1078
+ else {
1079
+ this.isEmptyObject = Object.keys(value).length === 0;
1080
+ this._metricsPollingInterval = value.metricsPollingInterval;
1081
+ this._resourceGroups = value.resourceGroups;
1082
+ }
1083
+ }
1084
+ // metrics_polling_interval - computed: false, optional: true, required: false
1085
+ _metricsPollingInterval;
1086
+ get metricsPollingInterval() {
1087
+ return this.getNumberAttribute('metrics_polling_interval');
1088
+ }
1089
+ set metricsPollingInterval(value) {
1090
+ this._metricsPollingInterval = value;
1091
+ }
1092
+ resetMetricsPollingInterval() {
1093
+ this._metricsPollingInterval = undefined;
1094
+ }
1095
+ // Temporarily expose input value. Use with caution.
1096
+ get metricsPollingIntervalInput() {
1097
+ return this._metricsPollingInterval;
1098
+ }
1099
+ // resource_groups - computed: false, optional: true, required: false
1100
+ _resourceGroups;
1101
+ get resourceGroups() {
1102
+ return this.getListAttribute('resource_groups');
1103
+ }
1104
+ set resourceGroups(value) {
1105
+ this._resourceGroups = value;
1106
+ }
1107
+ resetResourceGroups() {
1108
+ this._resourceGroups = undefined;
1109
+ }
1110
+ // Temporarily expose input value. Use with caution.
1111
+ get resourceGroupsInput() {
1112
+ return this._resourceGroups;
1113
+ }
1114
+ }
1115
+ export function cloudAzureIntegrationsFrontDoorToTerraform(struct) {
1116
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1117
+ return struct;
1118
+ }
1119
+ if (cdktf.isComplexElement(struct)) {
1120
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1121
+ }
1122
+ return {
1123
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
1124
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
1125
+ };
1126
+ }
1127
+ export function cloudAzureIntegrationsFrontDoorToHclTerraform(struct) {
1128
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1129
+ return struct;
1130
+ }
1131
+ if (cdktf.isComplexElement(struct)) {
1132
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1133
+ }
1134
+ const attrs = {
1135
+ metrics_polling_interval: {
1136
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
1137
+ isBlock: false,
1138
+ type: "simple",
1139
+ storageClassType: "number",
1140
+ },
1141
+ resource_groups: {
1142
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
1143
+ isBlock: false,
1144
+ type: "list",
1145
+ storageClassType: "stringList",
1146
+ },
1147
+ };
1148
+ // remove undefined attributes
1149
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
1150
+ }
1151
+ export class CloudAzureIntegrationsFrontDoorOutputReference extends cdktf.ComplexObject {
1152
+ isEmptyObject = false;
1153
+ /**
1154
+ * @param terraformResource The parent resource
1155
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1156
+ */
1157
+ constructor(terraformResource, terraformAttribute) {
1158
+ super(terraformResource, terraformAttribute, false, 0);
1159
+ }
1160
+ get internalValue() {
1161
+ let hasAnyValues = this.isEmptyObject;
1162
+ const internalValueResult = {};
1163
+ if (this._metricsPollingInterval !== undefined) {
1164
+ hasAnyValues = true;
1165
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
1166
+ }
1167
+ if (this._resourceGroups !== undefined) {
1168
+ hasAnyValues = true;
1169
+ internalValueResult.resourceGroups = this._resourceGroups;
1170
+ }
1171
+ return hasAnyValues ? internalValueResult : undefined;
1172
+ }
1173
+ set internalValue(value) {
1174
+ if (value === undefined) {
1175
+ this.isEmptyObject = false;
1176
+ this._metricsPollingInterval = undefined;
1177
+ this._resourceGroups = undefined;
1178
+ }
1179
+ else {
1180
+ this.isEmptyObject = Object.keys(value).length === 0;
1181
+ this._metricsPollingInterval = value.metricsPollingInterval;
1182
+ this._resourceGroups = value.resourceGroups;
1183
+ }
1184
+ }
1185
+ // metrics_polling_interval - computed: false, optional: true, required: false
1186
+ _metricsPollingInterval;
1187
+ get metricsPollingInterval() {
1188
+ return this.getNumberAttribute('metrics_polling_interval');
1189
+ }
1190
+ set metricsPollingInterval(value) {
1191
+ this._metricsPollingInterval = value;
1192
+ }
1193
+ resetMetricsPollingInterval() {
1194
+ this._metricsPollingInterval = undefined;
1195
+ }
1196
+ // Temporarily expose input value. Use with caution.
1197
+ get metricsPollingIntervalInput() {
1198
+ return this._metricsPollingInterval;
1199
+ }
1200
+ // resource_groups - computed: false, optional: true, required: false
1201
+ _resourceGroups;
1202
+ get resourceGroups() {
1203
+ return this.getListAttribute('resource_groups');
1204
+ }
1205
+ set resourceGroups(value) {
1206
+ this._resourceGroups = value;
1207
+ }
1208
+ resetResourceGroups() {
1209
+ this._resourceGroups = undefined;
1210
+ }
1211
+ // Temporarily expose input value. Use with caution.
1212
+ get resourceGroupsInput() {
1213
+ return this._resourceGroups;
1214
+ }
1215
+ }
1216
+ export function cloudAzureIntegrationsFunctionsToTerraform(struct) {
1217
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1218
+ return struct;
1219
+ }
1220
+ if (cdktf.isComplexElement(struct)) {
1221
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1222
+ }
1223
+ return {
1224
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
1225
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
1226
+ };
1227
+ }
1228
+ export function cloudAzureIntegrationsFunctionsToHclTerraform(struct) {
1229
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1230
+ return struct;
1231
+ }
1232
+ if (cdktf.isComplexElement(struct)) {
1233
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1234
+ }
1235
+ const attrs = {
1236
+ metrics_polling_interval: {
1237
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
1238
+ isBlock: false,
1239
+ type: "simple",
1240
+ storageClassType: "number",
1241
+ },
1242
+ resource_groups: {
1243
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
1244
+ isBlock: false,
1245
+ type: "list",
1246
+ storageClassType: "stringList",
1247
+ },
1248
+ };
1249
+ // remove undefined attributes
1250
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
1251
+ }
1252
+ export class CloudAzureIntegrationsFunctionsOutputReference extends cdktf.ComplexObject {
1253
+ isEmptyObject = false;
1254
+ /**
1255
+ * @param terraformResource The parent resource
1256
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1257
+ */
1258
+ constructor(terraformResource, terraformAttribute) {
1259
+ super(terraformResource, terraformAttribute, false, 0);
1260
+ }
1261
+ get internalValue() {
1262
+ let hasAnyValues = this.isEmptyObject;
1263
+ const internalValueResult = {};
1264
+ if (this._metricsPollingInterval !== undefined) {
1265
+ hasAnyValues = true;
1266
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
1267
+ }
1268
+ if (this._resourceGroups !== undefined) {
1269
+ hasAnyValues = true;
1270
+ internalValueResult.resourceGroups = this._resourceGroups;
1271
+ }
1272
+ return hasAnyValues ? internalValueResult : undefined;
1273
+ }
1274
+ set internalValue(value) {
1275
+ if (value === undefined) {
1276
+ this.isEmptyObject = false;
1277
+ this._metricsPollingInterval = undefined;
1278
+ this._resourceGroups = undefined;
1279
+ }
1280
+ else {
1281
+ this.isEmptyObject = Object.keys(value).length === 0;
1282
+ this._metricsPollingInterval = value.metricsPollingInterval;
1283
+ this._resourceGroups = value.resourceGroups;
1284
+ }
1285
+ }
1286
+ // metrics_polling_interval - computed: false, optional: true, required: false
1287
+ _metricsPollingInterval;
1288
+ get metricsPollingInterval() {
1289
+ return this.getNumberAttribute('metrics_polling_interval');
1290
+ }
1291
+ set metricsPollingInterval(value) {
1292
+ this._metricsPollingInterval = value;
1293
+ }
1294
+ resetMetricsPollingInterval() {
1295
+ this._metricsPollingInterval = undefined;
1296
+ }
1297
+ // Temporarily expose input value. Use with caution.
1298
+ get metricsPollingIntervalInput() {
1299
+ return this._metricsPollingInterval;
1300
+ }
1301
+ // resource_groups - computed: false, optional: true, required: false
1302
+ _resourceGroups;
1303
+ get resourceGroups() {
1304
+ return this.getListAttribute('resource_groups');
1305
+ }
1306
+ set resourceGroups(value) {
1307
+ this._resourceGroups = value;
1308
+ }
1309
+ resetResourceGroups() {
1310
+ this._resourceGroups = undefined;
1311
+ }
1312
+ // Temporarily expose input value. Use with caution.
1313
+ get resourceGroupsInput() {
1314
+ return this._resourceGroups;
1315
+ }
1316
+ }
1317
+ export function cloudAzureIntegrationsKeyVaultToTerraform(struct) {
1318
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1319
+ return struct;
1320
+ }
1321
+ if (cdktf.isComplexElement(struct)) {
1322
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1323
+ }
1324
+ return {
1325
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
1326
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
1327
+ };
1328
+ }
1329
+ export function cloudAzureIntegrationsKeyVaultToHclTerraform(struct) {
1330
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1331
+ return struct;
1332
+ }
1333
+ if (cdktf.isComplexElement(struct)) {
1334
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1335
+ }
1336
+ const attrs = {
1337
+ metrics_polling_interval: {
1338
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
1339
+ isBlock: false,
1340
+ type: "simple",
1341
+ storageClassType: "number",
1342
+ },
1343
+ resource_groups: {
1344
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
1345
+ isBlock: false,
1346
+ type: "list",
1347
+ storageClassType: "stringList",
1348
+ },
1349
+ };
1350
+ // remove undefined attributes
1351
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
1352
+ }
1353
+ export class CloudAzureIntegrationsKeyVaultOutputReference extends cdktf.ComplexObject {
1354
+ isEmptyObject = false;
1355
+ /**
1356
+ * @param terraformResource The parent resource
1357
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1358
+ */
1359
+ constructor(terraformResource, terraformAttribute) {
1360
+ super(terraformResource, terraformAttribute, false, 0);
1361
+ }
1362
+ get internalValue() {
1363
+ let hasAnyValues = this.isEmptyObject;
1364
+ const internalValueResult = {};
1365
+ if (this._metricsPollingInterval !== undefined) {
1366
+ hasAnyValues = true;
1367
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
1368
+ }
1369
+ if (this._resourceGroups !== undefined) {
1370
+ hasAnyValues = true;
1371
+ internalValueResult.resourceGroups = this._resourceGroups;
1372
+ }
1373
+ return hasAnyValues ? internalValueResult : undefined;
1374
+ }
1375
+ set internalValue(value) {
1376
+ if (value === undefined) {
1377
+ this.isEmptyObject = false;
1378
+ this._metricsPollingInterval = undefined;
1379
+ this._resourceGroups = undefined;
1380
+ }
1381
+ else {
1382
+ this.isEmptyObject = Object.keys(value).length === 0;
1383
+ this._metricsPollingInterval = value.metricsPollingInterval;
1384
+ this._resourceGroups = value.resourceGroups;
1385
+ }
1386
+ }
1387
+ // metrics_polling_interval - computed: false, optional: true, required: false
1388
+ _metricsPollingInterval;
1389
+ get metricsPollingInterval() {
1390
+ return this.getNumberAttribute('metrics_polling_interval');
1391
+ }
1392
+ set metricsPollingInterval(value) {
1393
+ this._metricsPollingInterval = value;
1394
+ }
1395
+ resetMetricsPollingInterval() {
1396
+ this._metricsPollingInterval = undefined;
1397
+ }
1398
+ // Temporarily expose input value. Use with caution.
1399
+ get metricsPollingIntervalInput() {
1400
+ return this._metricsPollingInterval;
1401
+ }
1402
+ // resource_groups - computed: false, optional: true, required: false
1403
+ _resourceGroups;
1404
+ get resourceGroups() {
1405
+ return this.getListAttribute('resource_groups');
1406
+ }
1407
+ set resourceGroups(value) {
1408
+ this._resourceGroups = value;
1409
+ }
1410
+ resetResourceGroups() {
1411
+ this._resourceGroups = undefined;
1412
+ }
1413
+ // Temporarily expose input value. Use with caution.
1414
+ get resourceGroupsInput() {
1415
+ return this._resourceGroups;
1416
+ }
1417
+ }
1418
+ export function cloudAzureIntegrationsLoadBalancerToTerraform(struct) {
1419
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1420
+ return struct;
1421
+ }
1422
+ if (cdktf.isComplexElement(struct)) {
1423
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1424
+ }
1425
+ return {
1426
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
1427
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
1428
+ };
1429
+ }
1430
+ export function cloudAzureIntegrationsLoadBalancerToHclTerraform(struct) {
1431
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1432
+ return struct;
1433
+ }
1434
+ if (cdktf.isComplexElement(struct)) {
1435
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1436
+ }
1437
+ const attrs = {
1438
+ metrics_polling_interval: {
1439
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
1440
+ isBlock: false,
1441
+ type: "simple",
1442
+ storageClassType: "number",
1443
+ },
1444
+ resource_groups: {
1445
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
1446
+ isBlock: false,
1447
+ type: "list",
1448
+ storageClassType: "stringList",
1449
+ },
1450
+ };
1451
+ // remove undefined attributes
1452
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
1453
+ }
1454
+ export class CloudAzureIntegrationsLoadBalancerOutputReference extends cdktf.ComplexObject {
1455
+ isEmptyObject = false;
1456
+ /**
1457
+ * @param terraformResource The parent resource
1458
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1459
+ */
1460
+ constructor(terraformResource, terraformAttribute) {
1461
+ super(terraformResource, terraformAttribute, false, 0);
1462
+ }
1463
+ get internalValue() {
1464
+ let hasAnyValues = this.isEmptyObject;
1465
+ const internalValueResult = {};
1466
+ if (this._metricsPollingInterval !== undefined) {
1467
+ hasAnyValues = true;
1468
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
1469
+ }
1470
+ if (this._resourceGroups !== undefined) {
1471
+ hasAnyValues = true;
1472
+ internalValueResult.resourceGroups = this._resourceGroups;
1473
+ }
1474
+ return hasAnyValues ? internalValueResult : undefined;
1475
+ }
1476
+ set internalValue(value) {
1477
+ if (value === undefined) {
1478
+ this.isEmptyObject = false;
1479
+ this._metricsPollingInterval = undefined;
1480
+ this._resourceGroups = undefined;
1481
+ }
1482
+ else {
1483
+ this.isEmptyObject = Object.keys(value).length === 0;
1484
+ this._metricsPollingInterval = value.metricsPollingInterval;
1485
+ this._resourceGroups = value.resourceGroups;
1486
+ }
1487
+ }
1488
+ // metrics_polling_interval - computed: false, optional: true, required: false
1489
+ _metricsPollingInterval;
1490
+ get metricsPollingInterval() {
1491
+ return this.getNumberAttribute('metrics_polling_interval');
1492
+ }
1493
+ set metricsPollingInterval(value) {
1494
+ this._metricsPollingInterval = value;
1495
+ }
1496
+ resetMetricsPollingInterval() {
1497
+ this._metricsPollingInterval = undefined;
1498
+ }
1499
+ // Temporarily expose input value. Use with caution.
1500
+ get metricsPollingIntervalInput() {
1501
+ return this._metricsPollingInterval;
1502
+ }
1503
+ // resource_groups - computed: false, optional: true, required: false
1504
+ _resourceGroups;
1505
+ get resourceGroups() {
1506
+ return this.getListAttribute('resource_groups');
1507
+ }
1508
+ set resourceGroups(value) {
1509
+ this._resourceGroups = value;
1510
+ }
1511
+ resetResourceGroups() {
1512
+ this._resourceGroups = undefined;
1513
+ }
1514
+ // Temporarily expose input value. Use with caution.
1515
+ get resourceGroupsInput() {
1516
+ return this._resourceGroups;
1517
+ }
1518
+ }
1519
+ export function cloudAzureIntegrationsLogicAppsToTerraform(struct) {
1520
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1521
+ return struct;
1522
+ }
1523
+ if (cdktf.isComplexElement(struct)) {
1524
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1525
+ }
1526
+ return {
1527
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
1528
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
1529
+ };
1530
+ }
1531
+ export function cloudAzureIntegrationsLogicAppsToHclTerraform(struct) {
1532
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1533
+ return struct;
1534
+ }
1535
+ if (cdktf.isComplexElement(struct)) {
1536
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1537
+ }
1538
+ const attrs = {
1539
+ metrics_polling_interval: {
1540
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
1541
+ isBlock: false,
1542
+ type: "simple",
1543
+ storageClassType: "number",
1544
+ },
1545
+ resource_groups: {
1546
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
1547
+ isBlock: false,
1548
+ type: "list",
1549
+ storageClassType: "stringList",
1550
+ },
1551
+ };
1552
+ // remove undefined attributes
1553
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
1554
+ }
1555
+ export class CloudAzureIntegrationsLogicAppsOutputReference extends cdktf.ComplexObject {
1556
+ isEmptyObject = false;
1557
+ /**
1558
+ * @param terraformResource The parent resource
1559
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1560
+ */
1561
+ constructor(terraformResource, terraformAttribute) {
1562
+ super(terraformResource, terraformAttribute, false, 0);
1563
+ }
1564
+ get internalValue() {
1565
+ let hasAnyValues = this.isEmptyObject;
1566
+ const internalValueResult = {};
1567
+ if (this._metricsPollingInterval !== undefined) {
1568
+ hasAnyValues = true;
1569
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
1570
+ }
1571
+ if (this._resourceGroups !== undefined) {
1572
+ hasAnyValues = true;
1573
+ internalValueResult.resourceGroups = this._resourceGroups;
1574
+ }
1575
+ return hasAnyValues ? internalValueResult : undefined;
1576
+ }
1577
+ set internalValue(value) {
1578
+ if (value === undefined) {
1579
+ this.isEmptyObject = false;
1580
+ this._metricsPollingInterval = undefined;
1581
+ this._resourceGroups = undefined;
1582
+ }
1583
+ else {
1584
+ this.isEmptyObject = Object.keys(value).length === 0;
1585
+ this._metricsPollingInterval = value.metricsPollingInterval;
1586
+ this._resourceGroups = value.resourceGroups;
1587
+ }
1588
+ }
1589
+ // metrics_polling_interval - computed: false, optional: true, required: false
1590
+ _metricsPollingInterval;
1591
+ get metricsPollingInterval() {
1592
+ return this.getNumberAttribute('metrics_polling_interval');
1593
+ }
1594
+ set metricsPollingInterval(value) {
1595
+ this._metricsPollingInterval = value;
1596
+ }
1597
+ resetMetricsPollingInterval() {
1598
+ this._metricsPollingInterval = undefined;
1599
+ }
1600
+ // Temporarily expose input value. Use with caution.
1601
+ get metricsPollingIntervalInput() {
1602
+ return this._metricsPollingInterval;
1603
+ }
1604
+ // resource_groups - computed: false, optional: true, required: false
1605
+ _resourceGroups;
1606
+ get resourceGroups() {
1607
+ return this.getListAttribute('resource_groups');
1608
+ }
1609
+ set resourceGroups(value) {
1610
+ this._resourceGroups = value;
1611
+ }
1612
+ resetResourceGroups() {
1613
+ this._resourceGroups = undefined;
1614
+ }
1615
+ // Temporarily expose input value. Use with caution.
1616
+ get resourceGroupsInput() {
1617
+ return this._resourceGroups;
1618
+ }
1619
+ }
1620
+ export function cloudAzureIntegrationsMachineLearningToTerraform(struct) {
1621
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1622
+ return struct;
1623
+ }
1624
+ if (cdktf.isComplexElement(struct)) {
1625
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1626
+ }
1627
+ return {
1628
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
1629
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
1630
+ };
1631
+ }
1632
+ export function cloudAzureIntegrationsMachineLearningToHclTerraform(struct) {
1633
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1634
+ return struct;
1635
+ }
1636
+ if (cdktf.isComplexElement(struct)) {
1637
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1638
+ }
1639
+ const attrs = {
1640
+ metrics_polling_interval: {
1641
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
1642
+ isBlock: false,
1643
+ type: "simple",
1644
+ storageClassType: "number",
1645
+ },
1646
+ resource_groups: {
1647
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
1648
+ isBlock: false,
1649
+ type: "list",
1650
+ storageClassType: "stringList",
1651
+ },
1652
+ };
1653
+ // remove undefined attributes
1654
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
1655
+ }
1656
+ export class CloudAzureIntegrationsMachineLearningOutputReference extends cdktf.ComplexObject {
1657
+ isEmptyObject = false;
1658
+ /**
1659
+ * @param terraformResource The parent resource
1660
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1661
+ */
1662
+ constructor(terraformResource, terraformAttribute) {
1663
+ super(terraformResource, terraformAttribute, false, 0);
1664
+ }
1665
+ get internalValue() {
1666
+ let hasAnyValues = this.isEmptyObject;
1667
+ const internalValueResult = {};
1668
+ if (this._metricsPollingInterval !== undefined) {
1669
+ hasAnyValues = true;
1670
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
1671
+ }
1672
+ if (this._resourceGroups !== undefined) {
1673
+ hasAnyValues = true;
1674
+ internalValueResult.resourceGroups = this._resourceGroups;
1675
+ }
1676
+ return hasAnyValues ? internalValueResult : undefined;
1677
+ }
1678
+ set internalValue(value) {
1679
+ if (value === undefined) {
1680
+ this.isEmptyObject = false;
1681
+ this._metricsPollingInterval = undefined;
1682
+ this._resourceGroups = undefined;
1683
+ }
1684
+ else {
1685
+ this.isEmptyObject = Object.keys(value).length === 0;
1686
+ this._metricsPollingInterval = value.metricsPollingInterval;
1687
+ this._resourceGroups = value.resourceGroups;
1688
+ }
1689
+ }
1690
+ // metrics_polling_interval - computed: false, optional: true, required: false
1691
+ _metricsPollingInterval;
1692
+ get metricsPollingInterval() {
1693
+ return this.getNumberAttribute('metrics_polling_interval');
1694
+ }
1695
+ set metricsPollingInterval(value) {
1696
+ this._metricsPollingInterval = value;
1697
+ }
1698
+ resetMetricsPollingInterval() {
1699
+ this._metricsPollingInterval = undefined;
1700
+ }
1701
+ // Temporarily expose input value. Use with caution.
1702
+ get metricsPollingIntervalInput() {
1703
+ return this._metricsPollingInterval;
1704
+ }
1705
+ // resource_groups - computed: false, optional: true, required: false
1706
+ _resourceGroups;
1707
+ get resourceGroups() {
1708
+ return this.getListAttribute('resource_groups');
1709
+ }
1710
+ set resourceGroups(value) {
1711
+ this._resourceGroups = value;
1712
+ }
1713
+ resetResourceGroups() {
1714
+ this._resourceGroups = undefined;
1715
+ }
1716
+ // Temporarily expose input value. Use with caution.
1717
+ get resourceGroupsInput() {
1718
+ return this._resourceGroups;
1719
+ }
1720
+ }
1721
+ export function cloudAzureIntegrationsMariaDbToTerraform(struct) {
1722
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1723
+ return struct;
1724
+ }
1725
+ if (cdktf.isComplexElement(struct)) {
1726
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1727
+ }
1728
+ return {
1729
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
1730
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
1731
+ };
1732
+ }
1733
+ export function cloudAzureIntegrationsMariaDbToHclTerraform(struct) {
1734
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1735
+ return struct;
1736
+ }
1737
+ if (cdktf.isComplexElement(struct)) {
1738
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1739
+ }
1740
+ const attrs = {
1741
+ metrics_polling_interval: {
1742
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
1743
+ isBlock: false,
1744
+ type: "simple",
1745
+ storageClassType: "number",
1746
+ },
1747
+ resource_groups: {
1748
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
1749
+ isBlock: false,
1750
+ type: "list",
1751
+ storageClassType: "stringList",
1752
+ },
1753
+ };
1754
+ // remove undefined attributes
1755
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
1756
+ }
1757
+ export class CloudAzureIntegrationsMariaDbOutputReference extends cdktf.ComplexObject {
1758
+ isEmptyObject = false;
1759
+ /**
1760
+ * @param terraformResource The parent resource
1761
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1762
+ */
1763
+ constructor(terraformResource, terraformAttribute) {
1764
+ super(terraformResource, terraformAttribute, false, 0);
1765
+ }
1766
+ get internalValue() {
1767
+ let hasAnyValues = this.isEmptyObject;
1768
+ const internalValueResult = {};
1769
+ if (this._metricsPollingInterval !== undefined) {
1770
+ hasAnyValues = true;
1771
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
1772
+ }
1773
+ if (this._resourceGroups !== undefined) {
1774
+ hasAnyValues = true;
1775
+ internalValueResult.resourceGroups = this._resourceGroups;
1776
+ }
1777
+ return hasAnyValues ? internalValueResult : undefined;
1778
+ }
1779
+ set internalValue(value) {
1780
+ if (value === undefined) {
1781
+ this.isEmptyObject = false;
1782
+ this._metricsPollingInterval = undefined;
1783
+ this._resourceGroups = undefined;
1784
+ }
1785
+ else {
1786
+ this.isEmptyObject = Object.keys(value).length === 0;
1787
+ this._metricsPollingInterval = value.metricsPollingInterval;
1788
+ this._resourceGroups = value.resourceGroups;
1789
+ }
1790
+ }
1791
+ // metrics_polling_interval - computed: false, optional: true, required: false
1792
+ _metricsPollingInterval;
1793
+ get metricsPollingInterval() {
1794
+ return this.getNumberAttribute('metrics_polling_interval');
1795
+ }
1796
+ set metricsPollingInterval(value) {
1797
+ this._metricsPollingInterval = value;
1798
+ }
1799
+ resetMetricsPollingInterval() {
1800
+ this._metricsPollingInterval = undefined;
1801
+ }
1802
+ // Temporarily expose input value. Use with caution.
1803
+ get metricsPollingIntervalInput() {
1804
+ return this._metricsPollingInterval;
1805
+ }
1806
+ // resource_groups - computed: false, optional: true, required: false
1807
+ _resourceGroups;
1808
+ get resourceGroups() {
1809
+ return this.getListAttribute('resource_groups');
1810
+ }
1811
+ set resourceGroups(value) {
1812
+ this._resourceGroups = value;
1813
+ }
1814
+ resetResourceGroups() {
1815
+ this._resourceGroups = undefined;
1816
+ }
1817
+ // Temporarily expose input value. Use with caution.
1818
+ get resourceGroupsInput() {
1819
+ return this._resourceGroups;
1820
+ }
1821
+ }
1822
+ export function cloudAzureIntegrationsMonitorToTerraform(struct) {
1823
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1824
+ return struct;
1825
+ }
1826
+ if (cdktf.isComplexElement(struct)) {
1827
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1828
+ }
1829
+ return {
1830
+ enabled: cdktf.booleanToTerraform(struct.enabled),
1831
+ exclude_tags: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.excludeTags),
1832
+ include_tags: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.includeTags),
1833
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
1834
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
1835
+ resource_types: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceTypes),
1836
+ };
1837
+ }
1838
+ export function cloudAzureIntegrationsMonitorToHclTerraform(struct) {
1839
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1840
+ return struct;
1841
+ }
1842
+ if (cdktf.isComplexElement(struct)) {
1843
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1844
+ }
1845
+ const attrs = {
1846
+ enabled: {
1847
+ value: cdktf.booleanToHclTerraform(struct.enabled),
1848
+ isBlock: false,
1849
+ type: "simple",
1850
+ storageClassType: "boolean",
1851
+ },
1852
+ exclude_tags: {
1853
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.excludeTags),
1854
+ isBlock: false,
1855
+ type: "list",
1856
+ storageClassType: "stringList",
1857
+ },
1858
+ include_tags: {
1859
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.includeTags),
1860
+ isBlock: false,
1861
+ type: "list",
1862
+ storageClassType: "stringList",
1863
+ },
1864
+ metrics_polling_interval: {
1865
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
1866
+ isBlock: false,
1867
+ type: "simple",
1868
+ storageClassType: "number",
1869
+ },
1870
+ resource_groups: {
1871
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
1872
+ isBlock: false,
1873
+ type: "list",
1874
+ storageClassType: "stringList",
1875
+ },
1876
+ resource_types: {
1877
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceTypes),
1878
+ isBlock: false,
1879
+ type: "list",
1880
+ storageClassType: "stringList",
1881
+ },
1882
+ };
1883
+ // remove undefined attributes
1884
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
1885
+ }
1886
+ export class CloudAzureIntegrationsMonitorOutputReference extends cdktf.ComplexObject {
1887
+ isEmptyObject = false;
1888
+ /**
1889
+ * @param terraformResource The parent resource
1890
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1891
+ */
1892
+ constructor(terraformResource, terraformAttribute) {
1893
+ super(terraformResource, terraformAttribute, false, 0);
1894
+ }
1895
+ get internalValue() {
1896
+ let hasAnyValues = this.isEmptyObject;
1897
+ const internalValueResult = {};
1898
+ if (this._enabled !== undefined) {
1899
+ hasAnyValues = true;
1900
+ internalValueResult.enabled = this._enabled;
1901
+ }
1902
+ if (this._excludeTags !== undefined) {
1903
+ hasAnyValues = true;
1904
+ internalValueResult.excludeTags = this._excludeTags;
1905
+ }
1906
+ if (this._includeTags !== undefined) {
1907
+ hasAnyValues = true;
1908
+ internalValueResult.includeTags = this._includeTags;
1909
+ }
1910
+ if (this._metricsPollingInterval !== undefined) {
1911
+ hasAnyValues = true;
1912
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
1913
+ }
1914
+ if (this._resourceGroups !== undefined) {
1915
+ hasAnyValues = true;
1916
+ internalValueResult.resourceGroups = this._resourceGroups;
1917
+ }
1918
+ if (this._resourceTypes !== undefined) {
1919
+ hasAnyValues = true;
1920
+ internalValueResult.resourceTypes = this._resourceTypes;
1921
+ }
1922
+ return hasAnyValues ? internalValueResult : undefined;
1923
+ }
1924
+ set internalValue(value) {
1925
+ if (value === undefined) {
1926
+ this.isEmptyObject = false;
1927
+ this._enabled = undefined;
1928
+ this._excludeTags = undefined;
1929
+ this._includeTags = undefined;
1930
+ this._metricsPollingInterval = undefined;
1931
+ this._resourceGroups = undefined;
1932
+ this._resourceTypes = undefined;
1933
+ }
1934
+ else {
1935
+ this.isEmptyObject = Object.keys(value).length === 0;
1936
+ this._enabled = value.enabled;
1937
+ this._excludeTags = value.excludeTags;
1938
+ this._includeTags = value.includeTags;
1939
+ this._metricsPollingInterval = value.metricsPollingInterval;
1940
+ this._resourceGroups = value.resourceGroups;
1941
+ this._resourceTypes = value.resourceTypes;
1942
+ }
1943
+ }
1944
+ // enabled - computed: false, optional: true, required: false
1945
+ _enabled;
1946
+ get enabled() {
1947
+ return this.getBooleanAttribute('enabled');
1948
+ }
1949
+ set enabled(value) {
1950
+ this._enabled = value;
1951
+ }
1952
+ resetEnabled() {
1953
+ this._enabled = undefined;
1954
+ }
1955
+ // Temporarily expose input value. Use with caution.
1956
+ get enabledInput() {
1957
+ return this._enabled;
1958
+ }
1959
+ // exclude_tags - computed: false, optional: true, required: false
1960
+ _excludeTags;
1961
+ get excludeTags() {
1962
+ return this.getListAttribute('exclude_tags');
1963
+ }
1964
+ set excludeTags(value) {
1965
+ this._excludeTags = value;
1966
+ }
1967
+ resetExcludeTags() {
1968
+ this._excludeTags = undefined;
1969
+ }
1970
+ // Temporarily expose input value. Use with caution.
1971
+ get excludeTagsInput() {
1972
+ return this._excludeTags;
1973
+ }
1974
+ // include_tags - computed: false, optional: true, required: false
1975
+ _includeTags;
1976
+ get includeTags() {
1977
+ return this.getListAttribute('include_tags');
1978
+ }
1979
+ set includeTags(value) {
1980
+ this._includeTags = value;
1981
+ }
1982
+ resetIncludeTags() {
1983
+ this._includeTags = undefined;
1984
+ }
1985
+ // Temporarily expose input value. Use with caution.
1986
+ get includeTagsInput() {
1987
+ return this._includeTags;
1988
+ }
1989
+ // metrics_polling_interval - computed: false, optional: true, required: false
1990
+ _metricsPollingInterval;
1991
+ get metricsPollingInterval() {
1992
+ return this.getNumberAttribute('metrics_polling_interval');
1993
+ }
1994
+ set metricsPollingInterval(value) {
1995
+ this._metricsPollingInterval = value;
1996
+ }
1997
+ resetMetricsPollingInterval() {
1998
+ this._metricsPollingInterval = undefined;
1999
+ }
2000
+ // Temporarily expose input value. Use with caution.
2001
+ get metricsPollingIntervalInput() {
2002
+ return this._metricsPollingInterval;
2003
+ }
2004
+ // resource_groups - computed: false, optional: true, required: false
2005
+ _resourceGroups;
2006
+ get resourceGroups() {
2007
+ return this.getListAttribute('resource_groups');
2008
+ }
2009
+ set resourceGroups(value) {
2010
+ this._resourceGroups = value;
2011
+ }
2012
+ resetResourceGroups() {
2013
+ this._resourceGroups = undefined;
2014
+ }
2015
+ // Temporarily expose input value. Use with caution.
2016
+ get resourceGroupsInput() {
2017
+ return this._resourceGroups;
2018
+ }
2019
+ // resource_types - computed: false, optional: true, required: false
2020
+ _resourceTypes;
2021
+ get resourceTypes() {
2022
+ return this.getListAttribute('resource_types');
2023
+ }
2024
+ set resourceTypes(value) {
2025
+ this._resourceTypes = value;
2026
+ }
2027
+ resetResourceTypes() {
2028
+ this._resourceTypes = undefined;
2029
+ }
2030
+ // Temporarily expose input value. Use with caution.
2031
+ get resourceTypesInput() {
2032
+ return this._resourceTypes;
2033
+ }
2034
+ }
2035
+ export function cloudAzureIntegrationsMysqlToTerraform(struct) {
2036
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2037
+ return struct;
2038
+ }
2039
+ if (cdktf.isComplexElement(struct)) {
2040
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2041
+ }
2042
+ return {
2043
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
2044
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
2045
+ };
2046
+ }
2047
+ export function cloudAzureIntegrationsMysqlToHclTerraform(struct) {
2048
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2049
+ return struct;
2050
+ }
2051
+ if (cdktf.isComplexElement(struct)) {
2052
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2053
+ }
2054
+ const attrs = {
2055
+ metrics_polling_interval: {
2056
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
2057
+ isBlock: false,
2058
+ type: "simple",
2059
+ storageClassType: "number",
2060
+ },
2061
+ resource_groups: {
2062
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
2063
+ isBlock: false,
2064
+ type: "list",
2065
+ storageClassType: "stringList",
2066
+ },
2067
+ };
2068
+ // remove undefined attributes
2069
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
2070
+ }
2071
+ export class CloudAzureIntegrationsMysqlOutputReference extends cdktf.ComplexObject {
2072
+ isEmptyObject = false;
2073
+ /**
2074
+ * @param terraformResource The parent resource
2075
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
2076
+ */
2077
+ constructor(terraformResource, terraformAttribute) {
2078
+ super(terraformResource, terraformAttribute, false, 0);
2079
+ }
2080
+ get internalValue() {
2081
+ let hasAnyValues = this.isEmptyObject;
2082
+ const internalValueResult = {};
2083
+ if (this._metricsPollingInterval !== undefined) {
2084
+ hasAnyValues = true;
2085
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
2086
+ }
2087
+ if (this._resourceGroups !== undefined) {
2088
+ hasAnyValues = true;
2089
+ internalValueResult.resourceGroups = this._resourceGroups;
2090
+ }
2091
+ return hasAnyValues ? internalValueResult : undefined;
2092
+ }
2093
+ set internalValue(value) {
2094
+ if (value === undefined) {
2095
+ this.isEmptyObject = false;
2096
+ this._metricsPollingInterval = undefined;
2097
+ this._resourceGroups = undefined;
2098
+ }
2099
+ else {
2100
+ this.isEmptyObject = Object.keys(value).length === 0;
2101
+ this._metricsPollingInterval = value.metricsPollingInterval;
2102
+ this._resourceGroups = value.resourceGroups;
2103
+ }
2104
+ }
2105
+ // metrics_polling_interval - computed: false, optional: true, required: false
2106
+ _metricsPollingInterval;
2107
+ get metricsPollingInterval() {
2108
+ return this.getNumberAttribute('metrics_polling_interval');
2109
+ }
2110
+ set metricsPollingInterval(value) {
2111
+ this._metricsPollingInterval = value;
2112
+ }
2113
+ resetMetricsPollingInterval() {
2114
+ this._metricsPollingInterval = undefined;
2115
+ }
2116
+ // Temporarily expose input value. Use with caution.
2117
+ get metricsPollingIntervalInput() {
2118
+ return this._metricsPollingInterval;
2119
+ }
2120
+ // resource_groups - computed: false, optional: true, required: false
2121
+ _resourceGroups;
2122
+ get resourceGroups() {
2123
+ return this.getListAttribute('resource_groups');
2124
+ }
2125
+ set resourceGroups(value) {
2126
+ this._resourceGroups = value;
2127
+ }
2128
+ resetResourceGroups() {
2129
+ this._resourceGroups = undefined;
2130
+ }
2131
+ // Temporarily expose input value. Use with caution.
2132
+ get resourceGroupsInput() {
2133
+ return this._resourceGroups;
2134
+ }
2135
+ }
2136
+ export function cloudAzureIntegrationsMysqlFlexibleToTerraform(struct) {
2137
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2138
+ return struct;
2139
+ }
2140
+ if (cdktf.isComplexElement(struct)) {
2141
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2142
+ }
2143
+ return {
2144
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
2145
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
2146
+ };
2147
+ }
2148
+ export function cloudAzureIntegrationsMysqlFlexibleToHclTerraform(struct) {
2149
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2150
+ return struct;
2151
+ }
2152
+ if (cdktf.isComplexElement(struct)) {
2153
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2154
+ }
2155
+ const attrs = {
2156
+ metrics_polling_interval: {
2157
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
2158
+ isBlock: false,
2159
+ type: "simple",
2160
+ storageClassType: "number",
2161
+ },
2162
+ resource_groups: {
2163
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
2164
+ isBlock: false,
2165
+ type: "list",
2166
+ storageClassType: "stringList",
2167
+ },
2168
+ };
2169
+ // remove undefined attributes
2170
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
2171
+ }
2172
+ export class CloudAzureIntegrationsMysqlFlexibleOutputReference extends cdktf.ComplexObject {
2173
+ isEmptyObject = false;
2174
+ /**
2175
+ * @param terraformResource The parent resource
2176
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
2177
+ */
2178
+ constructor(terraformResource, terraformAttribute) {
2179
+ super(terraformResource, terraformAttribute, false, 0);
2180
+ }
2181
+ get internalValue() {
2182
+ let hasAnyValues = this.isEmptyObject;
2183
+ const internalValueResult = {};
2184
+ if (this._metricsPollingInterval !== undefined) {
2185
+ hasAnyValues = true;
2186
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
2187
+ }
2188
+ if (this._resourceGroups !== undefined) {
2189
+ hasAnyValues = true;
2190
+ internalValueResult.resourceGroups = this._resourceGroups;
2191
+ }
2192
+ return hasAnyValues ? internalValueResult : undefined;
2193
+ }
2194
+ set internalValue(value) {
2195
+ if (value === undefined) {
2196
+ this.isEmptyObject = false;
2197
+ this._metricsPollingInterval = undefined;
2198
+ this._resourceGroups = undefined;
2199
+ }
2200
+ else {
2201
+ this.isEmptyObject = Object.keys(value).length === 0;
2202
+ this._metricsPollingInterval = value.metricsPollingInterval;
2203
+ this._resourceGroups = value.resourceGroups;
2204
+ }
2205
+ }
2206
+ // metrics_polling_interval - computed: false, optional: true, required: false
2207
+ _metricsPollingInterval;
2208
+ get metricsPollingInterval() {
2209
+ return this.getNumberAttribute('metrics_polling_interval');
2210
+ }
2211
+ set metricsPollingInterval(value) {
2212
+ this._metricsPollingInterval = value;
2213
+ }
2214
+ resetMetricsPollingInterval() {
2215
+ this._metricsPollingInterval = undefined;
2216
+ }
2217
+ // Temporarily expose input value. Use with caution.
2218
+ get metricsPollingIntervalInput() {
2219
+ return this._metricsPollingInterval;
2220
+ }
2221
+ // resource_groups - computed: false, optional: true, required: false
2222
+ _resourceGroups;
2223
+ get resourceGroups() {
2224
+ return this.getListAttribute('resource_groups');
2225
+ }
2226
+ set resourceGroups(value) {
2227
+ this._resourceGroups = value;
2228
+ }
2229
+ resetResourceGroups() {
2230
+ this._resourceGroups = undefined;
2231
+ }
2232
+ // Temporarily expose input value. Use with caution.
2233
+ get resourceGroupsInput() {
2234
+ return this._resourceGroups;
2235
+ }
2236
+ }
2237
+ export function cloudAzureIntegrationsPostgresqlToTerraform(struct) {
2238
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2239
+ return struct;
2240
+ }
2241
+ if (cdktf.isComplexElement(struct)) {
2242
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2243
+ }
2244
+ return {
2245
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
2246
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
2247
+ };
2248
+ }
2249
+ export function cloudAzureIntegrationsPostgresqlToHclTerraform(struct) {
2250
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2251
+ return struct;
2252
+ }
2253
+ if (cdktf.isComplexElement(struct)) {
2254
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2255
+ }
2256
+ const attrs = {
2257
+ metrics_polling_interval: {
2258
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
2259
+ isBlock: false,
2260
+ type: "simple",
2261
+ storageClassType: "number",
2262
+ },
2263
+ resource_groups: {
2264
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
2265
+ isBlock: false,
2266
+ type: "list",
2267
+ storageClassType: "stringList",
2268
+ },
2269
+ };
2270
+ // remove undefined attributes
2271
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
2272
+ }
2273
+ export class CloudAzureIntegrationsPostgresqlOutputReference extends cdktf.ComplexObject {
2274
+ isEmptyObject = false;
2275
+ /**
2276
+ * @param terraformResource The parent resource
2277
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
2278
+ */
2279
+ constructor(terraformResource, terraformAttribute) {
2280
+ super(terraformResource, terraformAttribute, false, 0);
2281
+ }
2282
+ get internalValue() {
2283
+ let hasAnyValues = this.isEmptyObject;
2284
+ const internalValueResult = {};
2285
+ if (this._metricsPollingInterval !== undefined) {
2286
+ hasAnyValues = true;
2287
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
2288
+ }
2289
+ if (this._resourceGroups !== undefined) {
2290
+ hasAnyValues = true;
2291
+ internalValueResult.resourceGroups = this._resourceGroups;
2292
+ }
2293
+ return hasAnyValues ? internalValueResult : undefined;
2294
+ }
2295
+ set internalValue(value) {
2296
+ if (value === undefined) {
2297
+ this.isEmptyObject = false;
2298
+ this._metricsPollingInterval = undefined;
2299
+ this._resourceGroups = undefined;
2300
+ }
2301
+ else {
2302
+ this.isEmptyObject = Object.keys(value).length === 0;
2303
+ this._metricsPollingInterval = value.metricsPollingInterval;
2304
+ this._resourceGroups = value.resourceGroups;
2305
+ }
2306
+ }
2307
+ // metrics_polling_interval - computed: false, optional: true, required: false
2308
+ _metricsPollingInterval;
2309
+ get metricsPollingInterval() {
2310
+ return this.getNumberAttribute('metrics_polling_interval');
2311
+ }
2312
+ set metricsPollingInterval(value) {
2313
+ this._metricsPollingInterval = value;
2314
+ }
2315
+ resetMetricsPollingInterval() {
2316
+ this._metricsPollingInterval = undefined;
2317
+ }
2318
+ // Temporarily expose input value. Use with caution.
2319
+ get metricsPollingIntervalInput() {
2320
+ return this._metricsPollingInterval;
2321
+ }
2322
+ // resource_groups - computed: false, optional: true, required: false
2323
+ _resourceGroups;
2324
+ get resourceGroups() {
2325
+ return this.getListAttribute('resource_groups');
2326
+ }
2327
+ set resourceGroups(value) {
2328
+ this._resourceGroups = value;
2329
+ }
2330
+ resetResourceGroups() {
2331
+ this._resourceGroups = undefined;
2332
+ }
2333
+ // Temporarily expose input value. Use with caution.
2334
+ get resourceGroupsInput() {
2335
+ return this._resourceGroups;
2336
+ }
2337
+ }
2338
+ export function cloudAzureIntegrationsPostgresqlFlexibleToTerraform(struct) {
2339
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2340
+ return struct;
2341
+ }
2342
+ if (cdktf.isComplexElement(struct)) {
2343
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2344
+ }
2345
+ return {
2346
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
2347
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
2348
+ };
2349
+ }
2350
+ export function cloudAzureIntegrationsPostgresqlFlexibleToHclTerraform(struct) {
2351
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2352
+ return struct;
2353
+ }
2354
+ if (cdktf.isComplexElement(struct)) {
2355
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2356
+ }
2357
+ const attrs = {
2358
+ metrics_polling_interval: {
2359
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
2360
+ isBlock: false,
2361
+ type: "simple",
2362
+ storageClassType: "number",
2363
+ },
2364
+ resource_groups: {
2365
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
2366
+ isBlock: false,
2367
+ type: "list",
2368
+ storageClassType: "stringList",
2369
+ },
2370
+ };
2371
+ // remove undefined attributes
2372
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
2373
+ }
2374
+ export class CloudAzureIntegrationsPostgresqlFlexibleOutputReference extends cdktf.ComplexObject {
2375
+ isEmptyObject = false;
2376
+ /**
2377
+ * @param terraformResource The parent resource
2378
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
2379
+ */
2380
+ constructor(terraformResource, terraformAttribute) {
2381
+ super(terraformResource, terraformAttribute, false, 0);
2382
+ }
2383
+ get internalValue() {
2384
+ let hasAnyValues = this.isEmptyObject;
2385
+ const internalValueResult = {};
2386
+ if (this._metricsPollingInterval !== undefined) {
2387
+ hasAnyValues = true;
2388
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
2389
+ }
2390
+ if (this._resourceGroups !== undefined) {
2391
+ hasAnyValues = true;
2392
+ internalValueResult.resourceGroups = this._resourceGroups;
2393
+ }
2394
+ return hasAnyValues ? internalValueResult : undefined;
2395
+ }
2396
+ set internalValue(value) {
2397
+ if (value === undefined) {
2398
+ this.isEmptyObject = false;
2399
+ this._metricsPollingInterval = undefined;
2400
+ this._resourceGroups = undefined;
2401
+ }
2402
+ else {
2403
+ this.isEmptyObject = Object.keys(value).length === 0;
2404
+ this._metricsPollingInterval = value.metricsPollingInterval;
2405
+ this._resourceGroups = value.resourceGroups;
2406
+ }
2407
+ }
2408
+ // metrics_polling_interval - computed: false, optional: true, required: false
2409
+ _metricsPollingInterval;
2410
+ get metricsPollingInterval() {
2411
+ return this.getNumberAttribute('metrics_polling_interval');
2412
+ }
2413
+ set metricsPollingInterval(value) {
2414
+ this._metricsPollingInterval = value;
2415
+ }
2416
+ resetMetricsPollingInterval() {
2417
+ this._metricsPollingInterval = undefined;
2418
+ }
2419
+ // Temporarily expose input value. Use with caution.
2420
+ get metricsPollingIntervalInput() {
2421
+ return this._metricsPollingInterval;
2422
+ }
2423
+ // resource_groups - computed: false, optional: true, required: false
2424
+ _resourceGroups;
2425
+ get resourceGroups() {
2426
+ return this.getListAttribute('resource_groups');
2427
+ }
2428
+ set resourceGroups(value) {
2429
+ this._resourceGroups = value;
2430
+ }
2431
+ resetResourceGroups() {
2432
+ this._resourceGroups = undefined;
2433
+ }
2434
+ // Temporarily expose input value. Use with caution.
2435
+ get resourceGroupsInput() {
2436
+ return this._resourceGroups;
2437
+ }
2438
+ }
2439
+ export function cloudAzureIntegrationsPowerBiDedicatedToTerraform(struct) {
2440
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2441
+ return struct;
2442
+ }
2443
+ if (cdktf.isComplexElement(struct)) {
2444
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2445
+ }
2446
+ return {
2447
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
2448
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
2449
+ };
2450
+ }
2451
+ export function cloudAzureIntegrationsPowerBiDedicatedToHclTerraform(struct) {
2452
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2453
+ return struct;
2454
+ }
2455
+ if (cdktf.isComplexElement(struct)) {
2456
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2457
+ }
2458
+ const attrs = {
2459
+ metrics_polling_interval: {
2460
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
2461
+ isBlock: false,
2462
+ type: "simple",
2463
+ storageClassType: "number",
2464
+ },
2465
+ resource_groups: {
2466
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
2467
+ isBlock: false,
2468
+ type: "list",
2469
+ storageClassType: "stringList",
2470
+ },
2471
+ };
2472
+ // remove undefined attributes
2473
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
2474
+ }
2475
+ export class CloudAzureIntegrationsPowerBiDedicatedOutputReference extends cdktf.ComplexObject {
2476
+ isEmptyObject = false;
2477
+ /**
2478
+ * @param terraformResource The parent resource
2479
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
2480
+ */
2481
+ constructor(terraformResource, terraformAttribute) {
2482
+ super(terraformResource, terraformAttribute, false, 0);
2483
+ }
2484
+ get internalValue() {
2485
+ let hasAnyValues = this.isEmptyObject;
2486
+ const internalValueResult = {};
2487
+ if (this._metricsPollingInterval !== undefined) {
2488
+ hasAnyValues = true;
2489
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
2490
+ }
2491
+ if (this._resourceGroups !== undefined) {
2492
+ hasAnyValues = true;
2493
+ internalValueResult.resourceGroups = this._resourceGroups;
2494
+ }
2495
+ return hasAnyValues ? internalValueResult : undefined;
2496
+ }
2497
+ set internalValue(value) {
2498
+ if (value === undefined) {
2499
+ this.isEmptyObject = false;
2500
+ this._metricsPollingInterval = undefined;
2501
+ this._resourceGroups = undefined;
2502
+ }
2503
+ else {
2504
+ this.isEmptyObject = Object.keys(value).length === 0;
2505
+ this._metricsPollingInterval = value.metricsPollingInterval;
2506
+ this._resourceGroups = value.resourceGroups;
2507
+ }
2508
+ }
2509
+ // metrics_polling_interval - computed: false, optional: true, required: false
2510
+ _metricsPollingInterval;
2511
+ get metricsPollingInterval() {
2512
+ return this.getNumberAttribute('metrics_polling_interval');
2513
+ }
2514
+ set metricsPollingInterval(value) {
2515
+ this._metricsPollingInterval = value;
2516
+ }
2517
+ resetMetricsPollingInterval() {
2518
+ this._metricsPollingInterval = undefined;
2519
+ }
2520
+ // Temporarily expose input value. Use with caution.
2521
+ get metricsPollingIntervalInput() {
2522
+ return this._metricsPollingInterval;
2523
+ }
2524
+ // resource_groups - computed: false, optional: true, required: false
2525
+ _resourceGroups;
2526
+ get resourceGroups() {
2527
+ return this.getListAttribute('resource_groups');
2528
+ }
2529
+ set resourceGroups(value) {
2530
+ this._resourceGroups = value;
2531
+ }
2532
+ resetResourceGroups() {
2533
+ this._resourceGroups = undefined;
2534
+ }
2535
+ // Temporarily expose input value. Use with caution.
2536
+ get resourceGroupsInput() {
2537
+ return this._resourceGroups;
2538
+ }
2539
+ }
2540
+ export function cloudAzureIntegrationsRedisCacheToTerraform(struct) {
2541
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2542
+ return struct;
2543
+ }
2544
+ if (cdktf.isComplexElement(struct)) {
2545
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2546
+ }
2547
+ return {
2548
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
2549
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
2550
+ };
2551
+ }
2552
+ export function cloudAzureIntegrationsRedisCacheToHclTerraform(struct) {
2553
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2554
+ return struct;
2555
+ }
2556
+ if (cdktf.isComplexElement(struct)) {
2557
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2558
+ }
2559
+ const attrs = {
2560
+ metrics_polling_interval: {
2561
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
2562
+ isBlock: false,
2563
+ type: "simple",
2564
+ storageClassType: "number",
2565
+ },
2566
+ resource_groups: {
2567
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
2568
+ isBlock: false,
2569
+ type: "list",
2570
+ storageClassType: "stringList",
2571
+ },
2572
+ };
2573
+ // remove undefined attributes
2574
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
2575
+ }
2576
+ export class CloudAzureIntegrationsRedisCacheOutputReference extends cdktf.ComplexObject {
2577
+ isEmptyObject = false;
2578
+ /**
2579
+ * @param terraformResource The parent resource
2580
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
2581
+ */
2582
+ constructor(terraformResource, terraformAttribute) {
2583
+ super(terraformResource, terraformAttribute, false, 0);
2584
+ }
2585
+ get internalValue() {
2586
+ let hasAnyValues = this.isEmptyObject;
2587
+ const internalValueResult = {};
2588
+ if (this._metricsPollingInterval !== undefined) {
2589
+ hasAnyValues = true;
2590
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
2591
+ }
2592
+ if (this._resourceGroups !== undefined) {
2593
+ hasAnyValues = true;
2594
+ internalValueResult.resourceGroups = this._resourceGroups;
2595
+ }
2596
+ return hasAnyValues ? internalValueResult : undefined;
2597
+ }
2598
+ set internalValue(value) {
2599
+ if (value === undefined) {
2600
+ this.isEmptyObject = false;
2601
+ this._metricsPollingInterval = undefined;
2602
+ this._resourceGroups = undefined;
2603
+ }
2604
+ else {
2605
+ this.isEmptyObject = Object.keys(value).length === 0;
2606
+ this._metricsPollingInterval = value.metricsPollingInterval;
2607
+ this._resourceGroups = value.resourceGroups;
2608
+ }
2609
+ }
2610
+ // metrics_polling_interval - computed: false, optional: true, required: false
2611
+ _metricsPollingInterval;
2612
+ get metricsPollingInterval() {
2613
+ return this.getNumberAttribute('metrics_polling_interval');
2614
+ }
2615
+ set metricsPollingInterval(value) {
2616
+ this._metricsPollingInterval = value;
2617
+ }
2618
+ resetMetricsPollingInterval() {
2619
+ this._metricsPollingInterval = undefined;
2620
+ }
2621
+ // Temporarily expose input value. Use with caution.
2622
+ get metricsPollingIntervalInput() {
2623
+ return this._metricsPollingInterval;
2624
+ }
2625
+ // resource_groups - computed: false, optional: true, required: false
2626
+ _resourceGroups;
2627
+ get resourceGroups() {
2628
+ return this.getListAttribute('resource_groups');
2629
+ }
2630
+ set resourceGroups(value) {
2631
+ this._resourceGroups = value;
2632
+ }
2633
+ resetResourceGroups() {
2634
+ this._resourceGroups = undefined;
2635
+ }
2636
+ // Temporarily expose input value. Use with caution.
2637
+ get resourceGroupsInput() {
2638
+ return this._resourceGroups;
2639
+ }
2640
+ }
2641
+ export function cloudAzureIntegrationsServiceBusToTerraform(struct) {
2642
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2643
+ return struct;
2644
+ }
2645
+ if (cdktf.isComplexElement(struct)) {
2646
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2647
+ }
2648
+ return {
2649
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
2650
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
2651
+ };
2652
+ }
2653
+ export function cloudAzureIntegrationsServiceBusToHclTerraform(struct) {
2654
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2655
+ return struct;
2656
+ }
2657
+ if (cdktf.isComplexElement(struct)) {
2658
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2659
+ }
2660
+ const attrs = {
2661
+ metrics_polling_interval: {
2662
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
2663
+ isBlock: false,
2664
+ type: "simple",
2665
+ storageClassType: "number",
2666
+ },
2667
+ resource_groups: {
2668
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
2669
+ isBlock: false,
2670
+ type: "list",
2671
+ storageClassType: "stringList",
2672
+ },
2673
+ };
2674
+ // remove undefined attributes
2675
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
2676
+ }
2677
+ export class CloudAzureIntegrationsServiceBusOutputReference extends cdktf.ComplexObject {
2678
+ isEmptyObject = false;
2679
+ /**
2680
+ * @param terraformResource The parent resource
2681
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
2682
+ */
2683
+ constructor(terraformResource, terraformAttribute) {
2684
+ super(terraformResource, terraformAttribute, false, 0);
2685
+ }
2686
+ get internalValue() {
2687
+ let hasAnyValues = this.isEmptyObject;
2688
+ const internalValueResult = {};
2689
+ if (this._metricsPollingInterval !== undefined) {
2690
+ hasAnyValues = true;
2691
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
2692
+ }
2693
+ if (this._resourceGroups !== undefined) {
2694
+ hasAnyValues = true;
2695
+ internalValueResult.resourceGroups = this._resourceGroups;
2696
+ }
2697
+ return hasAnyValues ? internalValueResult : undefined;
2698
+ }
2699
+ set internalValue(value) {
2700
+ if (value === undefined) {
2701
+ this.isEmptyObject = false;
2702
+ this._metricsPollingInterval = undefined;
2703
+ this._resourceGroups = undefined;
2704
+ }
2705
+ else {
2706
+ this.isEmptyObject = Object.keys(value).length === 0;
2707
+ this._metricsPollingInterval = value.metricsPollingInterval;
2708
+ this._resourceGroups = value.resourceGroups;
2709
+ }
2710
+ }
2711
+ // metrics_polling_interval - computed: false, optional: true, required: false
2712
+ _metricsPollingInterval;
2713
+ get metricsPollingInterval() {
2714
+ return this.getNumberAttribute('metrics_polling_interval');
2715
+ }
2716
+ set metricsPollingInterval(value) {
2717
+ this._metricsPollingInterval = value;
2718
+ }
2719
+ resetMetricsPollingInterval() {
2720
+ this._metricsPollingInterval = undefined;
2721
+ }
2722
+ // Temporarily expose input value. Use with caution.
2723
+ get metricsPollingIntervalInput() {
2724
+ return this._metricsPollingInterval;
2725
+ }
2726
+ // resource_groups - computed: false, optional: true, required: false
2727
+ _resourceGroups;
2728
+ get resourceGroups() {
2729
+ return this.getListAttribute('resource_groups');
2730
+ }
2731
+ set resourceGroups(value) {
2732
+ this._resourceGroups = value;
2733
+ }
2734
+ resetResourceGroups() {
2735
+ this._resourceGroups = undefined;
2736
+ }
2737
+ // Temporarily expose input value. Use with caution.
2738
+ get resourceGroupsInput() {
2739
+ return this._resourceGroups;
2740
+ }
2741
+ }
2742
+ export function cloudAzureIntegrationsSqlToTerraform(struct) {
2743
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2744
+ return struct;
2745
+ }
2746
+ if (cdktf.isComplexElement(struct)) {
2747
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2748
+ }
2749
+ return {
2750
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
2751
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
2752
+ };
2753
+ }
2754
+ export function cloudAzureIntegrationsSqlToHclTerraform(struct) {
2755
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2756
+ return struct;
2757
+ }
2758
+ if (cdktf.isComplexElement(struct)) {
2759
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2760
+ }
2761
+ const attrs = {
2762
+ metrics_polling_interval: {
2763
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
2764
+ isBlock: false,
2765
+ type: "simple",
2766
+ storageClassType: "number",
2767
+ },
2768
+ resource_groups: {
2769
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
2770
+ isBlock: false,
2771
+ type: "list",
2772
+ storageClassType: "stringList",
2773
+ },
2774
+ };
2775
+ // remove undefined attributes
2776
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
2777
+ }
2778
+ export class CloudAzureIntegrationsSqlOutputReference extends cdktf.ComplexObject {
2779
+ isEmptyObject = false;
2780
+ /**
2781
+ * @param terraformResource The parent resource
2782
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
2783
+ */
2784
+ constructor(terraformResource, terraformAttribute) {
2785
+ super(terraformResource, terraformAttribute, false, 0);
2786
+ }
2787
+ get internalValue() {
2788
+ let hasAnyValues = this.isEmptyObject;
2789
+ const internalValueResult = {};
2790
+ if (this._metricsPollingInterval !== undefined) {
2791
+ hasAnyValues = true;
2792
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
2793
+ }
2794
+ if (this._resourceGroups !== undefined) {
2795
+ hasAnyValues = true;
2796
+ internalValueResult.resourceGroups = this._resourceGroups;
2797
+ }
2798
+ return hasAnyValues ? internalValueResult : undefined;
2799
+ }
2800
+ set internalValue(value) {
2801
+ if (value === undefined) {
2802
+ this.isEmptyObject = false;
2803
+ this._metricsPollingInterval = undefined;
2804
+ this._resourceGroups = undefined;
2805
+ }
2806
+ else {
2807
+ this.isEmptyObject = Object.keys(value).length === 0;
2808
+ this._metricsPollingInterval = value.metricsPollingInterval;
2809
+ this._resourceGroups = value.resourceGroups;
2810
+ }
2811
+ }
2812
+ // metrics_polling_interval - computed: false, optional: true, required: false
2813
+ _metricsPollingInterval;
2814
+ get metricsPollingInterval() {
2815
+ return this.getNumberAttribute('metrics_polling_interval');
2816
+ }
2817
+ set metricsPollingInterval(value) {
2818
+ this._metricsPollingInterval = value;
2819
+ }
2820
+ resetMetricsPollingInterval() {
2821
+ this._metricsPollingInterval = undefined;
2822
+ }
2823
+ // Temporarily expose input value. Use with caution.
2824
+ get metricsPollingIntervalInput() {
2825
+ return this._metricsPollingInterval;
2826
+ }
2827
+ // resource_groups - computed: false, optional: true, required: false
2828
+ _resourceGroups;
2829
+ get resourceGroups() {
2830
+ return this.getListAttribute('resource_groups');
2831
+ }
2832
+ set resourceGroups(value) {
2833
+ this._resourceGroups = value;
2834
+ }
2835
+ resetResourceGroups() {
2836
+ this._resourceGroups = undefined;
2837
+ }
2838
+ // Temporarily expose input value. Use with caution.
2839
+ get resourceGroupsInput() {
2840
+ return this._resourceGroups;
2841
+ }
2842
+ }
2843
+ export function cloudAzureIntegrationsSqlManagedToTerraform(struct) {
2844
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2845
+ return struct;
2846
+ }
2847
+ if (cdktf.isComplexElement(struct)) {
2848
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2849
+ }
2850
+ return {
2851
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
2852
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
2853
+ };
2854
+ }
2855
+ export function cloudAzureIntegrationsSqlManagedToHclTerraform(struct) {
2856
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2857
+ return struct;
2858
+ }
2859
+ if (cdktf.isComplexElement(struct)) {
2860
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2861
+ }
2862
+ const attrs = {
2863
+ metrics_polling_interval: {
2864
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
2865
+ isBlock: false,
2866
+ type: "simple",
2867
+ storageClassType: "number",
2868
+ },
2869
+ resource_groups: {
2870
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
2871
+ isBlock: false,
2872
+ type: "list",
2873
+ storageClassType: "stringList",
2874
+ },
2875
+ };
2876
+ // remove undefined attributes
2877
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
2878
+ }
2879
+ export class CloudAzureIntegrationsSqlManagedOutputReference extends cdktf.ComplexObject {
2880
+ isEmptyObject = false;
2881
+ /**
2882
+ * @param terraformResource The parent resource
2883
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
2884
+ */
2885
+ constructor(terraformResource, terraformAttribute) {
2886
+ super(terraformResource, terraformAttribute, false, 0);
2887
+ }
2888
+ get internalValue() {
2889
+ let hasAnyValues = this.isEmptyObject;
2890
+ const internalValueResult = {};
2891
+ if (this._metricsPollingInterval !== undefined) {
2892
+ hasAnyValues = true;
2893
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
2894
+ }
2895
+ if (this._resourceGroups !== undefined) {
2896
+ hasAnyValues = true;
2897
+ internalValueResult.resourceGroups = this._resourceGroups;
2898
+ }
2899
+ return hasAnyValues ? internalValueResult : undefined;
2900
+ }
2901
+ set internalValue(value) {
2902
+ if (value === undefined) {
2903
+ this.isEmptyObject = false;
2904
+ this._metricsPollingInterval = undefined;
2905
+ this._resourceGroups = undefined;
2906
+ }
2907
+ else {
2908
+ this.isEmptyObject = Object.keys(value).length === 0;
2909
+ this._metricsPollingInterval = value.metricsPollingInterval;
2910
+ this._resourceGroups = value.resourceGroups;
2911
+ }
2912
+ }
2913
+ // metrics_polling_interval - computed: false, optional: true, required: false
2914
+ _metricsPollingInterval;
2915
+ get metricsPollingInterval() {
2916
+ return this.getNumberAttribute('metrics_polling_interval');
2917
+ }
2918
+ set metricsPollingInterval(value) {
2919
+ this._metricsPollingInterval = value;
2920
+ }
2921
+ resetMetricsPollingInterval() {
2922
+ this._metricsPollingInterval = undefined;
2923
+ }
2924
+ // Temporarily expose input value. Use with caution.
2925
+ get metricsPollingIntervalInput() {
2926
+ return this._metricsPollingInterval;
2927
+ }
2928
+ // resource_groups - computed: false, optional: true, required: false
2929
+ _resourceGroups;
2930
+ get resourceGroups() {
2931
+ return this.getListAttribute('resource_groups');
2932
+ }
2933
+ set resourceGroups(value) {
2934
+ this._resourceGroups = value;
2935
+ }
2936
+ resetResourceGroups() {
2937
+ this._resourceGroups = undefined;
2938
+ }
2939
+ // Temporarily expose input value. Use with caution.
2940
+ get resourceGroupsInput() {
2941
+ return this._resourceGroups;
2942
+ }
2943
+ }
2944
+ export function cloudAzureIntegrationsStorageToTerraform(struct) {
2945
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2946
+ return struct;
2947
+ }
2948
+ if (cdktf.isComplexElement(struct)) {
2949
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2950
+ }
2951
+ return {
2952
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
2953
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
2954
+ };
2955
+ }
2956
+ export function cloudAzureIntegrationsStorageToHclTerraform(struct) {
2957
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2958
+ return struct;
2959
+ }
2960
+ if (cdktf.isComplexElement(struct)) {
2961
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2962
+ }
2963
+ const attrs = {
2964
+ metrics_polling_interval: {
2965
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
2966
+ isBlock: false,
2967
+ type: "simple",
2968
+ storageClassType: "number",
2969
+ },
2970
+ resource_groups: {
2971
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
2972
+ isBlock: false,
2973
+ type: "list",
2974
+ storageClassType: "stringList",
2975
+ },
2976
+ };
2977
+ // remove undefined attributes
2978
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
2979
+ }
2980
+ export class CloudAzureIntegrationsStorageOutputReference extends cdktf.ComplexObject {
2981
+ isEmptyObject = false;
2982
+ /**
2983
+ * @param terraformResource The parent resource
2984
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
2985
+ */
2986
+ constructor(terraformResource, terraformAttribute) {
2987
+ super(terraformResource, terraformAttribute, false, 0);
2988
+ }
2989
+ get internalValue() {
2990
+ let hasAnyValues = this.isEmptyObject;
2991
+ const internalValueResult = {};
2992
+ if (this._metricsPollingInterval !== undefined) {
2993
+ hasAnyValues = true;
2994
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
2995
+ }
2996
+ if (this._resourceGroups !== undefined) {
2997
+ hasAnyValues = true;
2998
+ internalValueResult.resourceGroups = this._resourceGroups;
2999
+ }
3000
+ return hasAnyValues ? internalValueResult : undefined;
3001
+ }
3002
+ set internalValue(value) {
3003
+ if (value === undefined) {
3004
+ this.isEmptyObject = false;
3005
+ this._metricsPollingInterval = undefined;
3006
+ this._resourceGroups = undefined;
3007
+ }
3008
+ else {
3009
+ this.isEmptyObject = Object.keys(value).length === 0;
3010
+ this._metricsPollingInterval = value.metricsPollingInterval;
3011
+ this._resourceGroups = value.resourceGroups;
3012
+ }
3013
+ }
3014
+ // metrics_polling_interval - computed: false, optional: true, required: false
3015
+ _metricsPollingInterval;
3016
+ get metricsPollingInterval() {
3017
+ return this.getNumberAttribute('metrics_polling_interval');
3018
+ }
3019
+ set metricsPollingInterval(value) {
3020
+ this._metricsPollingInterval = value;
3021
+ }
3022
+ resetMetricsPollingInterval() {
3023
+ this._metricsPollingInterval = undefined;
3024
+ }
3025
+ // Temporarily expose input value. Use with caution.
3026
+ get metricsPollingIntervalInput() {
3027
+ return this._metricsPollingInterval;
3028
+ }
3029
+ // resource_groups - computed: false, optional: true, required: false
3030
+ _resourceGroups;
3031
+ get resourceGroups() {
3032
+ return this.getListAttribute('resource_groups');
3033
+ }
3034
+ set resourceGroups(value) {
3035
+ this._resourceGroups = value;
3036
+ }
3037
+ resetResourceGroups() {
3038
+ this._resourceGroups = undefined;
3039
+ }
3040
+ // Temporarily expose input value. Use with caution.
3041
+ get resourceGroupsInput() {
3042
+ return this._resourceGroups;
3043
+ }
3044
+ }
3045
+ export function cloudAzureIntegrationsVirtualMachineToTerraform(struct) {
3046
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
3047
+ return struct;
3048
+ }
3049
+ if (cdktf.isComplexElement(struct)) {
3050
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
3051
+ }
3052
+ return {
3053
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
3054
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
3055
+ };
3056
+ }
3057
+ export function cloudAzureIntegrationsVirtualMachineToHclTerraform(struct) {
3058
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
3059
+ return struct;
3060
+ }
3061
+ if (cdktf.isComplexElement(struct)) {
3062
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
3063
+ }
3064
+ const attrs = {
3065
+ metrics_polling_interval: {
3066
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
3067
+ isBlock: false,
3068
+ type: "simple",
3069
+ storageClassType: "number",
3070
+ },
3071
+ resource_groups: {
3072
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
3073
+ isBlock: false,
3074
+ type: "list",
3075
+ storageClassType: "stringList",
3076
+ },
3077
+ };
3078
+ // remove undefined attributes
3079
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
3080
+ }
3081
+ export class CloudAzureIntegrationsVirtualMachineOutputReference extends cdktf.ComplexObject {
3082
+ isEmptyObject = false;
3083
+ /**
3084
+ * @param terraformResource The parent resource
3085
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
3086
+ */
3087
+ constructor(terraformResource, terraformAttribute) {
3088
+ super(terraformResource, terraformAttribute, false, 0);
3089
+ }
3090
+ get internalValue() {
3091
+ let hasAnyValues = this.isEmptyObject;
3092
+ const internalValueResult = {};
3093
+ if (this._metricsPollingInterval !== undefined) {
3094
+ hasAnyValues = true;
3095
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
3096
+ }
3097
+ if (this._resourceGroups !== undefined) {
3098
+ hasAnyValues = true;
3099
+ internalValueResult.resourceGroups = this._resourceGroups;
3100
+ }
3101
+ return hasAnyValues ? internalValueResult : undefined;
3102
+ }
3103
+ set internalValue(value) {
3104
+ if (value === undefined) {
3105
+ this.isEmptyObject = false;
3106
+ this._metricsPollingInterval = undefined;
3107
+ this._resourceGroups = undefined;
3108
+ }
3109
+ else {
3110
+ this.isEmptyObject = Object.keys(value).length === 0;
3111
+ this._metricsPollingInterval = value.metricsPollingInterval;
3112
+ this._resourceGroups = value.resourceGroups;
3113
+ }
3114
+ }
3115
+ // metrics_polling_interval - computed: false, optional: true, required: false
3116
+ _metricsPollingInterval;
3117
+ get metricsPollingInterval() {
3118
+ return this.getNumberAttribute('metrics_polling_interval');
3119
+ }
3120
+ set metricsPollingInterval(value) {
3121
+ this._metricsPollingInterval = value;
3122
+ }
3123
+ resetMetricsPollingInterval() {
3124
+ this._metricsPollingInterval = undefined;
3125
+ }
3126
+ // Temporarily expose input value. Use with caution.
3127
+ get metricsPollingIntervalInput() {
3128
+ return this._metricsPollingInterval;
3129
+ }
3130
+ // resource_groups - computed: false, optional: true, required: false
3131
+ _resourceGroups;
3132
+ get resourceGroups() {
3133
+ return this.getListAttribute('resource_groups');
3134
+ }
3135
+ set resourceGroups(value) {
3136
+ this._resourceGroups = value;
3137
+ }
3138
+ resetResourceGroups() {
3139
+ this._resourceGroups = undefined;
3140
+ }
3141
+ // Temporarily expose input value. Use with caution.
3142
+ get resourceGroupsInput() {
3143
+ return this._resourceGroups;
3144
+ }
3145
+ }
3146
+ export function cloudAzureIntegrationsVirtualNetworksToTerraform(struct) {
3147
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
3148
+ return struct;
3149
+ }
3150
+ if (cdktf.isComplexElement(struct)) {
3151
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
3152
+ }
3153
+ return {
3154
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
3155
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
3156
+ };
3157
+ }
3158
+ export function cloudAzureIntegrationsVirtualNetworksToHclTerraform(struct) {
3159
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
3160
+ return struct;
3161
+ }
3162
+ if (cdktf.isComplexElement(struct)) {
3163
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
3164
+ }
3165
+ const attrs = {
3166
+ metrics_polling_interval: {
3167
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
3168
+ isBlock: false,
3169
+ type: "simple",
3170
+ storageClassType: "number",
3171
+ },
3172
+ resource_groups: {
3173
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
3174
+ isBlock: false,
3175
+ type: "list",
3176
+ storageClassType: "stringList",
3177
+ },
3178
+ };
3179
+ // remove undefined attributes
3180
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
3181
+ }
3182
+ export class CloudAzureIntegrationsVirtualNetworksOutputReference extends cdktf.ComplexObject {
3183
+ isEmptyObject = false;
3184
+ /**
3185
+ * @param terraformResource The parent resource
3186
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
3187
+ */
3188
+ constructor(terraformResource, terraformAttribute) {
3189
+ super(terraformResource, terraformAttribute, false, 0);
3190
+ }
3191
+ get internalValue() {
3192
+ let hasAnyValues = this.isEmptyObject;
3193
+ const internalValueResult = {};
3194
+ if (this._metricsPollingInterval !== undefined) {
3195
+ hasAnyValues = true;
3196
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
3197
+ }
3198
+ if (this._resourceGroups !== undefined) {
3199
+ hasAnyValues = true;
3200
+ internalValueResult.resourceGroups = this._resourceGroups;
3201
+ }
3202
+ return hasAnyValues ? internalValueResult : undefined;
3203
+ }
3204
+ set internalValue(value) {
3205
+ if (value === undefined) {
3206
+ this.isEmptyObject = false;
3207
+ this._metricsPollingInterval = undefined;
3208
+ this._resourceGroups = undefined;
3209
+ }
3210
+ else {
3211
+ this.isEmptyObject = Object.keys(value).length === 0;
3212
+ this._metricsPollingInterval = value.metricsPollingInterval;
3213
+ this._resourceGroups = value.resourceGroups;
3214
+ }
3215
+ }
3216
+ // metrics_polling_interval - computed: false, optional: true, required: false
3217
+ _metricsPollingInterval;
3218
+ get metricsPollingInterval() {
3219
+ return this.getNumberAttribute('metrics_polling_interval');
3220
+ }
3221
+ set metricsPollingInterval(value) {
3222
+ this._metricsPollingInterval = value;
3223
+ }
3224
+ resetMetricsPollingInterval() {
3225
+ this._metricsPollingInterval = undefined;
3226
+ }
3227
+ // Temporarily expose input value. Use with caution.
3228
+ get metricsPollingIntervalInput() {
3229
+ return this._metricsPollingInterval;
3230
+ }
3231
+ // resource_groups - computed: false, optional: true, required: false
3232
+ _resourceGroups;
3233
+ get resourceGroups() {
3234
+ return this.getListAttribute('resource_groups');
3235
+ }
3236
+ set resourceGroups(value) {
3237
+ this._resourceGroups = value;
3238
+ }
3239
+ resetResourceGroups() {
3240
+ this._resourceGroups = undefined;
3241
+ }
3242
+ // Temporarily expose input value. Use with caution.
3243
+ get resourceGroupsInput() {
3244
+ return this._resourceGroups;
3245
+ }
3246
+ }
3247
+ export function cloudAzureIntegrationsVmsToTerraform(struct) {
3248
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
3249
+ return struct;
3250
+ }
3251
+ if (cdktf.isComplexElement(struct)) {
3252
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
3253
+ }
3254
+ return {
3255
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
3256
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
3257
+ };
3258
+ }
3259
+ export function cloudAzureIntegrationsVmsToHclTerraform(struct) {
3260
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
3261
+ return struct;
3262
+ }
3263
+ if (cdktf.isComplexElement(struct)) {
3264
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
3265
+ }
3266
+ const attrs = {
3267
+ metrics_polling_interval: {
3268
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
3269
+ isBlock: false,
3270
+ type: "simple",
3271
+ storageClassType: "number",
3272
+ },
3273
+ resource_groups: {
3274
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
3275
+ isBlock: false,
3276
+ type: "list",
3277
+ storageClassType: "stringList",
3278
+ },
3279
+ };
3280
+ // remove undefined attributes
3281
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
3282
+ }
3283
+ export class CloudAzureIntegrationsVmsOutputReference extends cdktf.ComplexObject {
3284
+ isEmptyObject = false;
3285
+ /**
3286
+ * @param terraformResource The parent resource
3287
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
3288
+ */
3289
+ constructor(terraformResource, terraformAttribute) {
3290
+ super(terraformResource, terraformAttribute, false, 0);
3291
+ }
3292
+ get internalValue() {
3293
+ let hasAnyValues = this.isEmptyObject;
3294
+ const internalValueResult = {};
3295
+ if (this._metricsPollingInterval !== undefined) {
3296
+ hasAnyValues = true;
3297
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
3298
+ }
3299
+ if (this._resourceGroups !== undefined) {
3300
+ hasAnyValues = true;
3301
+ internalValueResult.resourceGroups = this._resourceGroups;
3302
+ }
3303
+ return hasAnyValues ? internalValueResult : undefined;
3304
+ }
3305
+ set internalValue(value) {
3306
+ if (value === undefined) {
3307
+ this.isEmptyObject = false;
3308
+ this._metricsPollingInterval = undefined;
3309
+ this._resourceGroups = undefined;
3310
+ }
3311
+ else {
3312
+ this.isEmptyObject = Object.keys(value).length === 0;
3313
+ this._metricsPollingInterval = value.metricsPollingInterval;
3314
+ this._resourceGroups = value.resourceGroups;
3315
+ }
3316
+ }
3317
+ // metrics_polling_interval - computed: false, optional: true, required: false
3318
+ _metricsPollingInterval;
3319
+ get metricsPollingInterval() {
3320
+ return this.getNumberAttribute('metrics_polling_interval');
3321
+ }
3322
+ set metricsPollingInterval(value) {
3323
+ this._metricsPollingInterval = value;
3324
+ }
3325
+ resetMetricsPollingInterval() {
3326
+ this._metricsPollingInterval = undefined;
3327
+ }
3328
+ // Temporarily expose input value. Use with caution.
3329
+ get metricsPollingIntervalInput() {
3330
+ return this._metricsPollingInterval;
3331
+ }
3332
+ // resource_groups - computed: false, optional: true, required: false
3333
+ _resourceGroups;
3334
+ get resourceGroups() {
3335
+ return this.getListAttribute('resource_groups');
3336
+ }
3337
+ set resourceGroups(value) {
3338
+ this._resourceGroups = value;
3339
+ }
3340
+ resetResourceGroups() {
3341
+ this._resourceGroups = undefined;
3342
+ }
3343
+ // Temporarily expose input value. Use with caution.
3344
+ get resourceGroupsInput() {
3345
+ return this._resourceGroups;
3346
+ }
3347
+ }
3348
+ export function cloudAzureIntegrationsVpnGatewayToTerraform(struct) {
3349
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
3350
+ return struct;
3351
+ }
3352
+ if (cdktf.isComplexElement(struct)) {
3353
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
3354
+ }
3355
+ return {
3356
+ metrics_polling_interval: cdktf.numberToTerraform(struct.metricsPollingInterval),
3357
+ resource_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resourceGroups),
3358
+ };
3359
+ }
3360
+ export function cloudAzureIntegrationsVpnGatewayToHclTerraform(struct) {
3361
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
3362
+ return struct;
3363
+ }
3364
+ if (cdktf.isComplexElement(struct)) {
3365
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
3366
+ }
3367
+ const attrs = {
3368
+ metrics_polling_interval: {
3369
+ value: cdktf.numberToHclTerraform(struct.metricsPollingInterval),
3370
+ isBlock: false,
3371
+ type: "simple",
3372
+ storageClassType: "number",
3373
+ },
3374
+ resource_groups: {
3375
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resourceGroups),
3376
+ isBlock: false,
3377
+ type: "list",
3378
+ storageClassType: "stringList",
3379
+ },
3380
+ };
3381
+ // remove undefined attributes
3382
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
3383
+ }
3384
+ export class CloudAzureIntegrationsVpnGatewayOutputReference extends cdktf.ComplexObject {
3385
+ isEmptyObject = false;
3386
+ /**
3387
+ * @param terraformResource The parent resource
3388
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
3389
+ */
3390
+ constructor(terraformResource, terraformAttribute) {
3391
+ super(terraformResource, terraformAttribute, false, 0);
3392
+ }
3393
+ get internalValue() {
3394
+ let hasAnyValues = this.isEmptyObject;
3395
+ const internalValueResult = {};
3396
+ if (this._metricsPollingInterval !== undefined) {
3397
+ hasAnyValues = true;
3398
+ internalValueResult.metricsPollingInterval = this._metricsPollingInterval;
3399
+ }
3400
+ if (this._resourceGroups !== undefined) {
3401
+ hasAnyValues = true;
3402
+ internalValueResult.resourceGroups = this._resourceGroups;
3403
+ }
3404
+ return hasAnyValues ? internalValueResult : undefined;
3405
+ }
3406
+ set internalValue(value) {
3407
+ if (value === undefined) {
3408
+ this.isEmptyObject = false;
3409
+ this._metricsPollingInterval = undefined;
3410
+ this._resourceGroups = undefined;
3411
+ }
3412
+ else {
3413
+ this.isEmptyObject = Object.keys(value).length === 0;
3414
+ this._metricsPollingInterval = value.metricsPollingInterval;
3415
+ this._resourceGroups = value.resourceGroups;
3416
+ }
3417
+ }
3418
+ // metrics_polling_interval - computed: false, optional: true, required: false
3419
+ _metricsPollingInterval;
3420
+ get metricsPollingInterval() {
3421
+ return this.getNumberAttribute('metrics_polling_interval');
3422
+ }
3423
+ set metricsPollingInterval(value) {
3424
+ this._metricsPollingInterval = value;
3425
+ }
3426
+ resetMetricsPollingInterval() {
3427
+ this._metricsPollingInterval = undefined;
3428
+ }
3429
+ // Temporarily expose input value. Use with caution.
3430
+ get metricsPollingIntervalInput() {
3431
+ return this._metricsPollingInterval;
3432
+ }
3433
+ // resource_groups - computed: false, optional: true, required: false
3434
+ _resourceGroups;
3435
+ get resourceGroups() {
3436
+ return this.getListAttribute('resource_groups');
3437
+ }
3438
+ set resourceGroups(value) {
3439
+ this._resourceGroups = value;
3440
+ }
3441
+ resetResourceGroups() {
3442
+ this._resourceGroups = undefined;
3443
+ }
3444
+ // Temporarily expose input value. Use with caution.
3445
+ get resourceGroupsInput() {
3446
+ return this._resourceGroups;
3447
+ }
3448
+ }
3449
+ /**
3450
+ * Represents a {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/cloud_azure_integrations newrelic_cloud_azure_integrations}
3451
+ */
3452
+ export class CloudAzureIntegrations extends cdktf.TerraformResource {
3453
+ // =================
3454
+ // STATIC PROPERTIES
3455
+ // =================
3456
+ static tfResourceType = "newrelic_cloud_azure_integrations";
3457
+ // ==============
3458
+ // STATIC Methods
3459
+ // ==============
3460
+ /**
3461
+ * Generates CDKTF code for importing a CloudAzureIntegrations resource upon running "cdktf plan <stack-name>"
3462
+ * @param scope The scope in which to define this construct
3463
+ * @param importToId The construct id used in the generated config for the CloudAzureIntegrations to import
3464
+ * @param importFromId The id of the existing CloudAzureIntegrations that should be imported. Refer to the {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/cloud_azure_integrations#import import section} in the documentation of this resource for the id to use
3465
+ * @param provider? Optional instance of the provider where the CloudAzureIntegrations to import is found
3466
+ */
3467
+ static generateConfigForImport(scope, importToId, importFromId, provider) {
3468
+ return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "newrelic_cloud_azure_integrations", importId: importFromId, provider });
3469
+ }
3470
+ // ===========
3471
+ // INITIALIZER
3472
+ // ===========
3473
+ /**
3474
+ * Create a new {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/cloud_azure_integrations newrelic_cloud_azure_integrations} Resource
3475
+ *
3476
+ * @param scope The scope in which to define this construct
3477
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
3478
+ * @param options CloudAzureIntegrationsConfig
3479
+ */
3480
+ constructor(scope, id, config) {
3481
+ super(scope, id, {
3482
+ terraformResourceType: 'newrelic_cloud_azure_integrations',
3483
+ terraformGeneratorMetadata: {
3484
+ providerName: 'newrelic',
3485
+ providerVersion: '3.75.4',
3486
+ providerVersionConstraint: '3.75.4'
3487
+ },
3488
+ provider: config.provider,
3489
+ dependsOn: config.dependsOn,
3490
+ count: config.count,
3491
+ lifecycle: config.lifecycle,
3492
+ provisioners: config.provisioners,
3493
+ connection: config.connection,
3494
+ forEach: config.forEach
3495
+ });
3496
+ this._accountId = config.accountId;
3497
+ this._id = config.id;
3498
+ this._linkedAccountId = config.linkedAccountId;
3499
+ this._apiManagement.internalValue = config.apiManagement;
3500
+ this._appGateway.internalValue = config.appGateway;
3501
+ this._appService.internalValue = config.appService;
3502
+ this._autoDiscovery.internalValue = config.autoDiscovery;
3503
+ this._containers.internalValue = config.containers;
3504
+ this._cosmosDb.internalValue = config.cosmosDb;
3505
+ this._costManagement.internalValue = config.costManagement;
3506
+ this._dataFactory.internalValue = config.dataFactory;
3507
+ this._eventHub.internalValue = config.eventHub;
3508
+ this._expressRoute.internalValue = config.expressRoute;
3509
+ this._firewalls.internalValue = config.firewalls;
3510
+ this._frontDoor.internalValue = config.frontDoor;
3511
+ this._functions.internalValue = config.functions;
3512
+ this._keyVault.internalValue = config.keyVault;
3513
+ this._loadBalancer.internalValue = config.loadBalancer;
3514
+ this._logicApps.internalValue = config.logicApps;
3515
+ this._machineLearning.internalValue = config.machineLearning;
3516
+ this._mariaDb.internalValue = config.mariaDb;
3517
+ this._monitor.internalValue = config.monitor;
3518
+ this._mysql.internalValue = config.mysql;
3519
+ this._mysqlFlexible.internalValue = config.mysqlFlexible;
3520
+ this._postgresql.internalValue = config.postgresql;
3521
+ this._postgresqlFlexible.internalValue = config.postgresqlFlexible;
3522
+ this._powerBiDedicated.internalValue = config.powerBiDedicated;
3523
+ this._redisCache.internalValue = config.redisCache;
3524
+ this._serviceBus.internalValue = config.serviceBus;
3525
+ this._sql.internalValue = config.sql;
3526
+ this._sqlManaged.internalValue = config.sqlManaged;
3527
+ this._storage.internalValue = config.storage;
3528
+ this._virtualMachine.internalValue = config.virtualMachine;
3529
+ this._virtualNetworks.internalValue = config.virtualNetworks;
3530
+ this._vms.internalValue = config.vms;
3531
+ this._vpnGateway.internalValue = config.vpnGateway;
3532
+ }
3533
+ // ==========
3534
+ // ATTRIBUTES
3535
+ // ==========
3536
+ // account_id - computed: true, optional: true, required: false
3537
+ _accountId;
3538
+ get accountId() {
3539
+ return this.getNumberAttribute('account_id');
3540
+ }
3541
+ set accountId(value) {
3542
+ this._accountId = value;
3543
+ }
3544
+ resetAccountId() {
3545
+ this._accountId = undefined;
3546
+ }
3547
+ // Temporarily expose input value. Use with caution.
3548
+ get accountIdInput() {
3549
+ return this._accountId;
3550
+ }
3551
+ // id - computed: true, optional: true, required: false
3552
+ _id;
3553
+ get id() {
3554
+ return this.getStringAttribute('id');
3555
+ }
3556
+ set id(value) {
3557
+ this._id = value;
3558
+ }
3559
+ resetId() {
3560
+ this._id = undefined;
3561
+ }
3562
+ // Temporarily expose input value. Use with caution.
3563
+ get idInput() {
3564
+ return this._id;
3565
+ }
3566
+ // linked_account_id - computed: false, optional: false, required: true
3567
+ _linkedAccountId;
3568
+ get linkedAccountId() {
3569
+ return this.getNumberAttribute('linked_account_id');
3570
+ }
3571
+ set linkedAccountId(value) {
3572
+ this._linkedAccountId = value;
3573
+ }
3574
+ // Temporarily expose input value. Use with caution.
3575
+ get linkedAccountIdInput() {
3576
+ return this._linkedAccountId;
3577
+ }
3578
+ // api_management - computed: false, optional: true, required: false
3579
+ _apiManagement = new CloudAzureIntegrationsApiManagementOutputReference(this, "api_management");
3580
+ get apiManagement() {
3581
+ return this._apiManagement;
3582
+ }
3583
+ putApiManagement(value) {
3584
+ this._apiManagement.internalValue = value;
3585
+ }
3586
+ resetApiManagement() {
3587
+ this._apiManagement.internalValue = undefined;
3588
+ }
3589
+ // Temporarily expose input value. Use with caution.
3590
+ get apiManagementInput() {
3591
+ return this._apiManagement.internalValue;
3592
+ }
3593
+ // app_gateway - computed: false, optional: true, required: false
3594
+ _appGateway = new CloudAzureIntegrationsAppGatewayOutputReference(this, "app_gateway");
3595
+ get appGateway() {
3596
+ return this._appGateway;
3597
+ }
3598
+ putAppGateway(value) {
3599
+ this._appGateway.internalValue = value;
3600
+ }
3601
+ resetAppGateway() {
3602
+ this._appGateway.internalValue = undefined;
3603
+ }
3604
+ // Temporarily expose input value. Use with caution.
3605
+ get appGatewayInput() {
3606
+ return this._appGateway.internalValue;
3607
+ }
3608
+ // app_service - computed: false, optional: true, required: false
3609
+ _appService = new CloudAzureIntegrationsAppServiceOutputReference(this, "app_service");
3610
+ get appService() {
3611
+ return this._appService;
3612
+ }
3613
+ putAppService(value) {
3614
+ this._appService.internalValue = value;
3615
+ }
3616
+ resetAppService() {
3617
+ this._appService.internalValue = undefined;
3618
+ }
3619
+ // Temporarily expose input value. Use with caution.
3620
+ get appServiceInput() {
3621
+ return this._appService.internalValue;
3622
+ }
3623
+ // auto_discovery - computed: false, optional: true, required: false
3624
+ _autoDiscovery = new CloudAzureIntegrationsAutoDiscoveryOutputReference(this, "auto_discovery");
3625
+ get autoDiscovery() {
3626
+ return this._autoDiscovery;
3627
+ }
3628
+ putAutoDiscovery(value) {
3629
+ this._autoDiscovery.internalValue = value;
3630
+ }
3631
+ resetAutoDiscovery() {
3632
+ this._autoDiscovery.internalValue = undefined;
3633
+ }
3634
+ // Temporarily expose input value. Use with caution.
3635
+ get autoDiscoveryInput() {
3636
+ return this._autoDiscovery.internalValue;
3637
+ }
3638
+ // containers - computed: false, optional: true, required: false
3639
+ _containers = new CloudAzureIntegrationsContainersOutputReference(this, "containers");
3640
+ get containers() {
3641
+ return this._containers;
3642
+ }
3643
+ putContainers(value) {
3644
+ this._containers.internalValue = value;
3645
+ }
3646
+ resetContainers() {
3647
+ this._containers.internalValue = undefined;
3648
+ }
3649
+ // Temporarily expose input value. Use with caution.
3650
+ get containersInput() {
3651
+ return this._containers.internalValue;
3652
+ }
3653
+ // cosmos_db - computed: false, optional: true, required: false
3654
+ _cosmosDb = new CloudAzureIntegrationsCosmosDbOutputReference(this, "cosmos_db");
3655
+ get cosmosDb() {
3656
+ return this._cosmosDb;
3657
+ }
3658
+ putCosmosDb(value) {
3659
+ this._cosmosDb.internalValue = value;
3660
+ }
3661
+ resetCosmosDb() {
3662
+ this._cosmosDb.internalValue = undefined;
3663
+ }
3664
+ // Temporarily expose input value. Use with caution.
3665
+ get cosmosDbInput() {
3666
+ return this._cosmosDb.internalValue;
3667
+ }
3668
+ // cost_management - computed: false, optional: true, required: false
3669
+ _costManagement = new CloudAzureIntegrationsCostManagementOutputReference(this, "cost_management");
3670
+ get costManagement() {
3671
+ return this._costManagement;
3672
+ }
3673
+ putCostManagement(value) {
3674
+ this._costManagement.internalValue = value;
3675
+ }
3676
+ resetCostManagement() {
3677
+ this._costManagement.internalValue = undefined;
3678
+ }
3679
+ // Temporarily expose input value. Use with caution.
3680
+ get costManagementInput() {
3681
+ return this._costManagement.internalValue;
3682
+ }
3683
+ // data_factory - computed: false, optional: true, required: false
3684
+ _dataFactory = new CloudAzureIntegrationsDataFactoryOutputReference(this, "data_factory");
3685
+ get dataFactory() {
3686
+ return this._dataFactory;
3687
+ }
3688
+ putDataFactory(value) {
3689
+ this._dataFactory.internalValue = value;
3690
+ }
3691
+ resetDataFactory() {
3692
+ this._dataFactory.internalValue = undefined;
3693
+ }
3694
+ // Temporarily expose input value. Use with caution.
3695
+ get dataFactoryInput() {
3696
+ return this._dataFactory.internalValue;
3697
+ }
3698
+ // event_hub - computed: false, optional: true, required: false
3699
+ _eventHub = new CloudAzureIntegrationsEventHubOutputReference(this, "event_hub");
3700
+ get eventHub() {
3701
+ return this._eventHub;
3702
+ }
3703
+ putEventHub(value) {
3704
+ this._eventHub.internalValue = value;
3705
+ }
3706
+ resetEventHub() {
3707
+ this._eventHub.internalValue = undefined;
3708
+ }
3709
+ // Temporarily expose input value. Use with caution.
3710
+ get eventHubInput() {
3711
+ return this._eventHub.internalValue;
3712
+ }
3713
+ // express_route - computed: false, optional: true, required: false
3714
+ _expressRoute = new CloudAzureIntegrationsExpressRouteOutputReference(this, "express_route");
3715
+ get expressRoute() {
3716
+ return this._expressRoute;
3717
+ }
3718
+ putExpressRoute(value) {
3719
+ this._expressRoute.internalValue = value;
3720
+ }
3721
+ resetExpressRoute() {
3722
+ this._expressRoute.internalValue = undefined;
3723
+ }
3724
+ // Temporarily expose input value. Use with caution.
3725
+ get expressRouteInput() {
3726
+ return this._expressRoute.internalValue;
3727
+ }
3728
+ // firewalls - computed: false, optional: true, required: false
3729
+ _firewalls = new CloudAzureIntegrationsFirewallsOutputReference(this, "firewalls");
3730
+ get firewalls() {
3731
+ return this._firewalls;
3732
+ }
3733
+ putFirewalls(value) {
3734
+ this._firewalls.internalValue = value;
3735
+ }
3736
+ resetFirewalls() {
3737
+ this._firewalls.internalValue = undefined;
3738
+ }
3739
+ // Temporarily expose input value. Use with caution.
3740
+ get firewallsInput() {
3741
+ return this._firewalls.internalValue;
3742
+ }
3743
+ // front_door - computed: false, optional: true, required: false
3744
+ _frontDoor = new CloudAzureIntegrationsFrontDoorOutputReference(this, "front_door");
3745
+ get frontDoor() {
3746
+ return this._frontDoor;
3747
+ }
3748
+ putFrontDoor(value) {
3749
+ this._frontDoor.internalValue = value;
3750
+ }
3751
+ resetFrontDoor() {
3752
+ this._frontDoor.internalValue = undefined;
3753
+ }
3754
+ // Temporarily expose input value. Use with caution.
3755
+ get frontDoorInput() {
3756
+ return this._frontDoor.internalValue;
3757
+ }
3758
+ // functions - computed: false, optional: true, required: false
3759
+ _functions = new CloudAzureIntegrationsFunctionsOutputReference(this, "functions");
3760
+ get functions() {
3761
+ return this._functions;
3762
+ }
3763
+ putFunctions(value) {
3764
+ this._functions.internalValue = value;
3765
+ }
3766
+ resetFunctions() {
3767
+ this._functions.internalValue = undefined;
3768
+ }
3769
+ // Temporarily expose input value. Use with caution.
3770
+ get functionsInput() {
3771
+ return this._functions.internalValue;
3772
+ }
3773
+ // key_vault - computed: false, optional: true, required: false
3774
+ _keyVault = new CloudAzureIntegrationsKeyVaultOutputReference(this, "key_vault");
3775
+ get keyVault() {
3776
+ return this._keyVault;
3777
+ }
3778
+ putKeyVault(value) {
3779
+ this._keyVault.internalValue = value;
3780
+ }
3781
+ resetKeyVault() {
3782
+ this._keyVault.internalValue = undefined;
3783
+ }
3784
+ // Temporarily expose input value. Use with caution.
3785
+ get keyVaultInput() {
3786
+ return this._keyVault.internalValue;
3787
+ }
3788
+ // load_balancer - computed: false, optional: true, required: false
3789
+ _loadBalancer = new CloudAzureIntegrationsLoadBalancerOutputReference(this, "load_balancer");
3790
+ get loadBalancer() {
3791
+ return this._loadBalancer;
3792
+ }
3793
+ putLoadBalancer(value) {
3794
+ this._loadBalancer.internalValue = value;
3795
+ }
3796
+ resetLoadBalancer() {
3797
+ this._loadBalancer.internalValue = undefined;
3798
+ }
3799
+ // Temporarily expose input value. Use with caution.
3800
+ get loadBalancerInput() {
3801
+ return this._loadBalancer.internalValue;
3802
+ }
3803
+ // logic_apps - computed: false, optional: true, required: false
3804
+ _logicApps = new CloudAzureIntegrationsLogicAppsOutputReference(this, "logic_apps");
3805
+ get logicApps() {
3806
+ return this._logicApps;
3807
+ }
3808
+ putLogicApps(value) {
3809
+ this._logicApps.internalValue = value;
3810
+ }
3811
+ resetLogicApps() {
3812
+ this._logicApps.internalValue = undefined;
3813
+ }
3814
+ // Temporarily expose input value. Use with caution.
3815
+ get logicAppsInput() {
3816
+ return this._logicApps.internalValue;
3817
+ }
3818
+ // machine_learning - computed: false, optional: true, required: false
3819
+ _machineLearning = new CloudAzureIntegrationsMachineLearningOutputReference(this, "machine_learning");
3820
+ get machineLearning() {
3821
+ return this._machineLearning;
3822
+ }
3823
+ putMachineLearning(value) {
3824
+ this._machineLearning.internalValue = value;
3825
+ }
3826
+ resetMachineLearning() {
3827
+ this._machineLearning.internalValue = undefined;
3828
+ }
3829
+ // Temporarily expose input value. Use with caution.
3830
+ get machineLearningInput() {
3831
+ return this._machineLearning.internalValue;
3832
+ }
3833
+ // maria_db - computed: false, optional: true, required: false
3834
+ _mariaDb = new CloudAzureIntegrationsMariaDbOutputReference(this, "maria_db");
3835
+ get mariaDb() {
3836
+ return this._mariaDb;
3837
+ }
3838
+ putMariaDb(value) {
3839
+ this._mariaDb.internalValue = value;
3840
+ }
3841
+ resetMariaDb() {
3842
+ this._mariaDb.internalValue = undefined;
3843
+ }
3844
+ // Temporarily expose input value. Use with caution.
3845
+ get mariaDbInput() {
3846
+ return this._mariaDb.internalValue;
3847
+ }
3848
+ // monitor - computed: false, optional: true, required: false
3849
+ _monitor = new CloudAzureIntegrationsMonitorOutputReference(this, "monitor");
3850
+ get monitor() {
3851
+ return this._monitor;
3852
+ }
3853
+ putMonitor(value) {
3854
+ this._monitor.internalValue = value;
3855
+ }
3856
+ resetMonitor() {
3857
+ this._monitor.internalValue = undefined;
3858
+ }
3859
+ // Temporarily expose input value. Use with caution.
3860
+ get monitorInput() {
3861
+ return this._monitor.internalValue;
3862
+ }
3863
+ // mysql - computed: false, optional: true, required: false
3864
+ _mysql = new CloudAzureIntegrationsMysqlOutputReference(this, "mysql");
3865
+ get mysql() {
3866
+ return this._mysql;
3867
+ }
3868
+ putMysql(value) {
3869
+ this._mysql.internalValue = value;
3870
+ }
3871
+ resetMysql() {
3872
+ this._mysql.internalValue = undefined;
3873
+ }
3874
+ // Temporarily expose input value. Use with caution.
3875
+ get mysqlInput() {
3876
+ return this._mysql.internalValue;
3877
+ }
3878
+ // mysql_flexible - computed: false, optional: true, required: false
3879
+ _mysqlFlexible = new CloudAzureIntegrationsMysqlFlexibleOutputReference(this, "mysql_flexible");
3880
+ get mysqlFlexible() {
3881
+ return this._mysqlFlexible;
3882
+ }
3883
+ putMysqlFlexible(value) {
3884
+ this._mysqlFlexible.internalValue = value;
3885
+ }
3886
+ resetMysqlFlexible() {
3887
+ this._mysqlFlexible.internalValue = undefined;
3888
+ }
3889
+ // Temporarily expose input value. Use with caution.
3890
+ get mysqlFlexibleInput() {
3891
+ return this._mysqlFlexible.internalValue;
3892
+ }
3893
+ // postgresql - computed: false, optional: true, required: false
3894
+ _postgresql = new CloudAzureIntegrationsPostgresqlOutputReference(this, "postgresql");
3895
+ get postgresql() {
3896
+ return this._postgresql;
3897
+ }
3898
+ putPostgresql(value) {
3899
+ this._postgresql.internalValue = value;
3900
+ }
3901
+ resetPostgresql() {
3902
+ this._postgresql.internalValue = undefined;
3903
+ }
3904
+ // Temporarily expose input value. Use with caution.
3905
+ get postgresqlInput() {
3906
+ return this._postgresql.internalValue;
3907
+ }
3908
+ // postgresql_flexible - computed: false, optional: true, required: false
3909
+ _postgresqlFlexible = new CloudAzureIntegrationsPostgresqlFlexibleOutputReference(this, "postgresql_flexible");
3910
+ get postgresqlFlexible() {
3911
+ return this._postgresqlFlexible;
3912
+ }
3913
+ putPostgresqlFlexible(value) {
3914
+ this._postgresqlFlexible.internalValue = value;
3915
+ }
3916
+ resetPostgresqlFlexible() {
3917
+ this._postgresqlFlexible.internalValue = undefined;
3918
+ }
3919
+ // Temporarily expose input value. Use with caution.
3920
+ get postgresqlFlexibleInput() {
3921
+ return this._postgresqlFlexible.internalValue;
3922
+ }
3923
+ // power_bi_dedicated - computed: false, optional: true, required: false
3924
+ _powerBiDedicated = new CloudAzureIntegrationsPowerBiDedicatedOutputReference(this, "power_bi_dedicated");
3925
+ get powerBiDedicated() {
3926
+ return this._powerBiDedicated;
3927
+ }
3928
+ putPowerBiDedicated(value) {
3929
+ this._powerBiDedicated.internalValue = value;
3930
+ }
3931
+ resetPowerBiDedicated() {
3932
+ this._powerBiDedicated.internalValue = undefined;
3933
+ }
3934
+ // Temporarily expose input value. Use with caution.
3935
+ get powerBiDedicatedInput() {
3936
+ return this._powerBiDedicated.internalValue;
3937
+ }
3938
+ // redis_cache - computed: false, optional: true, required: false
3939
+ _redisCache = new CloudAzureIntegrationsRedisCacheOutputReference(this, "redis_cache");
3940
+ get redisCache() {
3941
+ return this._redisCache;
3942
+ }
3943
+ putRedisCache(value) {
3944
+ this._redisCache.internalValue = value;
3945
+ }
3946
+ resetRedisCache() {
3947
+ this._redisCache.internalValue = undefined;
3948
+ }
3949
+ // Temporarily expose input value. Use with caution.
3950
+ get redisCacheInput() {
3951
+ return this._redisCache.internalValue;
3952
+ }
3953
+ // service_bus - computed: false, optional: true, required: false
3954
+ _serviceBus = new CloudAzureIntegrationsServiceBusOutputReference(this, "service_bus");
3955
+ get serviceBus() {
3956
+ return this._serviceBus;
3957
+ }
3958
+ putServiceBus(value) {
3959
+ this._serviceBus.internalValue = value;
3960
+ }
3961
+ resetServiceBus() {
3962
+ this._serviceBus.internalValue = undefined;
3963
+ }
3964
+ // Temporarily expose input value. Use with caution.
3965
+ get serviceBusInput() {
3966
+ return this._serviceBus.internalValue;
3967
+ }
3968
+ // sql - computed: false, optional: true, required: false
3969
+ _sql = new CloudAzureIntegrationsSqlOutputReference(this, "sql");
3970
+ get sql() {
3971
+ return this._sql;
3972
+ }
3973
+ putSql(value) {
3974
+ this._sql.internalValue = value;
3975
+ }
3976
+ resetSql() {
3977
+ this._sql.internalValue = undefined;
3978
+ }
3979
+ // Temporarily expose input value. Use with caution.
3980
+ get sqlInput() {
3981
+ return this._sql.internalValue;
3982
+ }
3983
+ // sql_managed - computed: false, optional: true, required: false
3984
+ _sqlManaged = new CloudAzureIntegrationsSqlManagedOutputReference(this, "sql_managed");
3985
+ get sqlManaged() {
3986
+ return this._sqlManaged;
3987
+ }
3988
+ putSqlManaged(value) {
3989
+ this._sqlManaged.internalValue = value;
3990
+ }
3991
+ resetSqlManaged() {
3992
+ this._sqlManaged.internalValue = undefined;
3993
+ }
3994
+ // Temporarily expose input value. Use with caution.
3995
+ get sqlManagedInput() {
3996
+ return this._sqlManaged.internalValue;
3997
+ }
3998
+ // storage - computed: false, optional: true, required: false
3999
+ _storage = new CloudAzureIntegrationsStorageOutputReference(this, "storage");
4000
+ get storage() {
4001
+ return this._storage;
4002
+ }
4003
+ putStorage(value) {
4004
+ this._storage.internalValue = value;
4005
+ }
4006
+ resetStorage() {
4007
+ this._storage.internalValue = undefined;
4008
+ }
4009
+ // Temporarily expose input value. Use with caution.
4010
+ get storageInput() {
4011
+ return this._storage.internalValue;
4012
+ }
4013
+ // virtual_machine - computed: false, optional: true, required: false
4014
+ _virtualMachine = new CloudAzureIntegrationsVirtualMachineOutputReference(this, "virtual_machine");
4015
+ get virtualMachine() {
4016
+ return this._virtualMachine;
4017
+ }
4018
+ putVirtualMachine(value) {
4019
+ this._virtualMachine.internalValue = value;
4020
+ }
4021
+ resetVirtualMachine() {
4022
+ this._virtualMachine.internalValue = undefined;
4023
+ }
4024
+ // Temporarily expose input value. Use with caution.
4025
+ get virtualMachineInput() {
4026
+ return this._virtualMachine.internalValue;
4027
+ }
4028
+ // virtual_networks - computed: false, optional: true, required: false
4029
+ _virtualNetworks = new CloudAzureIntegrationsVirtualNetworksOutputReference(this, "virtual_networks");
4030
+ get virtualNetworks() {
4031
+ return this._virtualNetworks;
4032
+ }
4033
+ putVirtualNetworks(value) {
4034
+ this._virtualNetworks.internalValue = value;
4035
+ }
4036
+ resetVirtualNetworks() {
4037
+ this._virtualNetworks.internalValue = undefined;
4038
+ }
4039
+ // Temporarily expose input value. Use with caution.
4040
+ get virtualNetworksInput() {
4041
+ return this._virtualNetworks.internalValue;
4042
+ }
4043
+ // vms - computed: false, optional: true, required: false
4044
+ _vms = new CloudAzureIntegrationsVmsOutputReference(this, "vms");
4045
+ get vms() {
4046
+ return this._vms;
4047
+ }
4048
+ putVms(value) {
4049
+ this._vms.internalValue = value;
4050
+ }
4051
+ resetVms() {
4052
+ this._vms.internalValue = undefined;
4053
+ }
4054
+ // Temporarily expose input value. Use with caution.
4055
+ get vmsInput() {
4056
+ return this._vms.internalValue;
4057
+ }
4058
+ // vpn_gateway - computed: false, optional: true, required: false
4059
+ _vpnGateway = new CloudAzureIntegrationsVpnGatewayOutputReference(this, "vpn_gateway");
4060
+ get vpnGateway() {
4061
+ return this._vpnGateway;
4062
+ }
4063
+ putVpnGateway(value) {
4064
+ this._vpnGateway.internalValue = value;
4065
+ }
4066
+ resetVpnGateway() {
4067
+ this._vpnGateway.internalValue = undefined;
4068
+ }
4069
+ // Temporarily expose input value. Use with caution.
4070
+ get vpnGatewayInput() {
4071
+ return this._vpnGateway.internalValue;
4072
+ }
4073
+ // =========
4074
+ // SYNTHESIS
4075
+ // =========
4076
+ synthesizeAttributes() {
4077
+ return {
4078
+ account_id: cdktf.numberToTerraform(this._accountId),
4079
+ id: cdktf.stringToTerraform(this._id),
4080
+ linked_account_id: cdktf.numberToTerraform(this._linkedAccountId),
4081
+ api_management: cloudAzureIntegrationsApiManagementToTerraform(this._apiManagement.internalValue),
4082
+ app_gateway: cloudAzureIntegrationsAppGatewayToTerraform(this._appGateway.internalValue),
4083
+ app_service: cloudAzureIntegrationsAppServiceToTerraform(this._appService.internalValue),
4084
+ auto_discovery: cloudAzureIntegrationsAutoDiscoveryToTerraform(this._autoDiscovery.internalValue),
4085
+ containers: cloudAzureIntegrationsContainersToTerraform(this._containers.internalValue),
4086
+ cosmos_db: cloudAzureIntegrationsCosmosDbToTerraform(this._cosmosDb.internalValue),
4087
+ cost_management: cloudAzureIntegrationsCostManagementToTerraform(this._costManagement.internalValue),
4088
+ data_factory: cloudAzureIntegrationsDataFactoryToTerraform(this._dataFactory.internalValue),
4089
+ event_hub: cloudAzureIntegrationsEventHubToTerraform(this._eventHub.internalValue),
4090
+ express_route: cloudAzureIntegrationsExpressRouteToTerraform(this._expressRoute.internalValue),
4091
+ firewalls: cloudAzureIntegrationsFirewallsToTerraform(this._firewalls.internalValue),
4092
+ front_door: cloudAzureIntegrationsFrontDoorToTerraform(this._frontDoor.internalValue),
4093
+ functions: cloudAzureIntegrationsFunctionsToTerraform(this._functions.internalValue),
4094
+ key_vault: cloudAzureIntegrationsKeyVaultToTerraform(this._keyVault.internalValue),
4095
+ load_balancer: cloudAzureIntegrationsLoadBalancerToTerraform(this._loadBalancer.internalValue),
4096
+ logic_apps: cloudAzureIntegrationsLogicAppsToTerraform(this._logicApps.internalValue),
4097
+ machine_learning: cloudAzureIntegrationsMachineLearningToTerraform(this._machineLearning.internalValue),
4098
+ maria_db: cloudAzureIntegrationsMariaDbToTerraform(this._mariaDb.internalValue),
4099
+ monitor: cloudAzureIntegrationsMonitorToTerraform(this._monitor.internalValue),
4100
+ mysql: cloudAzureIntegrationsMysqlToTerraform(this._mysql.internalValue),
4101
+ mysql_flexible: cloudAzureIntegrationsMysqlFlexibleToTerraform(this._mysqlFlexible.internalValue),
4102
+ postgresql: cloudAzureIntegrationsPostgresqlToTerraform(this._postgresql.internalValue),
4103
+ postgresql_flexible: cloudAzureIntegrationsPostgresqlFlexibleToTerraform(this._postgresqlFlexible.internalValue),
4104
+ power_bi_dedicated: cloudAzureIntegrationsPowerBiDedicatedToTerraform(this._powerBiDedicated.internalValue),
4105
+ redis_cache: cloudAzureIntegrationsRedisCacheToTerraform(this._redisCache.internalValue),
4106
+ service_bus: cloudAzureIntegrationsServiceBusToTerraform(this._serviceBus.internalValue),
4107
+ sql: cloudAzureIntegrationsSqlToTerraform(this._sql.internalValue),
4108
+ sql_managed: cloudAzureIntegrationsSqlManagedToTerraform(this._sqlManaged.internalValue),
4109
+ storage: cloudAzureIntegrationsStorageToTerraform(this._storage.internalValue),
4110
+ virtual_machine: cloudAzureIntegrationsVirtualMachineToTerraform(this._virtualMachine.internalValue),
4111
+ virtual_networks: cloudAzureIntegrationsVirtualNetworksToTerraform(this._virtualNetworks.internalValue),
4112
+ vms: cloudAzureIntegrationsVmsToTerraform(this._vms.internalValue),
4113
+ vpn_gateway: cloudAzureIntegrationsVpnGatewayToTerraform(this._vpnGateway.internalValue),
4114
+ };
4115
+ }
4116
+ synthesizeHclAttributes() {
4117
+ const attrs = {
4118
+ account_id: {
4119
+ value: cdktf.numberToHclTerraform(this._accountId),
4120
+ isBlock: false,
4121
+ type: "simple",
4122
+ storageClassType: "number",
4123
+ },
4124
+ id: {
4125
+ value: cdktf.stringToHclTerraform(this._id),
4126
+ isBlock: false,
4127
+ type: "simple",
4128
+ storageClassType: "string",
4129
+ },
4130
+ linked_account_id: {
4131
+ value: cdktf.numberToHclTerraform(this._linkedAccountId),
4132
+ isBlock: false,
4133
+ type: "simple",
4134
+ storageClassType: "number",
4135
+ },
4136
+ api_management: {
4137
+ value: cloudAzureIntegrationsApiManagementToHclTerraform(this._apiManagement.internalValue),
4138
+ isBlock: true,
4139
+ type: "list",
4140
+ storageClassType: "CloudAzureIntegrationsApiManagementList",
4141
+ },
4142
+ app_gateway: {
4143
+ value: cloudAzureIntegrationsAppGatewayToHclTerraform(this._appGateway.internalValue),
4144
+ isBlock: true,
4145
+ type: "list",
4146
+ storageClassType: "CloudAzureIntegrationsAppGatewayList",
4147
+ },
4148
+ app_service: {
4149
+ value: cloudAzureIntegrationsAppServiceToHclTerraform(this._appService.internalValue),
4150
+ isBlock: true,
4151
+ type: "list",
4152
+ storageClassType: "CloudAzureIntegrationsAppServiceList",
4153
+ },
4154
+ auto_discovery: {
4155
+ value: cloudAzureIntegrationsAutoDiscoveryToHclTerraform(this._autoDiscovery.internalValue),
4156
+ isBlock: true,
4157
+ type: "list",
4158
+ storageClassType: "CloudAzureIntegrationsAutoDiscoveryList",
4159
+ },
4160
+ containers: {
4161
+ value: cloudAzureIntegrationsContainersToHclTerraform(this._containers.internalValue),
4162
+ isBlock: true,
4163
+ type: "list",
4164
+ storageClassType: "CloudAzureIntegrationsContainersList",
4165
+ },
4166
+ cosmos_db: {
4167
+ value: cloudAzureIntegrationsCosmosDbToHclTerraform(this._cosmosDb.internalValue),
4168
+ isBlock: true,
4169
+ type: "list",
4170
+ storageClassType: "CloudAzureIntegrationsCosmosDbList",
4171
+ },
4172
+ cost_management: {
4173
+ value: cloudAzureIntegrationsCostManagementToHclTerraform(this._costManagement.internalValue),
4174
+ isBlock: true,
4175
+ type: "list",
4176
+ storageClassType: "CloudAzureIntegrationsCostManagementList",
4177
+ },
4178
+ data_factory: {
4179
+ value: cloudAzureIntegrationsDataFactoryToHclTerraform(this._dataFactory.internalValue),
4180
+ isBlock: true,
4181
+ type: "list",
4182
+ storageClassType: "CloudAzureIntegrationsDataFactoryList",
4183
+ },
4184
+ event_hub: {
4185
+ value: cloudAzureIntegrationsEventHubToHclTerraform(this._eventHub.internalValue),
4186
+ isBlock: true,
4187
+ type: "list",
4188
+ storageClassType: "CloudAzureIntegrationsEventHubList",
4189
+ },
4190
+ express_route: {
4191
+ value: cloudAzureIntegrationsExpressRouteToHclTerraform(this._expressRoute.internalValue),
4192
+ isBlock: true,
4193
+ type: "list",
4194
+ storageClassType: "CloudAzureIntegrationsExpressRouteList",
4195
+ },
4196
+ firewalls: {
4197
+ value: cloudAzureIntegrationsFirewallsToHclTerraform(this._firewalls.internalValue),
4198
+ isBlock: true,
4199
+ type: "list",
4200
+ storageClassType: "CloudAzureIntegrationsFirewallsList",
4201
+ },
4202
+ front_door: {
4203
+ value: cloudAzureIntegrationsFrontDoorToHclTerraform(this._frontDoor.internalValue),
4204
+ isBlock: true,
4205
+ type: "list",
4206
+ storageClassType: "CloudAzureIntegrationsFrontDoorList",
4207
+ },
4208
+ functions: {
4209
+ value: cloudAzureIntegrationsFunctionsToHclTerraform(this._functions.internalValue),
4210
+ isBlock: true,
4211
+ type: "list",
4212
+ storageClassType: "CloudAzureIntegrationsFunctionsList",
4213
+ },
4214
+ key_vault: {
4215
+ value: cloudAzureIntegrationsKeyVaultToHclTerraform(this._keyVault.internalValue),
4216
+ isBlock: true,
4217
+ type: "list",
4218
+ storageClassType: "CloudAzureIntegrationsKeyVaultList",
4219
+ },
4220
+ load_balancer: {
4221
+ value: cloudAzureIntegrationsLoadBalancerToHclTerraform(this._loadBalancer.internalValue),
4222
+ isBlock: true,
4223
+ type: "list",
4224
+ storageClassType: "CloudAzureIntegrationsLoadBalancerList",
4225
+ },
4226
+ logic_apps: {
4227
+ value: cloudAzureIntegrationsLogicAppsToHclTerraform(this._logicApps.internalValue),
4228
+ isBlock: true,
4229
+ type: "list",
4230
+ storageClassType: "CloudAzureIntegrationsLogicAppsList",
4231
+ },
4232
+ machine_learning: {
4233
+ value: cloudAzureIntegrationsMachineLearningToHclTerraform(this._machineLearning.internalValue),
4234
+ isBlock: true,
4235
+ type: "list",
4236
+ storageClassType: "CloudAzureIntegrationsMachineLearningList",
4237
+ },
4238
+ maria_db: {
4239
+ value: cloudAzureIntegrationsMariaDbToHclTerraform(this._mariaDb.internalValue),
4240
+ isBlock: true,
4241
+ type: "list",
4242
+ storageClassType: "CloudAzureIntegrationsMariaDbList",
4243
+ },
4244
+ monitor: {
4245
+ value: cloudAzureIntegrationsMonitorToHclTerraform(this._monitor.internalValue),
4246
+ isBlock: true,
4247
+ type: "list",
4248
+ storageClassType: "CloudAzureIntegrationsMonitorList",
4249
+ },
4250
+ mysql: {
4251
+ value: cloudAzureIntegrationsMysqlToHclTerraform(this._mysql.internalValue),
4252
+ isBlock: true,
4253
+ type: "list",
4254
+ storageClassType: "CloudAzureIntegrationsMysqlList",
4255
+ },
4256
+ mysql_flexible: {
4257
+ value: cloudAzureIntegrationsMysqlFlexibleToHclTerraform(this._mysqlFlexible.internalValue),
4258
+ isBlock: true,
4259
+ type: "list",
4260
+ storageClassType: "CloudAzureIntegrationsMysqlFlexibleList",
4261
+ },
4262
+ postgresql: {
4263
+ value: cloudAzureIntegrationsPostgresqlToHclTerraform(this._postgresql.internalValue),
4264
+ isBlock: true,
4265
+ type: "list",
4266
+ storageClassType: "CloudAzureIntegrationsPostgresqlList",
4267
+ },
4268
+ postgresql_flexible: {
4269
+ value: cloudAzureIntegrationsPostgresqlFlexibleToHclTerraform(this._postgresqlFlexible.internalValue),
4270
+ isBlock: true,
4271
+ type: "list",
4272
+ storageClassType: "CloudAzureIntegrationsPostgresqlFlexibleList",
4273
+ },
4274
+ power_bi_dedicated: {
4275
+ value: cloudAzureIntegrationsPowerBiDedicatedToHclTerraform(this._powerBiDedicated.internalValue),
4276
+ isBlock: true,
4277
+ type: "list",
4278
+ storageClassType: "CloudAzureIntegrationsPowerBiDedicatedList",
4279
+ },
4280
+ redis_cache: {
4281
+ value: cloudAzureIntegrationsRedisCacheToHclTerraform(this._redisCache.internalValue),
4282
+ isBlock: true,
4283
+ type: "list",
4284
+ storageClassType: "CloudAzureIntegrationsRedisCacheList",
4285
+ },
4286
+ service_bus: {
4287
+ value: cloudAzureIntegrationsServiceBusToHclTerraform(this._serviceBus.internalValue),
4288
+ isBlock: true,
4289
+ type: "list",
4290
+ storageClassType: "CloudAzureIntegrationsServiceBusList",
4291
+ },
4292
+ sql: {
4293
+ value: cloudAzureIntegrationsSqlToHclTerraform(this._sql.internalValue),
4294
+ isBlock: true,
4295
+ type: "list",
4296
+ storageClassType: "CloudAzureIntegrationsSqlList",
4297
+ },
4298
+ sql_managed: {
4299
+ value: cloudAzureIntegrationsSqlManagedToHclTerraform(this._sqlManaged.internalValue),
4300
+ isBlock: true,
4301
+ type: "list",
4302
+ storageClassType: "CloudAzureIntegrationsSqlManagedList",
4303
+ },
4304
+ storage: {
4305
+ value: cloudAzureIntegrationsStorageToHclTerraform(this._storage.internalValue),
4306
+ isBlock: true,
4307
+ type: "list",
4308
+ storageClassType: "CloudAzureIntegrationsStorageList",
4309
+ },
4310
+ virtual_machine: {
4311
+ value: cloudAzureIntegrationsVirtualMachineToHclTerraform(this._virtualMachine.internalValue),
4312
+ isBlock: true,
4313
+ type: "list",
4314
+ storageClassType: "CloudAzureIntegrationsVirtualMachineList",
4315
+ },
4316
+ virtual_networks: {
4317
+ value: cloudAzureIntegrationsVirtualNetworksToHclTerraform(this._virtualNetworks.internalValue),
4318
+ isBlock: true,
4319
+ type: "list",
4320
+ storageClassType: "CloudAzureIntegrationsVirtualNetworksList",
4321
+ },
4322
+ vms: {
4323
+ value: cloudAzureIntegrationsVmsToHclTerraform(this._vms.internalValue),
4324
+ isBlock: true,
4325
+ type: "list",
4326
+ storageClassType: "CloudAzureIntegrationsVmsList",
4327
+ },
4328
+ vpn_gateway: {
4329
+ value: cloudAzureIntegrationsVpnGatewayToHclTerraform(this._vpnGateway.internalValue),
4330
+ isBlock: true,
4331
+ type: "list",
4332
+ storageClassType: "CloudAzureIntegrationsVpnGatewayList",
4333
+ },
4334
+ };
4335
+ // remove undefined attributes
4336
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
4337
+ }
4338
+ }