UNPKG

@cdktf-providers/community-terraform-providers-ignition

Version:

Prebuilt community-terraform-providers/ignition Provider for Terraform CDK (cdktf)

1,051 lines (1,050 loc) 37.6 kB
// https://registry.terraform.io/providers/community-terraform-providers/ignition/2.5.1/docs/data-sources/luks // generated from terraform resource schema import * as cdktf from 'cdktf'; export function dataIgnitionLuksClevisCustomToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { config: cdktf.stringToTerraform(struct.config), needs_network: cdktf.booleanToTerraform(struct.needsNetwork), pin: cdktf.stringToTerraform(struct.pin), }; } export function dataIgnitionLuksClevisCustomToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { config: { value: cdktf.stringToHclTerraform(struct.config), isBlock: false, type: "simple", storageClassType: "string", }, needs_network: { value: cdktf.booleanToHclTerraform(struct.needsNetwork), isBlock: false, type: "simple", storageClassType: "boolean", }, pin: { value: cdktf.stringToHclTerraform(struct.pin), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } export class DataIgnitionLuksClevisCustomOutputReference extends cdktf.ComplexObject { isEmptyObject = false; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource, terraformAttribute) { super(terraformResource, terraformAttribute, false, 0); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._config !== undefined) { hasAnyValues = true; internalValueResult.config = this._config; } if (this._needsNetwork !== undefined) { hasAnyValues = true; internalValueResult.needsNetwork = this._needsNetwork; } if (this._pin !== undefined) { hasAnyValues = true; internalValueResult.pin = this._pin; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._config = undefined; this._needsNetwork = undefined; this._pin = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._config = value.config; this._needsNetwork = value.needsNetwork; this._pin = value.pin; } } // config - computed: false, optional: true, required: false _config; get config() { return this.getStringAttribute('config'); } set config(value) { this._config = value; } resetConfig() { this._config = undefined; } // Temporarily expose input value. Use with caution. get configInput() { return this._config; } // needs_network - computed: false, optional: true, required: false _needsNetwork; get needsNetwork() { return this.getBooleanAttribute('needs_network'); } set needsNetwork(value) { this._needsNetwork = value; } resetNeedsNetwork() { this._needsNetwork = undefined; } // Temporarily expose input value. Use with caution. get needsNetworkInput() { return this._needsNetwork; } // pin - computed: false, optional: true, required: false _pin; get pin() { return this.getStringAttribute('pin'); } set pin(value) { this._pin = value; } resetPin() { this._pin = undefined; } // Temporarily expose input value. Use with caution. get pinInput() { return this._pin; } } export function dataIgnitionLuksClevisTangToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { advertisement: cdktf.stringToTerraform(struct.advertisement), thumbprint: cdktf.stringToTerraform(struct.thumbprint), url: cdktf.stringToTerraform(struct.url), }; } export function dataIgnitionLuksClevisTangToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { advertisement: { value: cdktf.stringToHclTerraform(struct.advertisement), isBlock: false, type: "simple", storageClassType: "string", }, thumbprint: { value: cdktf.stringToHclTerraform(struct.thumbprint), isBlock: false, type: "simple", storageClassType: "string", }, url: { value: cdktf.stringToHclTerraform(struct.url), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } export class DataIgnitionLuksClevisTangOutputReference extends cdktf.ComplexObject { isEmptyObject = false; resolvableValue; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) { super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._advertisement !== undefined) { hasAnyValues = true; internalValueResult.advertisement = this._advertisement; } if (this._thumbprint !== undefined) { hasAnyValues = true; internalValueResult.thumbprint = this._thumbprint; } if (this._url !== undefined) { hasAnyValues = true; internalValueResult.url = this._url; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._advertisement = undefined; this._thumbprint = undefined; this._url = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; this._advertisement = value.advertisement; this._thumbprint = value.thumbprint; this._url = value.url; } } // advertisement - computed: false, optional: true, required: false _advertisement; get advertisement() { return this.getStringAttribute('advertisement'); } set advertisement(value) { this._advertisement = value; } resetAdvertisement() { this._advertisement = undefined; } // Temporarily expose input value. Use with caution. get advertisementInput() { return this._advertisement; } // thumbprint - computed: false, optional: true, required: false _thumbprint; get thumbprint() { return this.getStringAttribute('thumbprint'); } set thumbprint(value) { this._thumbprint = value; } resetThumbprint() { this._thumbprint = undefined; } // Temporarily expose input value. Use with caution. get thumbprintInput() { return this._thumbprint; } // url - computed: false, optional: false, required: true _url; get url() { return this.getStringAttribute('url'); } set url(value) { this._url = value; } // Temporarily expose input value. Use with caution. get urlInput() { return this._url; } } export class DataIgnitionLuksClevisTangList extends cdktf.ComplexList { terraformResource; terraformAttribute; wrapsSet; internalValue; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource, terraformAttribute, wrapsSet) { super(terraformResource, terraformAttribute, wrapsSet); this.terraformResource = terraformResource; this.terraformAttribute = terraformAttribute; this.wrapsSet = wrapsSet; } /** * @param index the index of the item to return */ get(index) { return new DataIgnitionLuksClevisTangOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } export function dataIgnitionLuksClevisToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { threshold: cdktf.numberToTerraform(struct.threshold), tpm2: cdktf.booleanToTerraform(struct.tpm2), custom: dataIgnitionLuksClevisCustomToTerraform(struct.custom), tang: cdktf.listMapper(dataIgnitionLuksClevisTangToTerraform, true)(struct.tang), }; } export function dataIgnitionLuksClevisToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { threshold: { value: cdktf.numberToHclTerraform(struct.threshold), isBlock: false, type: "simple", storageClassType: "number", }, tpm2: { value: cdktf.booleanToHclTerraform(struct.tpm2), isBlock: false, type: "simple", storageClassType: "boolean", }, custom: { value: dataIgnitionLuksClevisCustomToHclTerraform(struct.custom), isBlock: true, type: "list", storageClassType: "DataIgnitionLuksClevisCustomList", }, tang: { value: cdktf.listMapperHcl(dataIgnitionLuksClevisTangToHclTerraform, true)(struct.tang), isBlock: true, type: "list", storageClassType: "DataIgnitionLuksClevisTangList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } export class DataIgnitionLuksClevisOutputReference extends cdktf.ComplexObject { isEmptyObject = false; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource, terraformAttribute) { super(terraformResource, terraformAttribute, false, 0); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._threshold !== undefined) { hasAnyValues = true; internalValueResult.threshold = this._threshold; } if (this._tpm2 !== undefined) { hasAnyValues = true; internalValueResult.tpm2 = this._tpm2; } if (this._custom?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.custom = this._custom?.internalValue; } if (this._tang?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.tang = this._tang?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._threshold = undefined; this._tpm2 = undefined; this._custom.internalValue = undefined; this._tang.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._threshold = value.threshold; this._tpm2 = value.tpm2; this._custom.internalValue = value.custom; this._tang.internalValue = value.tang; } } // threshold - computed: false, optional: true, required: false _threshold; get threshold() { return this.getNumberAttribute('threshold'); } set threshold(value) { this._threshold = value; } resetThreshold() { this._threshold = undefined; } // Temporarily expose input value. Use with caution. get thresholdInput() { return this._threshold; } // tpm2 - computed: false, optional: true, required: false _tpm2; get tpm2() { return this.getBooleanAttribute('tpm2'); } set tpm2(value) { this._tpm2 = value; } resetTpm2() { this._tpm2 = undefined; } // Temporarily expose input value. Use with caution. get tpm2Input() { return this._tpm2; } // custom - computed: false, optional: true, required: false _custom = new DataIgnitionLuksClevisCustomOutputReference(this, "custom"); get custom() { return this._custom; } putCustom(value) { this._custom.internalValue = value; } resetCustom() { this._custom.internalValue = undefined; } // Temporarily expose input value. Use with caution. get customInput() { return this._custom.internalValue; } // tang - computed: false, optional: true, required: false _tang = new DataIgnitionLuksClevisTangList(this, "tang", false); get tang() { return this._tang; } putTang(value) { this._tang.internalValue = value; } resetTang() { this._tang.internalValue = undefined; } // Temporarily expose input value. Use with caution. get tangInput() { return this._tang.internalValue; } } export function dataIgnitionLuksKeyFileHttpHeadersToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { name: cdktf.stringToTerraform(struct.name), value: cdktf.stringToTerraform(struct.value), }; } export function dataIgnitionLuksKeyFileHttpHeadersToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, value: { value: cdktf.stringToHclTerraform(struct.value), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } export class DataIgnitionLuksKeyFileHttpHeadersOutputReference extends cdktf.ComplexObject { isEmptyObject = false; resolvableValue; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) { super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } if (this._value !== undefined) { hasAnyValues = true; internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._name = undefined; this._value = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; this._name = value.name; this._value = value.value; } } // name - computed: false, optional: false, required: true _name; get name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } // value - computed: false, optional: false, required: true _value; get value() { return this.getStringAttribute('value'); } set value(value) { this._value = value; } // Temporarily expose input value. Use with caution. get valueInput() { return this._value; } } export class DataIgnitionLuksKeyFileHttpHeadersList extends cdktf.ComplexList { terraformResource; terraformAttribute; wrapsSet; internalValue; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource, terraformAttribute, wrapsSet) { super(terraformResource, terraformAttribute, wrapsSet); this.terraformResource = terraformResource; this.terraformAttribute = terraformAttribute; this.wrapsSet = wrapsSet; } /** * @param index the index of the item to return */ get(index) { return new DataIgnitionLuksKeyFileHttpHeadersOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } export function dataIgnitionLuksKeyFileToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { compression: cdktf.stringToTerraform(struct.compression), source: cdktf.stringToTerraform(struct.source), verification: cdktf.stringToTerraform(struct.verification), http_headers: cdktf.listMapper(dataIgnitionLuksKeyFileHttpHeadersToTerraform, true)(struct.httpHeaders), }; } export function dataIgnitionLuksKeyFileToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { compression: { value: cdktf.stringToHclTerraform(struct.compression), isBlock: false, type: "simple", storageClassType: "string", }, source: { value: cdktf.stringToHclTerraform(struct.source), isBlock: false, type: "simple", storageClassType: "string", }, verification: { value: cdktf.stringToHclTerraform(struct.verification), isBlock: false, type: "simple", storageClassType: "string", }, http_headers: { value: cdktf.listMapperHcl(dataIgnitionLuksKeyFileHttpHeadersToHclTerraform, true)(struct.httpHeaders), isBlock: true, type: "list", storageClassType: "DataIgnitionLuksKeyFileHttpHeadersList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } export class DataIgnitionLuksKeyFileOutputReference extends cdktf.ComplexObject { isEmptyObject = false; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource, terraformAttribute) { super(terraformResource, terraformAttribute, false, 0); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._compression !== undefined) { hasAnyValues = true; internalValueResult.compression = this._compression; } if (this._source !== undefined) { hasAnyValues = true; internalValueResult.source = this._source; } if (this._verification !== undefined) { hasAnyValues = true; internalValueResult.verification = this._verification; } if (this._httpHeaders?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.httpHeaders = this._httpHeaders?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._compression = undefined; this._source = undefined; this._verification = undefined; this._httpHeaders.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._compression = value.compression; this._source = value.source; this._verification = value.verification; this._httpHeaders.internalValue = value.httpHeaders; } } // compression - computed: false, optional: true, required: false _compression; get compression() { return this.getStringAttribute('compression'); } set compression(value) { this._compression = value; } resetCompression() { this._compression = undefined; } // Temporarily expose input value. Use with caution. get compressionInput() { return this._compression; } // source - computed: false, optional: false, required: true _source; get source() { return this.getStringAttribute('source'); } set source(value) { this._source = value; } // Temporarily expose input value. Use with caution. get sourceInput() { return this._source; } // verification - computed: false, optional: true, required: false _verification; get verification() { return this.getStringAttribute('verification'); } set verification(value) { this._verification = value; } resetVerification() { this._verification = undefined; } // Temporarily expose input value. Use with caution. get verificationInput() { return this._verification; } // http_headers - computed: false, optional: true, required: false _httpHeaders = new DataIgnitionLuksKeyFileHttpHeadersList(this, "http_headers", false); get httpHeaders() { return this._httpHeaders; } putHttpHeaders(value) { this._httpHeaders.internalValue = value; } resetHttpHeaders() { this._httpHeaders.internalValue = undefined; } // Temporarily expose input value. Use with caution. get httpHeadersInput() { return this._httpHeaders.internalValue; } } /** * Represents a {@link https://registry.terraform.io/providers/community-terraform-providers/ignition/2.5.1/docs/data-sources/luks ignition_luks} */ export class DataIgnitionLuks extends cdktf.TerraformDataSource { // ================= // STATIC PROPERTIES // ================= static tfResourceType = "ignition_luks"; // ============== // STATIC Methods // ============== /** * Generates CDKTF code for importing a DataIgnitionLuks resource upon running "cdktf plan <stack-name>" * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the DataIgnitionLuks to import * @param importFromId The id of the existing DataIgnitionLuks that should be imported. Refer to the {@link https://registry.terraform.io/providers/community-terraform-providers/ignition/2.5.1/docs/data-sources/luks#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the DataIgnitionLuks to import is found */ static generateConfigForImport(scope, importToId, importFromId, provider) { return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "ignition_luks", importId: importFromId, provider }); } // =========== // INITIALIZER // =========== /** * Create a new {@link https://registry.terraform.io/providers/community-terraform-providers/ignition/2.5.1/docs/data-sources/luks ignition_luks} Data Source * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options DataIgnitionLuksConfig */ constructor(scope, id, config) { super(scope, id, { terraformResourceType: 'ignition_luks', terraformGeneratorMetadata: { providerName: 'ignition', providerVersion: '2.5.1', providerVersionConstraint: '2.5.1' }, provider: config.provider, dependsOn: config.dependsOn, count: config.count, lifecycle: config.lifecycle, provisioners: config.provisioners, connection: config.connection, forEach: config.forEach }); this._device = config.device; this._discard = config.discard; this._id = config.id; this._label = config.label; this._name = config.name; this._openOptions = config.openOptions; this._options = config.options; this._uuid = config.uuid; this._wipeVolume = config.wipeVolume; this._clevis.internalValue = config.clevis; this._keyFile.internalValue = config.keyFile; } // ========== // ATTRIBUTES // ========== // device - computed: false, optional: false, required: true _device; get device() { return this.getStringAttribute('device'); } set device(value) { this._device = value; } // Temporarily expose input value. Use with caution. get deviceInput() { return this._device; } // discard - computed: false, optional: true, required: false _discard; get discard() { return this.getBooleanAttribute('discard'); } set discard(value) { this._discard = value; } resetDiscard() { this._discard = undefined; } // Temporarily expose input value. Use with caution. get discardInput() { return this._discard; } // id - computed: true, optional: true, required: false _id; get id() { return this.getStringAttribute('id'); } set id(value) { this._id = value; } resetId() { this._id = undefined; } // Temporarily expose input value. Use with caution. get idInput() { return this._id; } // label - computed: false, optional: true, required: false _label; get label() { return this.getStringAttribute('label'); } set label(value) { this._label = value; } resetLabel() { this._label = undefined; } // Temporarily expose input value. Use with caution. get labelInput() { return this._label; } // name - computed: false, optional: false, required: true _name; get name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } // open_options - computed: false, optional: true, required: false _openOptions; get openOptions() { return this.getListAttribute('open_options'); } set openOptions(value) { this._openOptions = value; } resetOpenOptions() { this._openOptions = undefined; } // Temporarily expose input value. Use with caution. get openOptionsInput() { return this._openOptions; } // options - computed: false, optional: true, required: false _options; get options() { return this.getListAttribute('options'); } set options(value) { this._options = value; } resetOptions() { this._options = undefined; } // Temporarily expose input value. Use with caution. get optionsInput() { return this._options; } // rendered - computed: true, optional: false, required: false get rendered() { return this.getStringAttribute('rendered'); } // uuid - computed: false, optional: true, required: false _uuid; get uuid() { return this.getStringAttribute('uuid'); } set uuid(value) { this._uuid = value; } resetUuid() { this._uuid = undefined; } // Temporarily expose input value. Use with caution. get uuidInput() { return this._uuid; } // wipe_volume - computed: false, optional: true, required: false _wipeVolume; get wipeVolume() { return this.getBooleanAttribute('wipe_volume'); } set wipeVolume(value) { this._wipeVolume = value; } resetWipeVolume() { this._wipeVolume = undefined; } // Temporarily expose input value. Use with caution. get wipeVolumeInput() { return this._wipeVolume; } // clevis - computed: false, optional: true, required: false _clevis = new DataIgnitionLuksClevisOutputReference(this, "clevis"); get clevis() { return this._clevis; } putClevis(value) { this._clevis.internalValue = value; } resetClevis() { this._clevis.internalValue = undefined; } // Temporarily expose input value. Use with caution. get clevisInput() { return this._clevis.internalValue; } // key_file - computed: false, optional: true, required: false _keyFile = new DataIgnitionLuksKeyFileOutputReference(this, "key_file"); get keyFile() { return this._keyFile; } putKeyFile(value) { this._keyFile.internalValue = value; } resetKeyFile() { this._keyFile.internalValue = undefined; } // Temporarily expose input value. Use with caution. get keyFileInput() { return this._keyFile.internalValue; } // ========= // SYNTHESIS // ========= synthesizeAttributes() { return { device: cdktf.stringToTerraform(this._device), discard: cdktf.booleanToTerraform(this._discard), id: cdktf.stringToTerraform(this._id), label: cdktf.stringToTerraform(this._label), name: cdktf.stringToTerraform(this._name), open_options: cdktf.listMapper(cdktf.stringToTerraform, false)(this._openOptions), options: cdktf.listMapper(cdktf.stringToTerraform, false)(this._options), uuid: cdktf.stringToTerraform(this._uuid), wipe_volume: cdktf.booleanToTerraform(this._wipeVolume), clevis: dataIgnitionLuksClevisToTerraform(this._clevis.internalValue), key_file: dataIgnitionLuksKeyFileToTerraform(this._keyFile.internalValue), }; } synthesizeHclAttributes() { const attrs = { device: { value: cdktf.stringToHclTerraform(this._device), isBlock: false, type: "simple", storageClassType: "string", }, discard: { value: cdktf.booleanToHclTerraform(this._discard), isBlock: false, type: "simple", storageClassType: "boolean", }, id: { value: cdktf.stringToHclTerraform(this._id), isBlock: false, type: "simple", storageClassType: "string", }, label: { value: cdktf.stringToHclTerraform(this._label), isBlock: false, type: "simple", storageClassType: "string", }, name: { value: cdktf.stringToHclTerraform(this._name), isBlock: false, type: "simple", storageClassType: "string", }, open_options: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._openOptions), isBlock: false, type: "list", storageClassType: "stringList", }, options: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._options), isBlock: false, type: "list", storageClassType: "stringList", }, uuid: { value: cdktf.stringToHclTerraform(this._uuid), isBlock: false, type: "simple", storageClassType: "string", }, wipe_volume: { value: cdktf.booleanToHclTerraform(this._wipeVolume), isBlock: false, type: "simple", storageClassType: "boolean", }, clevis: { value: dataIgnitionLuksClevisToHclTerraform(this._clevis.internalValue), isBlock: true, type: "list", storageClassType: "DataIgnitionLuksClevisList", }, key_file: { value: dataIgnitionLuksKeyFileToHclTerraform(this._keyFile.internalValue), isBlock: true, type: "list", storageClassType: "DataIgnitionLuksKeyFileList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } }