@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,182 @@
1
+ import { Construct } from 'constructs';
2
+ import * as cdktf from 'cdktf';
3
+ export interface InsightsEventConfig extends cdktf.TerraformMetaArguments {
4
+ /**
5
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/insights_event#id InsightsEvent#id}
6
+ *
7
+ * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
8
+ * 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.
9
+ */
10
+ readonly id?: string;
11
+ /**
12
+ * event block
13
+ *
14
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/insights_event#event InsightsEvent#event}
15
+ */
16
+ readonly event: InsightsEventEvent[] | cdktf.IResolvable;
17
+ }
18
+ export interface InsightsEventEventAttribute {
19
+ /**
20
+ * The name of the attribute.
21
+ *
22
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/insights_event#key InsightsEvent#key}
23
+ */
24
+ readonly key: string;
25
+ /**
26
+ * Specify the type for the attribute value. This is useful when passing integer or float values to Insights. Allowed values are string, int, or float. Defaults to string.
27
+ *
28
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/insights_event#type InsightsEvent#type}
29
+ */
30
+ readonly type?: string;
31
+ /**
32
+ * The value of the attribute.
33
+ *
34
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/insights_event#value InsightsEvent#value}
35
+ */
36
+ readonly value: string;
37
+ }
38
+ export declare function insightsEventEventAttributeToTerraform(struct?: InsightsEventEventAttribute | cdktf.IResolvable): any;
39
+ export declare function insightsEventEventAttributeToHclTerraform(struct?: InsightsEventEventAttribute | cdktf.IResolvable): any;
40
+ export declare class InsightsEventEventAttributeOutputReference extends cdktf.ComplexObject {
41
+ private isEmptyObject;
42
+ private resolvableValue?;
43
+ /**
44
+ * @param terraformResource The parent resource
45
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
46
+ * @param complexObjectIndex the index of this item in the list
47
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
48
+ */
49
+ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
50
+ get internalValue(): InsightsEventEventAttribute | cdktf.IResolvable | undefined;
51
+ set internalValue(value: InsightsEventEventAttribute | cdktf.IResolvable | undefined);
52
+ private _key?;
53
+ get key(): string;
54
+ set key(value: string);
55
+ get keyInput(): string;
56
+ private _type?;
57
+ get type(): string;
58
+ set type(value: string);
59
+ resetType(): void;
60
+ get typeInput(): string;
61
+ private _value?;
62
+ get value(): string;
63
+ set value(value: string);
64
+ get valueInput(): string;
65
+ }
66
+ export declare class InsightsEventEventAttributeList extends cdktf.ComplexList {
67
+ protected terraformResource: cdktf.IInterpolatingParent;
68
+ protected terraformAttribute: string;
69
+ protected wrapsSet: boolean;
70
+ internalValue?: InsightsEventEventAttribute[] | cdktf.IResolvable;
71
+ /**
72
+ * @param terraformResource The parent resource
73
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
74
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
75
+ */
76
+ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
77
+ /**
78
+ * @param index the index of the item to return
79
+ */
80
+ get(index: number): InsightsEventEventAttributeOutputReference;
81
+ }
82
+ export interface InsightsEventEvent {
83
+ /**
84
+ * Must be a Unix epoch timestamp. You can define timestamps either in seconds or in milliseconds.
85
+ *
86
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/insights_event#timestamp InsightsEvent#timestamp}
87
+ */
88
+ readonly timestamp?: number;
89
+ /**
90
+ * The event's name. Can be a combination of alphanumeric characters, underscores, and colons.
91
+ *
92
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/insights_event#type InsightsEvent#type}
93
+ */
94
+ readonly type: string;
95
+ /**
96
+ * attribute block
97
+ *
98
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/insights_event#attribute InsightsEvent#attribute}
99
+ */
100
+ readonly attribute: InsightsEventEventAttribute[] | cdktf.IResolvable;
101
+ }
102
+ export declare function insightsEventEventToTerraform(struct?: InsightsEventEvent | cdktf.IResolvable): any;
103
+ export declare function insightsEventEventToHclTerraform(struct?: InsightsEventEvent | cdktf.IResolvable): any;
104
+ export declare class InsightsEventEventOutputReference extends cdktf.ComplexObject {
105
+ private isEmptyObject;
106
+ private resolvableValue?;
107
+ /**
108
+ * @param terraformResource The parent resource
109
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
110
+ * @param complexObjectIndex the index of this item in the list
111
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
112
+ */
113
+ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
114
+ get internalValue(): InsightsEventEvent | cdktf.IResolvable | undefined;
115
+ set internalValue(value: InsightsEventEvent | cdktf.IResolvable | undefined);
116
+ private _timestamp?;
117
+ get timestamp(): number;
118
+ set timestamp(value: number);
119
+ resetTimestamp(): void;
120
+ get timestampInput(): number;
121
+ private _type?;
122
+ get type(): string;
123
+ set type(value: string);
124
+ get typeInput(): string;
125
+ private _attribute;
126
+ get attribute(): InsightsEventEventAttributeList;
127
+ putAttribute(value: InsightsEventEventAttribute[] | cdktf.IResolvable): void;
128
+ get attributeInput(): any;
129
+ }
130
+ export declare class InsightsEventEventList extends cdktf.ComplexList {
131
+ protected terraformResource: cdktf.IInterpolatingParent;
132
+ protected terraformAttribute: string;
133
+ protected wrapsSet: boolean;
134
+ internalValue?: InsightsEventEvent[] | cdktf.IResolvable;
135
+ /**
136
+ * @param terraformResource The parent resource
137
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
138
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
139
+ */
140
+ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
141
+ /**
142
+ * @param index the index of the item to return
143
+ */
144
+ get(index: number): InsightsEventEventOutputReference;
145
+ }
146
+ /**
147
+ * Represents a {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/insights_event newrelic_insights_event}
148
+ */
149
+ export declare class InsightsEvent extends cdktf.TerraformResource {
150
+ static readonly tfResourceType = "newrelic_insights_event";
151
+ /**
152
+ * Generates CDKTF code for importing a InsightsEvent resource upon running "cdktf plan <stack-name>"
153
+ * @param scope The scope in which to define this construct
154
+ * @param importToId The construct id used in the generated config for the InsightsEvent to import
155
+ * @param importFromId The id of the existing InsightsEvent that should be imported. Refer to the {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/insights_event#import import section} in the documentation of this resource for the id to use
156
+ * @param provider? Optional instance of the provider where the InsightsEvent to import is found
157
+ */
158
+ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any;
159
+ /**
160
+ * Create a new {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/insights_event newrelic_insights_event} Resource
161
+ *
162
+ * @param scope The scope in which to define this construct
163
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
164
+ * @param options InsightsEventConfig
165
+ */
166
+ constructor(scope: Construct, id: string, config: InsightsEventConfig);
167
+ private _id?;
168
+ get id(): string;
169
+ set id(value: string);
170
+ resetId(): void;
171
+ get idInput(): string;
172
+ private _event;
173
+ get event(): InsightsEventEventList;
174
+ putEvent(value: InsightsEventEvent[] | cdktf.IResolvable): void;
175
+ get eventInput(): any;
176
+ protected synthesizeAttributes(): {
177
+ [name: string]: any;
178
+ };
179
+ protected synthesizeHclAttributes(): {
180
+ [name: string]: any;
181
+ };
182
+ }
@@ -0,0 +1,427 @@
1
+ // https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/insights_event
2
+ // generated from terraform resource schema
3
+ import * as cdktf from 'cdktf';
4
+ export function insightsEventEventAttributeToTerraform(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
+ key: cdktf.stringToTerraform(struct.key),
13
+ type: cdktf.stringToTerraform(struct.type),
14
+ value: cdktf.stringToTerraform(struct.value),
15
+ };
16
+ }
17
+ export function insightsEventEventAttributeToHclTerraform(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
+ key: {
26
+ value: cdktf.stringToHclTerraform(struct.key),
27
+ isBlock: false,
28
+ type: "simple",
29
+ storageClassType: "string",
30
+ },
31
+ type: {
32
+ value: cdktf.stringToHclTerraform(struct.type),
33
+ isBlock: false,
34
+ type: "simple",
35
+ storageClassType: "string",
36
+ },
37
+ value: {
38
+ value: cdktf.stringToHclTerraform(struct.value),
39
+ isBlock: false,
40
+ type: "simple",
41
+ storageClassType: "string",
42
+ },
43
+ };
44
+ // remove undefined attributes
45
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
46
+ }
47
+ export class InsightsEventEventAttributeOutputReference 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._key !== undefined) {
66
+ hasAnyValues = true;
67
+ internalValueResult.key = this._key;
68
+ }
69
+ if (this._type !== undefined) {
70
+ hasAnyValues = true;
71
+ internalValueResult.type = this._type;
72
+ }
73
+ if (this._value !== undefined) {
74
+ hasAnyValues = true;
75
+ internalValueResult.value = this._value;
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._key = undefined;
84
+ this._type = undefined;
85
+ this._value = 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._key = value.key;
95
+ this._type = value.type;
96
+ this._value = value.value;
97
+ }
98
+ }
99
+ // key - computed: false, optional: false, required: true
100
+ _key;
101
+ get key() {
102
+ return this.getStringAttribute('key');
103
+ }
104
+ set key(value) {
105
+ this._key = value;
106
+ }
107
+ // Temporarily expose input value. Use with caution.
108
+ get keyInput() {
109
+ return this._key;
110
+ }
111
+ // type - computed: false, optional: true, required: false
112
+ _type;
113
+ get type() {
114
+ return this.getStringAttribute('type');
115
+ }
116
+ set type(value) {
117
+ this._type = value;
118
+ }
119
+ resetType() {
120
+ this._type = undefined;
121
+ }
122
+ // Temporarily expose input value. Use with caution.
123
+ get typeInput() {
124
+ return this._type;
125
+ }
126
+ // value - computed: false, optional: false, required: true
127
+ _value;
128
+ get value() {
129
+ return this.getStringAttribute('value');
130
+ }
131
+ set value(value) {
132
+ this._value = value;
133
+ }
134
+ // Temporarily expose input value. Use with caution.
135
+ get valueInput() {
136
+ return this._value;
137
+ }
138
+ }
139
+ export class InsightsEventEventAttributeList extends cdktf.ComplexList {
140
+ terraformResource;
141
+ terraformAttribute;
142
+ wrapsSet;
143
+ internalValue;
144
+ /**
145
+ * @param terraformResource The parent resource
146
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
147
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
148
+ */
149
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
150
+ super(terraformResource, terraformAttribute, wrapsSet);
151
+ this.terraformResource = terraformResource;
152
+ this.terraformAttribute = terraformAttribute;
153
+ this.wrapsSet = wrapsSet;
154
+ }
155
+ /**
156
+ * @param index the index of the item to return
157
+ */
158
+ get(index) {
159
+ return new InsightsEventEventAttributeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
160
+ }
161
+ }
162
+ export function insightsEventEventToTerraform(struct) {
163
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
164
+ return struct;
165
+ }
166
+ if (cdktf.isComplexElement(struct)) {
167
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
168
+ }
169
+ return {
170
+ timestamp: cdktf.numberToTerraform(struct.timestamp),
171
+ type: cdktf.stringToTerraform(struct.type),
172
+ attribute: cdktf.listMapper(insightsEventEventAttributeToTerraform, true)(struct.attribute),
173
+ };
174
+ }
175
+ export function insightsEventEventToHclTerraform(struct) {
176
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
177
+ return struct;
178
+ }
179
+ if (cdktf.isComplexElement(struct)) {
180
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
181
+ }
182
+ const attrs = {
183
+ timestamp: {
184
+ value: cdktf.numberToHclTerraform(struct.timestamp),
185
+ isBlock: false,
186
+ type: "simple",
187
+ storageClassType: "number",
188
+ },
189
+ type: {
190
+ value: cdktf.stringToHclTerraform(struct.type),
191
+ isBlock: false,
192
+ type: "simple",
193
+ storageClassType: "string",
194
+ },
195
+ attribute: {
196
+ value: cdktf.listMapperHcl(insightsEventEventAttributeToHclTerraform, true)(struct.attribute),
197
+ isBlock: true,
198
+ type: "set",
199
+ storageClassType: "InsightsEventEventAttributeList",
200
+ },
201
+ };
202
+ // remove undefined attributes
203
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
204
+ }
205
+ export class InsightsEventEventOutputReference extends cdktf.ComplexObject {
206
+ isEmptyObject = false;
207
+ resolvableValue;
208
+ /**
209
+ * @param terraformResource The parent resource
210
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
211
+ * @param complexObjectIndex the index of this item in the list
212
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
213
+ */
214
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
215
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
216
+ }
217
+ get internalValue() {
218
+ if (this.resolvableValue) {
219
+ return this.resolvableValue;
220
+ }
221
+ let hasAnyValues = this.isEmptyObject;
222
+ const internalValueResult = {};
223
+ if (this._timestamp !== undefined) {
224
+ hasAnyValues = true;
225
+ internalValueResult.timestamp = this._timestamp;
226
+ }
227
+ if (this._type !== undefined) {
228
+ hasAnyValues = true;
229
+ internalValueResult.type = this._type;
230
+ }
231
+ if (this._attribute?.internalValue !== undefined) {
232
+ hasAnyValues = true;
233
+ internalValueResult.attribute = this._attribute?.internalValue;
234
+ }
235
+ return hasAnyValues ? internalValueResult : undefined;
236
+ }
237
+ set internalValue(value) {
238
+ if (value === undefined) {
239
+ this.isEmptyObject = false;
240
+ this.resolvableValue = undefined;
241
+ this._timestamp = undefined;
242
+ this._type = undefined;
243
+ this._attribute.internalValue = undefined;
244
+ }
245
+ else if (cdktf.Tokenization.isResolvable(value)) {
246
+ this.isEmptyObject = false;
247
+ this.resolvableValue = value;
248
+ }
249
+ else {
250
+ this.isEmptyObject = Object.keys(value).length === 0;
251
+ this.resolvableValue = undefined;
252
+ this._timestamp = value.timestamp;
253
+ this._type = value.type;
254
+ this._attribute.internalValue = value.attribute;
255
+ }
256
+ }
257
+ // timestamp - computed: false, optional: true, required: false
258
+ _timestamp;
259
+ get timestamp() {
260
+ return this.getNumberAttribute('timestamp');
261
+ }
262
+ set timestamp(value) {
263
+ this._timestamp = value;
264
+ }
265
+ resetTimestamp() {
266
+ this._timestamp = undefined;
267
+ }
268
+ // Temporarily expose input value. Use with caution.
269
+ get timestampInput() {
270
+ return this._timestamp;
271
+ }
272
+ // type - computed: false, optional: false, required: true
273
+ _type;
274
+ get type() {
275
+ return this.getStringAttribute('type');
276
+ }
277
+ set type(value) {
278
+ this._type = value;
279
+ }
280
+ // Temporarily expose input value. Use with caution.
281
+ get typeInput() {
282
+ return this._type;
283
+ }
284
+ // attribute - computed: false, optional: false, required: true
285
+ _attribute = new InsightsEventEventAttributeList(this, "attribute", true);
286
+ get attribute() {
287
+ return this._attribute;
288
+ }
289
+ putAttribute(value) {
290
+ this._attribute.internalValue = value;
291
+ }
292
+ // Temporarily expose input value. Use with caution.
293
+ get attributeInput() {
294
+ return this._attribute.internalValue;
295
+ }
296
+ }
297
+ export class InsightsEventEventList extends cdktf.ComplexList {
298
+ terraformResource;
299
+ terraformAttribute;
300
+ wrapsSet;
301
+ internalValue;
302
+ /**
303
+ * @param terraformResource The parent resource
304
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
305
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
306
+ */
307
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
308
+ super(terraformResource, terraformAttribute, wrapsSet);
309
+ this.terraformResource = terraformResource;
310
+ this.terraformAttribute = terraformAttribute;
311
+ this.wrapsSet = wrapsSet;
312
+ }
313
+ /**
314
+ * @param index the index of the item to return
315
+ */
316
+ get(index) {
317
+ return new InsightsEventEventOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
318
+ }
319
+ }
320
+ /**
321
+ * Represents a {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/insights_event newrelic_insights_event}
322
+ */
323
+ export class InsightsEvent extends cdktf.TerraformResource {
324
+ // =================
325
+ // STATIC PROPERTIES
326
+ // =================
327
+ static tfResourceType = "newrelic_insights_event";
328
+ // ==============
329
+ // STATIC Methods
330
+ // ==============
331
+ /**
332
+ * Generates CDKTF code for importing a InsightsEvent resource upon running "cdktf plan <stack-name>"
333
+ * @param scope The scope in which to define this construct
334
+ * @param importToId The construct id used in the generated config for the InsightsEvent to import
335
+ * @param importFromId The id of the existing InsightsEvent that should be imported. Refer to the {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/insights_event#import import section} in the documentation of this resource for the id to use
336
+ * @param provider? Optional instance of the provider where the InsightsEvent to import is found
337
+ */
338
+ static generateConfigForImport(scope, importToId, importFromId, provider) {
339
+ return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "newrelic_insights_event", importId: importFromId, provider });
340
+ }
341
+ // ===========
342
+ // INITIALIZER
343
+ // ===========
344
+ /**
345
+ * Create a new {@link https://registry.terraform.io/providers/newrelic/newrelic/3.75.4/docs/resources/insights_event newrelic_insights_event} Resource
346
+ *
347
+ * @param scope The scope in which to define this construct
348
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
349
+ * @param options InsightsEventConfig
350
+ */
351
+ constructor(scope, id, config) {
352
+ super(scope, id, {
353
+ terraformResourceType: 'newrelic_insights_event',
354
+ terraformGeneratorMetadata: {
355
+ providerName: 'newrelic',
356
+ providerVersion: '3.75.4',
357
+ providerVersionConstraint: '3.75.4'
358
+ },
359
+ provider: config.provider,
360
+ dependsOn: config.dependsOn,
361
+ count: config.count,
362
+ lifecycle: config.lifecycle,
363
+ provisioners: config.provisioners,
364
+ connection: config.connection,
365
+ forEach: config.forEach
366
+ });
367
+ this._id = config.id;
368
+ this._event.internalValue = config.event;
369
+ }
370
+ // ==========
371
+ // ATTRIBUTES
372
+ // ==========
373
+ // id - computed: true, optional: true, required: false
374
+ _id;
375
+ get id() {
376
+ return this.getStringAttribute('id');
377
+ }
378
+ set id(value) {
379
+ this._id = value;
380
+ }
381
+ resetId() {
382
+ this._id = undefined;
383
+ }
384
+ // Temporarily expose input value. Use with caution.
385
+ get idInput() {
386
+ return this._id;
387
+ }
388
+ // event - computed: false, optional: false, required: true
389
+ _event = new InsightsEventEventList(this, "event", true);
390
+ get event() {
391
+ return this._event;
392
+ }
393
+ putEvent(value) {
394
+ this._event.internalValue = value;
395
+ }
396
+ // Temporarily expose input value. Use with caution.
397
+ get eventInput() {
398
+ return this._event.internalValue;
399
+ }
400
+ // =========
401
+ // SYNTHESIS
402
+ // =========
403
+ synthesizeAttributes() {
404
+ return {
405
+ id: cdktf.stringToTerraform(this._id),
406
+ event: cdktf.listMapper(insightsEventEventToTerraform, true)(this._event.internalValue),
407
+ };
408
+ }
409
+ synthesizeHclAttributes() {
410
+ const attrs = {
411
+ id: {
412
+ value: cdktf.stringToHclTerraform(this._id),
413
+ isBlock: false,
414
+ type: "simple",
415
+ storageClassType: "string",
416
+ },
417
+ event: {
418
+ value: cdktf.listMapperHcl(insightsEventEventToHclTerraform, true)(this._event.internalValue),
419
+ isBlock: true,
420
+ type: "set",
421
+ storageClassType: "InsightsEventEventList",
422
+ },
423
+ };
424
+ // remove undefined attributes
425
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
426
+ }
427
+ }