@cdktf-providers/edge-center-edgecenter 0.10.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 (173) hide show
  1. package/LICENSE +355 -0
  2. package/README.md +19 -0
  3. package/dist/baremetal/index.d.ts +528 -0
  4. package/dist/baremetal/index.js +1250 -0
  5. package/dist/cdn-lecert/index.d.ts +76 -0
  6. package/dist/cdn-lecert/index.js +157 -0
  7. package/dist/cdn-origingroup/index.d.ts +237 -0
  8. package/dist/cdn-origingroup/index.js +560 -0
  9. package/dist/cdn-resource/index.d.ts +2223 -0
  10. package/dist/cdn-resource/index.js +5865 -0
  11. package/dist/cdn-rule/index.d.ts +2037 -0
  12. package/dist/cdn-rule/index.js +5381 -0
  13. package/dist/cdn-shielding/index.d.ts +64 -0
  14. package/dist/cdn-shielding/index.js +131 -0
  15. package/dist/cdn-sslcert/index.d.ts +76 -0
  16. package/dist/cdn-sslcert/index.js +159 -0
  17. package/dist/data-edgecenter-availability-zone/index.d.ts +67 -0
  18. package/dist/data-edgecenter-availability-zone/index.js +141 -0
  19. package/dist/data-edgecenter-cdn-shielding-location/index.d.ts +54 -0
  20. package/dist/data-edgecenter-cdn-shielding-location/index.js +111 -0
  21. package/dist/data-edgecenter-floatingip/index.d.ts +183 -0
  22. package/dist/data-edgecenter-floatingip/index.js +378 -0
  23. package/dist/data-edgecenter-image/index.d.ts +183 -0
  24. package/dist/data-edgecenter-image/index.js +378 -0
  25. package/dist/data-edgecenter-instance/index.d.ts +312 -0
  26. package/dist/data-edgecenter-instance/index.js +690 -0
  27. package/dist/data-edgecenter-instance-port-security/index.d.ts +110 -0
  28. package/dist/data-edgecenter-instance-port-security/index.js +231 -0
  29. package/dist/data-edgecenter-instance-v2/index.d.ts +222 -0
  30. package/dist/data-edgecenter-instance-v2/index.js +501 -0
  31. package/dist/data-edgecenter-k8s/index.d.ts +167 -0
  32. package/dist/data-edgecenter-k8s/index.js +412 -0
  33. package/dist/data-edgecenter-k8s-client-config/index.d.ts +100 -0
  34. package/dist/data-edgecenter-k8s-client-config/index.js +211 -0
  35. package/dist/data-edgecenter-k8s-pool/index.d.ts +120 -0
  36. package/dist/data-edgecenter-k8s-pool/index.js +271 -0
  37. package/dist/data-edgecenter-lb-l7policy/index.d.ts +114 -0
  38. package/dist/data-edgecenter-lb-l7policy/index.js +258 -0
  39. package/dist/data-edgecenter-lb-l7rule/index.d.ts +120 -0
  40. package/dist/data-edgecenter-lb-l7rule/index.js +262 -0
  41. package/dist/data-edgecenter-lblistener/index.d.ts +122 -0
  42. package/dist/data-edgecenter-lblistener/index.js +269 -0
  43. package/dist/data-edgecenter-lbpool/index.d.ts +204 -0
  44. package/dist/data-edgecenter-lbpool/index.js +454 -0
  45. package/dist/data-edgecenter-loadbalancer/index.d.ts +203 -0
  46. package/dist/data-edgecenter-loadbalancer/index.js +427 -0
  47. package/dist/data-edgecenter-loadbalancerv2/index.d.ts +169 -0
  48. package/dist/data-edgecenter-loadbalancerv2/index.js +343 -0
  49. package/dist/data-edgecenter-network/index.d.ts +270 -0
  50. package/dist/data-edgecenter-network/index.js +589 -0
  51. package/dist/data-edgecenter-project/index.d.ts +72 -0
  52. package/dist/data-edgecenter-project/index.js +153 -0
  53. package/dist/data-edgecenter-region/index.d.ts +54 -0
  54. package/dist/data-edgecenter-region/index.js +111 -0
  55. package/dist/data-edgecenter-reseller-images/index.d.ts +91 -0
  56. package/dist/data-edgecenter-reseller-images/index.js +198 -0
  57. package/dist/data-edgecenter-reseller-images-v2/index.d.ts +101 -0
  58. package/dist/data-edgecenter-reseller-images-v2/index.js +218 -0
  59. package/dist/data-edgecenter-reseller-networks/index.d.ts +269 -0
  60. package/dist/data-edgecenter-reseller-networks/index.js +610 -0
  61. package/dist/data-edgecenter-reservedfixedip/index.d.ts +141 -0
  62. package/dist/data-edgecenter-reservedfixedip/index.js +311 -0
  63. package/dist/data-edgecenter-router/index.d.ts +245 -0
  64. package/dist/data-edgecenter-router/index.js +538 -0
  65. package/dist/data-edgecenter-secret/index.d.ts +109 -0
  66. package/dist/data-edgecenter-secret/index.js +235 -0
  67. package/dist/data-edgecenter-securitygroup/index.d.ts +211 -0
  68. package/dist/data-edgecenter-securitygroup/index.js +450 -0
  69. package/dist/data-edgecenter-servergroup/index.d.ts +137 -0
  70. package/dist/data-edgecenter-servergroup/index.js +289 -0
  71. package/dist/data-edgecenter-snapshot/index.d.ts +129 -0
  72. package/dist/data-edgecenter-snapshot/index.js +281 -0
  73. package/dist/data-edgecenter-storage-s3/index.d.ts +71 -0
  74. package/dist/data-edgecenter-storage-s3/index.js +157 -0
  75. package/dist/data-edgecenter-storage-s3-bucket/index.d.ts +64 -0
  76. package/dist/data-edgecenter-storage-s3-bucket/index.js +131 -0
  77. package/dist/data-edgecenter-subnet/index.d.ts +253 -0
  78. package/dist/data-edgecenter-subnet/index.js +536 -0
  79. package/dist/data-edgecenter-useractions-subscription-amqp/index.d.ts +48 -0
  80. package/dist/data-edgecenter-useractions-subscription-amqp/index.js +107 -0
  81. package/dist/data-edgecenter-useractions-subscription-log/index.d.ts +47 -0
  82. package/dist/data-edgecenter-useractions-subscription-log/index.js +103 -0
  83. package/dist/data-edgecenter-volume/index.d.ts +169 -0
  84. package/dist/data-edgecenter-volume/index.js +343 -0
  85. package/dist/dns-zone/index.d.ts +54 -0
  86. package/dist/dns-zone/index.js +111 -0
  87. package/dist/dns-zone-record/index.d.ts +494 -0
  88. package/dist/dns-zone-record/index.js +1217 -0
  89. package/dist/floatingip/index.d.ts +185 -0
  90. package/dist/floatingip/index.js +394 -0
  91. package/dist/index.d.ts +83 -0
  92. package/dist/index.js +84 -0
  93. package/dist/instance/index.d.ts +830 -0
  94. package/dist/instance/index.js +1948 -0
  95. package/dist/instance-port-security/index.d.ts +229 -0
  96. package/dist/instance-port-security/index.js +564 -0
  97. package/dist/instance-v2/index.d.ts +552 -0
  98. package/dist/instance-v2/index.js +1244 -0
  99. package/dist/k8s/index.d.ts +342 -0
  100. package/dist/k8s/index.js +856 -0
  101. package/dist/k8s-pool/index.d.ts +227 -0
  102. package/dist/k8s-pool/index.js +514 -0
  103. package/dist/keypair/index.d.ts +88 -0
  104. package/dist/keypair/index.js +185 -0
  105. package/dist/lazy-index.d.ts +0 -0
  106. package/dist/lazy-index.js +84 -0
  107. package/dist/lb-l7policy/index.d.ts +244 -0
  108. package/dist/lb-l7policy/index.js +566 -0
  109. package/dist/lb-l7rule/index.d.ts +219 -0
  110. package/dist/lb-l7rule/index.js +506 -0
  111. package/dist/lblistener/index.d.ts +264 -0
  112. package/dist/lblistener/index.js +597 -0
  113. package/dist/lbmember/index.d.ts +207 -0
  114. package/dist/lbmember/index.js +473 -0
  115. package/dist/lbpool/index.d.ts +387 -0
  116. package/dist/lbpool/index.js +934 -0
  117. package/dist/lifecyclepolicy/index.d.ts +476 -0
  118. package/dist/lifecyclepolicy/index.js +1188 -0
  119. package/dist/loadbalancer/index.d.ts +341 -0
  120. package/dist/loadbalancer/index.js +851 -0
  121. package/dist/loadbalancerv2/index.d.ts +253 -0
  122. package/dist/loadbalancerv2/index.js +562 -0
  123. package/dist/network/index.d.ts +187 -0
  124. package/dist/network/index.js +382 -0
  125. package/dist/project/index.d.ts +68 -0
  126. package/dist/project/index.js +150 -0
  127. package/dist/protection-resource/index.d.ts +179 -0
  128. package/dist/protection-resource/index.js +381 -0
  129. package/dist/protection-resource-alias/index.d.ts +64 -0
  130. package/dist/protection-resource-alias/index.js +131 -0
  131. package/dist/protection-resource-alias-certificate/index.d.ts +88 -0
  132. package/dist/protection-resource-alias-certificate/index.js +185 -0
  133. package/dist/protection-resource-blacklist-entry/index.d.ts +64 -0
  134. package/dist/protection-resource-blacklist-entry/index.js +131 -0
  135. package/dist/protection-resource-certificate/index.d.ts +88 -0
  136. package/dist/protection-resource-certificate/index.js +185 -0
  137. package/dist/protection-resource-header/index.d.ts +74 -0
  138. package/dist/protection-resource-header/index.js +151 -0
  139. package/dist/protection-resource-origin/index.d.ts +119 -0
  140. package/dist/protection-resource-origin/index.js +246 -0
  141. package/dist/protection-resource-whitelist-entry/index.d.ts +64 -0
  142. package/dist/protection-resource-whitelist-entry/index.js +131 -0
  143. package/dist/provider/index.d.ts +182 -0
  144. package/dist/provider/index.js +384 -0
  145. package/dist/reseller-images/index.d.ts +120 -0
  146. package/dist/reseller-images/index.js +272 -0
  147. package/dist/reseller-images-v2/index.d.ts +130 -0
  148. package/dist/reseller-images-v2/index.js +292 -0
  149. package/dist/reservedfixedip/index.d.ts +230 -0
  150. package/dist/reservedfixedip/index.js +513 -0
  151. package/dist/router/index.d.ts +322 -0
  152. package/dist/router/index.js +755 -0
  153. package/dist/secret/index.d.ts +146 -0
  154. package/dist/secret/index.js +311 -0
  155. package/dist/securitygroup/index.d.ts +291 -0
  156. package/dist/securitygroup/index.js +654 -0
  157. package/dist/servergroup/index.d.ts +143 -0
  158. package/dist/servergroup/index.js +302 -0
  159. package/dist/snapshot/index.d.ts +185 -0
  160. package/dist/snapshot/index.js +383 -0
  161. package/dist/storage-s3/index.d.ts +141 -0
  162. package/dist/storage-s3/index.js +292 -0
  163. package/dist/storage-s3-bucket/index.d.ts +64 -0
  164. package/dist/storage-s3-bucket/index.js +131 -0
  165. package/dist/subnet/index.d.ts +346 -0
  166. package/dist/subnet/index.js +751 -0
  167. package/dist/useractions-subscription-amqp/index.d.ts +87 -0
  168. package/dist/useractions-subscription-amqp/index.js +180 -0
  169. package/dist/useractions-subscription-log/index.d.ts +74 -0
  170. package/dist/useractions-subscription-log/index.js +151 -0
  171. package/dist/volume/index.d.ts +208 -0
  172. package/dist/volume/index.js +424 -0
  173. package/package.json +51 -0
@@ -0,0 +1,506 @@
1
+ // https://registry.terraform.io/providers/edge-center/edgecenter/0.10.4/docs/resources/lb_l7rule
2
+ // generated from terraform resource schema
3
+ import * as cdktf from 'cdktf';
4
+ export function lbL7RuleTimeoutsToTerraform(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
+ create: cdktf.stringToTerraform(struct.create),
13
+ delete: cdktf.stringToTerraform(struct.delete),
14
+ update: cdktf.stringToTerraform(struct.update),
15
+ };
16
+ }
17
+ export function lbL7RuleTimeoutsToHclTerraform(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
+ create: {
26
+ value: cdktf.stringToHclTerraform(struct.create),
27
+ isBlock: false,
28
+ type: "simple",
29
+ storageClassType: "string",
30
+ },
31
+ delete: {
32
+ value: cdktf.stringToHclTerraform(struct.delete),
33
+ isBlock: false,
34
+ type: "simple",
35
+ storageClassType: "string",
36
+ },
37
+ update: {
38
+ value: cdktf.stringToHclTerraform(struct.update),
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 LbL7RuleTimeoutsOutputReference 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
+ */
54
+ constructor(terraformResource, terraformAttribute) {
55
+ super(terraformResource, terraformAttribute, false);
56
+ }
57
+ get internalValue() {
58
+ if (this.resolvableValue) {
59
+ return this.resolvableValue;
60
+ }
61
+ let hasAnyValues = this.isEmptyObject;
62
+ const internalValueResult = {};
63
+ if (this._create !== undefined) {
64
+ hasAnyValues = true;
65
+ internalValueResult.create = this._create;
66
+ }
67
+ if (this._delete !== undefined) {
68
+ hasAnyValues = true;
69
+ internalValueResult.delete = this._delete;
70
+ }
71
+ if (this._update !== undefined) {
72
+ hasAnyValues = true;
73
+ internalValueResult.update = this._update;
74
+ }
75
+ return hasAnyValues ? internalValueResult : undefined;
76
+ }
77
+ set internalValue(value) {
78
+ if (value === undefined) {
79
+ this.isEmptyObject = false;
80
+ this.resolvableValue = undefined;
81
+ this._create = undefined;
82
+ this._delete = undefined;
83
+ this._update = undefined;
84
+ }
85
+ else if (cdktf.Tokenization.isResolvable(value)) {
86
+ this.isEmptyObject = false;
87
+ this.resolvableValue = value;
88
+ }
89
+ else {
90
+ this.isEmptyObject = Object.keys(value).length === 0;
91
+ this.resolvableValue = undefined;
92
+ this._create = value.create;
93
+ this._delete = value.delete;
94
+ this._update = value.update;
95
+ }
96
+ }
97
+ // create - computed: false, optional: true, required: false
98
+ _create;
99
+ get create() {
100
+ return this.getStringAttribute('create');
101
+ }
102
+ set create(value) {
103
+ this._create = value;
104
+ }
105
+ resetCreate() {
106
+ this._create = undefined;
107
+ }
108
+ // Temporarily expose input value. Use with caution.
109
+ get createInput() {
110
+ return this._create;
111
+ }
112
+ // delete - computed: false, optional: true, required: false
113
+ _delete;
114
+ get delete() {
115
+ return this.getStringAttribute('delete');
116
+ }
117
+ set delete(value) {
118
+ this._delete = value;
119
+ }
120
+ resetDelete() {
121
+ this._delete = undefined;
122
+ }
123
+ // Temporarily expose input value. Use with caution.
124
+ get deleteInput() {
125
+ return this._delete;
126
+ }
127
+ // update - computed: false, optional: true, required: false
128
+ _update;
129
+ get update() {
130
+ return this.getStringAttribute('update');
131
+ }
132
+ set update(value) {
133
+ this._update = value;
134
+ }
135
+ resetUpdate() {
136
+ this._update = undefined;
137
+ }
138
+ // Temporarily expose input value. Use with caution.
139
+ get updateInput() {
140
+ return this._update;
141
+ }
142
+ }
143
+ /**
144
+ * Represents a {@link https://registry.terraform.io/providers/edge-center/edgecenter/0.10.4/docs/resources/lb_l7rule edgecenter_lb_l7rule}
145
+ */
146
+ export class LbL7Rule extends cdktf.TerraformResource {
147
+ // =================
148
+ // STATIC PROPERTIES
149
+ // =================
150
+ static tfResourceType = "edgecenter_lb_l7rule";
151
+ // ==============
152
+ // STATIC Methods
153
+ // ==============
154
+ /**
155
+ * Generates CDKTF code for importing a LbL7Rule resource upon running "cdktf plan <stack-name>"
156
+ * @param scope The scope in which to define this construct
157
+ * @param importToId The construct id used in the generated config for the LbL7Rule to import
158
+ * @param importFromId The id of the existing LbL7Rule that should be imported. Refer to the {@link https://registry.terraform.io/providers/edge-center/edgecenter/0.10.4/docs/resources/lb_l7rule#import import section} in the documentation of this resource for the id to use
159
+ * @param provider? Optional instance of the provider where the LbL7Rule to import is found
160
+ */
161
+ static generateConfigForImport(scope, importToId, importFromId, provider) {
162
+ return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "edgecenter_lb_l7rule", importId: importFromId, provider });
163
+ }
164
+ // ===========
165
+ // INITIALIZER
166
+ // ===========
167
+ /**
168
+ * Create a new {@link https://registry.terraform.io/providers/edge-center/edgecenter/0.10.4/docs/resources/lb_l7rule edgecenter_lb_l7rule} Resource
169
+ *
170
+ * @param scope The scope in which to define this construct
171
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
172
+ * @param options LbL7RuleConfig
173
+ */
174
+ constructor(scope, id, config) {
175
+ super(scope, id, {
176
+ terraformResourceType: 'edgecenter_lb_l7rule',
177
+ terraformGeneratorMetadata: {
178
+ providerName: 'edgecenter',
179
+ providerVersion: '0.10.4',
180
+ providerVersionConstraint: '0.10.4'
181
+ },
182
+ provider: config.provider,
183
+ dependsOn: config.dependsOn,
184
+ count: config.count,
185
+ lifecycle: config.lifecycle,
186
+ provisioners: config.provisioners,
187
+ connection: config.connection,
188
+ forEach: config.forEach
189
+ });
190
+ this._compareType = config.compareType;
191
+ this._id = config.id;
192
+ this._invert = config.invert;
193
+ this._key = config.key;
194
+ this._l7PolicyId = config.l7PolicyId;
195
+ this._projectId = config.projectId;
196
+ this._projectName = config.projectName;
197
+ this._regionId = config.regionId;
198
+ this._regionName = config.regionName;
199
+ this._tags = config.tags;
200
+ this._type = config.type;
201
+ this._value = config.value;
202
+ this._timeouts.internalValue = config.timeouts;
203
+ }
204
+ // ==========
205
+ // ATTRIBUTES
206
+ // ==========
207
+ // compare_type - computed: false, optional: false, required: true
208
+ _compareType;
209
+ get compareType() {
210
+ return this.getStringAttribute('compare_type');
211
+ }
212
+ set compareType(value) {
213
+ this._compareType = value;
214
+ }
215
+ // Temporarily expose input value. Use with caution.
216
+ get compareTypeInput() {
217
+ return this._compareType;
218
+ }
219
+ // id - computed: true, optional: true, required: false
220
+ _id;
221
+ get id() {
222
+ return this.getStringAttribute('id');
223
+ }
224
+ set id(value) {
225
+ this._id = value;
226
+ }
227
+ resetId() {
228
+ this._id = undefined;
229
+ }
230
+ // Temporarily expose input value. Use with caution.
231
+ get idInput() {
232
+ return this._id;
233
+ }
234
+ // invert - computed: false, optional: true, required: false
235
+ _invert;
236
+ get invert() {
237
+ return this.getBooleanAttribute('invert');
238
+ }
239
+ set invert(value) {
240
+ this._invert = value;
241
+ }
242
+ resetInvert() {
243
+ this._invert = undefined;
244
+ }
245
+ // Temporarily expose input value. Use with caution.
246
+ get invertInput() {
247
+ return this._invert;
248
+ }
249
+ // key - computed: false, optional: true, required: false
250
+ _key;
251
+ get key() {
252
+ return this.getStringAttribute('key');
253
+ }
254
+ set key(value) {
255
+ this._key = value;
256
+ }
257
+ resetKey() {
258
+ this._key = undefined;
259
+ }
260
+ // Temporarily expose input value. Use with caution.
261
+ get keyInput() {
262
+ return this._key;
263
+ }
264
+ // l7policy_id - computed: false, optional: false, required: true
265
+ _l7PolicyId;
266
+ get l7PolicyId() {
267
+ return this.getStringAttribute('l7policy_id');
268
+ }
269
+ set l7PolicyId(value) {
270
+ this._l7PolicyId = value;
271
+ }
272
+ // Temporarily expose input value. Use with caution.
273
+ get l7PolicyIdInput() {
274
+ return this._l7PolicyId;
275
+ }
276
+ // listener_id - computed: true, optional: false, required: false
277
+ get listenerId() {
278
+ return this.getStringAttribute('listener_id');
279
+ }
280
+ // operating_status - computed: true, optional: false, required: false
281
+ get operatingStatus() {
282
+ return this.getStringAttribute('operating_status');
283
+ }
284
+ // project_id - computed: true, optional: true, required: false
285
+ _projectId;
286
+ get projectId() {
287
+ return this.getNumberAttribute('project_id');
288
+ }
289
+ set projectId(value) {
290
+ this._projectId = value;
291
+ }
292
+ resetProjectId() {
293
+ this._projectId = undefined;
294
+ }
295
+ // Temporarily expose input value. Use with caution.
296
+ get projectIdInput() {
297
+ return this._projectId;
298
+ }
299
+ // project_name - computed: true, optional: true, required: false
300
+ _projectName;
301
+ get projectName() {
302
+ return this.getStringAttribute('project_name');
303
+ }
304
+ set projectName(value) {
305
+ this._projectName = value;
306
+ }
307
+ resetProjectName() {
308
+ this._projectName = undefined;
309
+ }
310
+ // Temporarily expose input value. Use with caution.
311
+ get projectNameInput() {
312
+ return this._projectName;
313
+ }
314
+ // provisioning_status - computed: true, optional: false, required: false
315
+ get provisioningStatus() {
316
+ return this.getStringAttribute('provisioning_status');
317
+ }
318
+ // region_id - computed: true, optional: true, required: false
319
+ _regionId;
320
+ get regionId() {
321
+ return this.getNumberAttribute('region_id');
322
+ }
323
+ set regionId(value) {
324
+ this._regionId = value;
325
+ }
326
+ resetRegionId() {
327
+ this._regionId = undefined;
328
+ }
329
+ // Temporarily expose input value. Use with caution.
330
+ get regionIdInput() {
331
+ return this._regionId;
332
+ }
333
+ // region_name - computed: true, optional: true, required: false
334
+ _regionName;
335
+ get regionName() {
336
+ return this.getStringAttribute('region_name');
337
+ }
338
+ set regionName(value) {
339
+ this._regionName = value;
340
+ }
341
+ resetRegionName() {
342
+ this._regionName = undefined;
343
+ }
344
+ // Temporarily expose input value. Use with caution.
345
+ get regionNameInput() {
346
+ return this._regionName;
347
+ }
348
+ // tags - computed: false, optional: true, required: false
349
+ _tags;
350
+ get tags() {
351
+ return this.getListAttribute('tags');
352
+ }
353
+ set tags(value) {
354
+ this._tags = value;
355
+ }
356
+ resetTags() {
357
+ this._tags = undefined;
358
+ }
359
+ // Temporarily expose input value. Use with caution.
360
+ get tagsInput() {
361
+ return this._tags;
362
+ }
363
+ // type - computed: false, optional: false, required: true
364
+ _type;
365
+ get type() {
366
+ return this.getStringAttribute('type');
367
+ }
368
+ set type(value) {
369
+ this._type = value;
370
+ }
371
+ // Temporarily expose input value. Use with caution.
372
+ get typeInput() {
373
+ return this._type;
374
+ }
375
+ // value - computed: false, optional: false, required: true
376
+ _value;
377
+ get value() {
378
+ return this.getStringAttribute('value');
379
+ }
380
+ set value(value) {
381
+ this._value = value;
382
+ }
383
+ // Temporarily expose input value. Use with caution.
384
+ get valueInput() {
385
+ return this._value;
386
+ }
387
+ // timeouts - computed: false, optional: true, required: false
388
+ _timeouts = new LbL7RuleTimeoutsOutputReference(this, "timeouts");
389
+ get timeouts() {
390
+ return this._timeouts;
391
+ }
392
+ putTimeouts(value) {
393
+ this._timeouts.internalValue = value;
394
+ }
395
+ resetTimeouts() {
396
+ this._timeouts.internalValue = undefined;
397
+ }
398
+ // Temporarily expose input value. Use with caution.
399
+ get timeoutsInput() {
400
+ return this._timeouts.internalValue;
401
+ }
402
+ // =========
403
+ // SYNTHESIS
404
+ // =========
405
+ synthesizeAttributes() {
406
+ return {
407
+ compare_type: cdktf.stringToTerraform(this._compareType),
408
+ id: cdktf.stringToTerraform(this._id),
409
+ invert: cdktf.booleanToTerraform(this._invert),
410
+ key: cdktf.stringToTerraform(this._key),
411
+ l7policy_id: cdktf.stringToTerraform(this._l7PolicyId),
412
+ project_id: cdktf.numberToTerraform(this._projectId),
413
+ project_name: cdktf.stringToTerraform(this._projectName),
414
+ region_id: cdktf.numberToTerraform(this._regionId),
415
+ region_name: cdktf.stringToTerraform(this._regionName),
416
+ tags: cdktf.listMapper(cdktf.stringToTerraform, false)(this._tags),
417
+ type: cdktf.stringToTerraform(this._type),
418
+ value: cdktf.stringToTerraform(this._value),
419
+ timeouts: lbL7RuleTimeoutsToTerraform(this._timeouts.internalValue),
420
+ };
421
+ }
422
+ synthesizeHclAttributes() {
423
+ const attrs = {
424
+ compare_type: {
425
+ value: cdktf.stringToHclTerraform(this._compareType),
426
+ isBlock: false,
427
+ type: "simple",
428
+ storageClassType: "string",
429
+ },
430
+ id: {
431
+ value: cdktf.stringToHclTerraform(this._id),
432
+ isBlock: false,
433
+ type: "simple",
434
+ storageClassType: "string",
435
+ },
436
+ invert: {
437
+ value: cdktf.booleanToHclTerraform(this._invert),
438
+ isBlock: false,
439
+ type: "simple",
440
+ storageClassType: "boolean",
441
+ },
442
+ key: {
443
+ value: cdktf.stringToHclTerraform(this._key),
444
+ isBlock: false,
445
+ type: "simple",
446
+ storageClassType: "string",
447
+ },
448
+ l7policy_id: {
449
+ value: cdktf.stringToHclTerraform(this._l7PolicyId),
450
+ isBlock: false,
451
+ type: "simple",
452
+ storageClassType: "string",
453
+ },
454
+ project_id: {
455
+ value: cdktf.numberToHclTerraform(this._projectId),
456
+ isBlock: false,
457
+ type: "simple",
458
+ storageClassType: "number",
459
+ },
460
+ project_name: {
461
+ value: cdktf.stringToHclTerraform(this._projectName),
462
+ isBlock: false,
463
+ type: "simple",
464
+ storageClassType: "string",
465
+ },
466
+ region_id: {
467
+ value: cdktf.numberToHclTerraform(this._regionId),
468
+ isBlock: false,
469
+ type: "simple",
470
+ storageClassType: "number",
471
+ },
472
+ region_name: {
473
+ value: cdktf.stringToHclTerraform(this._regionName),
474
+ isBlock: false,
475
+ type: "simple",
476
+ storageClassType: "string",
477
+ },
478
+ tags: {
479
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._tags),
480
+ isBlock: false,
481
+ type: "list",
482
+ storageClassType: "stringList",
483
+ },
484
+ type: {
485
+ value: cdktf.stringToHclTerraform(this._type),
486
+ isBlock: false,
487
+ type: "simple",
488
+ storageClassType: "string",
489
+ },
490
+ value: {
491
+ value: cdktf.stringToHclTerraform(this._value),
492
+ isBlock: false,
493
+ type: "simple",
494
+ storageClassType: "string",
495
+ },
496
+ timeouts: {
497
+ value: lbL7RuleTimeoutsToHclTerraform(this._timeouts.internalValue),
498
+ isBlock: true,
499
+ type: "struct",
500
+ storageClassType: "LbL7RuleTimeouts",
501
+ },
502
+ };
503
+ // remove undefined attributes
504
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
505
+ }
506
+ }