@cdktf-providers/siderolabs-talos 0.9.0

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 (37) hide show
  1. package/LICENSE +355 -0
  2. package/README.md +19 -0
  3. package/dist/cluster-kubeconfig/index.d.ts +187 -0
  4. package/dist/cluster-kubeconfig/index.js +489 -0
  5. package/dist/data-talos-client-configuration/index.d.ts +121 -0
  6. package/dist/data-talos-client-configuration/index.js +292 -0
  7. package/dist/data-talos-cluster-health/index.d.ts +165 -0
  8. package/dist/data-talos-cluster-health/index.js +414 -0
  9. package/dist/data-talos-cluster-kubeconfig/index.d.ts +176 -0
  10. package/dist/data-talos-cluster-kubeconfig/index.js +461 -0
  11. package/dist/data-talos-image-factory-extensions-versions/index.d.ts +118 -0
  12. package/dist/data-talos-image-factory-extensions-versions/index.js +289 -0
  13. package/dist/data-talos-image-factory-overlays-versions/index.d.ts +117 -0
  14. package/dist/data-talos-image-factory-overlays-versions/index.js +285 -0
  15. package/dist/data-talos-image-factory-urls/index.d.ts +163 -0
  16. package/dist/data-talos-image-factory-urls/index.js +272 -0
  17. package/dist/data-talos-image-factory-versions/index.d.ts +71 -0
  18. package/dist/data-talos-image-factory-versions/index.js +182 -0
  19. package/dist/data-talos-machine-configuration/index.d.ts +521 -0
  20. package/dist/data-talos-machine-configuration/index.js +1424 -0
  21. package/dist/data-talos-machine-disks/index.d.ts +208 -0
  22. package/dist/data-talos-machine-disks/index.js +537 -0
  23. package/dist/image-factory-schematic/index.d.ts +50 -0
  24. package/dist/image-factory-schematic/index.js +95 -0
  25. package/dist/index.d.ts +15 -0
  26. package/dist/index.js +16 -0
  27. package/dist/lazy-index.d.ts +0 -0
  28. package/dist/lazy-index.js +16 -0
  29. package/dist/machine-bootstrap/index.d.ts +144 -0
  30. package/dist/machine-bootstrap/index.js +371 -0
  31. package/dist/machine-configuration-apply/index.d.ts +262 -0
  32. package/dist/machine-configuration-apply/index.js +659 -0
  33. package/dist/machine-secrets/index.d.ts +238 -0
  34. package/dist/machine-secrets/index.js +684 -0
  35. package/dist/provider/index.d.ts +54 -0
  36. package/dist/provider/index.js +108 -0
  37. package/package.json +51 -0
@@ -0,0 +1,461 @@
1
+ // https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/cluster_kubeconfig
2
+ // generated from terraform resource schema
3
+ import * as cdktf from 'cdktf';
4
+ export function dataTalosClusterKubeconfigClientConfigurationToTerraform(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
+ ca_certificate: cdktf.stringToTerraform(struct.caCertificate),
13
+ client_certificate: cdktf.stringToTerraform(struct.clientCertificate),
14
+ client_key: cdktf.stringToTerraform(struct.clientKey),
15
+ };
16
+ }
17
+ export function dataTalosClusterKubeconfigClientConfigurationToHclTerraform(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
+ ca_certificate: {
26
+ value: cdktf.stringToHclTerraform(struct.caCertificate),
27
+ isBlock: false,
28
+ type: "simple",
29
+ storageClassType: "string",
30
+ },
31
+ client_certificate: {
32
+ value: cdktf.stringToHclTerraform(struct.clientCertificate),
33
+ isBlock: false,
34
+ type: "simple",
35
+ storageClassType: "string",
36
+ },
37
+ client_key: {
38
+ value: cdktf.stringToHclTerraform(struct.clientKey),
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 DataTalosClusterKubeconfigClientConfigurationOutputReference 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._caCertificate !== undefined) {
64
+ hasAnyValues = true;
65
+ internalValueResult.caCertificate = this._caCertificate;
66
+ }
67
+ if (this._clientCertificate !== undefined) {
68
+ hasAnyValues = true;
69
+ internalValueResult.clientCertificate = this._clientCertificate;
70
+ }
71
+ if (this._clientKey !== undefined) {
72
+ hasAnyValues = true;
73
+ internalValueResult.clientKey = this._clientKey;
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._caCertificate = undefined;
82
+ this._clientCertificate = undefined;
83
+ this._clientKey = 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._caCertificate = value.caCertificate;
93
+ this._clientCertificate = value.clientCertificate;
94
+ this._clientKey = value.clientKey;
95
+ }
96
+ }
97
+ // ca_certificate - computed: false, optional: false, required: true
98
+ _caCertificate;
99
+ get caCertificate() {
100
+ return this.getStringAttribute('ca_certificate');
101
+ }
102
+ set caCertificate(value) {
103
+ this._caCertificate = value;
104
+ }
105
+ // Temporarily expose input value. Use with caution.
106
+ get caCertificateInput() {
107
+ return this._caCertificate;
108
+ }
109
+ // client_certificate - computed: false, optional: false, required: true
110
+ _clientCertificate;
111
+ get clientCertificate() {
112
+ return this.getStringAttribute('client_certificate');
113
+ }
114
+ set clientCertificate(value) {
115
+ this._clientCertificate = value;
116
+ }
117
+ // Temporarily expose input value. Use with caution.
118
+ get clientCertificateInput() {
119
+ return this._clientCertificate;
120
+ }
121
+ // client_key - computed: false, optional: false, required: true
122
+ _clientKey;
123
+ get clientKey() {
124
+ return this.getStringAttribute('client_key');
125
+ }
126
+ set clientKey(value) {
127
+ this._clientKey = value;
128
+ }
129
+ // Temporarily expose input value. Use with caution.
130
+ get clientKeyInput() {
131
+ return this._clientKey;
132
+ }
133
+ }
134
+ export function dataTalosClusterKubeconfigKubernetesClientConfigurationToTerraform(struct) {
135
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
136
+ return struct;
137
+ }
138
+ if (cdktf.isComplexElement(struct)) {
139
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
140
+ }
141
+ return {};
142
+ }
143
+ export function dataTalosClusterKubeconfigKubernetesClientConfigurationToHclTerraform(struct) {
144
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
145
+ return struct;
146
+ }
147
+ if (cdktf.isComplexElement(struct)) {
148
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
149
+ }
150
+ const attrs = {};
151
+ return attrs;
152
+ }
153
+ export class DataTalosClusterKubeconfigKubernetesClientConfigurationOutputReference extends cdktf.ComplexObject {
154
+ isEmptyObject = false;
155
+ /**
156
+ * @param terraformResource The parent resource
157
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
158
+ */
159
+ constructor(terraformResource, terraformAttribute) {
160
+ super(terraformResource, terraformAttribute, false);
161
+ }
162
+ get internalValue() {
163
+ let hasAnyValues = this.isEmptyObject;
164
+ const internalValueResult = {};
165
+ return hasAnyValues ? internalValueResult : undefined;
166
+ }
167
+ set internalValue(value) {
168
+ if (value === undefined) {
169
+ this.isEmptyObject = false;
170
+ }
171
+ else {
172
+ this.isEmptyObject = Object.keys(value).length === 0;
173
+ }
174
+ }
175
+ // ca_certificate - computed: true, optional: false, required: false
176
+ get caCertificate() {
177
+ return this.getStringAttribute('ca_certificate');
178
+ }
179
+ // client_certificate - computed: true, optional: false, required: false
180
+ get clientCertificate() {
181
+ return this.getStringAttribute('client_certificate');
182
+ }
183
+ // client_key - computed: true, optional: false, required: false
184
+ get clientKey() {
185
+ return this.getStringAttribute('client_key');
186
+ }
187
+ // host - computed: true, optional: false, required: false
188
+ get host() {
189
+ return this.getStringAttribute('host');
190
+ }
191
+ }
192
+ export function dataTalosClusterKubeconfigTimeoutsToTerraform(struct) {
193
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
194
+ return struct;
195
+ }
196
+ if (cdktf.isComplexElement(struct)) {
197
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
198
+ }
199
+ return {
200
+ read: cdktf.stringToTerraform(struct.read),
201
+ };
202
+ }
203
+ export function dataTalosClusterKubeconfigTimeoutsToHclTerraform(struct) {
204
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
205
+ return struct;
206
+ }
207
+ if (cdktf.isComplexElement(struct)) {
208
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
209
+ }
210
+ const attrs = {
211
+ read: {
212
+ value: cdktf.stringToHclTerraform(struct.read),
213
+ isBlock: false,
214
+ type: "simple",
215
+ storageClassType: "string",
216
+ },
217
+ };
218
+ // remove undefined attributes
219
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
220
+ }
221
+ export class DataTalosClusterKubeconfigTimeoutsOutputReference extends cdktf.ComplexObject {
222
+ isEmptyObject = false;
223
+ resolvableValue;
224
+ /**
225
+ * @param terraformResource The parent resource
226
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
227
+ */
228
+ constructor(terraformResource, terraformAttribute) {
229
+ super(terraformResource, terraformAttribute, false);
230
+ }
231
+ get internalValue() {
232
+ if (this.resolvableValue) {
233
+ return this.resolvableValue;
234
+ }
235
+ let hasAnyValues = this.isEmptyObject;
236
+ const internalValueResult = {};
237
+ if (this._read !== undefined) {
238
+ hasAnyValues = true;
239
+ internalValueResult.read = this._read;
240
+ }
241
+ return hasAnyValues ? internalValueResult : undefined;
242
+ }
243
+ set internalValue(value) {
244
+ if (value === undefined) {
245
+ this.isEmptyObject = false;
246
+ this.resolvableValue = undefined;
247
+ this._read = undefined;
248
+ }
249
+ else if (cdktf.Tokenization.isResolvable(value)) {
250
+ this.isEmptyObject = false;
251
+ this.resolvableValue = value;
252
+ }
253
+ else {
254
+ this.isEmptyObject = Object.keys(value).length === 0;
255
+ this.resolvableValue = undefined;
256
+ this._read = value.read;
257
+ }
258
+ }
259
+ // read - computed: false, optional: true, required: false
260
+ _read;
261
+ get read() {
262
+ return this.getStringAttribute('read');
263
+ }
264
+ set read(value) {
265
+ this._read = value;
266
+ }
267
+ resetRead() {
268
+ this._read = undefined;
269
+ }
270
+ // Temporarily expose input value. Use with caution.
271
+ get readInput() {
272
+ return this._read;
273
+ }
274
+ }
275
+ /**
276
+ * Represents a {@link https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/cluster_kubeconfig talos_cluster_kubeconfig}
277
+ */
278
+ export class DataTalosClusterKubeconfig extends cdktf.TerraformDataSource {
279
+ // =================
280
+ // STATIC PROPERTIES
281
+ // =================
282
+ static tfResourceType = "talos_cluster_kubeconfig";
283
+ // ==============
284
+ // STATIC Methods
285
+ // ==============
286
+ /**
287
+ * Generates CDKTF code for importing a DataTalosClusterKubeconfig resource upon running "cdktf plan <stack-name>"
288
+ * @param scope The scope in which to define this construct
289
+ * @param importToId The construct id used in the generated config for the DataTalosClusterKubeconfig to import
290
+ * @param importFromId The id of the existing DataTalosClusterKubeconfig that should be imported. Refer to the {@link https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/cluster_kubeconfig#import import section} in the documentation of this resource for the id to use
291
+ * @param provider? Optional instance of the provider where the DataTalosClusterKubeconfig to import is found
292
+ */
293
+ static generateConfigForImport(scope, importToId, importFromId, provider) {
294
+ return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "talos_cluster_kubeconfig", importId: importFromId, provider });
295
+ }
296
+ // ===========
297
+ // INITIALIZER
298
+ // ===========
299
+ /**
300
+ * Create a new {@link https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/cluster_kubeconfig talos_cluster_kubeconfig} Data Source
301
+ *
302
+ * @param scope The scope in which to define this construct
303
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
304
+ * @param options DataTalosClusterKubeconfigConfig
305
+ */
306
+ constructor(scope, id, config) {
307
+ super(scope, id, {
308
+ terraformResourceType: 'talos_cluster_kubeconfig',
309
+ terraformGeneratorMetadata: {
310
+ providerName: 'talos',
311
+ providerVersion: '0.9.0',
312
+ providerVersionConstraint: '0.9.0'
313
+ },
314
+ provider: config.provider,
315
+ dependsOn: config.dependsOn,
316
+ count: config.count,
317
+ lifecycle: config.lifecycle,
318
+ provisioners: config.provisioners,
319
+ connection: config.connection,
320
+ forEach: config.forEach
321
+ });
322
+ this._clientConfiguration.internalValue = config.clientConfiguration;
323
+ this._endpoint = config.endpoint;
324
+ this._node = config.nodeAttribute;
325
+ this._timeouts.internalValue = config.timeouts;
326
+ this._wait = config.wait;
327
+ }
328
+ // ==========
329
+ // ATTRIBUTES
330
+ // ==========
331
+ // client_configuration - computed: false, optional: false, required: true
332
+ _clientConfiguration = new DataTalosClusterKubeconfigClientConfigurationOutputReference(this, "client_configuration");
333
+ get clientConfiguration() {
334
+ return this._clientConfiguration;
335
+ }
336
+ putClientConfiguration(value) {
337
+ this._clientConfiguration.internalValue = value;
338
+ }
339
+ // Temporarily expose input value. Use with caution.
340
+ get clientConfigurationInput() {
341
+ return this._clientConfiguration.internalValue;
342
+ }
343
+ // endpoint - computed: true, optional: true, required: false
344
+ _endpoint;
345
+ get endpoint() {
346
+ return this.getStringAttribute('endpoint');
347
+ }
348
+ set endpoint(value) {
349
+ this._endpoint = value;
350
+ }
351
+ resetEndpoint() {
352
+ this._endpoint = undefined;
353
+ }
354
+ // Temporarily expose input value. Use with caution.
355
+ get endpointInput() {
356
+ return this._endpoint;
357
+ }
358
+ // id - computed: true, optional: false, required: false
359
+ get id() {
360
+ return this.getStringAttribute('id');
361
+ }
362
+ // kubeconfig_raw - computed: true, optional: false, required: false
363
+ get kubeconfigRaw() {
364
+ return this.getStringAttribute('kubeconfig_raw');
365
+ }
366
+ // kubernetes_client_configuration - computed: true, optional: false, required: false
367
+ _kubernetesClientConfiguration = new DataTalosClusterKubeconfigKubernetesClientConfigurationOutputReference(this, "kubernetes_client_configuration");
368
+ get kubernetesClientConfiguration() {
369
+ return this._kubernetesClientConfiguration;
370
+ }
371
+ // node - computed: false, optional: false, required: true
372
+ _node;
373
+ get nodeAttribute() {
374
+ return this.getStringAttribute('node');
375
+ }
376
+ set nodeAttribute(value) {
377
+ this._node = value;
378
+ }
379
+ // Temporarily expose input value. Use with caution.
380
+ get nodeAttributeInput() {
381
+ return this._node;
382
+ }
383
+ // timeouts - computed: false, optional: true, required: false
384
+ _timeouts = new DataTalosClusterKubeconfigTimeoutsOutputReference(this, "timeouts");
385
+ get timeouts() {
386
+ return this._timeouts;
387
+ }
388
+ putTimeouts(value) {
389
+ this._timeouts.internalValue = value;
390
+ }
391
+ resetTimeouts() {
392
+ this._timeouts.internalValue = undefined;
393
+ }
394
+ // Temporarily expose input value. Use with caution.
395
+ get timeoutsInput() {
396
+ return this._timeouts.internalValue;
397
+ }
398
+ // wait - computed: false, optional: true, required: false
399
+ _wait;
400
+ get wait() {
401
+ return this.getBooleanAttribute('wait');
402
+ }
403
+ set wait(value) {
404
+ this._wait = value;
405
+ }
406
+ resetWait() {
407
+ this._wait = undefined;
408
+ }
409
+ // Temporarily expose input value. Use with caution.
410
+ get waitInput() {
411
+ return this._wait;
412
+ }
413
+ // =========
414
+ // SYNTHESIS
415
+ // =========
416
+ synthesizeAttributes() {
417
+ return {
418
+ client_configuration: dataTalosClusterKubeconfigClientConfigurationToTerraform(this._clientConfiguration.internalValue),
419
+ endpoint: cdktf.stringToTerraform(this._endpoint),
420
+ node: cdktf.stringToTerraform(this._node),
421
+ timeouts: dataTalosClusterKubeconfigTimeoutsToTerraform(this._timeouts.internalValue),
422
+ wait: cdktf.booleanToTerraform(this._wait),
423
+ };
424
+ }
425
+ synthesizeHclAttributes() {
426
+ const attrs = {
427
+ client_configuration: {
428
+ value: dataTalosClusterKubeconfigClientConfigurationToHclTerraform(this._clientConfiguration.internalValue),
429
+ isBlock: true,
430
+ type: "struct",
431
+ storageClassType: "DataTalosClusterKubeconfigClientConfiguration",
432
+ },
433
+ endpoint: {
434
+ value: cdktf.stringToHclTerraform(this._endpoint),
435
+ isBlock: false,
436
+ type: "simple",
437
+ storageClassType: "string",
438
+ },
439
+ node: {
440
+ value: cdktf.stringToHclTerraform(this._node),
441
+ isBlock: false,
442
+ type: "simple",
443
+ storageClassType: "string",
444
+ },
445
+ timeouts: {
446
+ value: dataTalosClusterKubeconfigTimeoutsToHclTerraform(this._timeouts.internalValue),
447
+ isBlock: true,
448
+ type: "struct",
449
+ storageClassType: "DataTalosClusterKubeconfigTimeouts",
450
+ },
451
+ wait: {
452
+ value: cdktf.booleanToHclTerraform(this._wait),
453
+ isBlock: false,
454
+ type: "simple",
455
+ storageClassType: "boolean",
456
+ },
457
+ };
458
+ // remove undefined attributes
459
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
460
+ }
461
+ }
@@ -0,0 +1,118 @@
1
+ import { Construct } from 'constructs';
2
+ import * as cdktf from 'cdktf';
3
+ export interface DataTalosImageFactoryExtensionsVersionsConfig extends cdktf.TerraformMetaArguments {
4
+ /**
5
+ * The filter to apply to the extensions list.
6
+ *
7
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/image_factory_extensions_versions#filters DataTalosImageFactoryExtensionsVersions#filters}
8
+ */
9
+ readonly filters?: DataTalosImageFactoryExtensionsVersionsFilters;
10
+ /**
11
+ * The talos version to get extensions for.
12
+ *
13
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/image_factory_extensions_versions#talos_version DataTalosImageFactoryExtensionsVersions#talos_version}
14
+ */
15
+ readonly talosVersion: string;
16
+ }
17
+ export interface DataTalosImageFactoryExtensionsVersionsExtensionsInfo {
18
+ }
19
+ export declare function dataTalosImageFactoryExtensionsVersionsExtensionsInfoToTerraform(struct?: DataTalosImageFactoryExtensionsVersionsExtensionsInfo): any;
20
+ export declare function dataTalosImageFactoryExtensionsVersionsExtensionsInfoToHclTerraform(struct?: DataTalosImageFactoryExtensionsVersionsExtensionsInfo): any;
21
+ export declare class DataTalosImageFactoryExtensionsVersionsExtensionsInfoOutputReference extends cdktf.ComplexObject {
22
+ private isEmptyObject;
23
+ /**
24
+ * @param terraformResource The parent resource
25
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
26
+ * @param complexObjectIndex the index of this item in the list
27
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
28
+ */
29
+ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
30
+ get internalValue(): DataTalosImageFactoryExtensionsVersionsExtensionsInfo | undefined;
31
+ set internalValue(value: DataTalosImageFactoryExtensionsVersionsExtensionsInfo | undefined);
32
+ get author(): any;
33
+ get description(): any;
34
+ get digest(): any;
35
+ get name(): any;
36
+ get ref(): any;
37
+ }
38
+ export declare class DataTalosImageFactoryExtensionsVersionsExtensionsInfoList extends cdktf.ComplexList {
39
+ protected terraformResource: cdktf.IInterpolatingParent;
40
+ protected terraformAttribute: string;
41
+ protected wrapsSet: boolean;
42
+ /**
43
+ * @param terraformResource The parent resource
44
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
45
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
46
+ */
47
+ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
48
+ /**
49
+ * @param index the index of the item to return
50
+ */
51
+ get(index: number): DataTalosImageFactoryExtensionsVersionsExtensionsInfoOutputReference;
52
+ }
53
+ export interface DataTalosImageFactoryExtensionsVersionsFilters {
54
+ /**
55
+ * The name of the extension to filter by.
56
+ *
57
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/image_factory_extensions_versions#names DataTalosImageFactoryExtensionsVersions#names}
58
+ */
59
+ readonly names?: string[];
60
+ }
61
+ export declare function dataTalosImageFactoryExtensionsVersionsFiltersToTerraform(struct?: DataTalosImageFactoryExtensionsVersionsFilters | cdktf.IResolvable): any;
62
+ export declare function dataTalosImageFactoryExtensionsVersionsFiltersToHclTerraform(struct?: DataTalosImageFactoryExtensionsVersionsFilters | cdktf.IResolvable): any;
63
+ export declare class DataTalosImageFactoryExtensionsVersionsFiltersOutputReference extends cdktf.ComplexObject {
64
+ private isEmptyObject;
65
+ private resolvableValue?;
66
+ /**
67
+ * @param terraformResource The parent resource
68
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
69
+ */
70
+ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
71
+ get internalValue(): DataTalosImageFactoryExtensionsVersionsFilters | cdktf.IResolvable | undefined;
72
+ set internalValue(value: DataTalosImageFactoryExtensionsVersionsFilters | cdktf.IResolvable | undefined);
73
+ private _names?;
74
+ get names(): string[];
75
+ set names(value: string[]);
76
+ resetNames(): void;
77
+ get namesInput(): string[];
78
+ }
79
+ /**
80
+ * Represents a {@link https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/image_factory_extensions_versions talos_image_factory_extensions_versions}
81
+ */
82
+ export declare class DataTalosImageFactoryExtensionsVersions extends cdktf.TerraformDataSource {
83
+ static readonly tfResourceType = "talos_image_factory_extensions_versions";
84
+ /**
85
+ * Generates CDKTF code for importing a DataTalosImageFactoryExtensionsVersions resource upon running "cdktf plan <stack-name>"
86
+ * @param scope The scope in which to define this construct
87
+ * @param importToId The construct id used in the generated config for the DataTalosImageFactoryExtensionsVersions to import
88
+ * @param importFromId The id of the existing DataTalosImageFactoryExtensionsVersions that should be imported. Refer to the {@link https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/image_factory_extensions_versions#import import section} in the documentation of this resource for the id to use
89
+ * @param provider? Optional instance of the provider where the DataTalosImageFactoryExtensionsVersions to import is found
90
+ */
91
+ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any;
92
+ /**
93
+ * Create a new {@link https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/image_factory_extensions_versions talos_image_factory_extensions_versions} Data Source
94
+ *
95
+ * @param scope The scope in which to define this construct
96
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
97
+ * @param options DataTalosImageFactoryExtensionsVersionsConfig
98
+ */
99
+ constructor(scope: Construct, id: string, config: DataTalosImageFactoryExtensionsVersionsConfig);
100
+ private _extensionsInfo;
101
+ get extensionsInfo(): DataTalosImageFactoryExtensionsVersionsExtensionsInfoList;
102
+ private _filters;
103
+ get filters(): DataTalosImageFactoryExtensionsVersionsFiltersOutputReference;
104
+ putFilters(value: DataTalosImageFactoryExtensionsVersionsFilters): void;
105
+ resetFilters(): void;
106
+ get filtersInput(): any;
107
+ get id(): any;
108
+ private _talosVersion?;
109
+ get talosVersion(): string;
110
+ set talosVersion(value: string);
111
+ get talosVersionInput(): string;
112
+ protected synthesizeAttributes(): {
113
+ [name: string]: any;
114
+ };
115
+ protected synthesizeHclAttributes(): {
116
+ [name: string]: any;
117
+ };
118
+ }