@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,810 @@
1
+ // https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/alert_channel
2
+ // generated from terraform resource schema
3
+ import * as cdktf from 'cdktf';
4
+ export function alertChannelConfigAToTerraform(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
+ api_key: cdktf.stringToTerraform(struct.apiKey),
13
+ auth_password: cdktf.stringToTerraform(struct.authPassword),
14
+ auth_type: cdktf.stringToTerraform(struct.authType),
15
+ auth_username: cdktf.stringToTerraform(struct.authUsername),
16
+ base_url: cdktf.stringToTerraform(struct.baseUrl),
17
+ channel: cdktf.stringToTerraform(struct.channel),
18
+ headers: cdktf.hashMapper(cdktf.stringToTerraform)(struct.headers),
19
+ headers_string: cdktf.stringToTerraform(struct.headersString),
20
+ include_json_attachment: cdktf.stringToTerraform(struct.includeJsonAttachment),
21
+ key: cdktf.stringToTerraform(struct.key),
22
+ payload: cdktf.hashMapper(cdktf.stringToTerraform)(struct.payload),
23
+ payload_string: cdktf.stringToTerraform(struct.payloadString),
24
+ payload_type: cdktf.stringToTerraform(struct.payloadType),
25
+ recipients: cdktf.stringToTerraform(struct.recipients),
26
+ region: cdktf.stringToTerraform(struct.region),
27
+ route_key: cdktf.stringToTerraform(struct.routeKey),
28
+ service_key: cdktf.stringToTerraform(struct.serviceKey),
29
+ tags: cdktf.stringToTerraform(struct.tags),
30
+ teams: cdktf.stringToTerraform(struct.teams),
31
+ url: cdktf.stringToTerraform(struct.url),
32
+ user_id: cdktf.stringToTerraform(struct.userId),
33
+ };
34
+ }
35
+ export function alertChannelConfigAToHclTerraform(struct) {
36
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
37
+ return struct;
38
+ }
39
+ if (cdktf.isComplexElement(struct)) {
40
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
41
+ }
42
+ const attrs = {
43
+ api_key: {
44
+ value: cdktf.stringToHclTerraform(struct.apiKey),
45
+ isBlock: false,
46
+ type: "simple",
47
+ storageClassType: "string",
48
+ },
49
+ auth_password: {
50
+ value: cdktf.stringToHclTerraform(struct.authPassword),
51
+ isBlock: false,
52
+ type: "simple",
53
+ storageClassType: "string",
54
+ },
55
+ auth_type: {
56
+ value: cdktf.stringToHclTerraform(struct.authType),
57
+ isBlock: false,
58
+ type: "simple",
59
+ storageClassType: "string",
60
+ },
61
+ auth_username: {
62
+ value: cdktf.stringToHclTerraform(struct.authUsername),
63
+ isBlock: false,
64
+ type: "simple",
65
+ storageClassType: "string",
66
+ },
67
+ base_url: {
68
+ value: cdktf.stringToHclTerraform(struct.baseUrl),
69
+ isBlock: false,
70
+ type: "simple",
71
+ storageClassType: "string",
72
+ },
73
+ channel: {
74
+ value: cdktf.stringToHclTerraform(struct.channel),
75
+ isBlock: false,
76
+ type: "simple",
77
+ storageClassType: "string",
78
+ },
79
+ headers: {
80
+ value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.headers),
81
+ isBlock: false,
82
+ type: "map",
83
+ storageClassType: "stringMap",
84
+ },
85
+ headers_string: {
86
+ value: cdktf.stringToHclTerraform(struct.headersString),
87
+ isBlock: false,
88
+ type: "simple",
89
+ storageClassType: "string",
90
+ },
91
+ include_json_attachment: {
92
+ value: cdktf.stringToHclTerraform(struct.includeJsonAttachment),
93
+ isBlock: false,
94
+ type: "simple",
95
+ storageClassType: "string",
96
+ },
97
+ key: {
98
+ value: cdktf.stringToHclTerraform(struct.key),
99
+ isBlock: false,
100
+ type: "simple",
101
+ storageClassType: "string",
102
+ },
103
+ payload: {
104
+ value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.payload),
105
+ isBlock: false,
106
+ type: "map",
107
+ storageClassType: "stringMap",
108
+ },
109
+ payload_string: {
110
+ value: cdktf.stringToHclTerraform(struct.payloadString),
111
+ isBlock: false,
112
+ type: "simple",
113
+ storageClassType: "string",
114
+ },
115
+ payload_type: {
116
+ value: cdktf.stringToHclTerraform(struct.payloadType),
117
+ isBlock: false,
118
+ type: "simple",
119
+ storageClassType: "string",
120
+ },
121
+ recipients: {
122
+ value: cdktf.stringToHclTerraform(struct.recipients),
123
+ isBlock: false,
124
+ type: "simple",
125
+ storageClassType: "string",
126
+ },
127
+ region: {
128
+ value: cdktf.stringToHclTerraform(struct.region),
129
+ isBlock: false,
130
+ type: "simple",
131
+ storageClassType: "string",
132
+ },
133
+ route_key: {
134
+ value: cdktf.stringToHclTerraform(struct.routeKey),
135
+ isBlock: false,
136
+ type: "simple",
137
+ storageClassType: "string",
138
+ },
139
+ service_key: {
140
+ value: cdktf.stringToHclTerraform(struct.serviceKey),
141
+ isBlock: false,
142
+ type: "simple",
143
+ storageClassType: "string",
144
+ },
145
+ tags: {
146
+ value: cdktf.stringToHclTerraform(struct.tags),
147
+ isBlock: false,
148
+ type: "simple",
149
+ storageClassType: "string",
150
+ },
151
+ teams: {
152
+ value: cdktf.stringToHclTerraform(struct.teams),
153
+ isBlock: false,
154
+ type: "simple",
155
+ storageClassType: "string",
156
+ },
157
+ url: {
158
+ value: cdktf.stringToHclTerraform(struct.url),
159
+ isBlock: false,
160
+ type: "simple",
161
+ storageClassType: "string",
162
+ },
163
+ user_id: {
164
+ value: cdktf.stringToHclTerraform(struct.userId),
165
+ isBlock: false,
166
+ type: "simple",
167
+ storageClassType: "string",
168
+ },
169
+ };
170
+ // remove undefined attributes
171
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
172
+ }
173
+ export class AlertChannelConfigAOutputReference extends cdktf.ComplexObject {
174
+ isEmptyObject = false;
175
+ /**
176
+ * @param terraformResource The parent resource
177
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
178
+ */
179
+ constructor(terraformResource, terraformAttribute) {
180
+ super(terraformResource, terraformAttribute, false, 0);
181
+ }
182
+ get internalValue() {
183
+ let hasAnyValues = this.isEmptyObject;
184
+ const internalValueResult = {};
185
+ if (this._apiKey !== undefined) {
186
+ hasAnyValues = true;
187
+ internalValueResult.apiKey = this._apiKey;
188
+ }
189
+ if (this._authPassword !== undefined) {
190
+ hasAnyValues = true;
191
+ internalValueResult.authPassword = this._authPassword;
192
+ }
193
+ if (this._authType !== undefined) {
194
+ hasAnyValues = true;
195
+ internalValueResult.authType = this._authType;
196
+ }
197
+ if (this._authUsername !== undefined) {
198
+ hasAnyValues = true;
199
+ internalValueResult.authUsername = this._authUsername;
200
+ }
201
+ if (this._baseUrl !== undefined) {
202
+ hasAnyValues = true;
203
+ internalValueResult.baseUrl = this._baseUrl;
204
+ }
205
+ if (this._channel !== undefined) {
206
+ hasAnyValues = true;
207
+ internalValueResult.channel = this._channel;
208
+ }
209
+ if (this._headers !== undefined) {
210
+ hasAnyValues = true;
211
+ internalValueResult.headers = this._headers;
212
+ }
213
+ if (this._headersString !== undefined) {
214
+ hasAnyValues = true;
215
+ internalValueResult.headersString = this._headersString;
216
+ }
217
+ if (this._includeJsonAttachment !== undefined) {
218
+ hasAnyValues = true;
219
+ internalValueResult.includeJsonAttachment = this._includeJsonAttachment;
220
+ }
221
+ if (this._key !== undefined) {
222
+ hasAnyValues = true;
223
+ internalValueResult.key = this._key;
224
+ }
225
+ if (this._payload !== undefined) {
226
+ hasAnyValues = true;
227
+ internalValueResult.payload = this._payload;
228
+ }
229
+ if (this._payloadString !== undefined) {
230
+ hasAnyValues = true;
231
+ internalValueResult.payloadString = this._payloadString;
232
+ }
233
+ if (this._payloadType !== undefined) {
234
+ hasAnyValues = true;
235
+ internalValueResult.payloadType = this._payloadType;
236
+ }
237
+ if (this._recipients !== undefined) {
238
+ hasAnyValues = true;
239
+ internalValueResult.recipients = this._recipients;
240
+ }
241
+ if (this._region !== undefined) {
242
+ hasAnyValues = true;
243
+ internalValueResult.region = this._region;
244
+ }
245
+ if (this._routeKey !== undefined) {
246
+ hasAnyValues = true;
247
+ internalValueResult.routeKey = this._routeKey;
248
+ }
249
+ if (this._serviceKey !== undefined) {
250
+ hasAnyValues = true;
251
+ internalValueResult.serviceKey = this._serviceKey;
252
+ }
253
+ if (this._tags !== undefined) {
254
+ hasAnyValues = true;
255
+ internalValueResult.tags = this._tags;
256
+ }
257
+ if (this._teams !== undefined) {
258
+ hasAnyValues = true;
259
+ internalValueResult.teams = this._teams;
260
+ }
261
+ if (this._url !== undefined) {
262
+ hasAnyValues = true;
263
+ internalValueResult.url = this._url;
264
+ }
265
+ if (this._userId !== undefined) {
266
+ hasAnyValues = true;
267
+ internalValueResult.userId = this._userId;
268
+ }
269
+ return hasAnyValues ? internalValueResult : undefined;
270
+ }
271
+ set internalValue(value) {
272
+ if (value === undefined) {
273
+ this.isEmptyObject = false;
274
+ this._apiKey = undefined;
275
+ this._authPassword = undefined;
276
+ this._authType = undefined;
277
+ this._authUsername = undefined;
278
+ this._baseUrl = undefined;
279
+ this._channel = undefined;
280
+ this._headers = undefined;
281
+ this._headersString = undefined;
282
+ this._includeJsonAttachment = undefined;
283
+ this._key = undefined;
284
+ this._payload = undefined;
285
+ this._payloadString = undefined;
286
+ this._payloadType = undefined;
287
+ this._recipients = undefined;
288
+ this._region = undefined;
289
+ this._routeKey = undefined;
290
+ this._serviceKey = undefined;
291
+ this._tags = undefined;
292
+ this._teams = undefined;
293
+ this._url = undefined;
294
+ this._userId = undefined;
295
+ }
296
+ else {
297
+ this.isEmptyObject = Object.keys(value).length === 0;
298
+ this._apiKey = value.apiKey;
299
+ this._authPassword = value.authPassword;
300
+ this._authType = value.authType;
301
+ this._authUsername = value.authUsername;
302
+ this._baseUrl = value.baseUrl;
303
+ this._channel = value.channel;
304
+ this._headers = value.headers;
305
+ this._headersString = value.headersString;
306
+ this._includeJsonAttachment = value.includeJsonAttachment;
307
+ this._key = value.key;
308
+ this._payload = value.payload;
309
+ this._payloadString = value.payloadString;
310
+ this._payloadType = value.payloadType;
311
+ this._recipients = value.recipients;
312
+ this._region = value.region;
313
+ this._routeKey = value.routeKey;
314
+ this._serviceKey = value.serviceKey;
315
+ this._tags = value.tags;
316
+ this._teams = value.teams;
317
+ this._url = value.url;
318
+ this._userId = value.userId;
319
+ }
320
+ }
321
+ // api_key - computed: false, optional: true, required: false
322
+ _apiKey;
323
+ get apiKey() {
324
+ return this.getStringAttribute('api_key');
325
+ }
326
+ set apiKey(value) {
327
+ this._apiKey = value;
328
+ }
329
+ resetApiKey() {
330
+ this._apiKey = undefined;
331
+ }
332
+ // Temporarily expose input value. Use with caution.
333
+ get apiKeyInput() {
334
+ return this._apiKey;
335
+ }
336
+ // auth_password - computed: false, optional: true, required: false
337
+ _authPassword;
338
+ get authPassword() {
339
+ return this.getStringAttribute('auth_password');
340
+ }
341
+ set authPassword(value) {
342
+ this._authPassword = value;
343
+ }
344
+ resetAuthPassword() {
345
+ this._authPassword = undefined;
346
+ }
347
+ // Temporarily expose input value. Use with caution.
348
+ get authPasswordInput() {
349
+ return this._authPassword;
350
+ }
351
+ // auth_type - computed: false, optional: true, required: false
352
+ _authType;
353
+ get authType() {
354
+ return this.getStringAttribute('auth_type');
355
+ }
356
+ set authType(value) {
357
+ this._authType = value;
358
+ }
359
+ resetAuthType() {
360
+ this._authType = undefined;
361
+ }
362
+ // Temporarily expose input value. Use with caution.
363
+ get authTypeInput() {
364
+ return this._authType;
365
+ }
366
+ // auth_username - computed: false, optional: true, required: false
367
+ _authUsername;
368
+ get authUsername() {
369
+ return this.getStringAttribute('auth_username');
370
+ }
371
+ set authUsername(value) {
372
+ this._authUsername = value;
373
+ }
374
+ resetAuthUsername() {
375
+ this._authUsername = undefined;
376
+ }
377
+ // Temporarily expose input value. Use with caution.
378
+ get authUsernameInput() {
379
+ return this._authUsername;
380
+ }
381
+ // base_url - computed: false, optional: true, required: false
382
+ _baseUrl;
383
+ get baseUrl() {
384
+ return this.getStringAttribute('base_url');
385
+ }
386
+ set baseUrl(value) {
387
+ this._baseUrl = value;
388
+ }
389
+ resetBaseUrl() {
390
+ this._baseUrl = undefined;
391
+ }
392
+ // Temporarily expose input value. Use with caution.
393
+ get baseUrlInput() {
394
+ return this._baseUrl;
395
+ }
396
+ // channel - computed: false, optional: true, required: false
397
+ _channel;
398
+ get channel() {
399
+ return this.getStringAttribute('channel');
400
+ }
401
+ set channel(value) {
402
+ this._channel = value;
403
+ }
404
+ resetChannel() {
405
+ this._channel = undefined;
406
+ }
407
+ // Temporarily expose input value. Use with caution.
408
+ get channelInput() {
409
+ return this._channel;
410
+ }
411
+ // headers - computed: false, optional: true, required: false
412
+ _headers;
413
+ get headers() {
414
+ return this.getStringMapAttribute('headers');
415
+ }
416
+ set headers(value) {
417
+ this._headers = value;
418
+ }
419
+ resetHeaders() {
420
+ this._headers = undefined;
421
+ }
422
+ // Temporarily expose input value. Use with caution.
423
+ get headersInput() {
424
+ return this._headers;
425
+ }
426
+ // headers_string - computed: false, optional: true, required: false
427
+ _headersString;
428
+ get headersString() {
429
+ return this.getStringAttribute('headers_string');
430
+ }
431
+ set headersString(value) {
432
+ this._headersString = value;
433
+ }
434
+ resetHeadersString() {
435
+ this._headersString = undefined;
436
+ }
437
+ // Temporarily expose input value. Use with caution.
438
+ get headersStringInput() {
439
+ return this._headersString;
440
+ }
441
+ // include_json_attachment - computed: false, optional: true, required: false
442
+ _includeJsonAttachment;
443
+ get includeJsonAttachment() {
444
+ return this.getStringAttribute('include_json_attachment');
445
+ }
446
+ set includeJsonAttachment(value) {
447
+ this._includeJsonAttachment = value;
448
+ }
449
+ resetIncludeJsonAttachment() {
450
+ this._includeJsonAttachment = undefined;
451
+ }
452
+ // Temporarily expose input value. Use with caution.
453
+ get includeJsonAttachmentInput() {
454
+ return this._includeJsonAttachment;
455
+ }
456
+ // key - computed: false, optional: true, required: false
457
+ _key;
458
+ get key() {
459
+ return this.getStringAttribute('key');
460
+ }
461
+ set key(value) {
462
+ this._key = value;
463
+ }
464
+ resetKey() {
465
+ this._key = undefined;
466
+ }
467
+ // Temporarily expose input value. Use with caution.
468
+ get keyInput() {
469
+ return this._key;
470
+ }
471
+ // payload - computed: false, optional: true, required: false
472
+ _payload;
473
+ get payload() {
474
+ return this.getStringMapAttribute('payload');
475
+ }
476
+ set payload(value) {
477
+ this._payload = value;
478
+ }
479
+ resetPayload() {
480
+ this._payload = undefined;
481
+ }
482
+ // Temporarily expose input value. Use with caution.
483
+ get payloadInput() {
484
+ return this._payload;
485
+ }
486
+ // payload_string - computed: false, optional: true, required: false
487
+ _payloadString;
488
+ get payloadString() {
489
+ return this.getStringAttribute('payload_string');
490
+ }
491
+ set payloadString(value) {
492
+ this._payloadString = value;
493
+ }
494
+ resetPayloadString() {
495
+ this._payloadString = undefined;
496
+ }
497
+ // Temporarily expose input value. Use with caution.
498
+ get payloadStringInput() {
499
+ return this._payloadString;
500
+ }
501
+ // payload_type - computed: false, optional: true, required: false
502
+ _payloadType;
503
+ get payloadType() {
504
+ return this.getStringAttribute('payload_type');
505
+ }
506
+ set payloadType(value) {
507
+ this._payloadType = value;
508
+ }
509
+ resetPayloadType() {
510
+ this._payloadType = undefined;
511
+ }
512
+ // Temporarily expose input value. Use with caution.
513
+ get payloadTypeInput() {
514
+ return this._payloadType;
515
+ }
516
+ // recipients - computed: false, optional: true, required: false
517
+ _recipients;
518
+ get recipients() {
519
+ return this.getStringAttribute('recipients');
520
+ }
521
+ set recipients(value) {
522
+ this._recipients = value;
523
+ }
524
+ resetRecipients() {
525
+ this._recipients = undefined;
526
+ }
527
+ // Temporarily expose input value. Use with caution.
528
+ get recipientsInput() {
529
+ return this._recipients;
530
+ }
531
+ // region - computed: false, optional: true, required: false
532
+ _region;
533
+ get region() {
534
+ return this.getStringAttribute('region');
535
+ }
536
+ set region(value) {
537
+ this._region = value;
538
+ }
539
+ resetRegion() {
540
+ this._region = undefined;
541
+ }
542
+ // Temporarily expose input value. Use with caution.
543
+ get regionInput() {
544
+ return this._region;
545
+ }
546
+ // route_key - computed: false, optional: true, required: false
547
+ _routeKey;
548
+ get routeKey() {
549
+ return this.getStringAttribute('route_key');
550
+ }
551
+ set routeKey(value) {
552
+ this._routeKey = value;
553
+ }
554
+ resetRouteKey() {
555
+ this._routeKey = undefined;
556
+ }
557
+ // Temporarily expose input value. Use with caution.
558
+ get routeKeyInput() {
559
+ return this._routeKey;
560
+ }
561
+ // service_key - computed: false, optional: true, required: false
562
+ _serviceKey;
563
+ get serviceKey() {
564
+ return this.getStringAttribute('service_key');
565
+ }
566
+ set serviceKey(value) {
567
+ this._serviceKey = value;
568
+ }
569
+ resetServiceKey() {
570
+ this._serviceKey = undefined;
571
+ }
572
+ // Temporarily expose input value. Use with caution.
573
+ get serviceKeyInput() {
574
+ return this._serviceKey;
575
+ }
576
+ // tags - computed: false, optional: true, required: false
577
+ _tags;
578
+ get tags() {
579
+ return this.getStringAttribute('tags');
580
+ }
581
+ set tags(value) {
582
+ this._tags = value;
583
+ }
584
+ resetTags() {
585
+ this._tags = undefined;
586
+ }
587
+ // Temporarily expose input value. Use with caution.
588
+ get tagsInput() {
589
+ return this._tags;
590
+ }
591
+ // teams - computed: false, optional: true, required: false
592
+ _teams;
593
+ get teams() {
594
+ return this.getStringAttribute('teams');
595
+ }
596
+ set teams(value) {
597
+ this._teams = value;
598
+ }
599
+ resetTeams() {
600
+ this._teams = undefined;
601
+ }
602
+ // Temporarily expose input value. Use with caution.
603
+ get teamsInput() {
604
+ return this._teams;
605
+ }
606
+ // url - computed: false, optional: true, required: false
607
+ _url;
608
+ get url() {
609
+ return this.getStringAttribute('url');
610
+ }
611
+ set url(value) {
612
+ this._url = value;
613
+ }
614
+ resetUrl() {
615
+ this._url = undefined;
616
+ }
617
+ // Temporarily expose input value. Use with caution.
618
+ get urlInput() {
619
+ return this._url;
620
+ }
621
+ // user_id - computed: false, optional: true, required: false
622
+ _userId;
623
+ get userId() {
624
+ return this.getStringAttribute('user_id');
625
+ }
626
+ set userId(value) {
627
+ this._userId = value;
628
+ }
629
+ resetUserId() {
630
+ this._userId = undefined;
631
+ }
632
+ // Temporarily expose input value. Use with caution.
633
+ get userIdInput() {
634
+ return this._userId;
635
+ }
636
+ }
637
+ /**
638
+ * Represents a {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/alert_channel newrelic_alert_channel}
639
+ */
640
+ export class AlertChannel extends cdktf.TerraformResource {
641
+ // =================
642
+ // STATIC PROPERTIES
643
+ // =================
644
+ static tfResourceType = "newrelic_alert_channel";
645
+ // ==============
646
+ // STATIC Methods
647
+ // ==============
648
+ /**
649
+ * Generates CDKTF code for importing a AlertChannel resource upon running "cdktf plan <stack-name>"
650
+ * @param scope The scope in which to define this construct
651
+ * @param importToId The construct id used in the generated config for the AlertChannel to import
652
+ * @param importFromId The id of the existing AlertChannel that should be imported. Refer to the {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/alert_channel#import import section} in the documentation of this resource for the id to use
653
+ * @param provider? Optional instance of the provider where the AlertChannel to import is found
654
+ */
655
+ static generateConfigForImport(scope, importToId, importFromId, provider) {
656
+ return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "newrelic_alert_channel", importId: importFromId, provider });
657
+ }
658
+ // ===========
659
+ // INITIALIZER
660
+ // ===========
661
+ /**
662
+ * Create a new {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/alert_channel newrelic_alert_channel} Resource
663
+ *
664
+ * @param scope The scope in which to define this construct
665
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
666
+ * @param options AlertChannelConfig
667
+ */
668
+ constructor(scope, id, config) {
669
+ super(scope, id, {
670
+ terraformResourceType: 'newrelic_alert_channel',
671
+ terraformGeneratorMetadata: {
672
+ providerName: 'newrelic',
673
+ providerVersion: '3.75.4',
674
+ providerVersionConstraint: '3.75.4'
675
+ },
676
+ provider: config.provider,
677
+ dependsOn: config.dependsOn,
678
+ count: config.count,
679
+ lifecycle: config.lifecycle,
680
+ provisioners: config.provisioners,
681
+ connection: config.connection,
682
+ forEach: config.forEach
683
+ });
684
+ this._accountId = config.accountId;
685
+ this._id = config.id;
686
+ this._name = config.name;
687
+ this._type = config.type;
688
+ this._config.internalValue = config.config;
689
+ }
690
+ // ==========
691
+ // ATTRIBUTES
692
+ // ==========
693
+ // account_id - computed: true, optional: true, required: false
694
+ _accountId;
695
+ get accountId() {
696
+ return this.getNumberAttribute('account_id');
697
+ }
698
+ set accountId(value) {
699
+ this._accountId = value;
700
+ }
701
+ resetAccountId() {
702
+ this._accountId = undefined;
703
+ }
704
+ // Temporarily expose input value. Use with caution.
705
+ get accountIdInput() {
706
+ return this._accountId;
707
+ }
708
+ // id - computed: true, optional: true, required: false
709
+ _id;
710
+ get id() {
711
+ return this.getStringAttribute('id');
712
+ }
713
+ set id(value) {
714
+ this._id = value;
715
+ }
716
+ resetId() {
717
+ this._id = undefined;
718
+ }
719
+ // Temporarily expose input value. Use with caution.
720
+ get idInput() {
721
+ return this._id;
722
+ }
723
+ // name - computed: false, optional: false, required: true
724
+ _name;
725
+ get name() {
726
+ return this.getStringAttribute('name');
727
+ }
728
+ set name(value) {
729
+ this._name = value;
730
+ }
731
+ // Temporarily expose input value. Use with caution.
732
+ get nameInput() {
733
+ return this._name;
734
+ }
735
+ // type - computed: false, optional: false, required: true
736
+ _type;
737
+ get type() {
738
+ return this.getStringAttribute('type');
739
+ }
740
+ set type(value) {
741
+ this._type = value;
742
+ }
743
+ // Temporarily expose input value. Use with caution.
744
+ get typeInput() {
745
+ return this._type;
746
+ }
747
+ // config - computed: false, optional: true, required: false
748
+ _config = new AlertChannelConfigAOutputReference(this, "config");
749
+ get config() {
750
+ return this._config;
751
+ }
752
+ putConfig(value) {
753
+ this._config.internalValue = value;
754
+ }
755
+ resetConfig() {
756
+ this._config.internalValue = undefined;
757
+ }
758
+ // Temporarily expose input value. Use with caution.
759
+ get configInput() {
760
+ return this._config.internalValue;
761
+ }
762
+ // =========
763
+ // SYNTHESIS
764
+ // =========
765
+ synthesizeAttributes() {
766
+ return {
767
+ account_id: cdktf.numberToTerraform(this._accountId),
768
+ id: cdktf.stringToTerraform(this._id),
769
+ name: cdktf.stringToTerraform(this._name),
770
+ type: cdktf.stringToTerraform(this._type),
771
+ config: alertChannelConfigAToTerraform(this._config.internalValue),
772
+ };
773
+ }
774
+ synthesizeHclAttributes() {
775
+ const attrs = {
776
+ account_id: {
777
+ value: cdktf.numberToHclTerraform(this._accountId),
778
+ isBlock: false,
779
+ type: "simple",
780
+ storageClassType: "number",
781
+ },
782
+ id: {
783
+ value: cdktf.stringToHclTerraform(this._id),
784
+ isBlock: false,
785
+ type: "simple",
786
+ storageClassType: "string",
787
+ },
788
+ name: {
789
+ value: cdktf.stringToHclTerraform(this._name),
790
+ isBlock: false,
791
+ type: "simple",
792
+ storageClassType: "string",
793
+ },
794
+ type: {
795
+ value: cdktf.stringToHclTerraform(this._type),
796
+ isBlock: false,
797
+ type: "simple",
798
+ storageClassType: "string",
799
+ },
800
+ config: {
801
+ value: alertChannelConfigAToHclTerraform(this._config.internalValue),
802
+ isBlock: true,
803
+ type: "list",
804
+ storageClassType: "AlertChannelConfigAList",
805
+ },
806
+ };
807
+ // remove undefined attributes
808
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
809
+ }
810
+ }