@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,1066 @@
1
+ // https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/workflow
2
+ // generated from terraform resource schema
3
+ import * as cdktf from 'cdktf';
4
+ export function workflowDestinationToTerraform(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
+ channel_id: cdktf.stringToTerraform(struct.channelId),
13
+ notification_triggers: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.notificationTriggers),
14
+ update_original_message: cdktf.booleanToTerraform(struct.updateOriginalMessage),
15
+ };
16
+ }
17
+ export function workflowDestinationToHclTerraform(struct) {
18
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
19
+ return struct;
20
+ }
21
+ if (cdktf.isComplexElement(struct)) {
22
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
23
+ }
24
+ const attrs = {
25
+ channel_id: {
26
+ value: cdktf.stringToHclTerraform(struct.channelId),
27
+ isBlock: false,
28
+ type: "simple",
29
+ storageClassType: "string",
30
+ },
31
+ notification_triggers: {
32
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.notificationTriggers),
33
+ isBlock: false,
34
+ type: "list",
35
+ storageClassType: "stringList",
36
+ },
37
+ update_original_message: {
38
+ value: cdktf.booleanToHclTerraform(struct.updateOriginalMessage),
39
+ isBlock: false,
40
+ type: "simple",
41
+ storageClassType: "boolean",
42
+ },
43
+ };
44
+ // remove undefined attributes
45
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
46
+ }
47
+ export class WorkflowDestinationOutputReference extends cdktf.ComplexObject {
48
+ isEmptyObject = false;
49
+ resolvableValue;
50
+ /**
51
+ * @param terraformResource The parent resource
52
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
53
+ * @param complexObjectIndex the index of this item in the list
54
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
55
+ */
56
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
57
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
58
+ }
59
+ get internalValue() {
60
+ if (this.resolvableValue) {
61
+ return this.resolvableValue;
62
+ }
63
+ let hasAnyValues = this.isEmptyObject;
64
+ const internalValueResult = {};
65
+ if (this._channelId !== undefined) {
66
+ hasAnyValues = true;
67
+ internalValueResult.channelId = this._channelId;
68
+ }
69
+ if (this._notificationTriggers !== undefined) {
70
+ hasAnyValues = true;
71
+ internalValueResult.notificationTriggers = this._notificationTriggers;
72
+ }
73
+ if (this._updateOriginalMessage !== undefined) {
74
+ hasAnyValues = true;
75
+ internalValueResult.updateOriginalMessage = this._updateOriginalMessage;
76
+ }
77
+ return hasAnyValues ? internalValueResult : undefined;
78
+ }
79
+ set internalValue(value) {
80
+ if (value === undefined) {
81
+ this.isEmptyObject = false;
82
+ this.resolvableValue = undefined;
83
+ this._channelId = undefined;
84
+ this._notificationTriggers = undefined;
85
+ this._updateOriginalMessage = undefined;
86
+ }
87
+ else if (cdktf.Tokenization.isResolvable(value)) {
88
+ this.isEmptyObject = false;
89
+ this.resolvableValue = value;
90
+ }
91
+ else {
92
+ this.isEmptyObject = Object.keys(value).length === 0;
93
+ this.resolvableValue = undefined;
94
+ this._channelId = value.channelId;
95
+ this._notificationTriggers = value.notificationTriggers;
96
+ this._updateOriginalMessage = value.updateOriginalMessage;
97
+ }
98
+ }
99
+ // channel_id - computed: false, optional: false, required: true
100
+ _channelId;
101
+ get channelId() {
102
+ return this.getStringAttribute('channel_id');
103
+ }
104
+ set channelId(value) {
105
+ this._channelId = value;
106
+ }
107
+ // Temporarily expose input value. Use with caution.
108
+ get channelIdInput() {
109
+ return this._channelId;
110
+ }
111
+ // name - computed: true, optional: false, required: false
112
+ get name() {
113
+ return this.getStringAttribute('name');
114
+ }
115
+ // notification_triggers - computed: true, optional: true, required: false
116
+ _notificationTriggers;
117
+ get notificationTriggers() {
118
+ return this.getListAttribute('notification_triggers');
119
+ }
120
+ set notificationTriggers(value) {
121
+ this._notificationTriggers = value;
122
+ }
123
+ resetNotificationTriggers() {
124
+ this._notificationTriggers = undefined;
125
+ }
126
+ // Temporarily expose input value. Use with caution.
127
+ get notificationTriggersInput() {
128
+ return this._notificationTriggers;
129
+ }
130
+ // type - computed: true, optional: false, required: false
131
+ get type() {
132
+ return this.getStringAttribute('type');
133
+ }
134
+ // update_original_message - computed: true, optional: true, required: false
135
+ _updateOriginalMessage;
136
+ get updateOriginalMessage() {
137
+ return this.getBooleanAttribute('update_original_message');
138
+ }
139
+ set updateOriginalMessage(value) {
140
+ this._updateOriginalMessage = value;
141
+ }
142
+ resetUpdateOriginalMessage() {
143
+ this._updateOriginalMessage = undefined;
144
+ }
145
+ // Temporarily expose input value. Use with caution.
146
+ get updateOriginalMessageInput() {
147
+ return this._updateOriginalMessage;
148
+ }
149
+ }
150
+ export class WorkflowDestinationList extends cdktf.ComplexList {
151
+ terraformResource;
152
+ terraformAttribute;
153
+ wrapsSet;
154
+ internalValue;
155
+ /**
156
+ * @param terraformResource The parent resource
157
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
158
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
159
+ */
160
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
161
+ super(terraformResource, terraformAttribute, wrapsSet);
162
+ this.terraformResource = terraformResource;
163
+ this.terraformAttribute = terraformAttribute;
164
+ this.wrapsSet = wrapsSet;
165
+ }
166
+ /**
167
+ * @param index the index of the item to return
168
+ */
169
+ get(index) {
170
+ return new WorkflowDestinationOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
171
+ }
172
+ }
173
+ export function workflowEnrichmentsNrqlConfigurationToTerraform(struct) {
174
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
175
+ return struct;
176
+ }
177
+ if (cdktf.isComplexElement(struct)) {
178
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
179
+ }
180
+ return {
181
+ query: cdktf.stringToTerraform(struct.query),
182
+ };
183
+ }
184
+ export function workflowEnrichmentsNrqlConfigurationToHclTerraform(struct) {
185
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
186
+ return struct;
187
+ }
188
+ if (cdktf.isComplexElement(struct)) {
189
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
190
+ }
191
+ const attrs = {
192
+ query: {
193
+ value: cdktf.stringToHclTerraform(struct.query),
194
+ isBlock: false,
195
+ type: "simple",
196
+ storageClassType: "string",
197
+ },
198
+ };
199
+ // remove undefined attributes
200
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
201
+ }
202
+ export class WorkflowEnrichmentsNrqlConfigurationOutputReference extends cdktf.ComplexObject {
203
+ isEmptyObject = false;
204
+ resolvableValue;
205
+ /**
206
+ * @param terraformResource The parent resource
207
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
208
+ * @param complexObjectIndex the index of this item in the list
209
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
210
+ */
211
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
212
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
213
+ }
214
+ get internalValue() {
215
+ if (this.resolvableValue) {
216
+ return this.resolvableValue;
217
+ }
218
+ let hasAnyValues = this.isEmptyObject;
219
+ const internalValueResult = {};
220
+ if (this._query !== undefined) {
221
+ hasAnyValues = true;
222
+ internalValueResult.query = this._query;
223
+ }
224
+ return hasAnyValues ? internalValueResult : undefined;
225
+ }
226
+ set internalValue(value) {
227
+ if (value === undefined) {
228
+ this.isEmptyObject = false;
229
+ this.resolvableValue = undefined;
230
+ this._query = undefined;
231
+ }
232
+ else if (cdktf.Tokenization.isResolvable(value)) {
233
+ this.isEmptyObject = false;
234
+ this.resolvableValue = value;
235
+ }
236
+ else {
237
+ this.isEmptyObject = Object.keys(value).length === 0;
238
+ this.resolvableValue = undefined;
239
+ this._query = value.query;
240
+ }
241
+ }
242
+ // query - computed: false, optional: false, required: true
243
+ _query;
244
+ get query() {
245
+ return this.getStringAttribute('query');
246
+ }
247
+ set query(value) {
248
+ this._query = value;
249
+ }
250
+ // Temporarily expose input value. Use with caution.
251
+ get queryInput() {
252
+ return this._query;
253
+ }
254
+ }
255
+ export class WorkflowEnrichmentsNrqlConfigurationList extends cdktf.ComplexList {
256
+ terraformResource;
257
+ terraformAttribute;
258
+ wrapsSet;
259
+ internalValue;
260
+ /**
261
+ * @param terraformResource The parent resource
262
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
263
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
264
+ */
265
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
266
+ super(terraformResource, terraformAttribute, wrapsSet);
267
+ this.terraformResource = terraformResource;
268
+ this.terraformAttribute = terraformAttribute;
269
+ this.wrapsSet = wrapsSet;
270
+ }
271
+ /**
272
+ * @param index the index of the item to return
273
+ */
274
+ get(index) {
275
+ return new WorkflowEnrichmentsNrqlConfigurationOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
276
+ }
277
+ }
278
+ export function workflowEnrichmentsNrqlToTerraform(struct) {
279
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
280
+ return struct;
281
+ }
282
+ if (cdktf.isComplexElement(struct)) {
283
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
284
+ }
285
+ return {
286
+ name: cdktf.stringToTerraform(struct.name),
287
+ configuration: cdktf.listMapper(workflowEnrichmentsNrqlConfigurationToTerraform, true)(struct.configuration),
288
+ };
289
+ }
290
+ export function workflowEnrichmentsNrqlToHclTerraform(struct) {
291
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
292
+ return struct;
293
+ }
294
+ if (cdktf.isComplexElement(struct)) {
295
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
296
+ }
297
+ const attrs = {
298
+ name: {
299
+ value: cdktf.stringToHclTerraform(struct.name),
300
+ isBlock: false,
301
+ type: "simple",
302
+ storageClassType: "string",
303
+ },
304
+ configuration: {
305
+ value: cdktf.listMapperHcl(workflowEnrichmentsNrqlConfigurationToHclTerraform, true)(struct.configuration),
306
+ isBlock: true,
307
+ type: "list",
308
+ storageClassType: "WorkflowEnrichmentsNrqlConfigurationList",
309
+ },
310
+ };
311
+ // remove undefined attributes
312
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
313
+ }
314
+ export class WorkflowEnrichmentsNrqlOutputReference extends cdktf.ComplexObject {
315
+ isEmptyObject = false;
316
+ resolvableValue;
317
+ /**
318
+ * @param terraformResource The parent resource
319
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
320
+ * @param complexObjectIndex the index of this item in the list
321
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
322
+ */
323
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
324
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
325
+ }
326
+ get internalValue() {
327
+ if (this.resolvableValue) {
328
+ return this.resolvableValue;
329
+ }
330
+ let hasAnyValues = this.isEmptyObject;
331
+ const internalValueResult = {};
332
+ if (this._name !== undefined) {
333
+ hasAnyValues = true;
334
+ internalValueResult.name = this._name;
335
+ }
336
+ if (this._configuration?.internalValue !== undefined) {
337
+ hasAnyValues = true;
338
+ internalValueResult.configuration = this._configuration?.internalValue;
339
+ }
340
+ return hasAnyValues ? internalValueResult : undefined;
341
+ }
342
+ set internalValue(value) {
343
+ if (value === undefined) {
344
+ this.isEmptyObject = false;
345
+ this.resolvableValue = undefined;
346
+ this._name = undefined;
347
+ this._configuration.internalValue = undefined;
348
+ }
349
+ else if (cdktf.Tokenization.isResolvable(value)) {
350
+ this.isEmptyObject = false;
351
+ this.resolvableValue = value;
352
+ }
353
+ else {
354
+ this.isEmptyObject = Object.keys(value).length === 0;
355
+ this.resolvableValue = undefined;
356
+ this._name = value.name;
357
+ this._configuration.internalValue = value.configuration;
358
+ }
359
+ }
360
+ // account_id - computed: true, optional: false, required: false
361
+ get accountId() {
362
+ return this.getNumberAttribute('account_id');
363
+ }
364
+ // enrichment_id - computed: true, optional: false, required: false
365
+ get enrichmentId() {
366
+ return this.getStringAttribute('enrichment_id');
367
+ }
368
+ // name - computed: false, optional: false, required: true
369
+ _name;
370
+ get name() {
371
+ return this.getStringAttribute('name');
372
+ }
373
+ set name(value) {
374
+ this._name = value;
375
+ }
376
+ // Temporarily expose input value. Use with caution.
377
+ get nameInput() {
378
+ return this._name;
379
+ }
380
+ // type - computed: true, optional: false, required: false
381
+ get type() {
382
+ return this.getStringAttribute('type');
383
+ }
384
+ // configuration - computed: false, optional: false, required: true
385
+ _configuration = new WorkflowEnrichmentsNrqlConfigurationList(this, "configuration", false);
386
+ get configuration() {
387
+ return this._configuration;
388
+ }
389
+ putConfiguration(value) {
390
+ this._configuration.internalValue = value;
391
+ }
392
+ // Temporarily expose input value. Use with caution.
393
+ get configurationInput() {
394
+ return this._configuration.internalValue;
395
+ }
396
+ }
397
+ export class WorkflowEnrichmentsNrqlList extends cdktf.ComplexList {
398
+ terraformResource;
399
+ terraformAttribute;
400
+ wrapsSet;
401
+ internalValue;
402
+ /**
403
+ * @param terraformResource The parent resource
404
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
405
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
406
+ */
407
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
408
+ super(terraformResource, terraformAttribute, wrapsSet);
409
+ this.terraformResource = terraformResource;
410
+ this.terraformAttribute = terraformAttribute;
411
+ this.wrapsSet = wrapsSet;
412
+ }
413
+ /**
414
+ * @param index the index of the item to return
415
+ */
416
+ get(index) {
417
+ return new WorkflowEnrichmentsNrqlOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
418
+ }
419
+ }
420
+ export function workflowEnrichmentsToTerraform(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
+ return {
428
+ nrql: cdktf.listMapper(workflowEnrichmentsNrqlToTerraform, true)(struct.nrql),
429
+ };
430
+ }
431
+ export function workflowEnrichmentsToHclTerraform(struct) {
432
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
433
+ return struct;
434
+ }
435
+ if (cdktf.isComplexElement(struct)) {
436
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
437
+ }
438
+ const attrs = {
439
+ nrql: {
440
+ value: cdktf.listMapperHcl(workflowEnrichmentsNrqlToHclTerraform, true)(struct.nrql),
441
+ isBlock: true,
442
+ type: "list",
443
+ storageClassType: "WorkflowEnrichmentsNrqlList",
444
+ },
445
+ };
446
+ // remove undefined attributes
447
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
448
+ }
449
+ export class WorkflowEnrichmentsOutputReference extends cdktf.ComplexObject {
450
+ isEmptyObject = false;
451
+ /**
452
+ * @param terraformResource The parent resource
453
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
454
+ */
455
+ constructor(terraformResource, terraformAttribute) {
456
+ super(terraformResource, terraformAttribute, false, 0);
457
+ }
458
+ get internalValue() {
459
+ let hasAnyValues = this.isEmptyObject;
460
+ const internalValueResult = {};
461
+ if (this._nrql?.internalValue !== undefined) {
462
+ hasAnyValues = true;
463
+ internalValueResult.nrql = this._nrql?.internalValue;
464
+ }
465
+ return hasAnyValues ? internalValueResult : undefined;
466
+ }
467
+ set internalValue(value) {
468
+ if (value === undefined) {
469
+ this.isEmptyObject = false;
470
+ this._nrql.internalValue = undefined;
471
+ }
472
+ else {
473
+ this.isEmptyObject = Object.keys(value).length === 0;
474
+ this._nrql.internalValue = value.nrql;
475
+ }
476
+ }
477
+ // nrql - computed: false, optional: false, required: true
478
+ _nrql = new WorkflowEnrichmentsNrqlList(this, "nrql", false);
479
+ get nrql() {
480
+ return this._nrql;
481
+ }
482
+ putNrql(value) {
483
+ this._nrql.internalValue = value;
484
+ }
485
+ // Temporarily expose input value. Use with caution.
486
+ get nrqlInput() {
487
+ return this._nrql.internalValue;
488
+ }
489
+ }
490
+ export function workflowIssuesFilterPredicateToTerraform(struct) {
491
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
492
+ return struct;
493
+ }
494
+ if (cdktf.isComplexElement(struct)) {
495
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
496
+ }
497
+ return {
498
+ attribute: cdktf.stringToTerraform(struct.attribute),
499
+ operator: cdktf.stringToTerraform(struct.operator),
500
+ values: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.values),
501
+ };
502
+ }
503
+ export function workflowIssuesFilterPredicateToHclTerraform(struct) {
504
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
505
+ return struct;
506
+ }
507
+ if (cdktf.isComplexElement(struct)) {
508
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
509
+ }
510
+ const attrs = {
511
+ attribute: {
512
+ value: cdktf.stringToHclTerraform(struct.attribute),
513
+ isBlock: false,
514
+ type: "simple",
515
+ storageClassType: "string",
516
+ },
517
+ operator: {
518
+ value: cdktf.stringToHclTerraform(struct.operator),
519
+ isBlock: false,
520
+ type: "simple",
521
+ storageClassType: "string",
522
+ },
523
+ values: {
524
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.values),
525
+ isBlock: false,
526
+ type: "list",
527
+ storageClassType: "stringList",
528
+ },
529
+ };
530
+ // remove undefined attributes
531
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
532
+ }
533
+ export class WorkflowIssuesFilterPredicateOutputReference extends cdktf.ComplexObject {
534
+ isEmptyObject = false;
535
+ resolvableValue;
536
+ /**
537
+ * @param terraformResource The parent resource
538
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
539
+ * @param complexObjectIndex the index of this item in the list
540
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
541
+ */
542
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
543
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
544
+ }
545
+ get internalValue() {
546
+ if (this.resolvableValue) {
547
+ return this.resolvableValue;
548
+ }
549
+ let hasAnyValues = this.isEmptyObject;
550
+ const internalValueResult = {};
551
+ if (this._attribute !== undefined) {
552
+ hasAnyValues = true;
553
+ internalValueResult.attribute = this._attribute;
554
+ }
555
+ if (this._operator !== undefined) {
556
+ hasAnyValues = true;
557
+ internalValueResult.operator = this._operator;
558
+ }
559
+ if (this._values !== undefined) {
560
+ hasAnyValues = true;
561
+ internalValueResult.values = this._values;
562
+ }
563
+ return hasAnyValues ? internalValueResult : undefined;
564
+ }
565
+ set internalValue(value) {
566
+ if (value === undefined) {
567
+ this.isEmptyObject = false;
568
+ this.resolvableValue = undefined;
569
+ this._attribute = undefined;
570
+ this._operator = undefined;
571
+ this._values = undefined;
572
+ }
573
+ else if (cdktf.Tokenization.isResolvable(value)) {
574
+ this.isEmptyObject = false;
575
+ this.resolvableValue = value;
576
+ }
577
+ else {
578
+ this.isEmptyObject = Object.keys(value).length === 0;
579
+ this.resolvableValue = undefined;
580
+ this._attribute = value.attribute;
581
+ this._operator = value.operator;
582
+ this._values = value.values;
583
+ }
584
+ }
585
+ // attribute - computed: false, optional: false, required: true
586
+ _attribute;
587
+ get attribute() {
588
+ return this.getStringAttribute('attribute');
589
+ }
590
+ set attribute(value) {
591
+ this._attribute = value;
592
+ }
593
+ // Temporarily expose input value. Use with caution.
594
+ get attributeInput() {
595
+ return this._attribute;
596
+ }
597
+ // operator - computed: false, optional: false, required: true
598
+ _operator;
599
+ get operator() {
600
+ return this.getStringAttribute('operator');
601
+ }
602
+ set operator(value) {
603
+ this._operator = value;
604
+ }
605
+ // Temporarily expose input value. Use with caution.
606
+ get operatorInput() {
607
+ return this._operator;
608
+ }
609
+ // values - computed: false, optional: false, required: true
610
+ _values;
611
+ get values() {
612
+ return this.getListAttribute('values');
613
+ }
614
+ set values(value) {
615
+ this._values = value;
616
+ }
617
+ // Temporarily expose input value. Use with caution.
618
+ get valuesInput() {
619
+ return this._values;
620
+ }
621
+ }
622
+ export class WorkflowIssuesFilterPredicateList extends cdktf.ComplexList {
623
+ terraformResource;
624
+ terraformAttribute;
625
+ wrapsSet;
626
+ internalValue;
627
+ /**
628
+ * @param terraformResource The parent resource
629
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
630
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
631
+ */
632
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
633
+ super(terraformResource, terraformAttribute, wrapsSet);
634
+ this.terraformResource = terraformResource;
635
+ this.terraformAttribute = terraformAttribute;
636
+ this.wrapsSet = wrapsSet;
637
+ }
638
+ /**
639
+ * @param index the index of the item to return
640
+ */
641
+ get(index) {
642
+ return new WorkflowIssuesFilterPredicateOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
643
+ }
644
+ }
645
+ export function workflowIssuesFilterToTerraform(struct) {
646
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
647
+ return struct;
648
+ }
649
+ if (cdktf.isComplexElement(struct)) {
650
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
651
+ }
652
+ return {
653
+ name: cdktf.stringToTerraform(struct.name),
654
+ type: cdktf.stringToTerraform(struct.type),
655
+ predicate: cdktf.listMapper(workflowIssuesFilterPredicateToTerraform, true)(struct.predicate),
656
+ };
657
+ }
658
+ export function workflowIssuesFilterToHclTerraform(struct) {
659
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
660
+ return struct;
661
+ }
662
+ if (cdktf.isComplexElement(struct)) {
663
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
664
+ }
665
+ const attrs = {
666
+ name: {
667
+ value: cdktf.stringToHclTerraform(struct.name),
668
+ isBlock: false,
669
+ type: "simple",
670
+ storageClassType: "string",
671
+ },
672
+ type: {
673
+ value: cdktf.stringToHclTerraform(struct.type),
674
+ isBlock: false,
675
+ type: "simple",
676
+ storageClassType: "string",
677
+ },
678
+ predicate: {
679
+ value: cdktf.listMapperHcl(workflowIssuesFilterPredicateToHclTerraform, true)(struct.predicate),
680
+ isBlock: true,
681
+ type: "list",
682
+ storageClassType: "WorkflowIssuesFilterPredicateList",
683
+ },
684
+ };
685
+ // remove undefined attributes
686
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
687
+ }
688
+ export class WorkflowIssuesFilterOutputReference extends cdktf.ComplexObject {
689
+ isEmptyObject = false;
690
+ /**
691
+ * @param terraformResource The parent resource
692
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
693
+ */
694
+ constructor(terraformResource, terraformAttribute) {
695
+ super(terraformResource, terraformAttribute, false, 0);
696
+ }
697
+ get internalValue() {
698
+ let hasAnyValues = this.isEmptyObject;
699
+ const internalValueResult = {};
700
+ if (this._name !== undefined) {
701
+ hasAnyValues = true;
702
+ internalValueResult.name = this._name;
703
+ }
704
+ if (this._type !== undefined) {
705
+ hasAnyValues = true;
706
+ internalValueResult.type = this._type;
707
+ }
708
+ if (this._predicate?.internalValue !== undefined) {
709
+ hasAnyValues = true;
710
+ internalValueResult.predicate = this._predicate?.internalValue;
711
+ }
712
+ return hasAnyValues ? internalValueResult : undefined;
713
+ }
714
+ set internalValue(value) {
715
+ if (value === undefined) {
716
+ this.isEmptyObject = false;
717
+ this._name = undefined;
718
+ this._type = undefined;
719
+ this._predicate.internalValue = undefined;
720
+ }
721
+ else {
722
+ this.isEmptyObject = Object.keys(value).length === 0;
723
+ this._name = value.name;
724
+ this._type = value.type;
725
+ this._predicate.internalValue = value.predicate;
726
+ }
727
+ }
728
+ // filter_id - computed: true, optional: false, required: false
729
+ get filterId() {
730
+ return this.getStringAttribute('filter_id');
731
+ }
732
+ // name - computed: false, optional: false, required: true
733
+ _name;
734
+ get name() {
735
+ return this.getStringAttribute('name');
736
+ }
737
+ set name(value) {
738
+ this._name = value;
739
+ }
740
+ // Temporarily expose input value. Use with caution.
741
+ get nameInput() {
742
+ return this._name;
743
+ }
744
+ // type - computed: false, optional: false, required: true
745
+ _type;
746
+ get type() {
747
+ return this.getStringAttribute('type');
748
+ }
749
+ set type(value) {
750
+ this._type = value;
751
+ }
752
+ // Temporarily expose input value. Use with caution.
753
+ get typeInput() {
754
+ return this._type;
755
+ }
756
+ // predicate - computed: false, optional: true, required: false
757
+ _predicate = new WorkflowIssuesFilterPredicateList(this, "predicate", false);
758
+ get predicate() {
759
+ return this._predicate;
760
+ }
761
+ putPredicate(value) {
762
+ this._predicate.internalValue = value;
763
+ }
764
+ resetPredicate() {
765
+ this._predicate.internalValue = undefined;
766
+ }
767
+ // Temporarily expose input value. Use with caution.
768
+ get predicateInput() {
769
+ return this._predicate.internalValue;
770
+ }
771
+ }
772
+ /**
773
+ * Represents a {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/workflow newrelic_workflow}
774
+ */
775
+ export class Workflow extends cdktf.TerraformResource {
776
+ // =================
777
+ // STATIC PROPERTIES
778
+ // =================
779
+ static tfResourceType = "newrelic_workflow";
780
+ // ==============
781
+ // STATIC Methods
782
+ // ==============
783
+ /**
784
+ * Generates CDKTF code for importing a Workflow resource upon running "cdktf plan <stack-name>"
785
+ * @param scope The scope in which to define this construct
786
+ * @param importToId The construct id used in the generated config for the Workflow to import
787
+ * @param importFromId The id of the existing Workflow that should be imported. Refer to the {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/workflow#import import section} in the documentation of this resource for the id to use
788
+ * @param provider? Optional instance of the provider where the Workflow to import is found
789
+ */
790
+ static generateConfigForImport(scope, importToId, importFromId, provider) {
791
+ return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "newrelic_workflow", importId: importFromId, provider });
792
+ }
793
+ // ===========
794
+ // INITIALIZER
795
+ // ===========
796
+ /**
797
+ * Create a new {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/workflow newrelic_workflow} Resource
798
+ *
799
+ * @param scope The scope in which to define this construct
800
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
801
+ * @param options WorkflowConfig
802
+ */
803
+ constructor(scope, id, config) {
804
+ super(scope, id, {
805
+ terraformResourceType: 'newrelic_workflow',
806
+ terraformGeneratorMetadata: {
807
+ providerName: 'newrelic',
808
+ providerVersion: '3.75.4',
809
+ providerVersionConstraint: '3.75.4'
810
+ },
811
+ provider: config.provider,
812
+ dependsOn: config.dependsOn,
813
+ count: config.count,
814
+ lifecycle: config.lifecycle,
815
+ provisioners: config.provisioners,
816
+ connection: config.connection,
817
+ forEach: config.forEach
818
+ });
819
+ this._accountId = config.accountId;
820
+ this._destinationsEnabled = config.destinationsEnabled;
821
+ this._enabled = config.enabled;
822
+ this._enrichmentsEnabled = config.enrichmentsEnabled;
823
+ this._id = config.id;
824
+ this._mutingRulesHandling = config.mutingRulesHandling;
825
+ this._name = config.name;
826
+ this._destination.internalValue = config.destination;
827
+ this._enrichments.internalValue = config.enrichments;
828
+ this._issuesFilter.internalValue = config.issuesFilter;
829
+ }
830
+ // ==========
831
+ // ATTRIBUTES
832
+ // ==========
833
+ // account_id - computed: true, optional: true, required: false
834
+ _accountId;
835
+ get accountId() {
836
+ return this.getNumberAttribute('account_id');
837
+ }
838
+ set accountId(value) {
839
+ this._accountId = value;
840
+ }
841
+ resetAccountId() {
842
+ this._accountId = undefined;
843
+ }
844
+ // Temporarily expose input value. Use with caution.
845
+ get accountIdInput() {
846
+ return this._accountId;
847
+ }
848
+ // destinations_enabled - computed: false, optional: true, required: false
849
+ _destinationsEnabled;
850
+ get destinationsEnabled() {
851
+ return this.getBooleanAttribute('destinations_enabled');
852
+ }
853
+ set destinationsEnabled(value) {
854
+ this._destinationsEnabled = value;
855
+ }
856
+ resetDestinationsEnabled() {
857
+ this._destinationsEnabled = undefined;
858
+ }
859
+ // Temporarily expose input value. Use with caution.
860
+ get destinationsEnabledInput() {
861
+ return this._destinationsEnabled;
862
+ }
863
+ // enabled - computed: false, optional: true, required: false
864
+ _enabled;
865
+ get enabled() {
866
+ return this.getBooleanAttribute('enabled');
867
+ }
868
+ set enabled(value) {
869
+ this._enabled = value;
870
+ }
871
+ resetEnabled() {
872
+ this._enabled = undefined;
873
+ }
874
+ // Temporarily expose input value. Use with caution.
875
+ get enabledInput() {
876
+ return this._enabled;
877
+ }
878
+ // enrichments_enabled - computed: false, optional: true, required: false
879
+ _enrichmentsEnabled;
880
+ get enrichmentsEnabled() {
881
+ return this.getBooleanAttribute('enrichments_enabled');
882
+ }
883
+ set enrichmentsEnabled(value) {
884
+ this._enrichmentsEnabled = value;
885
+ }
886
+ resetEnrichmentsEnabled() {
887
+ this._enrichmentsEnabled = undefined;
888
+ }
889
+ // Temporarily expose input value. Use with caution.
890
+ get enrichmentsEnabledInput() {
891
+ return this._enrichmentsEnabled;
892
+ }
893
+ // guid - computed: true, optional: false, required: false
894
+ get guid() {
895
+ return this.getStringAttribute('guid');
896
+ }
897
+ // id - computed: true, optional: true, required: false
898
+ _id;
899
+ get id() {
900
+ return this.getStringAttribute('id');
901
+ }
902
+ set id(value) {
903
+ this._id = value;
904
+ }
905
+ resetId() {
906
+ this._id = undefined;
907
+ }
908
+ // Temporarily expose input value. Use with caution.
909
+ get idInput() {
910
+ return this._id;
911
+ }
912
+ // last_run - computed: true, optional: false, required: false
913
+ get lastRun() {
914
+ return this.getStringAttribute('last_run');
915
+ }
916
+ // muting_rules_handling - computed: false, optional: false, required: true
917
+ _mutingRulesHandling;
918
+ get mutingRulesHandling() {
919
+ return this.getStringAttribute('muting_rules_handling');
920
+ }
921
+ set mutingRulesHandling(value) {
922
+ this._mutingRulesHandling = value;
923
+ }
924
+ // Temporarily expose input value. Use with caution.
925
+ get mutingRulesHandlingInput() {
926
+ return this._mutingRulesHandling;
927
+ }
928
+ // name - computed: false, optional: false, required: true
929
+ _name;
930
+ get name() {
931
+ return this.getStringAttribute('name');
932
+ }
933
+ set name(value) {
934
+ this._name = value;
935
+ }
936
+ // Temporarily expose input value. Use with caution.
937
+ get nameInput() {
938
+ return this._name;
939
+ }
940
+ // workflow_id - computed: true, optional: false, required: false
941
+ get workflowId() {
942
+ return this.getStringAttribute('workflow_id');
943
+ }
944
+ // destination - computed: false, optional: false, required: true
945
+ _destination = new WorkflowDestinationList(this, "destination", true);
946
+ get destination() {
947
+ return this._destination;
948
+ }
949
+ putDestination(value) {
950
+ this._destination.internalValue = value;
951
+ }
952
+ // Temporarily expose input value. Use with caution.
953
+ get destinationInput() {
954
+ return this._destination.internalValue;
955
+ }
956
+ // enrichments - computed: false, optional: true, required: false
957
+ _enrichments = new WorkflowEnrichmentsOutputReference(this, "enrichments");
958
+ get enrichments() {
959
+ return this._enrichments;
960
+ }
961
+ putEnrichments(value) {
962
+ this._enrichments.internalValue = value;
963
+ }
964
+ resetEnrichments() {
965
+ this._enrichments.internalValue = undefined;
966
+ }
967
+ // Temporarily expose input value. Use with caution.
968
+ get enrichmentsInput() {
969
+ return this._enrichments.internalValue;
970
+ }
971
+ // issues_filter - computed: false, optional: false, required: true
972
+ _issuesFilter = new WorkflowIssuesFilterOutputReference(this, "issues_filter");
973
+ get issuesFilter() {
974
+ return this._issuesFilter;
975
+ }
976
+ putIssuesFilter(value) {
977
+ this._issuesFilter.internalValue = value;
978
+ }
979
+ // Temporarily expose input value. Use with caution.
980
+ get issuesFilterInput() {
981
+ return this._issuesFilter.internalValue;
982
+ }
983
+ // =========
984
+ // SYNTHESIS
985
+ // =========
986
+ synthesizeAttributes() {
987
+ return {
988
+ account_id: cdktf.numberToTerraform(this._accountId),
989
+ destinations_enabled: cdktf.booleanToTerraform(this._destinationsEnabled),
990
+ enabled: cdktf.booleanToTerraform(this._enabled),
991
+ enrichments_enabled: cdktf.booleanToTerraform(this._enrichmentsEnabled),
992
+ id: cdktf.stringToTerraform(this._id),
993
+ muting_rules_handling: cdktf.stringToTerraform(this._mutingRulesHandling),
994
+ name: cdktf.stringToTerraform(this._name),
995
+ destination: cdktf.listMapper(workflowDestinationToTerraform, true)(this._destination.internalValue),
996
+ enrichments: workflowEnrichmentsToTerraform(this._enrichments.internalValue),
997
+ issues_filter: workflowIssuesFilterToTerraform(this._issuesFilter.internalValue),
998
+ };
999
+ }
1000
+ synthesizeHclAttributes() {
1001
+ const attrs = {
1002
+ account_id: {
1003
+ value: cdktf.numberToHclTerraform(this._accountId),
1004
+ isBlock: false,
1005
+ type: "simple",
1006
+ storageClassType: "number",
1007
+ },
1008
+ destinations_enabled: {
1009
+ value: cdktf.booleanToHclTerraform(this._destinationsEnabled),
1010
+ isBlock: false,
1011
+ type: "simple",
1012
+ storageClassType: "boolean",
1013
+ },
1014
+ enabled: {
1015
+ value: cdktf.booleanToHclTerraform(this._enabled),
1016
+ isBlock: false,
1017
+ type: "simple",
1018
+ storageClassType: "boolean",
1019
+ },
1020
+ enrichments_enabled: {
1021
+ value: cdktf.booleanToHclTerraform(this._enrichmentsEnabled),
1022
+ isBlock: false,
1023
+ type: "simple",
1024
+ storageClassType: "boolean",
1025
+ },
1026
+ id: {
1027
+ value: cdktf.stringToHclTerraform(this._id),
1028
+ isBlock: false,
1029
+ type: "simple",
1030
+ storageClassType: "string",
1031
+ },
1032
+ muting_rules_handling: {
1033
+ value: cdktf.stringToHclTerraform(this._mutingRulesHandling),
1034
+ isBlock: false,
1035
+ type: "simple",
1036
+ storageClassType: "string",
1037
+ },
1038
+ name: {
1039
+ value: cdktf.stringToHclTerraform(this._name),
1040
+ isBlock: false,
1041
+ type: "simple",
1042
+ storageClassType: "string",
1043
+ },
1044
+ destination: {
1045
+ value: cdktf.listMapperHcl(workflowDestinationToHclTerraform, true)(this._destination.internalValue),
1046
+ isBlock: true,
1047
+ type: "set",
1048
+ storageClassType: "WorkflowDestinationList",
1049
+ },
1050
+ enrichments: {
1051
+ value: workflowEnrichmentsToHclTerraform(this._enrichments.internalValue),
1052
+ isBlock: true,
1053
+ type: "set",
1054
+ storageClassType: "WorkflowEnrichmentsList",
1055
+ },
1056
+ issues_filter: {
1057
+ value: workflowIssuesFilterToHclTerraform(this._issuesFilter.internalValue),
1058
+ isBlock: true,
1059
+ type: "set",
1060
+ storageClassType: "WorkflowIssuesFilterList",
1061
+ },
1062
+ };
1063
+ // remove undefined attributes
1064
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
1065
+ }
1066
+ }