@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,1250 @@
1
+ // https://registry.terraform.io/providers/edge-center/edgecenter/0.10.4/docs/resources/baremetal
2
+ // generated from terraform resource schema
3
+ import * as cdktf from 'cdktf';
4
+ export function baremetalAddressesNetToTerraform(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
+ }
13
+ export function baremetalAddressesNetToHclTerraform(struct) {
14
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
15
+ return struct;
16
+ }
17
+ if (cdktf.isComplexElement(struct)) {
18
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
19
+ }
20
+ const attrs = {};
21
+ return attrs;
22
+ }
23
+ export class BaremetalAddressesNetOutputReference extends cdktf.ComplexObject {
24
+ isEmptyObject = false;
25
+ /**
26
+ * @param terraformResource The parent resource
27
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
28
+ * @param complexObjectIndex the index of this item in the list
29
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
30
+ */
31
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
32
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
33
+ }
34
+ get internalValue() {
35
+ let hasAnyValues = this.isEmptyObject;
36
+ const internalValueResult = {};
37
+ return hasAnyValues ? internalValueResult : undefined;
38
+ }
39
+ set internalValue(value) {
40
+ if (value === undefined) {
41
+ this.isEmptyObject = false;
42
+ }
43
+ else {
44
+ this.isEmptyObject = Object.keys(value).length === 0;
45
+ }
46
+ }
47
+ // addr - computed: true, optional: false, required: false
48
+ get addr() {
49
+ return this.getStringAttribute('addr');
50
+ }
51
+ // type - computed: true, optional: false, required: false
52
+ get type() {
53
+ return this.getStringAttribute('type');
54
+ }
55
+ }
56
+ export class BaremetalAddressesNetList extends cdktf.ComplexList {
57
+ terraformResource;
58
+ terraformAttribute;
59
+ wrapsSet;
60
+ /**
61
+ * @param terraformResource The parent resource
62
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
63
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
64
+ */
65
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
66
+ super(terraformResource, terraformAttribute, wrapsSet);
67
+ this.terraformResource = terraformResource;
68
+ this.terraformAttribute = terraformAttribute;
69
+ this.wrapsSet = wrapsSet;
70
+ }
71
+ /**
72
+ * @param index the index of the item to return
73
+ */
74
+ get(index) {
75
+ return new BaremetalAddressesNetOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
76
+ }
77
+ }
78
+ export function baremetalAddressesToTerraform(struct) {
79
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
80
+ return struct;
81
+ }
82
+ if (cdktf.isComplexElement(struct)) {
83
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
84
+ }
85
+ return {};
86
+ }
87
+ export function baremetalAddressesToHclTerraform(struct) {
88
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
89
+ return struct;
90
+ }
91
+ if (cdktf.isComplexElement(struct)) {
92
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
93
+ }
94
+ const attrs = {};
95
+ return attrs;
96
+ }
97
+ export class BaremetalAddressesOutputReference extends cdktf.ComplexObject {
98
+ isEmptyObject = false;
99
+ /**
100
+ * @param terraformResource The parent resource
101
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
102
+ * @param complexObjectIndex the index of this item in the list
103
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
104
+ */
105
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
106
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
107
+ }
108
+ get internalValue() {
109
+ let hasAnyValues = this.isEmptyObject;
110
+ const internalValueResult = {};
111
+ return hasAnyValues ? internalValueResult : undefined;
112
+ }
113
+ set internalValue(value) {
114
+ if (value === undefined) {
115
+ this.isEmptyObject = false;
116
+ }
117
+ else {
118
+ this.isEmptyObject = Object.keys(value).length === 0;
119
+ }
120
+ }
121
+ // net - computed: true, optional: false, required: false
122
+ _net = new BaremetalAddressesNetList(this, "net", false);
123
+ get net() {
124
+ return this._net;
125
+ }
126
+ }
127
+ export class BaremetalAddressesList extends cdktf.ComplexList {
128
+ terraformResource;
129
+ terraformAttribute;
130
+ wrapsSet;
131
+ /**
132
+ * @param terraformResource The parent resource
133
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
134
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
135
+ */
136
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
137
+ super(terraformResource, terraformAttribute, wrapsSet);
138
+ this.terraformResource = terraformResource;
139
+ this.terraformAttribute = terraformAttribute;
140
+ this.wrapsSet = wrapsSet;
141
+ }
142
+ /**
143
+ * @param index the index of the item to return
144
+ */
145
+ get(index) {
146
+ return new BaremetalAddressesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
147
+ }
148
+ }
149
+ export function baremetalInterfaceToTerraform(struct) {
150
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
151
+ return struct;
152
+ }
153
+ if (cdktf.isComplexElement(struct)) {
154
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
155
+ }
156
+ return {
157
+ existing_fip_id: cdktf.stringToTerraform(struct.existingFipId),
158
+ fip_source: cdktf.stringToTerraform(struct.fipSource),
159
+ ip_address: cdktf.stringToTerraform(struct.ipAddress),
160
+ is_parent: cdktf.booleanToTerraform(struct.isParent),
161
+ network_id: cdktf.stringToTerraform(struct.networkId),
162
+ order: cdktf.numberToTerraform(struct.order),
163
+ port_id: cdktf.stringToTerraform(struct.portId),
164
+ subnet_id: cdktf.stringToTerraform(struct.subnetId),
165
+ type: cdktf.stringToTerraform(struct.type),
166
+ };
167
+ }
168
+ export function baremetalInterfaceToHclTerraform(struct) {
169
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
170
+ return struct;
171
+ }
172
+ if (cdktf.isComplexElement(struct)) {
173
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
174
+ }
175
+ const attrs = {
176
+ existing_fip_id: {
177
+ value: cdktf.stringToHclTerraform(struct.existingFipId),
178
+ isBlock: false,
179
+ type: "simple",
180
+ storageClassType: "string",
181
+ },
182
+ fip_source: {
183
+ value: cdktf.stringToHclTerraform(struct.fipSource),
184
+ isBlock: false,
185
+ type: "simple",
186
+ storageClassType: "string",
187
+ },
188
+ ip_address: {
189
+ value: cdktf.stringToHclTerraform(struct.ipAddress),
190
+ isBlock: false,
191
+ type: "simple",
192
+ storageClassType: "string",
193
+ },
194
+ is_parent: {
195
+ value: cdktf.booleanToHclTerraform(struct.isParent),
196
+ isBlock: false,
197
+ type: "simple",
198
+ storageClassType: "boolean",
199
+ },
200
+ network_id: {
201
+ value: cdktf.stringToHclTerraform(struct.networkId),
202
+ isBlock: false,
203
+ type: "simple",
204
+ storageClassType: "string",
205
+ },
206
+ order: {
207
+ value: cdktf.numberToHclTerraform(struct.order),
208
+ isBlock: false,
209
+ type: "simple",
210
+ storageClassType: "number",
211
+ },
212
+ port_id: {
213
+ value: cdktf.stringToHclTerraform(struct.portId),
214
+ isBlock: false,
215
+ type: "simple",
216
+ storageClassType: "string",
217
+ },
218
+ subnet_id: {
219
+ value: cdktf.stringToHclTerraform(struct.subnetId),
220
+ isBlock: false,
221
+ type: "simple",
222
+ storageClassType: "string",
223
+ },
224
+ type: {
225
+ value: cdktf.stringToHclTerraform(struct.type),
226
+ isBlock: false,
227
+ type: "simple",
228
+ storageClassType: "string",
229
+ },
230
+ };
231
+ // remove undefined attributes
232
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
233
+ }
234
+ export class BaremetalInterfaceOutputReference extends cdktf.ComplexObject {
235
+ isEmptyObject = false;
236
+ resolvableValue;
237
+ /**
238
+ * @param terraformResource The parent resource
239
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
240
+ * @param complexObjectIndex the index of this item in the list
241
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
242
+ */
243
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
244
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
245
+ }
246
+ get internalValue() {
247
+ if (this.resolvableValue) {
248
+ return this.resolvableValue;
249
+ }
250
+ let hasAnyValues = this.isEmptyObject;
251
+ const internalValueResult = {};
252
+ if (this._existingFipId !== undefined) {
253
+ hasAnyValues = true;
254
+ internalValueResult.existingFipId = this._existingFipId;
255
+ }
256
+ if (this._fipSource !== undefined) {
257
+ hasAnyValues = true;
258
+ internalValueResult.fipSource = this._fipSource;
259
+ }
260
+ if (this._ipAddress !== undefined) {
261
+ hasAnyValues = true;
262
+ internalValueResult.ipAddress = this._ipAddress;
263
+ }
264
+ if (this._isParent !== undefined) {
265
+ hasAnyValues = true;
266
+ internalValueResult.isParent = this._isParent;
267
+ }
268
+ if (this._networkId !== undefined) {
269
+ hasAnyValues = true;
270
+ internalValueResult.networkId = this._networkId;
271
+ }
272
+ if (this._order !== undefined) {
273
+ hasAnyValues = true;
274
+ internalValueResult.order = this._order;
275
+ }
276
+ if (this._portId !== undefined) {
277
+ hasAnyValues = true;
278
+ internalValueResult.portId = this._portId;
279
+ }
280
+ if (this._subnetId !== undefined) {
281
+ hasAnyValues = true;
282
+ internalValueResult.subnetId = this._subnetId;
283
+ }
284
+ if (this._type !== undefined) {
285
+ hasAnyValues = true;
286
+ internalValueResult.type = this._type;
287
+ }
288
+ return hasAnyValues ? internalValueResult : undefined;
289
+ }
290
+ set internalValue(value) {
291
+ if (value === undefined) {
292
+ this.isEmptyObject = false;
293
+ this.resolvableValue = undefined;
294
+ this._existingFipId = undefined;
295
+ this._fipSource = undefined;
296
+ this._ipAddress = undefined;
297
+ this._isParent = undefined;
298
+ this._networkId = undefined;
299
+ this._order = undefined;
300
+ this._portId = undefined;
301
+ this._subnetId = undefined;
302
+ this._type = undefined;
303
+ }
304
+ else if (cdktf.Tokenization.isResolvable(value)) {
305
+ this.isEmptyObject = false;
306
+ this.resolvableValue = value;
307
+ }
308
+ else {
309
+ this.isEmptyObject = Object.keys(value).length === 0;
310
+ this.resolvableValue = undefined;
311
+ this._existingFipId = value.existingFipId;
312
+ this._fipSource = value.fipSource;
313
+ this._ipAddress = value.ipAddress;
314
+ this._isParent = value.isParent;
315
+ this._networkId = value.networkId;
316
+ this._order = value.order;
317
+ this._portId = value.portId;
318
+ this._subnetId = value.subnetId;
319
+ this._type = value.type;
320
+ }
321
+ }
322
+ // existing_fip_id - computed: false, optional: true, required: false
323
+ _existingFipId;
324
+ get existingFipId() {
325
+ return this.getStringAttribute('existing_fip_id');
326
+ }
327
+ set existingFipId(value) {
328
+ this._existingFipId = value;
329
+ }
330
+ resetExistingFipId() {
331
+ this._existingFipId = undefined;
332
+ }
333
+ // Temporarily expose input value. Use with caution.
334
+ get existingFipIdInput() {
335
+ return this._existingFipId;
336
+ }
337
+ // fip_source - computed: false, optional: true, required: false
338
+ _fipSource;
339
+ get fipSource() {
340
+ return this.getStringAttribute('fip_source');
341
+ }
342
+ set fipSource(value) {
343
+ this._fipSource = value;
344
+ }
345
+ resetFipSource() {
346
+ this._fipSource = undefined;
347
+ }
348
+ // Temporarily expose input value. Use with caution.
349
+ get fipSourceInput() {
350
+ return this._fipSource;
351
+ }
352
+ // ip_address - computed: true, optional: true, required: false
353
+ _ipAddress;
354
+ get ipAddress() {
355
+ return this.getStringAttribute('ip_address');
356
+ }
357
+ set ipAddress(value) {
358
+ this._ipAddress = value;
359
+ }
360
+ resetIpAddress() {
361
+ this._ipAddress = undefined;
362
+ }
363
+ // Temporarily expose input value. Use with caution.
364
+ get ipAddressInput() {
365
+ return this._ipAddress;
366
+ }
367
+ // is_parent - computed: true, optional: true, required: false
368
+ _isParent;
369
+ get isParent() {
370
+ return this.getBooleanAttribute('is_parent');
371
+ }
372
+ set isParent(value) {
373
+ this._isParent = value;
374
+ }
375
+ resetIsParent() {
376
+ this._isParent = undefined;
377
+ }
378
+ // Temporarily expose input value. Use with caution.
379
+ get isParentInput() {
380
+ return this._isParent;
381
+ }
382
+ // network_id - computed: true, optional: true, required: false
383
+ _networkId;
384
+ get networkId() {
385
+ return this.getStringAttribute('network_id');
386
+ }
387
+ set networkId(value) {
388
+ this._networkId = value;
389
+ }
390
+ resetNetworkId() {
391
+ this._networkId = undefined;
392
+ }
393
+ // Temporarily expose input value. Use with caution.
394
+ get networkIdInput() {
395
+ return this._networkId;
396
+ }
397
+ // order - computed: false, optional: true, required: false
398
+ _order;
399
+ get order() {
400
+ return this.getNumberAttribute('order');
401
+ }
402
+ set order(value) {
403
+ this._order = value;
404
+ }
405
+ resetOrder() {
406
+ this._order = undefined;
407
+ }
408
+ // Temporarily expose input value. Use with caution.
409
+ get orderInput() {
410
+ return this._order;
411
+ }
412
+ // port_id - computed: true, optional: true, required: false
413
+ _portId;
414
+ get portId() {
415
+ return this.getStringAttribute('port_id');
416
+ }
417
+ set portId(value) {
418
+ this._portId = value;
419
+ }
420
+ resetPortId() {
421
+ this._portId = undefined;
422
+ }
423
+ // Temporarily expose input value. Use with caution.
424
+ get portIdInput() {
425
+ return this._portId;
426
+ }
427
+ // subnet_id - computed: true, optional: true, required: false
428
+ _subnetId;
429
+ get subnetId() {
430
+ return this.getStringAttribute('subnet_id');
431
+ }
432
+ set subnetId(value) {
433
+ this._subnetId = value;
434
+ }
435
+ resetSubnetId() {
436
+ this._subnetId = undefined;
437
+ }
438
+ // Temporarily expose input value. Use with caution.
439
+ get subnetIdInput() {
440
+ return this._subnetId;
441
+ }
442
+ // type - computed: false, optional: false, required: true
443
+ _type;
444
+ get type() {
445
+ return this.getStringAttribute('type');
446
+ }
447
+ set type(value) {
448
+ this._type = value;
449
+ }
450
+ // Temporarily expose input value. Use with caution.
451
+ get typeInput() {
452
+ return this._type;
453
+ }
454
+ }
455
+ export class BaremetalInterfaceList extends cdktf.ComplexList {
456
+ terraformResource;
457
+ terraformAttribute;
458
+ wrapsSet;
459
+ internalValue;
460
+ /**
461
+ * @param terraformResource The parent resource
462
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
463
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
464
+ */
465
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
466
+ super(terraformResource, terraformAttribute, wrapsSet);
467
+ this.terraformResource = terraformResource;
468
+ this.terraformAttribute = terraformAttribute;
469
+ this.wrapsSet = wrapsSet;
470
+ }
471
+ /**
472
+ * @param index the index of the item to return
473
+ */
474
+ get(index) {
475
+ return new BaremetalInterfaceOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
476
+ }
477
+ }
478
+ export function baremetalMetadataToTerraform(struct) {
479
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
480
+ return struct;
481
+ }
482
+ if (cdktf.isComplexElement(struct)) {
483
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
484
+ }
485
+ return {
486
+ key: cdktf.stringToTerraform(struct.key),
487
+ value: cdktf.stringToTerraform(struct.value),
488
+ };
489
+ }
490
+ export function baremetalMetadataToHclTerraform(struct) {
491
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
492
+ return struct;
493
+ }
494
+ if (cdktf.isComplexElement(struct)) {
495
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
496
+ }
497
+ const attrs = {
498
+ key: {
499
+ value: cdktf.stringToHclTerraform(struct.key),
500
+ isBlock: false,
501
+ type: "simple",
502
+ storageClassType: "string",
503
+ },
504
+ value: {
505
+ value: cdktf.stringToHclTerraform(struct.value),
506
+ isBlock: false,
507
+ type: "simple",
508
+ storageClassType: "string",
509
+ },
510
+ };
511
+ // remove undefined attributes
512
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
513
+ }
514
+ export class BaremetalMetadataOutputReference extends cdktf.ComplexObject {
515
+ isEmptyObject = false;
516
+ resolvableValue;
517
+ /**
518
+ * @param terraformResource The parent resource
519
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
520
+ * @param complexObjectIndex the index of this item in the list
521
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
522
+ */
523
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
524
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
525
+ }
526
+ get internalValue() {
527
+ if (this.resolvableValue) {
528
+ return this.resolvableValue;
529
+ }
530
+ let hasAnyValues = this.isEmptyObject;
531
+ const internalValueResult = {};
532
+ if (this._key !== undefined) {
533
+ hasAnyValues = true;
534
+ internalValueResult.key = this._key;
535
+ }
536
+ if (this._value !== undefined) {
537
+ hasAnyValues = true;
538
+ internalValueResult.value = this._value;
539
+ }
540
+ return hasAnyValues ? internalValueResult : undefined;
541
+ }
542
+ set internalValue(value) {
543
+ if (value === undefined) {
544
+ this.isEmptyObject = false;
545
+ this.resolvableValue = undefined;
546
+ this._key = undefined;
547
+ this._value = undefined;
548
+ }
549
+ else if (cdktf.Tokenization.isResolvable(value)) {
550
+ this.isEmptyObject = false;
551
+ this.resolvableValue = value;
552
+ }
553
+ else {
554
+ this.isEmptyObject = Object.keys(value).length === 0;
555
+ this.resolvableValue = undefined;
556
+ this._key = value.key;
557
+ this._value = value.value;
558
+ }
559
+ }
560
+ // key - computed: false, optional: false, required: true
561
+ _key;
562
+ get key() {
563
+ return this.getStringAttribute('key');
564
+ }
565
+ set key(value) {
566
+ this._key = value;
567
+ }
568
+ // Temporarily expose input value. Use with caution.
569
+ get keyInput() {
570
+ return this._key;
571
+ }
572
+ // value - computed: false, optional: false, required: true
573
+ _value;
574
+ get value() {
575
+ return this.getStringAttribute('value');
576
+ }
577
+ set value(value) {
578
+ this._value = value;
579
+ }
580
+ // Temporarily expose input value. Use with caution.
581
+ get valueInput() {
582
+ return this._value;
583
+ }
584
+ }
585
+ export class BaremetalMetadataList extends cdktf.ComplexList {
586
+ terraformResource;
587
+ terraformAttribute;
588
+ wrapsSet;
589
+ internalValue;
590
+ /**
591
+ * @param terraformResource The parent resource
592
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
593
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
594
+ */
595
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
596
+ super(terraformResource, terraformAttribute, wrapsSet);
597
+ this.terraformResource = terraformResource;
598
+ this.terraformAttribute = terraformAttribute;
599
+ this.wrapsSet = wrapsSet;
600
+ }
601
+ /**
602
+ * @param index the index of the item to return
603
+ */
604
+ get(index) {
605
+ return new BaremetalMetadataOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
606
+ }
607
+ }
608
+ export function baremetalTimeoutsToTerraform(struct) {
609
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
610
+ return struct;
611
+ }
612
+ if (cdktf.isComplexElement(struct)) {
613
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
614
+ }
615
+ return {
616
+ create: cdktf.stringToTerraform(struct.create),
617
+ };
618
+ }
619
+ export function baremetalTimeoutsToHclTerraform(struct) {
620
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
621
+ return struct;
622
+ }
623
+ if (cdktf.isComplexElement(struct)) {
624
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
625
+ }
626
+ const attrs = {
627
+ create: {
628
+ value: cdktf.stringToHclTerraform(struct.create),
629
+ isBlock: false,
630
+ type: "simple",
631
+ storageClassType: "string",
632
+ },
633
+ };
634
+ // remove undefined attributes
635
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
636
+ }
637
+ export class BaremetalTimeoutsOutputReference extends cdktf.ComplexObject {
638
+ isEmptyObject = false;
639
+ resolvableValue;
640
+ /**
641
+ * @param terraformResource The parent resource
642
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
643
+ */
644
+ constructor(terraformResource, terraformAttribute) {
645
+ super(terraformResource, terraformAttribute, false);
646
+ }
647
+ get internalValue() {
648
+ if (this.resolvableValue) {
649
+ return this.resolvableValue;
650
+ }
651
+ let hasAnyValues = this.isEmptyObject;
652
+ const internalValueResult = {};
653
+ if (this._create !== undefined) {
654
+ hasAnyValues = true;
655
+ internalValueResult.create = this._create;
656
+ }
657
+ return hasAnyValues ? internalValueResult : undefined;
658
+ }
659
+ set internalValue(value) {
660
+ if (value === undefined) {
661
+ this.isEmptyObject = false;
662
+ this.resolvableValue = undefined;
663
+ this._create = undefined;
664
+ }
665
+ else if (cdktf.Tokenization.isResolvable(value)) {
666
+ this.isEmptyObject = false;
667
+ this.resolvableValue = value;
668
+ }
669
+ else {
670
+ this.isEmptyObject = Object.keys(value).length === 0;
671
+ this.resolvableValue = undefined;
672
+ this._create = value.create;
673
+ }
674
+ }
675
+ // create - computed: false, optional: true, required: false
676
+ _create;
677
+ get create() {
678
+ return this.getStringAttribute('create');
679
+ }
680
+ set create(value) {
681
+ this._create = value;
682
+ }
683
+ resetCreate() {
684
+ this._create = undefined;
685
+ }
686
+ // Temporarily expose input value. Use with caution.
687
+ get createInput() {
688
+ return this._create;
689
+ }
690
+ }
691
+ /**
692
+ * Represents a {@link https://registry.terraform.io/providers/edge-center/edgecenter/0.10.4/docs/resources/baremetal edgecenter_baremetal}
693
+ */
694
+ export class Baremetal extends cdktf.TerraformResource {
695
+ // =================
696
+ // STATIC PROPERTIES
697
+ // =================
698
+ static tfResourceType = "edgecenter_baremetal";
699
+ // ==============
700
+ // STATIC Methods
701
+ // ==============
702
+ /**
703
+ * Generates CDKTF code for importing a Baremetal resource upon running "cdktf plan <stack-name>"
704
+ * @param scope The scope in which to define this construct
705
+ * @param importToId The construct id used in the generated config for the Baremetal to import
706
+ * @param importFromId The id of the existing Baremetal that should be imported. Refer to the {@link https://registry.terraform.io/providers/edge-center/edgecenter/0.10.4/docs/resources/baremetal#import import section} in the documentation of this resource for the id to use
707
+ * @param provider? Optional instance of the provider where the Baremetal to import is found
708
+ */
709
+ static generateConfigForImport(scope, importToId, importFromId, provider) {
710
+ return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "edgecenter_baremetal", importId: importFromId, provider });
711
+ }
712
+ // ===========
713
+ // INITIALIZER
714
+ // ===========
715
+ /**
716
+ * Create a new {@link https://registry.terraform.io/providers/edge-center/edgecenter/0.10.4/docs/resources/baremetal edgecenter_baremetal} Resource
717
+ *
718
+ * @param scope The scope in which to define this construct
719
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
720
+ * @param options BaremetalConfig
721
+ */
722
+ constructor(scope, id, config) {
723
+ super(scope, id, {
724
+ terraformResourceType: 'edgecenter_baremetal',
725
+ terraformGeneratorMetadata: {
726
+ providerName: 'edgecenter',
727
+ providerVersion: '0.10.4',
728
+ providerVersionConstraint: '0.10.4'
729
+ },
730
+ provider: config.provider,
731
+ dependsOn: config.dependsOn,
732
+ count: config.count,
733
+ lifecycle: config.lifecycle,
734
+ provisioners: config.provisioners,
735
+ connection: config.connection,
736
+ forEach: config.forEach
737
+ });
738
+ this._appConfig = config.appConfig;
739
+ this._apptemplateId = config.apptemplateId;
740
+ this._flavorId = config.flavorId;
741
+ this._id = config.id;
742
+ this._imageId = config.imageId;
743
+ this._keypairName = config.keypairName;
744
+ this._lastUpdated = config.lastUpdated;
745
+ this._metadataMap = config.metadataMap;
746
+ this._name = config.name;
747
+ this._nameTemplate = config.nameTemplate;
748
+ this._nameTemplates = config.nameTemplates;
749
+ this._password = config.password;
750
+ this._projectId = config.projectId;
751
+ this._projectName = config.projectName;
752
+ this._regionId = config.regionId;
753
+ this._regionName = config.regionName;
754
+ this._userData = config.userData;
755
+ this._username = config.username;
756
+ this._interface.internalValue = config.interface;
757
+ this._metadata.internalValue = config.metadata;
758
+ this._timeouts.internalValue = config.timeouts;
759
+ }
760
+ // ==========
761
+ // ATTRIBUTES
762
+ // ==========
763
+ // addresses - computed: true, optional: false, required: false
764
+ _addresses = new BaremetalAddressesList(this, "addresses", false);
765
+ get addresses() {
766
+ return this._addresses;
767
+ }
768
+ // app_config - computed: false, optional: true, required: false
769
+ _appConfig;
770
+ get appConfig() {
771
+ return this.getStringMapAttribute('app_config');
772
+ }
773
+ set appConfig(value) {
774
+ this._appConfig = value;
775
+ }
776
+ resetAppConfig() {
777
+ this._appConfig = undefined;
778
+ }
779
+ // Temporarily expose input value. Use with caution.
780
+ get appConfigInput() {
781
+ return this._appConfig;
782
+ }
783
+ // apptemplate_id - computed: false, optional: true, required: false
784
+ _apptemplateId;
785
+ get apptemplateId() {
786
+ return this.getStringAttribute('apptemplate_id');
787
+ }
788
+ set apptemplateId(value) {
789
+ this._apptemplateId = value;
790
+ }
791
+ resetApptemplateId() {
792
+ this._apptemplateId = undefined;
793
+ }
794
+ // Temporarily expose input value. Use with caution.
795
+ get apptemplateIdInput() {
796
+ return this._apptemplateId;
797
+ }
798
+ // flavor - computed: true, optional: false, required: false
799
+ _flavor = new cdktf.StringMap(this, "flavor");
800
+ get flavor() {
801
+ return this._flavor;
802
+ }
803
+ // flavor_id - computed: false, optional: false, required: true
804
+ _flavorId;
805
+ get flavorId() {
806
+ return this.getStringAttribute('flavor_id');
807
+ }
808
+ set flavorId(value) {
809
+ this._flavorId = value;
810
+ }
811
+ // Temporarily expose input value. Use with caution.
812
+ get flavorIdInput() {
813
+ return this._flavorId;
814
+ }
815
+ // id - computed: true, optional: true, required: false
816
+ _id;
817
+ get id() {
818
+ return this.getStringAttribute('id');
819
+ }
820
+ set id(value) {
821
+ this._id = value;
822
+ }
823
+ resetId() {
824
+ this._id = undefined;
825
+ }
826
+ // Temporarily expose input value. Use with caution.
827
+ get idInput() {
828
+ return this._id;
829
+ }
830
+ // image_id - computed: false, optional: true, required: false
831
+ _imageId;
832
+ get imageId() {
833
+ return this.getStringAttribute('image_id');
834
+ }
835
+ set imageId(value) {
836
+ this._imageId = value;
837
+ }
838
+ resetImageId() {
839
+ this._imageId = undefined;
840
+ }
841
+ // Temporarily expose input value. Use with caution.
842
+ get imageIdInput() {
843
+ return this._imageId;
844
+ }
845
+ // keypair_name - computed: false, optional: true, required: false
846
+ _keypairName;
847
+ get keypairName() {
848
+ return this.getStringAttribute('keypair_name');
849
+ }
850
+ set keypairName(value) {
851
+ this._keypairName = value;
852
+ }
853
+ resetKeypairName() {
854
+ this._keypairName = undefined;
855
+ }
856
+ // Temporarily expose input value. Use with caution.
857
+ get keypairNameInput() {
858
+ return this._keypairName;
859
+ }
860
+ // last_updated - computed: true, optional: true, required: false
861
+ _lastUpdated;
862
+ get lastUpdated() {
863
+ return this.getStringAttribute('last_updated');
864
+ }
865
+ set lastUpdated(value) {
866
+ this._lastUpdated = value;
867
+ }
868
+ resetLastUpdated() {
869
+ this._lastUpdated = undefined;
870
+ }
871
+ // Temporarily expose input value. Use with caution.
872
+ get lastUpdatedInput() {
873
+ return this._lastUpdated;
874
+ }
875
+ // metadata_map - computed: false, optional: true, required: false
876
+ _metadataMap;
877
+ get metadataMap() {
878
+ return this.getStringMapAttribute('metadata_map');
879
+ }
880
+ set metadataMap(value) {
881
+ this._metadataMap = value;
882
+ }
883
+ resetMetadataMap() {
884
+ this._metadataMap = undefined;
885
+ }
886
+ // Temporarily expose input value. Use with caution.
887
+ get metadataMapInput() {
888
+ return this._metadataMap;
889
+ }
890
+ // name - computed: true, optional: true, required: false
891
+ _name;
892
+ get name() {
893
+ return this.getStringAttribute('name');
894
+ }
895
+ set name(value) {
896
+ this._name = value;
897
+ }
898
+ resetName() {
899
+ this._name = undefined;
900
+ }
901
+ // Temporarily expose input value. Use with caution.
902
+ get nameInput() {
903
+ return this._name;
904
+ }
905
+ // name_template - computed: false, optional: true, required: false
906
+ _nameTemplate;
907
+ get nameTemplate() {
908
+ return this.getStringAttribute('name_template');
909
+ }
910
+ set nameTemplate(value) {
911
+ this._nameTemplate = value;
912
+ }
913
+ resetNameTemplate() {
914
+ this._nameTemplate = undefined;
915
+ }
916
+ // Temporarily expose input value. Use with caution.
917
+ get nameTemplateInput() {
918
+ return this._nameTemplate;
919
+ }
920
+ // name_templates - computed: false, optional: true, required: false
921
+ _nameTemplates;
922
+ get nameTemplates() {
923
+ return this.getListAttribute('name_templates');
924
+ }
925
+ set nameTemplates(value) {
926
+ this._nameTemplates = value;
927
+ }
928
+ resetNameTemplates() {
929
+ this._nameTemplates = undefined;
930
+ }
931
+ // Temporarily expose input value. Use with caution.
932
+ get nameTemplatesInput() {
933
+ return this._nameTemplates;
934
+ }
935
+ // password - computed: false, optional: true, required: false
936
+ _password;
937
+ get password() {
938
+ return this.getStringAttribute('password');
939
+ }
940
+ set password(value) {
941
+ this._password = value;
942
+ }
943
+ resetPassword() {
944
+ this._password = undefined;
945
+ }
946
+ // Temporarily expose input value. Use with caution.
947
+ get passwordInput() {
948
+ return this._password;
949
+ }
950
+ // project_id - computed: true, optional: true, required: false
951
+ _projectId;
952
+ get projectId() {
953
+ return this.getNumberAttribute('project_id');
954
+ }
955
+ set projectId(value) {
956
+ this._projectId = value;
957
+ }
958
+ resetProjectId() {
959
+ this._projectId = undefined;
960
+ }
961
+ // Temporarily expose input value. Use with caution.
962
+ get projectIdInput() {
963
+ return this._projectId;
964
+ }
965
+ // project_name - computed: true, optional: true, required: false
966
+ _projectName;
967
+ get projectName() {
968
+ return this.getStringAttribute('project_name');
969
+ }
970
+ set projectName(value) {
971
+ this._projectName = value;
972
+ }
973
+ resetProjectName() {
974
+ this._projectName = undefined;
975
+ }
976
+ // Temporarily expose input value. Use with caution.
977
+ get projectNameInput() {
978
+ return this._projectName;
979
+ }
980
+ // region_id - computed: true, optional: true, required: false
981
+ _regionId;
982
+ get regionId() {
983
+ return this.getNumberAttribute('region_id');
984
+ }
985
+ set regionId(value) {
986
+ this._regionId = value;
987
+ }
988
+ resetRegionId() {
989
+ this._regionId = undefined;
990
+ }
991
+ // Temporarily expose input value. Use with caution.
992
+ get regionIdInput() {
993
+ return this._regionId;
994
+ }
995
+ // region_name - computed: true, optional: true, required: false
996
+ _regionName;
997
+ get regionName() {
998
+ return this.getStringAttribute('region_name');
999
+ }
1000
+ set regionName(value) {
1001
+ this._regionName = value;
1002
+ }
1003
+ resetRegionName() {
1004
+ this._regionName = undefined;
1005
+ }
1006
+ // Temporarily expose input value. Use with caution.
1007
+ get regionNameInput() {
1008
+ return this._regionName;
1009
+ }
1010
+ // status - computed: true, optional: false, required: false
1011
+ get status() {
1012
+ return this.getStringAttribute('status');
1013
+ }
1014
+ // user_data - computed: false, optional: true, required: false
1015
+ _userData;
1016
+ get userData() {
1017
+ return this.getStringAttribute('user_data');
1018
+ }
1019
+ set userData(value) {
1020
+ this._userData = value;
1021
+ }
1022
+ resetUserData() {
1023
+ this._userData = undefined;
1024
+ }
1025
+ // Temporarily expose input value. Use with caution.
1026
+ get userDataInput() {
1027
+ return this._userData;
1028
+ }
1029
+ // username - computed: false, optional: true, required: false
1030
+ _username;
1031
+ get username() {
1032
+ return this.getStringAttribute('username');
1033
+ }
1034
+ set username(value) {
1035
+ this._username = value;
1036
+ }
1037
+ resetUsername() {
1038
+ this._username = undefined;
1039
+ }
1040
+ // Temporarily expose input value. Use with caution.
1041
+ get usernameInput() {
1042
+ return this._username;
1043
+ }
1044
+ // vm_state - computed: true, optional: false, required: false
1045
+ get vmState() {
1046
+ return this.getStringAttribute('vm_state');
1047
+ }
1048
+ // interface - computed: false, optional: false, required: true
1049
+ _interface = new BaremetalInterfaceList(this, "interface", false);
1050
+ get interface() {
1051
+ return this._interface;
1052
+ }
1053
+ putInterface(value) {
1054
+ this._interface.internalValue = value;
1055
+ }
1056
+ // Temporarily expose input value. Use with caution.
1057
+ get interfaceInput() {
1058
+ return this._interface.internalValue;
1059
+ }
1060
+ // metadata - computed: false, optional: true, required: false
1061
+ _metadata = new BaremetalMetadataList(this, "metadata", false);
1062
+ get metadata() {
1063
+ return this._metadata;
1064
+ }
1065
+ putMetadata(value) {
1066
+ this._metadata.internalValue = value;
1067
+ }
1068
+ resetMetadata() {
1069
+ this._metadata.internalValue = undefined;
1070
+ }
1071
+ // Temporarily expose input value. Use with caution.
1072
+ get metadataInput() {
1073
+ return this._metadata.internalValue;
1074
+ }
1075
+ // timeouts - computed: false, optional: true, required: false
1076
+ _timeouts = new BaremetalTimeoutsOutputReference(this, "timeouts");
1077
+ get timeouts() {
1078
+ return this._timeouts;
1079
+ }
1080
+ putTimeouts(value) {
1081
+ this._timeouts.internalValue = value;
1082
+ }
1083
+ resetTimeouts() {
1084
+ this._timeouts.internalValue = undefined;
1085
+ }
1086
+ // Temporarily expose input value. Use with caution.
1087
+ get timeoutsInput() {
1088
+ return this._timeouts.internalValue;
1089
+ }
1090
+ // =========
1091
+ // SYNTHESIS
1092
+ // =========
1093
+ synthesizeAttributes() {
1094
+ return {
1095
+ app_config: cdktf.hashMapper(cdktf.stringToTerraform)(this._appConfig),
1096
+ apptemplate_id: cdktf.stringToTerraform(this._apptemplateId),
1097
+ flavor_id: cdktf.stringToTerraform(this._flavorId),
1098
+ id: cdktf.stringToTerraform(this._id),
1099
+ image_id: cdktf.stringToTerraform(this._imageId),
1100
+ keypair_name: cdktf.stringToTerraform(this._keypairName),
1101
+ last_updated: cdktf.stringToTerraform(this._lastUpdated),
1102
+ metadata_map: cdktf.hashMapper(cdktf.stringToTerraform)(this._metadataMap),
1103
+ name: cdktf.stringToTerraform(this._name),
1104
+ name_template: cdktf.stringToTerraform(this._nameTemplate),
1105
+ name_templates: cdktf.listMapper(cdktf.stringToTerraform, false)(this._nameTemplates),
1106
+ password: cdktf.stringToTerraform(this._password),
1107
+ project_id: cdktf.numberToTerraform(this._projectId),
1108
+ project_name: cdktf.stringToTerraform(this._projectName),
1109
+ region_id: cdktf.numberToTerraform(this._regionId),
1110
+ region_name: cdktf.stringToTerraform(this._regionName),
1111
+ user_data: cdktf.stringToTerraform(this._userData),
1112
+ username: cdktf.stringToTerraform(this._username),
1113
+ interface: cdktf.listMapper(baremetalInterfaceToTerraform, true)(this._interface.internalValue),
1114
+ metadata: cdktf.listMapper(baremetalMetadataToTerraform, true)(this._metadata.internalValue),
1115
+ timeouts: baremetalTimeoutsToTerraform(this._timeouts.internalValue),
1116
+ };
1117
+ }
1118
+ synthesizeHclAttributes() {
1119
+ const attrs = {
1120
+ app_config: {
1121
+ value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._appConfig),
1122
+ isBlock: false,
1123
+ type: "map",
1124
+ storageClassType: "stringMap",
1125
+ },
1126
+ apptemplate_id: {
1127
+ value: cdktf.stringToHclTerraform(this._apptemplateId),
1128
+ isBlock: false,
1129
+ type: "simple",
1130
+ storageClassType: "string",
1131
+ },
1132
+ flavor_id: {
1133
+ value: cdktf.stringToHclTerraform(this._flavorId),
1134
+ isBlock: false,
1135
+ type: "simple",
1136
+ storageClassType: "string",
1137
+ },
1138
+ id: {
1139
+ value: cdktf.stringToHclTerraform(this._id),
1140
+ isBlock: false,
1141
+ type: "simple",
1142
+ storageClassType: "string",
1143
+ },
1144
+ image_id: {
1145
+ value: cdktf.stringToHclTerraform(this._imageId),
1146
+ isBlock: false,
1147
+ type: "simple",
1148
+ storageClassType: "string",
1149
+ },
1150
+ keypair_name: {
1151
+ value: cdktf.stringToHclTerraform(this._keypairName),
1152
+ isBlock: false,
1153
+ type: "simple",
1154
+ storageClassType: "string",
1155
+ },
1156
+ last_updated: {
1157
+ value: cdktf.stringToHclTerraform(this._lastUpdated),
1158
+ isBlock: false,
1159
+ type: "simple",
1160
+ storageClassType: "string",
1161
+ },
1162
+ metadata_map: {
1163
+ value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._metadataMap),
1164
+ isBlock: false,
1165
+ type: "map",
1166
+ storageClassType: "stringMap",
1167
+ },
1168
+ name: {
1169
+ value: cdktf.stringToHclTerraform(this._name),
1170
+ isBlock: false,
1171
+ type: "simple",
1172
+ storageClassType: "string",
1173
+ },
1174
+ name_template: {
1175
+ value: cdktf.stringToHclTerraform(this._nameTemplate),
1176
+ isBlock: false,
1177
+ type: "simple",
1178
+ storageClassType: "string",
1179
+ },
1180
+ name_templates: {
1181
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._nameTemplates),
1182
+ isBlock: false,
1183
+ type: "list",
1184
+ storageClassType: "stringList",
1185
+ },
1186
+ password: {
1187
+ value: cdktf.stringToHclTerraform(this._password),
1188
+ isBlock: false,
1189
+ type: "simple",
1190
+ storageClassType: "string",
1191
+ },
1192
+ project_id: {
1193
+ value: cdktf.numberToHclTerraform(this._projectId),
1194
+ isBlock: false,
1195
+ type: "simple",
1196
+ storageClassType: "number",
1197
+ },
1198
+ project_name: {
1199
+ value: cdktf.stringToHclTerraform(this._projectName),
1200
+ isBlock: false,
1201
+ type: "simple",
1202
+ storageClassType: "string",
1203
+ },
1204
+ region_id: {
1205
+ value: cdktf.numberToHclTerraform(this._regionId),
1206
+ isBlock: false,
1207
+ type: "simple",
1208
+ storageClassType: "number",
1209
+ },
1210
+ region_name: {
1211
+ value: cdktf.stringToHclTerraform(this._regionName),
1212
+ isBlock: false,
1213
+ type: "simple",
1214
+ storageClassType: "string",
1215
+ },
1216
+ user_data: {
1217
+ value: cdktf.stringToHclTerraform(this._userData),
1218
+ isBlock: false,
1219
+ type: "simple",
1220
+ storageClassType: "string",
1221
+ },
1222
+ username: {
1223
+ value: cdktf.stringToHclTerraform(this._username),
1224
+ isBlock: false,
1225
+ type: "simple",
1226
+ storageClassType: "string",
1227
+ },
1228
+ interface: {
1229
+ value: cdktf.listMapperHcl(baremetalInterfaceToHclTerraform, true)(this._interface.internalValue),
1230
+ isBlock: true,
1231
+ type: "list",
1232
+ storageClassType: "BaremetalInterfaceList",
1233
+ },
1234
+ metadata: {
1235
+ value: cdktf.listMapperHcl(baremetalMetadataToHclTerraform, true)(this._metadata.internalValue),
1236
+ isBlock: true,
1237
+ type: "list",
1238
+ storageClassType: "BaremetalMetadataList",
1239
+ },
1240
+ timeouts: {
1241
+ value: baremetalTimeoutsToHclTerraform(this._timeouts.internalValue),
1242
+ isBlock: true,
1243
+ type: "struct",
1244
+ storageClassType: "BaremetalTimeouts",
1245
+ },
1246
+ };
1247
+ // remove undefined attributes
1248
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
1249
+ }
1250
+ }