@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,177 @@
1
+ import { Construct } from 'constructs';
2
+ import * as cdktf from 'cdktf';
3
+ export interface SyntheticsMultilocationAlertConditionConfig extends cdktf.TerraformMetaArguments {
4
+ /**
5
+ * Set whether to enable the alert condition. Defaults to true.
6
+ *
7
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_multilocation_alert_condition#enabled SyntheticsMultilocationAlertCondition#enabled}
8
+ */
9
+ readonly enabled?: boolean | cdktf.IResolvable;
10
+ /**
11
+ * The GUIDs of the Synthetics monitors to alert on.
12
+ *
13
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_multilocation_alert_condition#entities SyntheticsMultilocationAlertCondition#entities}
14
+ */
15
+ readonly entities: string[];
16
+ /**
17
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_multilocation_alert_condition#id SyntheticsMultilocationAlertCondition#id}
18
+ *
19
+ * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
20
+ * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
21
+ */
22
+ readonly id?: string;
23
+ /**
24
+ * The title of this condition.
25
+ *
26
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_multilocation_alert_condition#name SyntheticsMultilocationAlertCondition#name}
27
+ */
28
+ readonly name: string;
29
+ /**
30
+ * The ID of the policy where this condition will be used.
31
+ *
32
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_multilocation_alert_condition#policy_id SyntheticsMultilocationAlertCondition#policy_id}
33
+ */
34
+ readonly policyId: number;
35
+ /**
36
+ * Runbook URL to display in notifications.
37
+ *
38
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_multilocation_alert_condition#runbook_url SyntheticsMultilocationAlertCondition#runbook_url}
39
+ */
40
+ readonly runbookUrl?: string;
41
+ /**
42
+ * Sets a time limit, in seconds, that will automatically force-close a long-lasting incident after the time limit you select. Must be in the range of 300 to 2592000 (inclusive)
43
+ *
44
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_multilocation_alert_condition#violation_time_limit_seconds SyntheticsMultilocationAlertCondition#violation_time_limit_seconds}
45
+ */
46
+ readonly violationTimeLimitSeconds?: number;
47
+ /**
48
+ * critical block
49
+ *
50
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_multilocation_alert_condition#critical SyntheticsMultilocationAlertCondition#critical}
51
+ */
52
+ readonly critical: SyntheticsMultilocationAlertConditionCritical;
53
+ /**
54
+ * warning block
55
+ *
56
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_multilocation_alert_condition#warning SyntheticsMultilocationAlertCondition#warning}
57
+ */
58
+ readonly warning?: SyntheticsMultilocationAlertConditionWarning;
59
+ }
60
+ export interface SyntheticsMultilocationAlertConditionCritical {
61
+ /**
62
+ * The minimum number of monitor locations that must be concurrently failing before an incident is opened.
63
+ *
64
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_multilocation_alert_condition#threshold SyntheticsMultilocationAlertCondition#threshold}
65
+ */
66
+ readonly threshold: number;
67
+ }
68
+ export declare function syntheticsMultilocationAlertConditionCriticalToTerraform(struct?: SyntheticsMultilocationAlertConditionCriticalOutputReference | SyntheticsMultilocationAlertConditionCritical): any;
69
+ export declare function syntheticsMultilocationAlertConditionCriticalToHclTerraform(struct?: SyntheticsMultilocationAlertConditionCriticalOutputReference | SyntheticsMultilocationAlertConditionCritical): any;
70
+ export declare class SyntheticsMultilocationAlertConditionCriticalOutputReference extends cdktf.ComplexObject {
71
+ private isEmptyObject;
72
+ /**
73
+ * @param terraformResource The parent resource
74
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
75
+ */
76
+ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
77
+ get internalValue(): SyntheticsMultilocationAlertConditionCritical | undefined;
78
+ set internalValue(value: SyntheticsMultilocationAlertConditionCritical | undefined);
79
+ private _threshold?;
80
+ get threshold(): number;
81
+ set threshold(value: number);
82
+ get thresholdInput(): number;
83
+ }
84
+ export interface SyntheticsMultilocationAlertConditionWarning {
85
+ /**
86
+ * The minimum number of monitor locations that must be concurrently failing before an incident is opened.
87
+ *
88
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_multilocation_alert_condition#threshold SyntheticsMultilocationAlertCondition#threshold}
89
+ */
90
+ readonly threshold: number;
91
+ }
92
+ export declare function syntheticsMultilocationAlertConditionWarningToTerraform(struct?: SyntheticsMultilocationAlertConditionWarningOutputReference | SyntheticsMultilocationAlertConditionWarning): any;
93
+ export declare function syntheticsMultilocationAlertConditionWarningToHclTerraform(struct?: SyntheticsMultilocationAlertConditionWarningOutputReference | SyntheticsMultilocationAlertConditionWarning): any;
94
+ export declare class SyntheticsMultilocationAlertConditionWarningOutputReference extends cdktf.ComplexObject {
95
+ private isEmptyObject;
96
+ /**
97
+ * @param terraformResource The parent resource
98
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
99
+ */
100
+ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
101
+ get internalValue(): SyntheticsMultilocationAlertConditionWarning | undefined;
102
+ set internalValue(value: SyntheticsMultilocationAlertConditionWarning | undefined);
103
+ private _threshold?;
104
+ get threshold(): number;
105
+ set threshold(value: number);
106
+ get thresholdInput(): number;
107
+ }
108
+ /**
109
+ * Represents a {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_multilocation_alert_condition newrelic_synthetics_multilocation_alert_condition}
110
+ */
111
+ export declare class SyntheticsMultilocationAlertCondition extends cdktf.TerraformResource {
112
+ static readonly tfResourceType = "newrelic_synthetics_multilocation_alert_condition";
113
+ /**
114
+ * Generates CDKTF code for importing a SyntheticsMultilocationAlertCondition resource upon running "cdktf plan <stack-name>"
115
+ * @param scope The scope in which to define this construct
116
+ * @param importToId The construct id used in the generated config for the SyntheticsMultilocationAlertCondition to import
117
+ * @param importFromId The id of the existing SyntheticsMultilocationAlertCondition that should be imported. Refer to the {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_multilocation_alert_condition#import import section} in the documentation of this resource for the id to use
118
+ * @param provider? Optional instance of the provider where the SyntheticsMultilocationAlertCondition to import is found
119
+ */
120
+ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any;
121
+ /**
122
+ * Create a new {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_multilocation_alert_condition newrelic_synthetics_multilocation_alert_condition} Resource
123
+ *
124
+ * @param scope The scope in which to define this construct
125
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
126
+ * @param options SyntheticsMultilocationAlertConditionConfig
127
+ */
128
+ constructor(scope: Construct, id: string, config: SyntheticsMultilocationAlertConditionConfig);
129
+ private _enabled?;
130
+ get enabled(): boolean | cdktf.IResolvable;
131
+ set enabled(value: boolean | cdktf.IResolvable);
132
+ resetEnabled(): void;
133
+ get enabledInput(): any;
134
+ private _entities?;
135
+ get entities(): string[];
136
+ set entities(value: string[]);
137
+ get entitiesInput(): string[];
138
+ get entityGuid(): any;
139
+ private _id?;
140
+ get id(): string;
141
+ set id(value: string);
142
+ resetId(): void;
143
+ get idInput(): string;
144
+ private _name?;
145
+ get name(): string;
146
+ set name(value: string);
147
+ get nameInput(): string;
148
+ private _policyId?;
149
+ get policyId(): number;
150
+ set policyId(value: number);
151
+ get policyIdInput(): number;
152
+ private _runbookUrl?;
153
+ get runbookUrl(): string;
154
+ set runbookUrl(value: string);
155
+ resetRunbookUrl(): void;
156
+ get runbookUrlInput(): string;
157
+ private _violationTimeLimitSeconds?;
158
+ get violationTimeLimitSeconds(): number;
159
+ set violationTimeLimitSeconds(value: number);
160
+ resetViolationTimeLimitSeconds(): void;
161
+ get violationTimeLimitSecondsInput(): number;
162
+ private _critical;
163
+ get critical(): SyntheticsMultilocationAlertConditionCriticalOutputReference;
164
+ putCritical(value: SyntheticsMultilocationAlertConditionCritical): void;
165
+ get criticalInput(): SyntheticsMultilocationAlertConditionCritical;
166
+ private _warning;
167
+ get warning(): SyntheticsMultilocationAlertConditionWarningOutputReference;
168
+ putWarning(value: SyntheticsMultilocationAlertConditionWarning): void;
169
+ resetWarning(): void;
170
+ get warningInput(): SyntheticsMultilocationAlertConditionWarning;
171
+ protected synthesizeAttributes(): {
172
+ [name: string]: any;
173
+ };
174
+ protected synthesizeHclAttributes(): {
175
+ [name: string]: any;
176
+ };
177
+ }
@@ -0,0 +1,407 @@
1
+ // https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_multilocation_alert_condition
2
+ // generated from terraform resource schema
3
+ import * as cdktf from 'cdktf';
4
+ export function syntheticsMultilocationAlertConditionCriticalToTerraform(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
+ threshold: cdktf.numberToTerraform(struct.threshold),
13
+ };
14
+ }
15
+ export function syntheticsMultilocationAlertConditionCriticalToHclTerraform(struct) {
16
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
17
+ return struct;
18
+ }
19
+ if (cdktf.isComplexElement(struct)) {
20
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
21
+ }
22
+ const attrs = {
23
+ threshold: {
24
+ value: cdktf.numberToHclTerraform(struct.threshold),
25
+ isBlock: false,
26
+ type: "simple",
27
+ storageClassType: "number",
28
+ },
29
+ };
30
+ // remove undefined attributes
31
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
32
+ }
33
+ export class SyntheticsMultilocationAlertConditionCriticalOutputReference extends cdktf.ComplexObject {
34
+ isEmptyObject = false;
35
+ /**
36
+ * @param terraformResource The parent resource
37
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
38
+ */
39
+ constructor(terraformResource, terraformAttribute) {
40
+ super(terraformResource, terraformAttribute, false, 0);
41
+ }
42
+ get internalValue() {
43
+ let hasAnyValues = this.isEmptyObject;
44
+ const internalValueResult = {};
45
+ if (this._threshold !== undefined) {
46
+ hasAnyValues = true;
47
+ internalValueResult.threshold = this._threshold;
48
+ }
49
+ return hasAnyValues ? internalValueResult : undefined;
50
+ }
51
+ set internalValue(value) {
52
+ if (value === undefined) {
53
+ this.isEmptyObject = false;
54
+ this._threshold = undefined;
55
+ }
56
+ else {
57
+ this.isEmptyObject = Object.keys(value).length === 0;
58
+ this._threshold = value.threshold;
59
+ }
60
+ }
61
+ // threshold - computed: false, optional: false, required: true
62
+ _threshold;
63
+ get threshold() {
64
+ return this.getNumberAttribute('threshold');
65
+ }
66
+ set threshold(value) {
67
+ this._threshold = value;
68
+ }
69
+ // Temporarily expose input value. Use with caution.
70
+ get thresholdInput() {
71
+ return this._threshold;
72
+ }
73
+ }
74
+ export function syntheticsMultilocationAlertConditionWarningToTerraform(struct) {
75
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
76
+ return struct;
77
+ }
78
+ if (cdktf.isComplexElement(struct)) {
79
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
80
+ }
81
+ return {
82
+ threshold: cdktf.numberToTerraform(struct.threshold),
83
+ };
84
+ }
85
+ export function syntheticsMultilocationAlertConditionWarningToHclTerraform(struct) {
86
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
87
+ return struct;
88
+ }
89
+ if (cdktf.isComplexElement(struct)) {
90
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
91
+ }
92
+ const attrs = {
93
+ threshold: {
94
+ value: cdktf.numberToHclTerraform(struct.threshold),
95
+ isBlock: false,
96
+ type: "simple",
97
+ storageClassType: "number",
98
+ },
99
+ };
100
+ // remove undefined attributes
101
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
102
+ }
103
+ export class SyntheticsMultilocationAlertConditionWarningOutputReference extends cdktf.ComplexObject {
104
+ isEmptyObject = false;
105
+ /**
106
+ * @param terraformResource The parent resource
107
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
108
+ */
109
+ constructor(terraformResource, terraformAttribute) {
110
+ super(terraformResource, terraformAttribute, false, 0);
111
+ }
112
+ get internalValue() {
113
+ let hasAnyValues = this.isEmptyObject;
114
+ const internalValueResult = {};
115
+ if (this._threshold !== undefined) {
116
+ hasAnyValues = true;
117
+ internalValueResult.threshold = this._threshold;
118
+ }
119
+ return hasAnyValues ? internalValueResult : undefined;
120
+ }
121
+ set internalValue(value) {
122
+ if (value === undefined) {
123
+ this.isEmptyObject = false;
124
+ this._threshold = undefined;
125
+ }
126
+ else {
127
+ this.isEmptyObject = Object.keys(value).length === 0;
128
+ this._threshold = value.threshold;
129
+ }
130
+ }
131
+ // threshold - computed: false, optional: false, required: true
132
+ _threshold;
133
+ get threshold() {
134
+ return this.getNumberAttribute('threshold');
135
+ }
136
+ set threshold(value) {
137
+ this._threshold = value;
138
+ }
139
+ // Temporarily expose input value. Use with caution.
140
+ get thresholdInput() {
141
+ return this._threshold;
142
+ }
143
+ }
144
+ /**
145
+ * Represents a {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_multilocation_alert_condition newrelic_synthetics_multilocation_alert_condition}
146
+ */
147
+ export class SyntheticsMultilocationAlertCondition extends cdktf.TerraformResource {
148
+ // =================
149
+ // STATIC PROPERTIES
150
+ // =================
151
+ static tfResourceType = "newrelic_synthetics_multilocation_alert_condition";
152
+ // ==============
153
+ // STATIC Methods
154
+ // ==============
155
+ /**
156
+ * Generates CDKTF code for importing a SyntheticsMultilocationAlertCondition resource upon running "cdktf plan <stack-name>"
157
+ * @param scope The scope in which to define this construct
158
+ * @param importToId The construct id used in the generated config for the SyntheticsMultilocationAlertCondition to import
159
+ * @param importFromId The id of the existing SyntheticsMultilocationAlertCondition that should be imported. Refer to the {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_multilocation_alert_condition#import import section} in the documentation of this resource for the id to use
160
+ * @param provider? Optional instance of the provider where the SyntheticsMultilocationAlertCondition to import is found
161
+ */
162
+ static generateConfigForImport(scope, importToId, importFromId, provider) {
163
+ return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "newrelic_synthetics_multilocation_alert_condition", importId: importFromId, provider });
164
+ }
165
+ // ===========
166
+ // INITIALIZER
167
+ // ===========
168
+ /**
169
+ * Create a new {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_multilocation_alert_condition newrelic_synthetics_multilocation_alert_condition} Resource
170
+ *
171
+ * @param scope The scope in which to define this construct
172
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
173
+ * @param options SyntheticsMultilocationAlertConditionConfig
174
+ */
175
+ constructor(scope, id, config) {
176
+ super(scope, id, {
177
+ terraformResourceType: 'newrelic_synthetics_multilocation_alert_condition',
178
+ terraformGeneratorMetadata: {
179
+ providerName: 'newrelic',
180
+ providerVersion: '3.75.4',
181
+ providerVersionConstraint: '3.75.4'
182
+ },
183
+ provider: config.provider,
184
+ dependsOn: config.dependsOn,
185
+ count: config.count,
186
+ lifecycle: config.lifecycle,
187
+ provisioners: config.provisioners,
188
+ connection: config.connection,
189
+ forEach: config.forEach
190
+ });
191
+ this._enabled = config.enabled;
192
+ this._entities = config.entities;
193
+ this._id = config.id;
194
+ this._name = config.name;
195
+ this._policyId = config.policyId;
196
+ this._runbookUrl = config.runbookUrl;
197
+ this._violationTimeLimitSeconds = config.violationTimeLimitSeconds;
198
+ this._critical.internalValue = config.critical;
199
+ this._warning.internalValue = config.warning;
200
+ }
201
+ // ==========
202
+ // ATTRIBUTES
203
+ // ==========
204
+ // enabled - computed: false, optional: true, required: false
205
+ _enabled;
206
+ get enabled() {
207
+ return this.getBooleanAttribute('enabled');
208
+ }
209
+ set enabled(value) {
210
+ this._enabled = value;
211
+ }
212
+ resetEnabled() {
213
+ this._enabled = undefined;
214
+ }
215
+ // Temporarily expose input value. Use with caution.
216
+ get enabledInput() {
217
+ return this._enabled;
218
+ }
219
+ // entities - computed: false, optional: false, required: true
220
+ _entities;
221
+ get entities() {
222
+ return this.getListAttribute('entities');
223
+ }
224
+ set entities(value) {
225
+ this._entities = value;
226
+ }
227
+ // Temporarily expose input value. Use with caution.
228
+ get entitiesInput() {
229
+ return this._entities;
230
+ }
231
+ // entity_guid - computed: true, optional: false, required: false
232
+ get entityGuid() {
233
+ return this.getStringAttribute('entity_guid');
234
+ }
235
+ // id - computed: true, optional: true, required: false
236
+ _id;
237
+ get id() {
238
+ return this.getStringAttribute('id');
239
+ }
240
+ set id(value) {
241
+ this._id = value;
242
+ }
243
+ resetId() {
244
+ this._id = undefined;
245
+ }
246
+ // Temporarily expose input value. Use with caution.
247
+ get idInput() {
248
+ return this._id;
249
+ }
250
+ // name - computed: false, optional: false, required: true
251
+ _name;
252
+ get name() {
253
+ return this.getStringAttribute('name');
254
+ }
255
+ set name(value) {
256
+ this._name = value;
257
+ }
258
+ // Temporarily expose input value. Use with caution.
259
+ get nameInput() {
260
+ return this._name;
261
+ }
262
+ // policy_id - computed: false, optional: false, required: true
263
+ _policyId;
264
+ get policyId() {
265
+ return this.getNumberAttribute('policy_id');
266
+ }
267
+ set policyId(value) {
268
+ this._policyId = value;
269
+ }
270
+ // Temporarily expose input value. Use with caution.
271
+ get policyIdInput() {
272
+ return this._policyId;
273
+ }
274
+ // runbook_url - computed: false, optional: true, required: false
275
+ _runbookUrl;
276
+ get runbookUrl() {
277
+ return this.getStringAttribute('runbook_url');
278
+ }
279
+ set runbookUrl(value) {
280
+ this._runbookUrl = value;
281
+ }
282
+ resetRunbookUrl() {
283
+ this._runbookUrl = undefined;
284
+ }
285
+ // Temporarily expose input value. Use with caution.
286
+ get runbookUrlInput() {
287
+ return this._runbookUrl;
288
+ }
289
+ // violation_time_limit_seconds - computed: false, optional: true, required: false
290
+ _violationTimeLimitSeconds;
291
+ get violationTimeLimitSeconds() {
292
+ return this.getNumberAttribute('violation_time_limit_seconds');
293
+ }
294
+ set violationTimeLimitSeconds(value) {
295
+ this._violationTimeLimitSeconds = value;
296
+ }
297
+ resetViolationTimeLimitSeconds() {
298
+ this._violationTimeLimitSeconds = undefined;
299
+ }
300
+ // Temporarily expose input value. Use with caution.
301
+ get violationTimeLimitSecondsInput() {
302
+ return this._violationTimeLimitSeconds;
303
+ }
304
+ // critical - computed: false, optional: false, required: true
305
+ _critical = new SyntheticsMultilocationAlertConditionCriticalOutputReference(this, "critical");
306
+ get critical() {
307
+ return this._critical;
308
+ }
309
+ putCritical(value) {
310
+ this._critical.internalValue = value;
311
+ }
312
+ // Temporarily expose input value. Use with caution.
313
+ get criticalInput() {
314
+ return this._critical.internalValue;
315
+ }
316
+ // warning - computed: false, optional: true, required: false
317
+ _warning = new SyntheticsMultilocationAlertConditionWarningOutputReference(this, "warning");
318
+ get warning() {
319
+ return this._warning;
320
+ }
321
+ putWarning(value) {
322
+ this._warning.internalValue = value;
323
+ }
324
+ resetWarning() {
325
+ this._warning.internalValue = undefined;
326
+ }
327
+ // Temporarily expose input value. Use with caution.
328
+ get warningInput() {
329
+ return this._warning.internalValue;
330
+ }
331
+ // =========
332
+ // SYNTHESIS
333
+ // =========
334
+ synthesizeAttributes() {
335
+ return {
336
+ enabled: cdktf.booleanToTerraform(this._enabled),
337
+ entities: cdktf.listMapper(cdktf.stringToTerraform, false)(this._entities),
338
+ id: cdktf.stringToTerraform(this._id),
339
+ name: cdktf.stringToTerraform(this._name),
340
+ policy_id: cdktf.numberToTerraform(this._policyId),
341
+ runbook_url: cdktf.stringToTerraform(this._runbookUrl),
342
+ violation_time_limit_seconds: cdktf.numberToTerraform(this._violationTimeLimitSeconds),
343
+ critical: syntheticsMultilocationAlertConditionCriticalToTerraform(this._critical.internalValue),
344
+ warning: syntheticsMultilocationAlertConditionWarningToTerraform(this._warning.internalValue),
345
+ };
346
+ }
347
+ synthesizeHclAttributes() {
348
+ const attrs = {
349
+ enabled: {
350
+ value: cdktf.booleanToHclTerraform(this._enabled),
351
+ isBlock: false,
352
+ type: "simple",
353
+ storageClassType: "boolean",
354
+ },
355
+ entities: {
356
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._entities),
357
+ isBlock: false,
358
+ type: "list",
359
+ storageClassType: "stringList",
360
+ },
361
+ id: {
362
+ value: cdktf.stringToHclTerraform(this._id),
363
+ isBlock: false,
364
+ type: "simple",
365
+ storageClassType: "string",
366
+ },
367
+ name: {
368
+ value: cdktf.stringToHclTerraform(this._name),
369
+ isBlock: false,
370
+ type: "simple",
371
+ storageClassType: "string",
372
+ },
373
+ policy_id: {
374
+ value: cdktf.numberToHclTerraform(this._policyId),
375
+ isBlock: false,
376
+ type: "simple",
377
+ storageClassType: "number",
378
+ },
379
+ runbook_url: {
380
+ value: cdktf.stringToHclTerraform(this._runbookUrl),
381
+ isBlock: false,
382
+ type: "simple",
383
+ storageClassType: "string",
384
+ },
385
+ violation_time_limit_seconds: {
386
+ value: cdktf.numberToHclTerraform(this._violationTimeLimitSeconds),
387
+ isBlock: false,
388
+ type: "simple",
389
+ storageClassType: "number",
390
+ },
391
+ critical: {
392
+ value: syntheticsMultilocationAlertConditionCriticalToHclTerraform(this._critical.internalValue),
393
+ isBlock: true,
394
+ type: "list",
395
+ storageClassType: "SyntheticsMultilocationAlertConditionCriticalList",
396
+ },
397
+ warning: {
398
+ value: syntheticsMultilocationAlertConditionWarningToHclTerraform(this._warning.internalValue),
399
+ isBlock: true,
400
+ type: "list",
401
+ storageClassType: "SyntheticsMultilocationAlertConditionWarningList",
402
+ },
403
+ };
404
+ // remove undefined attributes
405
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
406
+ }
407
+ }
@@ -0,0 +1,90 @@
1
+ import { Construct } from 'constructs';
2
+ import * as cdktf from 'cdktf';
3
+ export interface SyntheticsPrivateLocationConfig extends cdktf.TerraformMetaArguments {
4
+ /**
5
+ * The ID of the account in New Relic.
6
+ *
7
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_private_location#account_id SyntheticsPrivateLocation#account_id}
8
+ */
9
+ readonly accountId?: number;
10
+ /**
11
+ * The private location description.
12
+ *
13
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_private_location#description SyntheticsPrivateLocation#description}
14
+ */
15
+ readonly description: string;
16
+ /**
17
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_private_location#id SyntheticsPrivateLocation#id}
18
+ *
19
+ * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
20
+ * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
21
+ */
22
+ readonly id?: string;
23
+ /**
24
+ * The name of the private location.
25
+ *
26
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_private_location#name SyntheticsPrivateLocation#name}
27
+ */
28
+ readonly name: string;
29
+ /**
30
+ * The private location requires a password to edit if value is true.
31
+ *
32
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_private_location#verified_script_execution SyntheticsPrivateLocation#verified_script_execution}
33
+ */
34
+ readonly verifiedScriptExecution?: boolean | cdktf.IResolvable;
35
+ }
36
+ /**
37
+ * Represents a {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_private_location newrelic_synthetics_private_location}
38
+ */
39
+ export declare class SyntheticsPrivateLocation extends cdktf.TerraformResource {
40
+ static readonly tfResourceType = "newrelic_synthetics_private_location";
41
+ /**
42
+ * Generates CDKTF code for importing a SyntheticsPrivateLocation resource upon running "cdktf plan <stack-name>"
43
+ * @param scope The scope in which to define this construct
44
+ * @param importToId The construct id used in the generated config for the SyntheticsPrivateLocation to import
45
+ * @param importFromId The id of the existing SyntheticsPrivateLocation that should be imported. Refer to the {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_private_location#import import section} in the documentation of this resource for the id to use
46
+ * @param provider? Optional instance of the provider where the SyntheticsPrivateLocation to import is found
47
+ */
48
+ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any;
49
+ /**
50
+ * Create a new {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/synthetics_private_location newrelic_synthetics_private_location} Resource
51
+ *
52
+ * @param scope The scope in which to define this construct
53
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
54
+ * @param options SyntheticsPrivateLocationConfig
55
+ */
56
+ constructor(scope: Construct, id: string, config: SyntheticsPrivateLocationConfig);
57
+ private _accountId?;
58
+ get accountId(): number;
59
+ set accountId(value: number);
60
+ resetAccountId(): void;
61
+ get accountIdInput(): number;
62
+ private _description?;
63
+ get description(): string;
64
+ set description(value: string);
65
+ get descriptionInput(): string;
66
+ get domainId(): any;
67
+ get guid(): any;
68
+ private _id?;
69
+ get id(): string;
70
+ set id(value: string);
71
+ resetId(): void;
72
+ get idInput(): string;
73
+ get key(): any;
74
+ get locationId(): any;
75
+ private _name?;
76
+ get name(): string;
77
+ set name(value: string);
78
+ get nameInput(): string;
79
+ private _verifiedScriptExecution?;
80
+ get verifiedScriptExecution(): boolean | cdktf.IResolvable;
81
+ set verifiedScriptExecution(value: boolean | cdktf.IResolvable);
82
+ resetVerifiedScriptExecution(): void;
83
+ get verifiedScriptExecutionInput(): any;
84
+ protected synthesizeAttributes(): {
85
+ [name: string]: any;
86
+ };
87
+ protected synthesizeHclAttributes(): {
88
+ [name: string]: any;
89
+ };
90
+ }