@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,690 @@
1
+ // https://registry.terraform.io/providers/edge-center/edgecenter/0.10.4/docs/data-sources/instance
2
+ // generated from terraform resource schema
3
+ import * as cdktf from 'cdktf';
4
+ export function dataEdgecenterInstanceAddressesNetToTerraform(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 dataEdgecenterInstanceAddressesNetToHclTerraform(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 DataEdgecenterInstanceAddressesNetOutputReference 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 DataEdgecenterInstanceAddressesNetList 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 DataEdgecenterInstanceAddressesNetOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
76
+ }
77
+ }
78
+ export function dataEdgecenterInstanceAddressesToTerraform(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 dataEdgecenterInstanceAddressesToHclTerraform(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 DataEdgecenterInstanceAddressesOutputReference 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 DataEdgecenterInstanceAddressesNetList(this, "net", false);
123
+ get net() {
124
+ return this._net;
125
+ }
126
+ }
127
+ export class DataEdgecenterInstanceAddressesList 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 DataEdgecenterInstanceAddressesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
147
+ }
148
+ }
149
+ export function dataEdgecenterInstanceInterfaceToTerraform(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
+ }
158
+ export function dataEdgecenterInstanceInterfaceToHclTerraform(struct) {
159
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
160
+ return struct;
161
+ }
162
+ if (cdktf.isComplexElement(struct)) {
163
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
164
+ }
165
+ const attrs = {};
166
+ return attrs;
167
+ }
168
+ export class DataEdgecenterInstanceInterfaceOutputReference extends cdktf.ComplexObject {
169
+ isEmptyObject = false;
170
+ /**
171
+ * @param terraformResource The parent resource
172
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
173
+ * @param complexObjectIndex the index of this item in the list
174
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
175
+ */
176
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
177
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
178
+ }
179
+ get internalValue() {
180
+ let hasAnyValues = this.isEmptyObject;
181
+ const internalValueResult = {};
182
+ return hasAnyValues ? internalValueResult : undefined;
183
+ }
184
+ set internalValue(value) {
185
+ if (value === undefined) {
186
+ this.isEmptyObject = false;
187
+ }
188
+ else {
189
+ this.isEmptyObject = Object.keys(value).length === 0;
190
+ }
191
+ }
192
+ // ip_address - computed: true, optional: false, required: false
193
+ get ipAddress() {
194
+ return this.getStringAttribute('ip_address');
195
+ }
196
+ // network_id - computed: true, optional: false, required: false
197
+ get networkId() {
198
+ return this.getStringAttribute('network_id');
199
+ }
200
+ // port_id - computed: true, optional: false, required: false
201
+ get portId() {
202
+ return this.getStringAttribute('port_id');
203
+ }
204
+ // subnet_id - computed: true, optional: false, required: false
205
+ get subnetId() {
206
+ return this.getStringAttribute('subnet_id');
207
+ }
208
+ }
209
+ export class DataEdgecenterInstanceInterfaceList extends cdktf.ComplexList {
210
+ terraformResource;
211
+ terraformAttribute;
212
+ wrapsSet;
213
+ /**
214
+ * @param terraformResource The parent resource
215
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
216
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
217
+ */
218
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
219
+ super(terraformResource, terraformAttribute, wrapsSet);
220
+ this.terraformResource = terraformResource;
221
+ this.terraformAttribute = terraformAttribute;
222
+ this.wrapsSet = wrapsSet;
223
+ }
224
+ /**
225
+ * @param index the index of the item to return
226
+ */
227
+ get(index) {
228
+ return new DataEdgecenterInstanceInterfaceOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
229
+ }
230
+ }
231
+ export function dataEdgecenterInstanceMetadataToTerraform(struct) {
232
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
233
+ return struct;
234
+ }
235
+ if (cdktf.isComplexElement(struct)) {
236
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
237
+ }
238
+ return {};
239
+ }
240
+ export function dataEdgecenterInstanceMetadataToHclTerraform(struct) {
241
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
242
+ return struct;
243
+ }
244
+ if (cdktf.isComplexElement(struct)) {
245
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
246
+ }
247
+ const attrs = {};
248
+ return attrs;
249
+ }
250
+ export class DataEdgecenterInstanceMetadataOutputReference extends cdktf.ComplexObject {
251
+ isEmptyObject = false;
252
+ /**
253
+ * @param terraformResource The parent resource
254
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
255
+ * @param complexObjectIndex the index of this item in the list
256
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
257
+ */
258
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
259
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
260
+ }
261
+ get internalValue() {
262
+ let hasAnyValues = this.isEmptyObject;
263
+ const internalValueResult = {};
264
+ return hasAnyValues ? internalValueResult : undefined;
265
+ }
266
+ set internalValue(value) {
267
+ if (value === undefined) {
268
+ this.isEmptyObject = false;
269
+ }
270
+ else {
271
+ this.isEmptyObject = Object.keys(value).length === 0;
272
+ }
273
+ }
274
+ // key - computed: true, optional: false, required: false
275
+ get key() {
276
+ return this.getStringAttribute('key');
277
+ }
278
+ // value - computed: true, optional: false, required: false
279
+ get value() {
280
+ return this.getStringAttribute('value');
281
+ }
282
+ }
283
+ export class DataEdgecenterInstanceMetadataList extends cdktf.ComplexList {
284
+ terraformResource;
285
+ terraformAttribute;
286
+ wrapsSet;
287
+ /**
288
+ * @param terraformResource The parent resource
289
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
290
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
291
+ */
292
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
293
+ super(terraformResource, terraformAttribute, wrapsSet);
294
+ this.terraformResource = terraformResource;
295
+ this.terraformAttribute = terraformAttribute;
296
+ this.wrapsSet = wrapsSet;
297
+ }
298
+ /**
299
+ * @param index the index of the item to return
300
+ */
301
+ get(index) {
302
+ return new DataEdgecenterInstanceMetadataOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
303
+ }
304
+ }
305
+ export function dataEdgecenterInstanceSecurityGroupToTerraform(struct) {
306
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
307
+ return struct;
308
+ }
309
+ if (cdktf.isComplexElement(struct)) {
310
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
311
+ }
312
+ return {};
313
+ }
314
+ export function dataEdgecenterInstanceSecurityGroupToHclTerraform(struct) {
315
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
316
+ return struct;
317
+ }
318
+ if (cdktf.isComplexElement(struct)) {
319
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
320
+ }
321
+ const attrs = {};
322
+ return attrs;
323
+ }
324
+ export class DataEdgecenterInstanceSecurityGroupOutputReference extends cdktf.ComplexObject {
325
+ isEmptyObject = false;
326
+ /**
327
+ * @param terraformResource The parent resource
328
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
329
+ * @param complexObjectIndex the index of this item in the list
330
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
331
+ */
332
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
333
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
334
+ }
335
+ get internalValue() {
336
+ let hasAnyValues = this.isEmptyObject;
337
+ const internalValueResult = {};
338
+ return hasAnyValues ? internalValueResult : undefined;
339
+ }
340
+ set internalValue(value) {
341
+ if (value === undefined) {
342
+ this.isEmptyObject = false;
343
+ }
344
+ else {
345
+ this.isEmptyObject = Object.keys(value).length === 0;
346
+ }
347
+ }
348
+ // name - computed: true, optional: false, required: false
349
+ get name() {
350
+ return this.getStringAttribute('name');
351
+ }
352
+ }
353
+ export class DataEdgecenterInstanceSecurityGroupList extends cdktf.ComplexList {
354
+ terraformResource;
355
+ terraformAttribute;
356
+ wrapsSet;
357
+ /**
358
+ * @param terraformResource The parent resource
359
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
360
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
361
+ */
362
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
363
+ super(terraformResource, terraformAttribute, wrapsSet);
364
+ this.terraformResource = terraformResource;
365
+ this.terraformAttribute = terraformAttribute;
366
+ this.wrapsSet = wrapsSet;
367
+ }
368
+ /**
369
+ * @param index the index of the item to return
370
+ */
371
+ get(index) {
372
+ return new DataEdgecenterInstanceSecurityGroupOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
373
+ }
374
+ }
375
+ export function dataEdgecenterInstanceVolumeToTerraform(struct) {
376
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
377
+ return struct;
378
+ }
379
+ if (cdktf.isComplexElement(struct)) {
380
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
381
+ }
382
+ return {};
383
+ }
384
+ export function dataEdgecenterInstanceVolumeToHclTerraform(struct) {
385
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
386
+ return struct;
387
+ }
388
+ if (cdktf.isComplexElement(struct)) {
389
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
390
+ }
391
+ const attrs = {};
392
+ return attrs;
393
+ }
394
+ export class DataEdgecenterInstanceVolumeOutputReference extends cdktf.ComplexObject {
395
+ isEmptyObject = false;
396
+ /**
397
+ * @param terraformResource The parent resource
398
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
399
+ * @param complexObjectIndex the index of this item in the list
400
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
401
+ */
402
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
403
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
404
+ }
405
+ get internalValue() {
406
+ let hasAnyValues = this.isEmptyObject;
407
+ const internalValueResult = {};
408
+ return hasAnyValues ? internalValueResult : undefined;
409
+ }
410
+ set internalValue(value) {
411
+ if (value === undefined) {
412
+ this.isEmptyObject = false;
413
+ }
414
+ else {
415
+ this.isEmptyObject = Object.keys(value).length === 0;
416
+ }
417
+ }
418
+ // delete_on_termination - computed: true, optional: false, required: false
419
+ get deleteOnTermination() {
420
+ return this.getBooleanAttribute('delete_on_termination');
421
+ }
422
+ // volume_id - computed: true, optional: false, required: false
423
+ get volumeId() {
424
+ return this.getStringAttribute('volume_id');
425
+ }
426
+ }
427
+ export class DataEdgecenterInstanceVolumeList extends cdktf.ComplexList {
428
+ terraformResource;
429
+ terraformAttribute;
430
+ wrapsSet;
431
+ /**
432
+ * @param terraformResource The parent resource
433
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
434
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
435
+ */
436
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
437
+ super(terraformResource, terraformAttribute, wrapsSet);
438
+ this.terraformResource = terraformResource;
439
+ this.terraformAttribute = terraformAttribute;
440
+ this.wrapsSet = wrapsSet;
441
+ }
442
+ /**
443
+ * @param index the index of the item to return
444
+ */
445
+ get(index) {
446
+ return new DataEdgecenterInstanceVolumeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
447
+ }
448
+ }
449
+ /**
450
+ * Represents a {@link https://registry.terraform.io/providers/edge-center/edgecenter/0.10.4/docs/data-sources/instance edgecenter_instance}
451
+ */
452
+ export class DataEdgecenterInstance extends cdktf.TerraformDataSource {
453
+ // =================
454
+ // STATIC PROPERTIES
455
+ // =================
456
+ static tfResourceType = "edgecenter_instance";
457
+ // ==============
458
+ // STATIC Methods
459
+ // ==============
460
+ /**
461
+ * Generates CDKTF code for importing a DataEdgecenterInstance resource upon running "cdktf plan <stack-name>"
462
+ * @param scope The scope in which to define this construct
463
+ * @param importToId The construct id used in the generated config for the DataEdgecenterInstance to import
464
+ * @param importFromId The id of the existing DataEdgecenterInstance that should be imported. Refer to the {@link https://registry.terraform.io/providers/edge-center/edgecenter/0.10.4/docs/data-sources/instance#import import section} in the documentation of this resource for the id to use
465
+ * @param provider? Optional instance of the provider where the DataEdgecenterInstance to import is found
466
+ */
467
+ static generateConfigForImport(scope, importToId, importFromId, provider) {
468
+ return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "edgecenter_instance", importId: importFromId, provider });
469
+ }
470
+ // ===========
471
+ // INITIALIZER
472
+ // ===========
473
+ /**
474
+ * Create a new {@link https://registry.terraform.io/providers/edge-center/edgecenter/0.10.4/docs/data-sources/instance edgecenter_instance} Data Source
475
+ *
476
+ * @param scope The scope in which to define this construct
477
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
478
+ * @param options DataEdgecenterInstanceConfig
479
+ */
480
+ constructor(scope, id, config) {
481
+ super(scope, id, {
482
+ terraformResourceType: 'edgecenter_instance',
483
+ terraformGeneratorMetadata: {
484
+ providerName: 'edgecenter',
485
+ providerVersion: '0.10.4',
486
+ providerVersionConstraint: '0.10.4'
487
+ },
488
+ provider: config.provider,
489
+ dependsOn: config.dependsOn,
490
+ count: config.count,
491
+ lifecycle: config.lifecycle,
492
+ provisioners: config.provisioners,
493
+ connection: config.connection,
494
+ forEach: config.forEach
495
+ });
496
+ this._id = config.id;
497
+ this._name = config.name;
498
+ this._projectId = config.projectId;
499
+ this._projectName = config.projectName;
500
+ this._regionId = config.regionId;
501
+ this._regionName = config.regionName;
502
+ }
503
+ // ==========
504
+ // ATTRIBUTES
505
+ // ==========
506
+ // addresses - computed: true, optional: false, required: false
507
+ _addresses = new DataEdgecenterInstanceAddressesList(this, "addresses", false);
508
+ get addresses() {
509
+ return this._addresses;
510
+ }
511
+ // flavor - computed: true, optional: false, required: false
512
+ _flavor = new cdktf.StringMap(this, "flavor");
513
+ get flavor() {
514
+ return this._flavor;
515
+ }
516
+ // flavor_id - computed: true, optional: false, required: false
517
+ get flavorId() {
518
+ return this.getStringAttribute('flavor_id');
519
+ }
520
+ // id - computed: true, optional: true, required: false
521
+ _id;
522
+ get id() {
523
+ return this.getStringAttribute('id');
524
+ }
525
+ set id(value) {
526
+ this._id = value;
527
+ }
528
+ resetId() {
529
+ this._id = undefined;
530
+ }
531
+ // Temporarily expose input value. Use with caution.
532
+ get idInput() {
533
+ return this._id;
534
+ }
535
+ // interface - computed: true, optional: false, required: false
536
+ _interface = new DataEdgecenterInstanceInterfaceList(this, "interface", false);
537
+ get interface() {
538
+ return this._interface;
539
+ }
540
+ // metadata - computed: true, optional: false, required: false
541
+ _metadata = new DataEdgecenterInstanceMetadataList(this, "metadata", false);
542
+ get metadata() {
543
+ return this._metadata;
544
+ }
545
+ // name - computed: false, optional: false, required: true
546
+ _name;
547
+ get name() {
548
+ return this.getStringAttribute('name');
549
+ }
550
+ set name(value) {
551
+ this._name = value;
552
+ }
553
+ // Temporarily expose input value. Use with caution.
554
+ get nameInput() {
555
+ return this._name;
556
+ }
557
+ // project_id - computed: false, optional: true, required: false
558
+ _projectId;
559
+ get projectId() {
560
+ return this.getNumberAttribute('project_id');
561
+ }
562
+ set projectId(value) {
563
+ this._projectId = value;
564
+ }
565
+ resetProjectId() {
566
+ this._projectId = undefined;
567
+ }
568
+ // Temporarily expose input value. Use with caution.
569
+ get projectIdInput() {
570
+ return this._projectId;
571
+ }
572
+ // project_name - computed: false, optional: true, required: false
573
+ _projectName;
574
+ get projectName() {
575
+ return this.getStringAttribute('project_name');
576
+ }
577
+ set projectName(value) {
578
+ this._projectName = value;
579
+ }
580
+ resetProjectName() {
581
+ this._projectName = undefined;
582
+ }
583
+ // Temporarily expose input value. Use with caution.
584
+ get projectNameInput() {
585
+ return this._projectName;
586
+ }
587
+ // region_id - computed: false, optional: true, required: false
588
+ _regionId;
589
+ get regionId() {
590
+ return this.getNumberAttribute('region_id');
591
+ }
592
+ set regionId(value) {
593
+ this._regionId = value;
594
+ }
595
+ resetRegionId() {
596
+ this._regionId = undefined;
597
+ }
598
+ // Temporarily expose input value. Use with caution.
599
+ get regionIdInput() {
600
+ return this._regionId;
601
+ }
602
+ // region_name - computed: false, optional: true, required: false
603
+ _regionName;
604
+ get regionName() {
605
+ return this.getStringAttribute('region_name');
606
+ }
607
+ set regionName(value) {
608
+ this._regionName = value;
609
+ }
610
+ resetRegionName() {
611
+ this._regionName = undefined;
612
+ }
613
+ // Temporarily expose input value. Use with caution.
614
+ get regionNameInput() {
615
+ return this._regionName;
616
+ }
617
+ // security_group - computed: true, optional: false, required: false
618
+ _securityGroup = new DataEdgecenterInstanceSecurityGroupList(this, "security_group", false);
619
+ get securityGroup() {
620
+ return this._securityGroup;
621
+ }
622
+ // status - computed: true, optional: false, required: false
623
+ get status() {
624
+ return this.getStringAttribute('status');
625
+ }
626
+ // vm_state - computed: true, optional: false, required: false
627
+ get vmState() {
628
+ return this.getStringAttribute('vm_state');
629
+ }
630
+ // volume - computed: true, optional: false, required: false
631
+ _volume = new DataEdgecenterInstanceVolumeList(this, "volume", true);
632
+ get volume() {
633
+ return this._volume;
634
+ }
635
+ // =========
636
+ // SYNTHESIS
637
+ // =========
638
+ synthesizeAttributes() {
639
+ return {
640
+ id: cdktf.stringToTerraform(this._id),
641
+ name: cdktf.stringToTerraform(this._name),
642
+ project_id: cdktf.numberToTerraform(this._projectId),
643
+ project_name: cdktf.stringToTerraform(this._projectName),
644
+ region_id: cdktf.numberToTerraform(this._regionId),
645
+ region_name: cdktf.stringToTerraform(this._regionName),
646
+ };
647
+ }
648
+ synthesizeHclAttributes() {
649
+ const attrs = {
650
+ id: {
651
+ value: cdktf.stringToHclTerraform(this._id),
652
+ isBlock: false,
653
+ type: "simple",
654
+ storageClassType: "string",
655
+ },
656
+ name: {
657
+ value: cdktf.stringToHclTerraform(this._name),
658
+ isBlock: false,
659
+ type: "simple",
660
+ storageClassType: "string",
661
+ },
662
+ project_id: {
663
+ value: cdktf.numberToHclTerraform(this._projectId),
664
+ isBlock: false,
665
+ type: "simple",
666
+ storageClassType: "number",
667
+ },
668
+ project_name: {
669
+ value: cdktf.stringToHclTerraform(this._projectName),
670
+ isBlock: false,
671
+ type: "simple",
672
+ storageClassType: "string",
673
+ },
674
+ region_id: {
675
+ value: cdktf.numberToHclTerraform(this._regionId),
676
+ isBlock: false,
677
+ type: "simple",
678
+ storageClassType: "number",
679
+ },
680
+ region_name: {
681
+ value: cdktf.stringToHclTerraform(this._regionName),
682
+ isBlock: false,
683
+ type: "simple",
684
+ storageClassType: "string",
685
+ },
686
+ };
687
+ // remove undefined attributes
688
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
689
+ }
690
+ }