@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,289 @@
1
+ // https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/image_factory_extensions_versions
2
+ // generated from terraform resource schema
3
+ import * as cdktf from 'cdktf';
4
+ export function dataTalosImageFactoryExtensionsVersionsExtensionsInfoToTerraform(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 dataTalosImageFactoryExtensionsVersionsExtensionsInfoToHclTerraform(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 DataTalosImageFactoryExtensionsVersionsExtensionsInfoOutputReference 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
+ // author - computed: true, optional: false, required: false
48
+ get author() {
49
+ return this.getStringAttribute('author');
50
+ }
51
+ // description - computed: true, optional: false, required: false
52
+ get description() {
53
+ return this.getStringAttribute('description');
54
+ }
55
+ // digest - computed: true, optional: false, required: false
56
+ get digest() {
57
+ return this.getStringAttribute('digest');
58
+ }
59
+ // name - computed: true, optional: false, required: false
60
+ get name() {
61
+ return this.getStringAttribute('name');
62
+ }
63
+ // ref - computed: true, optional: false, required: false
64
+ get ref() {
65
+ return this.getStringAttribute('ref');
66
+ }
67
+ }
68
+ export class DataTalosImageFactoryExtensionsVersionsExtensionsInfoList extends cdktf.ComplexList {
69
+ terraformResource;
70
+ terraformAttribute;
71
+ wrapsSet;
72
+ /**
73
+ * @param terraformResource The parent resource
74
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
75
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
76
+ */
77
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
78
+ super(terraformResource, terraformAttribute, wrapsSet);
79
+ this.terraformResource = terraformResource;
80
+ this.terraformAttribute = terraformAttribute;
81
+ this.wrapsSet = wrapsSet;
82
+ }
83
+ /**
84
+ * @param index the index of the item to return
85
+ */
86
+ get(index) {
87
+ return new DataTalosImageFactoryExtensionsVersionsExtensionsInfoOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
88
+ }
89
+ }
90
+ export function dataTalosImageFactoryExtensionsVersionsFiltersToTerraform(struct) {
91
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
92
+ return struct;
93
+ }
94
+ if (cdktf.isComplexElement(struct)) {
95
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
96
+ }
97
+ return {
98
+ names: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.names),
99
+ };
100
+ }
101
+ export function dataTalosImageFactoryExtensionsVersionsFiltersToHclTerraform(struct) {
102
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
103
+ return struct;
104
+ }
105
+ if (cdktf.isComplexElement(struct)) {
106
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
107
+ }
108
+ const attrs = {
109
+ names: {
110
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.names),
111
+ isBlock: false,
112
+ type: "list",
113
+ storageClassType: "stringList",
114
+ },
115
+ };
116
+ // remove undefined attributes
117
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
118
+ }
119
+ export class DataTalosImageFactoryExtensionsVersionsFiltersOutputReference extends cdktf.ComplexObject {
120
+ isEmptyObject = false;
121
+ resolvableValue;
122
+ /**
123
+ * @param terraformResource The parent resource
124
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
125
+ */
126
+ constructor(terraformResource, terraformAttribute) {
127
+ super(terraformResource, terraformAttribute, false);
128
+ }
129
+ get internalValue() {
130
+ if (this.resolvableValue) {
131
+ return this.resolvableValue;
132
+ }
133
+ let hasAnyValues = this.isEmptyObject;
134
+ const internalValueResult = {};
135
+ if (this._names !== undefined) {
136
+ hasAnyValues = true;
137
+ internalValueResult.names = this._names;
138
+ }
139
+ return hasAnyValues ? internalValueResult : undefined;
140
+ }
141
+ set internalValue(value) {
142
+ if (value === undefined) {
143
+ this.isEmptyObject = false;
144
+ this.resolvableValue = undefined;
145
+ this._names = undefined;
146
+ }
147
+ else if (cdktf.Tokenization.isResolvable(value)) {
148
+ this.isEmptyObject = false;
149
+ this.resolvableValue = value;
150
+ }
151
+ else {
152
+ this.isEmptyObject = Object.keys(value).length === 0;
153
+ this.resolvableValue = undefined;
154
+ this._names = value.names;
155
+ }
156
+ }
157
+ // names - computed: false, optional: true, required: false
158
+ _names;
159
+ get names() {
160
+ return this.getListAttribute('names');
161
+ }
162
+ set names(value) {
163
+ this._names = value;
164
+ }
165
+ resetNames() {
166
+ this._names = undefined;
167
+ }
168
+ // Temporarily expose input value. Use with caution.
169
+ get namesInput() {
170
+ return this._names;
171
+ }
172
+ }
173
+ /**
174
+ * 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}
175
+ */
176
+ export class DataTalosImageFactoryExtensionsVersions extends cdktf.TerraformDataSource {
177
+ // =================
178
+ // STATIC PROPERTIES
179
+ // =================
180
+ static tfResourceType = "talos_image_factory_extensions_versions";
181
+ // ==============
182
+ // STATIC Methods
183
+ // ==============
184
+ /**
185
+ * Generates CDKTF code for importing a DataTalosImageFactoryExtensionsVersions resource upon running "cdktf plan <stack-name>"
186
+ * @param scope The scope in which to define this construct
187
+ * @param importToId The construct id used in the generated config for the DataTalosImageFactoryExtensionsVersions to import
188
+ * @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
189
+ * @param provider? Optional instance of the provider where the DataTalosImageFactoryExtensionsVersions to import is found
190
+ */
191
+ static generateConfigForImport(scope, importToId, importFromId, provider) {
192
+ return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "talos_image_factory_extensions_versions", importId: importFromId, provider });
193
+ }
194
+ // ===========
195
+ // INITIALIZER
196
+ // ===========
197
+ /**
198
+ * 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
199
+ *
200
+ * @param scope The scope in which to define this construct
201
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
202
+ * @param options DataTalosImageFactoryExtensionsVersionsConfig
203
+ */
204
+ constructor(scope, id, config) {
205
+ super(scope, id, {
206
+ terraformResourceType: 'talos_image_factory_extensions_versions',
207
+ terraformGeneratorMetadata: {
208
+ providerName: 'talos',
209
+ providerVersion: '0.9.0',
210
+ providerVersionConstraint: '0.9.0'
211
+ },
212
+ provider: config.provider,
213
+ dependsOn: config.dependsOn,
214
+ count: config.count,
215
+ lifecycle: config.lifecycle,
216
+ provisioners: config.provisioners,
217
+ connection: config.connection,
218
+ forEach: config.forEach
219
+ });
220
+ this._filters.internalValue = config.filters;
221
+ this._talosVersion = config.talosVersion;
222
+ }
223
+ // ==========
224
+ // ATTRIBUTES
225
+ // ==========
226
+ // extensions_info - computed: true, optional: false, required: false
227
+ _extensionsInfo = new DataTalosImageFactoryExtensionsVersionsExtensionsInfoList(this, "extensions_info", false);
228
+ get extensionsInfo() {
229
+ return this._extensionsInfo;
230
+ }
231
+ // filters - computed: false, optional: true, required: false
232
+ _filters = new DataTalosImageFactoryExtensionsVersionsFiltersOutputReference(this, "filters");
233
+ get filters() {
234
+ return this._filters;
235
+ }
236
+ putFilters(value) {
237
+ this._filters.internalValue = value;
238
+ }
239
+ resetFilters() {
240
+ this._filters.internalValue = undefined;
241
+ }
242
+ // Temporarily expose input value. Use with caution.
243
+ get filtersInput() {
244
+ return this._filters.internalValue;
245
+ }
246
+ // id - computed: true, optional: false, required: false
247
+ get id() {
248
+ return this.getStringAttribute('id');
249
+ }
250
+ // talos_version - computed: false, optional: false, required: true
251
+ _talosVersion;
252
+ get talosVersion() {
253
+ return this.getStringAttribute('talos_version');
254
+ }
255
+ set talosVersion(value) {
256
+ this._talosVersion = value;
257
+ }
258
+ // Temporarily expose input value. Use with caution.
259
+ get talosVersionInput() {
260
+ return this._talosVersion;
261
+ }
262
+ // =========
263
+ // SYNTHESIS
264
+ // =========
265
+ synthesizeAttributes() {
266
+ return {
267
+ filters: dataTalosImageFactoryExtensionsVersionsFiltersToTerraform(this._filters.internalValue),
268
+ talos_version: cdktf.stringToTerraform(this._talosVersion),
269
+ };
270
+ }
271
+ synthesizeHclAttributes() {
272
+ const attrs = {
273
+ filters: {
274
+ value: dataTalosImageFactoryExtensionsVersionsFiltersToHclTerraform(this._filters.internalValue),
275
+ isBlock: true,
276
+ type: "struct",
277
+ storageClassType: "DataTalosImageFactoryExtensionsVersionsFilters",
278
+ },
279
+ talos_version: {
280
+ value: cdktf.stringToHclTerraform(this._talosVersion),
281
+ isBlock: false,
282
+ type: "simple",
283
+ storageClassType: "string",
284
+ },
285
+ };
286
+ // remove undefined attributes
287
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
288
+ }
289
+ }
@@ -0,0 +1,117 @@
1
+ import { Construct } from 'constructs';
2
+ import * as cdktf from 'cdktf';
3
+ export interface DataTalosImageFactoryOverlaysVersionsConfig extends cdktf.TerraformMetaArguments {
4
+ /**
5
+ * The filter to apply to the overlays list.
6
+ *
7
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/image_factory_overlays_versions#filters DataTalosImageFactoryOverlaysVersions#filters}
8
+ */
9
+ readonly filters?: DataTalosImageFactoryOverlaysVersionsFilters;
10
+ /**
11
+ * The talos version to get overlays for.
12
+ *
13
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/image_factory_overlays_versions#talos_version DataTalosImageFactoryOverlaysVersions#talos_version}
14
+ */
15
+ readonly talosVersion: string;
16
+ }
17
+ export interface DataTalosImageFactoryOverlaysVersionsFilters {
18
+ /**
19
+ * The name of the overlay to filter by.
20
+ *
21
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/image_factory_overlays_versions#name DataTalosImageFactoryOverlaysVersions#name}
22
+ */
23
+ readonly name?: string;
24
+ }
25
+ export declare function dataTalosImageFactoryOverlaysVersionsFiltersToTerraform(struct?: DataTalosImageFactoryOverlaysVersionsFilters | cdktf.IResolvable): any;
26
+ export declare function dataTalosImageFactoryOverlaysVersionsFiltersToHclTerraform(struct?: DataTalosImageFactoryOverlaysVersionsFilters | cdktf.IResolvable): any;
27
+ export declare class DataTalosImageFactoryOverlaysVersionsFiltersOutputReference extends cdktf.ComplexObject {
28
+ private isEmptyObject;
29
+ private resolvableValue?;
30
+ /**
31
+ * @param terraformResource The parent resource
32
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
33
+ */
34
+ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
35
+ get internalValue(): DataTalosImageFactoryOverlaysVersionsFilters | cdktf.IResolvable | undefined;
36
+ set internalValue(value: DataTalosImageFactoryOverlaysVersionsFilters | cdktf.IResolvable | undefined);
37
+ private _name?;
38
+ get name(): string;
39
+ set name(value: string);
40
+ resetName(): void;
41
+ get nameInput(): string;
42
+ }
43
+ export interface DataTalosImageFactoryOverlaysVersionsOverlaysInfo {
44
+ }
45
+ export declare function dataTalosImageFactoryOverlaysVersionsOverlaysInfoToTerraform(struct?: DataTalosImageFactoryOverlaysVersionsOverlaysInfo): any;
46
+ export declare function dataTalosImageFactoryOverlaysVersionsOverlaysInfoToHclTerraform(struct?: DataTalosImageFactoryOverlaysVersionsOverlaysInfo): any;
47
+ export declare class DataTalosImageFactoryOverlaysVersionsOverlaysInfoOutputReference extends cdktf.ComplexObject {
48
+ private isEmptyObject;
49
+ /**
50
+ * @param terraformResource The parent resource
51
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
52
+ * @param complexObjectIndex the index of this item in the list
53
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
54
+ */
55
+ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
56
+ get internalValue(): DataTalosImageFactoryOverlaysVersionsOverlaysInfo | undefined;
57
+ set internalValue(value: DataTalosImageFactoryOverlaysVersionsOverlaysInfo | undefined);
58
+ get digest(): any;
59
+ get image(): any;
60
+ get name(): any;
61
+ get ref(): any;
62
+ }
63
+ export declare class DataTalosImageFactoryOverlaysVersionsOverlaysInfoList extends cdktf.ComplexList {
64
+ protected terraformResource: cdktf.IInterpolatingParent;
65
+ protected terraformAttribute: string;
66
+ protected wrapsSet: boolean;
67
+ /**
68
+ * @param terraformResource The parent resource
69
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
70
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
71
+ */
72
+ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
73
+ /**
74
+ * @param index the index of the item to return
75
+ */
76
+ get(index: number): DataTalosImageFactoryOverlaysVersionsOverlaysInfoOutputReference;
77
+ }
78
+ /**
79
+ * Represents a {@link https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/image_factory_overlays_versions talos_image_factory_overlays_versions}
80
+ */
81
+ export declare class DataTalosImageFactoryOverlaysVersions extends cdktf.TerraformDataSource {
82
+ static readonly tfResourceType = "talos_image_factory_overlays_versions";
83
+ /**
84
+ * Generates CDKTF code for importing a DataTalosImageFactoryOverlaysVersions resource upon running "cdktf plan <stack-name>"
85
+ * @param scope The scope in which to define this construct
86
+ * @param importToId The construct id used in the generated config for the DataTalosImageFactoryOverlaysVersions to import
87
+ * @param importFromId The id of the existing DataTalosImageFactoryOverlaysVersions that should be imported. Refer to the {@link https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/image_factory_overlays_versions#import import section} in the documentation of this resource for the id to use
88
+ * @param provider? Optional instance of the provider where the DataTalosImageFactoryOverlaysVersions to import is found
89
+ */
90
+ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any;
91
+ /**
92
+ * Create a new {@link https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/image_factory_overlays_versions talos_image_factory_overlays_versions} Data Source
93
+ *
94
+ * @param scope The scope in which to define this construct
95
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
96
+ * @param options DataTalosImageFactoryOverlaysVersionsConfig
97
+ */
98
+ constructor(scope: Construct, id: string, config: DataTalosImageFactoryOverlaysVersionsConfig);
99
+ private _filters;
100
+ get filters(): DataTalosImageFactoryOverlaysVersionsFiltersOutputReference;
101
+ putFilters(value: DataTalosImageFactoryOverlaysVersionsFilters): void;
102
+ resetFilters(): void;
103
+ get filtersInput(): any;
104
+ get id(): any;
105
+ private _overlaysInfo;
106
+ get overlaysInfo(): DataTalosImageFactoryOverlaysVersionsOverlaysInfoList;
107
+ private _talosVersion?;
108
+ get talosVersion(): string;
109
+ set talosVersion(value: string);
110
+ get talosVersionInput(): string;
111
+ protected synthesizeAttributes(): {
112
+ [name: string]: any;
113
+ };
114
+ protected synthesizeHclAttributes(): {
115
+ [name: string]: any;
116
+ };
117
+ }
@@ -0,0 +1,285 @@
1
+ // https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/image_factory_overlays_versions
2
+ // generated from terraform resource schema
3
+ import * as cdktf from 'cdktf';
4
+ export function dataTalosImageFactoryOverlaysVersionsFiltersToTerraform(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
+ name: cdktf.stringToTerraform(struct.name),
13
+ };
14
+ }
15
+ export function dataTalosImageFactoryOverlaysVersionsFiltersToHclTerraform(struct) {
16
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
17
+ return struct;
18
+ }
19
+ if (cdktf.isComplexElement(struct)) {
20
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
21
+ }
22
+ const attrs = {
23
+ name: {
24
+ value: cdktf.stringToHclTerraform(struct.name),
25
+ isBlock: false,
26
+ type: "simple",
27
+ storageClassType: "string",
28
+ },
29
+ };
30
+ // remove undefined attributes
31
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
32
+ }
33
+ export class DataTalosImageFactoryOverlaysVersionsFiltersOutputReference extends cdktf.ComplexObject {
34
+ isEmptyObject = false;
35
+ resolvableValue;
36
+ /**
37
+ * @param terraformResource The parent resource
38
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
39
+ */
40
+ constructor(terraformResource, terraformAttribute) {
41
+ super(terraformResource, terraformAttribute, false);
42
+ }
43
+ get internalValue() {
44
+ if (this.resolvableValue) {
45
+ return this.resolvableValue;
46
+ }
47
+ let hasAnyValues = this.isEmptyObject;
48
+ const internalValueResult = {};
49
+ if (this._name !== undefined) {
50
+ hasAnyValues = true;
51
+ internalValueResult.name = this._name;
52
+ }
53
+ return hasAnyValues ? internalValueResult : undefined;
54
+ }
55
+ set internalValue(value) {
56
+ if (value === undefined) {
57
+ this.isEmptyObject = false;
58
+ this.resolvableValue = undefined;
59
+ this._name = undefined;
60
+ }
61
+ else if (cdktf.Tokenization.isResolvable(value)) {
62
+ this.isEmptyObject = false;
63
+ this.resolvableValue = value;
64
+ }
65
+ else {
66
+ this.isEmptyObject = Object.keys(value).length === 0;
67
+ this.resolvableValue = undefined;
68
+ this._name = value.name;
69
+ }
70
+ }
71
+ // name - computed: false, optional: true, required: false
72
+ _name;
73
+ get name() {
74
+ return this.getStringAttribute('name');
75
+ }
76
+ set name(value) {
77
+ this._name = value;
78
+ }
79
+ resetName() {
80
+ this._name = undefined;
81
+ }
82
+ // Temporarily expose input value. Use with caution.
83
+ get nameInput() {
84
+ return this._name;
85
+ }
86
+ }
87
+ export function dataTalosImageFactoryOverlaysVersionsOverlaysInfoToTerraform(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
+ return {};
95
+ }
96
+ export function dataTalosImageFactoryOverlaysVersionsOverlaysInfoToHclTerraform(struct) {
97
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
98
+ return struct;
99
+ }
100
+ if (cdktf.isComplexElement(struct)) {
101
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
102
+ }
103
+ const attrs = {};
104
+ return attrs;
105
+ }
106
+ export class DataTalosImageFactoryOverlaysVersionsOverlaysInfoOutputReference extends cdktf.ComplexObject {
107
+ isEmptyObject = false;
108
+ /**
109
+ * @param terraformResource The parent resource
110
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
111
+ * @param complexObjectIndex the index of this item in the list
112
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
113
+ */
114
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
115
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
116
+ }
117
+ get internalValue() {
118
+ let hasAnyValues = this.isEmptyObject;
119
+ const internalValueResult = {};
120
+ return hasAnyValues ? internalValueResult : undefined;
121
+ }
122
+ set internalValue(value) {
123
+ if (value === undefined) {
124
+ this.isEmptyObject = false;
125
+ }
126
+ else {
127
+ this.isEmptyObject = Object.keys(value).length === 0;
128
+ }
129
+ }
130
+ // digest - computed: true, optional: false, required: false
131
+ get digest() {
132
+ return this.getStringAttribute('digest');
133
+ }
134
+ // image - computed: true, optional: false, required: false
135
+ get image() {
136
+ return this.getStringAttribute('image');
137
+ }
138
+ // name - computed: true, optional: false, required: false
139
+ get name() {
140
+ return this.getStringAttribute('name');
141
+ }
142
+ // ref - computed: true, optional: false, required: false
143
+ get ref() {
144
+ return this.getStringAttribute('ref');
145
+ }
146
+ }
147
+ export class DataTalosImageFactoryOverlaysVersionsOverlaysInfoList extends cdktf.ComplexList {
148
+ terraformResource;
149
+ terraformAttribute;
150
+ wrapsSet;
151
+ /**
152
+ * @param terraformResource The parent resource
153
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
154
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
155
+ */
156
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
157
+ super(terraformResource, terraformAttribute, wrapsSet);
158
+ this.terraformResource = terraformResource;
159
+ this.terraformAttribute = terraformAttribute;
160
+ this.wrapsSet = wrapsSet;
161
+ }
162
+ /**
163
+ * @param index the index of the item to return
164
+ */
165
+ get(index) {
166
+ return new DataTalosImageFactoryOverlaysVersionsOverlaysInfoOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
167
+ }
168
+ }
169
+ /**
170
+ * Represents a {@link https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/image_factory_overlays_versions talos_image_factory_overlays_versions}
171
+ */
172
+ export class DataTalosImageFactoryOverlaysVersions extends cdktf.TerraformDataSource {
173
+ // =================
174
+ // STATIC PROPERTIES
175
+ // =================
176
+ static tfResourceType = "talos_image_factory_overlays_versions";
177
+ // ==============
178
+ // STATIC Methods
179
+ // ==============
180
+ /**
181
+ * Generates CDKTF code for importing a DataTalosImageFactoryOverlaysVersions resource upon running "cdktf plan <stack-name>"
182
+ * @param scope The scope in which to define this construct
183
+ * @param importToId The construct id used in the generated config for the DataTalosImageFactoryOverlaysVersions to import
184
+ * @param importFromId The id of the existing DataTalosImageFactoryOverlaysVersions that should be imported. Refer to the {@link https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/image_factory_overlays_versions#import import section} in the documentation of this resource for the id to use
185
+ * @param provider? Optional instance of the provider where the DataTalosImageFactoryOverlaysVersions to import is found
186
+ */
187
+ static generateConfigForImport(scope, importToId, importFromId, provider) {
188
+ return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "talos_image_factory_overlays_versions", importId: importFromId, provider });
189
+ }
190
+ // ===========
191
+ // INITIALIZER
192
+ // ===========
193
+ /**
194
+ * Create a new {@link https://registry.terraform.io/providers/siderolabs/talos/0.9.0/docs/data-sources/image_factory_overlays_versions talos_image_factory_overlays_versions} Data Source
195
+ *
196
+ * @param scope The scope in which to define this construct
197
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
198
+ * @param options DataTalosImageFactoryOverlaysVersionsConfig
199
+ */
200
+ constructor(scope, id, config) {
201
+ super(scope, id, {
202
+ terraformResourceType: 'talos_image_factory_overlays_versions',
203
+ terraformGeneratorMetadata: {
204
+ providerName: 'talos',
205
+ providerVersion: '0.9.0',
206
+ providerVersionConstraint: '0.9.0'
207
+ },
208
+ provider: config.provider,
209
+ dependsOn: config.dependsOn,
210
+ count: config.count,
211
+ lifecycle: config.lifecycle,
212
+ provisioners: config.provisioners,
213
+ connection: config.connection,
214
+ forEach: config.forEach
215
+ });
216
+ this._filters.internalValue = config.filters;
217
+ this._talosVersion = config.talosVersion;
218
+ }
219
+ // ==========
220
+ // ATTRIBUTES
221
+ // ==========
222
+ // filters - computed: false, optional: true, required: false
223
+ _filters = new DataTalosImageFactoryOverlaysVersionsFiltersOutputReference(this, "filters");
224
+ get filters() {
225
+ return this._filters;
226
+ }
227
+ putFilters(value) {
228
+ this._filters.internalValue = value;
229
+ }
230
+ resetFilters() {
231
+ this._filters.internalValue = undefined;
232
+ }
233
+ // Temporarily expose input value. Use with caution.
234
+ get filtersInput() {
235
+ return this._filters.internalValue;
236
+ }
237
+ // id - computed: true, optional: false, required: false
238
+ get id() {
239
+ return this.getStringAttribute('id');
240
+ }
241
+ // overlays_info - computed: true, optional: false, required: false
242
+ _overlaysInfo = new DataTalosImageFactoryOverlaysVersionsOverlaysInfoList(this, "overlays_info", false);
243
+ get overlaysInfo() {
244
+ return this._overlaysInfo;
245
+ }
246
+ // talos_version - computed: false, optional: false, required: true
247
+ _talosVersion;
248
+ get talosVersion() {
249
+ return this.getStringAttribute('talos_version');
250
+ }
251
+ set talosVersion(value) {
252
+ this._talosVersion = value;
253
+ }
254
+ // Temporarily expose input value. Use with caution.
255
+ get talosVersionInput() {
256
+ return this._talosVersion;
257
+ }
258
+ // =========
259
+ // SYNTHESIS
260
+ // =========
261
+ synthesizeAttributes() {
262
+ return {
263
+ filters: dataTalosImageFactoryOverlaysVersionsFiltersToTerraform(this._filters.internalValue),
264
+ talos_version: cdktf.stringToTerraform(this._talosVersion),
265
+ };
266
+ }
267
+ synthesizeHclAttributes() {
268
+ const attrs = {
269
+ filters: {
270
+ value: dataTalosImageFactoryOverlaysVersionsFiltersToHclTerraform(this._filters.internalValue),
271
+ isBlock: true,
272
+ type: "struct",
273
+ storageClassType: "DataTalosImageFactoryOverlaysVersionsFilters",
274
+ },
275
+ talos_version: {
276
+ value: cdktf.stringToHclTerraform(this._talosVersion),
277
+ isBlock: false,
278
+ type: "simple",
279
+ storageClassType: "string",
280
+ },
281
+ };
282
+ // remove undefined attributes
283
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
284
+ }
285
+ }