@cdktf/provider-aws
Version:
Prebuilt aws Provider for Terraform CDK (cdktf)
1,073 lines (1,072 loc) • 841 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12;
Object.defineProperty(exports, "__esModule", { value: true });
exports.LaunchTemplate = exports.LaunchTemplateTagSpecificationsList = exports.LaunchTemplateTagSpecificationsOutputReference = exports.LaunchTemplatePrivateDnsNameOptionsOutputReference = exports.LaunchTemplatePlacementOutputReference = exports.LaunchTemplateNetworkInterfacesList = exports.LaunchTemplateNetworkInterfacesOutputReference = exports.LaunchTemplateNetworkInterfacesEnaSrdSpecificationOutputReference = exports.LaunchTemplateNetworkInterfacesEnaSrdSpecificationEnaSrdUdpSpecificationOutputReference = exports.LaunchTemplateNetworkInterfacesConnectionTrackingSpecificationOutputReference = exports.LaunchTemplateMonitoringOutputReference = exports.LaunchTemplateMetadataOptionsOutputReference = exports.LaunchTemplateMaintenanceOptionsOutputReference = exports.LaunchTemplateLicenseSpecificationList = exports.LaunchTemplateLicenseSpecificationOutputReference = exports.LaunchTemplateInstanceRequirementsOutputReference = exports.LaunchTemplateInstanceRequirementsVcpuCountOutputReference = exports.LaunchTemplateInstanceRequirementsTotalLocalStorageGbOutputReference = exports.LaunchTemplateInstanceRequirementsNetworkInterfaceCountOutputReference = exports.LaunchTemplateInstanceRequirementsNetworkBandwidthGbpsOutputReference = exports.LaunchTemplateInstanceRequirementsMemoryMibOutputReference = exports.LaunchTemplateInstanceRequirementsMemoryGibPerVcpuOutputReference = exports.LaunchTemplateInstanceRequirementsBaselineEbsBandwidthMbpsOutputReference = exports.LaunchTemplateInstanceRequirementsAcceleratorTotalMemoryMibOutputReference = exports.LaunchTemplateInstanceRequirementsAcceleratorCountOutputReference = exports.LaunchTemplateInstanceMarketOptionsOutputReference = exports.LaunchTemplateInstanceMarketOptionsSpotOptionsOutputReference = exports.LaunchTemplateIamInstanceProfileOutputReference = exports.LaunchTemplateHibernationOptionsOutputReference = exports.LaunchTemplateEnclaveOptionsOutputReference = exports.LaunchTemplateCreditSpecificationOutputReference = exports.LaunchTemplateCpuOptionsOutputReference = exports.LaunchTemplateCapacityReservationSpecificationOutputReference = exports.LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutputReference = exports.LaunchTemplateBlockDeviceMappingsList = exports.LaunchTemplateBlockDeviceMappingsOutputReference = exports.LaunchTemplateBlockDeviceMappingsEbsOutputReference = void 0;
exports.launchTemplateBlockDeviceMappingsEbsToTerraform = launchTemplateBlockDeviceMappingsEbsToTerraform;
exports.launchTemplateBlockDeviceMappingsEbsToHclTerraform = launchTemplateBlockDeviceMappingsEbsToHclTerraform;
exports.launchTemplateBlockDeviceMappingsToTerraform = launchTemplateBlockDeviceMappingsToTerraform;
exports.launchTemplateBlockDeviceMappingsToHclTerraform = launchTemplateBlockDeviceMappingsToHclTerraform;
exports.launchTemplateCapacityReservationSpecificationCapacityReservationTargetToTerraform = launchTemplateCapacityReservationSpecificationCapacityReservationTargetToTerraform;
exports.launchTemplateCapacityReservationSpecificationCapacityReservationTargetToHclTerraform = launchTemplateCapacityReservationSpecificationCapacityReservationTargetToHclTerraform;
exports.launchTemplateCapacityReservationSpecificationToTerraform = launchTemplateCapacityReservationSpecificationToTerraform;
exports.launchTemplateCapacityReservationSpecificationToHclTerraform = launchTemplateCapacityReservationSpecificationToHclTerraform;
exports.launchTemplateCpuOptionsToTerraform = launchTemplateCpuOptionsToTerraform;
exports.launchTemplateCpuOptionsToHclTerraform = launchTemplateCpuOptionsToHclTerraform;
exports.launchTemplateCreditSpecificationToTerraform = launchTemplateCreditSpecificationToTerraform;
exports.launchTemplateCreditSpecificationToHclTerraform = launchTemplateCreditSpecificationToHclTerraform;
exports.launchTemplateEnclaveOptionsToTerraform = launchTemplateEnclaveOptionsToTerraform;
exports.launchTemplateEnclaveOptionsToHclTerraform = launchTemplateEnclaveOptionsToHclTerraform;
exports.launchTemplateHibernationOptionsToTerraform = launchTemplateHibernationOptionsToTerraform;
exports.launchTemplateHibernationOptionsToHclTerraform = launchTemplateHibernationOptionsToHclTerraform;
exports.launchTemplateIamInstanceProfileToTerraform = launchTemplateIamInstanceProfileToTerraform;
exports.launchTemplateIamInstanceProfileToHclTerraform = launchTemplateIamInstanceProfileToHclTerraform;
exports.launchTemplateInstanceMarketOptionsSpotOptionsToTerraform = launchTemplateInstanceMarketOptionsSpotOptionsToTerraform;
exports.launchTemplateInstanceMarketOptionsSpotOptionsToHclTerraform = launchTemplateInstanceMarketOptionsSpotOptionsToHclTerraform;
exports.launchTemplateInstanceMarketOptionsToTerraform = launchTemplateInstanceMarketOptionsToTerraform;
exports.launchTemplateInstanceMarketOptionsToHclTerraform = launchTemplateInstanceMarketOptionsToHclTerraform;
exports.launchTemplateInstanceRequirementsAcceleratorCountToTerraform = launchTemplateInstanceRequirementsAcceleratorCountToTerraform;
exports.launchTemplateInstanceRequirementsAcceleratorCountToHclTerraform = launchTemplateInstanceRequirementsAcceleratorCountToHclTerraform;
exports.launchTemplateInstanceRequirementsAcceleratorTotalMemoryMibToTerraform = launchTemplateInstanceRequirementsAcceleratorTotalMemoryMibToTerraform;
exports.launchTemplateInstanceRequirementsAcceleratorTotalMemoryMibToHclTerraform = launchTemplateInstanceRequirementsAcceleratorTotalMemoryMibToHclTerraform;
exports.launchTemplateInstanceRequirementsBaselineEbsBandwidthMbpsToTerraform = launchTemplateInstanceRequirementsBaselineEbsBandwidthMbpsToTerraform;
exports.launchTemplateInstanceRequirementsBaselineEbsBandwidthMbpsToHclTerraform = launchTemplateInstanceRequirementsBaselineEbsBandwidthMbpsToHclTerraform;
exports.launchTemplateInstanceRequirementsMemoryGibPerVcpuToTerraform = launchTemplateInstanceRequirementsMemoryGibPerVcpuToTerraform;
exports.launchTemplateInstanceRequirementsMemoryGibPerVcpuToHclTerraform = launchTemplateInstanceRequirementsMemoryGibPerVcpuToHclTerraform;
exports.launchTemplateInstanceRequirementsMemoryMibToTerraform = launchTemplateInstanceRequirementsMemoryMibToTerraform;
exports.launchTemplateInstanceRequirementsMemoryMibToHclTerraform = launchTemplateInstanceRequirementsMemoryMibToHclTerraform;
exports.launchTemplateInstanceRequirementsNetworkBandwidthGbpsToTerraform = launchTemplateInstanceRequirementsNetworkBandwidthGbpsToTerraform;
exports.launchTemplateInstanceRequirementsNetworkBandwidthGbpsToHclTerraform = launchTemplateInstanceRequirementsNetworkBandwidthGbpsToHclTerraform;
exports.launchTemplateInstanceRequirementsNetworkInterfaceCountToTerraform = launchTemplateInstanceRequirementsNetworkInterfaceCountToTerraform;
exports.launchTemplateInstanceRequirementsNetworkInterfaceCountToHclTerraform = launchTemplateInstanceRequirementsNetworkInterfaceCountToHclTerraform;
exports.launchTemplateInstanceRequirementsTotalLocalStorageGbToTerraform = launchTemplateInstanceRequirementsTotalLocalStorageGbToTerraform;
exports.launchTemplateInstanceRequirementsTotalLocalStorageGbToHclTerraform = launchTemplateInstanceRequirementsTotalLocalStorageGbToHclTerraform;
exports.launchTemplateInstanceRequirementsVcpuCountToTerraform = launchTemplateInstanceRequirementsVcpuCountToTerraform;
exports.launchTemplateInstanceRequirementsVcpuCountToHclTerraform = launchTemplateInstanceRequirementsVcpuCountToHclTerraform;
exports.launchTemplateInstanceRequirementsToTerraform = launchTemplateInstanceRequirementsToTerraform;
exports.launchTemplateInstanceRequirementsToHclTerraform = launchTemplateInstanceRequirementsToHclTerraform;
exports.launchTemplateLicenseSpecificationToTerraform = launchTemplateLicenseSpecificationToTerraform;
exports.launchTemplateLicenseSpecificationToHclTerraform = launchTemplateLicenseSpecificationToHclTerraform;
exports.launchTemplateMaintenanceOptionsToTerraform = launchTemplateMaintenanceOptionsToTerraform;
exports.launchTemplateMaintenanceOptionsToHclTerraform = launchTemplateMaintenanceOptionsToHclTerraform;
exports.launchTemplateMetadataOptionsToTerraform = launchTemplateMetadataOptionsToTerraform;
exports.launchTemplateMetadataOptionsToHclTerraform = launchTemplateMetadataOptionsToHclTerraform;
exports.launchTemplateMonitoringToTerraform = launchTemplateMonitoringToTerraform;
exports.launchTemplateMonitoringToHclTerraform = launchTemplateMonitoringToHclTerraform;
exports.launchTemplateNetworkInterfacesConnectionTrackingSpecificationToTerraform = launchTemplateNetworkInterfacesConnectionTrackingSpecificationToTerraform;
exports.launchTemplateNetworkInterfacesConnectionTrackingSpecificationToHclTerraform = launchTemplateNetworkInterfacesConnectionTrackingSpecificationToHclTerraform;
exports.launchTemplateNetworkInterfacesEnaSrdSpecificationEnaSrdUdpSpecificationToTerraform = launchTemplateNetworkInterfacesEnaSrdSpecificationEnaSrdUdpSpecificationToTerraform;
exports.launchTemplateNetworkInterfacesEnaSrdSpecificationEnaSrdUdpSpecificationToHclTerraform = launchTemplateNetworkInterfacesEnaSrdSpecificationEnaSrdUdpSpecificationToHclTerraform;
exports.launchTemplateNetworkInterfacesEnaSrdSpecificationToTerraform = launchTemplateNetworkInterfacesEnaSrdSpecificationToTerraform;
exports.launchTemplateNetworkInterfacesEnaSrdSpecificationToHclTerraform = launchTemplateNetworkInterfacesEnaSrdSpecificationToHclTerraform;
exports.launchTemplateNetworkInterfacesToTerraform = launchTemplateNetworkInterfacesToTerraform;
exports.launchTemplateNetworkInterfacesToHclTerraform = launchTemplateNetworkInterfacesToHclTerraform;
exports.launchTemplatePlacementToTerraform = launchTemplatePlacementToTerraform;
exports.launchTemplatePlacementToHclTerraform = launchTemplatePlacementToHclTerraform;
exports.launchTemplatePrivateDnsNameOptionsToTerraform = launchTemplatePrivateDnsNameOptionsToTerraform;
exports.launchTemplatePrivateDnsNameOptionsToHclTerraform = launchTemplatePrivateDnsNameOptionsToHclTerraform;
exports.launchTemplateTagSpecificationsToTerraform = launchTemplateTagSpecificationsToTerraform;
exports.launchTemplateTagSpecificationsToHclTerraform = launchTemplateTagSpecificationsToHclTerraform;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function launchTemplateBlockDeviceMappingsEbsToTerraform(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 {
delete_on_termination: cdktf.stringToTerraform(struct.deleteOnTermination),
encrypted: cdktf.stringToTerraform(struct.encrypted),
iops: cdktf.numberToTerraform(struct.iops),
kms_key_id: cdktf.stringToTerraform(struct.kmsKeyId),
snapshot_id: cdktf.stringToTerraform(struct.snapshotId),
throughput: cdktf.numberToTerraform(struct.throughput),
volume_initialization_rate: cdktf.numberToTerraform(struct.volumeInitializationRate),
volume_size: cdktf.numberToTerraform(struct.volumeSize),
volume_type: cdktf.stringToTerraform(struct.volumeType),
};
}
function launchTemplateBlockDeviceMappingsEbsToHclTerraform(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 = {
delete_on_termination: {
value: cdktf.stringToHclTerraform(struct.deleteOnTermination),
isBlock: false,
type: "simple",
storageClassType: "string",
},
encrypted: {
value: cdktf.stringToHclTerraform(struct.encrypted),
isBlock: false,
type: "simple",
storageClassType: "string",
},
iops: {
value: cdktf.numberToHclTerraform(struct.iops),
isBlock: false,
type: "simple",
storageClassType: "number",
},
kms_key_id: {
value: cdktf.stringToHclTerraform(struct.kmsKeyId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
snapshot_id: {
value: cdktf.stringToHclTerraform(struct.snapshotId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
throughput: {
value: cdktf.numberToHclTerraform(struct.throughput),
isBlock: false,
type: "simple",
storageClassType: "number",
},
volume_initialization_rate: {
value: cdktf.numberToHclTerraform(struct.volumeInitializationRate),
isBlock: false,
type: "simple",
storageClassType: "number",
},
volume_size: {
value: cdktf.numberToHclTerraform(struct.volumeSize),
isBlock: false,
type: "simple",
storageClassType: "number",
},
volume_type: {
value: cdktf.stringToHclTerraform(struct.volumeType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class LaunchTemplateBlockDeviceMappingsEbsOutputReference extends cdktf.ComplexObject {
/**
* @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);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._deleteOnTermination !== undefined) {
hasAnyValues = true;
internalValueResult.deleteOnTermination = this._deleteOnTermination;
}
if (this._encrypted !== undefined) {
hasAnyValues = true;
internalValueResult.encrypted = this._encrypted;
}
if (this._iops !== undefined) {
hasAnyValues = true;
internalValueResult.iops = this._iops;
}
if (this._kmsKeyId !== undefined) {
hasAnyValues = true;
internalValueResult.kmsKeyId = this._kmsKeyId;
}
if (this._snapshotId !== undefined) {
hasAnyValues = true;
internalValueResult.snapshotId = this._snapshotId;
}
if (this._throughput !== undefined) {
hasAnyValues = true;
internalValueResult.throughput = this._throughput;
}
if (this._volumeInitializationRate !== undefined) {
hasAnyValues = true;
internalValueResult.volumeInitializationRate = this._volumeInitializationRate;
}
if (this._volumeSize !== undefined) {
hasAnyValues = true;
internalValueResult.volumeSize = this._volumeSize;
}
if (this._volumeType !== undefined) {
hasAnyValues = true;
internalValueResult.volumeType = this._volumeType;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._deleteOnTermination = undefined;
this._encrypted = undefined;
this._iops = undefined;
this._kmsKeyId = undefined;
this._snapshotId = undefined;
this._throughput = undefined;
this._volumeInitializationRate = undefined;
this._volumeSize = undefined;
this._volumeType = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._deleteOnTermination = value.deleteOnTermination;
this._encrypted = value.encrypted;
this._iops = value.iops;
this._kmsKeyId = value.kmsKeyId;
this._snapshotId = value.snapshotId;
this._throughput = value.throughput;
this._volumeInitializationRate = value.volumeInitializationRate;
this._volumeSize = value.volumeSize;
this._volumeType = value.volumeType;
}
}
get deleteOnTermination() {
return this.getStringAttribute('delete_on_termination');
}
set deleteOnTermination(value) {
this._deleteOnTermination = value;
}
resetDeleteOnTermination() {
this._deleteOnTermination = undefined;
}
// Temporarily expose input value. Use with caution.
get deleteOnTerminationInput() {
return this._deleteOnTermination;
}
get encrypted() {
return this.getStringAttribute('encrypted');
}
set encrypted(value) {
this._encrypted = value;
}
resetEncrypted() {
this._encrypted = undefined;
}
// Temporarily expose input value. Use with caution.
get encryptedInput() {
return this._encrypted;
}
get iops() {
return this.getNumberAttribute('iops');
}
set iops(value) {
this._iops = value;
}
resetIops() {
this._iops = undefined;
}
// Temporarily expose input value. Use with caution.
get iopsInput() {
return this._iops;
}
get kmsKeyId() {
return this.getStringAttribute('kms_key_id');
}
set kmsKeyId(value) {
this._kmsKeyId = value;
}
resetKmsKeyId() {
this._kmsKeyId = undefined;
}
// Temporarily expose input value. Use with caution.
get kmsKeyIdInput() {
return this._kmsKeyId;
}
get snapshotId() {
return this.getStringAttribute('snapshot_id');
}
set snapshotId(value) {
this._snapshotId = value;
}
resetSnapshotId() {
this._snapshotId = undefined;
}
// Temporarily expose input value. Use with caution.
get snapshotIdInput() {
return this._snapshotId;
}
get throughput() {
return this.getNumberAttribute('throughput');
}
set throughput(value) {
this._throughput = value;
}
resetThroughput() {
this._throughput = undefined;
}
// Temporarily expose input value. Use with caution.
get throughputInput() {
return this._throughput;
}
get volumeInitializationRate() {
return this.getNumberAttribute('volume_initialization_rate');
}
set volumeInitializationRate(value) {
this._volumeInitializationRate = value;
}
resetVolumeInitializationRate() {
this._volumeInitializationRate = undefined;
}
// Temporarily expose input value. Use with caution.
get volumeInitializationRateInput() {
return this._volumeInitializationRate;
}
get volumeSize() {
return this.getNumberAttribute('volume_size');
}
set volumeSize(value) {
this._volumeSize = value;
}
resetVolumeSize() {
this._volumeSize = undefined;
}
// Temporarily expose input value. Use with caution.
get volumeSizeInput() {
return this._volumeSize;
}
get volumeType() {
return this.getStringAttribute('volume_type');
}
set volumeType(value) {
this._volumeType = value;
}
resetVolumeType() {
this._volumeType = undefined;
}
// Temporarily expose input value. Use with caution.
get volumeTypeInput() {
return this._volumeType;
}
}
exports.LaunchTemplateBlockDeviceMappingsEbsOutputReference = LaunchTemplateBlockDeviceMappingsEbsOutputReference;
_a = JSII_RTTI_SYMBOL_1;
LaunchTemplateBlockDeviceMappingsEbsOutputReference[_a] = { fqn: "@cdktf/provider-aws.launchTemplate.LaunchTemplateBlockDeviceMappingsEbsOutputReference", version: "21.22.1" };
function launchTemplateBlockDeviceMappingsToTerraform(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 {
device_name: cdktf.stringToTerraform(struct.deviceName),
no_device: cdktf.stringToTerraform(struct.noDevice),
virtual_name: cdktf.stringToTerraform(struct.virtualName),
ebs: launchTemplateBlockDeviceMappingsEbsToTerraform(struct.ebs),
};
}
function launchTemplateBlockDeviceMappingsToHclTerraform(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 = {
device_name: {
value: cdktf.stringToHclTerraform(struct.deviceName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
no_device: {
value: cdktf.stringToHclTerraform(struct.noDevice),
isBlock: false,
type: "simple",
storageClassType: "string",
},
virtual_name: {
value: cdktf.stringToHclTerraform(struct.virtualName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
ebs: {
value: launchTemplateBlockDeviceMappingsEbsToHclTerraform(struct.ebs),
isBlock: true,
type: "list",
storageClassType: "LaunchTemplateBlockDeviceMappingsEbsList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class LaunchTemplateBlockDeviceMappingsOutputReference extends cdktf.ComplexObject {
/**
* @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);
this.isEmptyObject = false;
// ebs - computed: false, optional: true, required: false
this._ebs = new LaunchTemplateBlockDeviceMappingsEbsOutputReference(this, "ebs");
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._deviceName !== undefined) {
hasAnyValues = true;
internalValueResult.deviceName = this._deviceName;
}
if (this._noDevice !== undefined) {
hasAnyValues = true;
internalValueResult.noDevice = this._noDevice;
}
if (this._virtualName !== undefined) {
hasAnyValues = true;
internalValueResult.virtualName = this._virtualName;
}
if (this._ebs?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.ebs = this._ebs?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._deviceName = undefined;
this._noDevice = undefined;
this._virtualName = undefined;
this._ebs.internalValue = 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._deviceName = value.deviceName;
this._noDevice = value.noDevice;
this._virtualName = value.virtualName;
this._ebs.internalValue = value.ebs;
}
}
get deviceName() {
return this.getStringAttribute('device_name');
}
set deviceName(value) {
this._deviceName = value;
}
resetDeviceName() {
this._deviceName = undefined;
}
// Temporarily expose input value. Use with caution.
get deviceNameInput() {
return this._deviceName;
}
get noDevice() {
return this.getStringAttribute('no_device');
}
set noDevice(value) {
this._noDevice = value;
}
resetNoDevice() {
this._noDevice = undefined;
}
// Temporarily expose input value. Use with caution.
get noDeviceInput() {
return this._noDevice;
}
get virtualName() {
return this.getStringAttribute('virtual_name');
}
set virtualName(value) {
this._virtualName = value;
}
resetVirtualName() {
this._virtualName = undefined;
}
// Temporarily expose input value. Use with caution.
get virtualNameInput() {
return this._virtualName;
}
get ebs() {
return this._ebs;
}
putEbs(value) {
this._ebs.internalValue = value;
}
resetEbs() {
this._ebs.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get ebsInput() {
return this._ebs.internalValue;
}
}
exports.LaunchTemplateBlockDeviceMappingsOutputReference = LaunchTemplateBlockDeviceMappingsOutputReference;
_b = JSII_RTTI_SYMBOL_1;
LaunchTemplateBlockDeviceMappingsOutputReference[_b] = { fqn: "@cdktf/provider-aws.launchTemplate.LaunchTemplateBlockDeviceMappingsOutputReference", version: "21.22.1" };
class LaunchTemplateBlockDeviceMappingsList extends cdktf.ComplexList {
/**
* @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 LaunchTemplateBlockDeviceMappingsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.LaunchTemplateBlockDeviceMappingsList = LaunchTemplateBlockDeviceMappingsList;
_c = JSII_RTTI_SYMBOL_1;
LaunchTemplateBlockDeviceMappingsList[_c] = { fqn: "@cdktf/provider-aws.launchTemplate.LaunchTemplateBlockDeviceMappingsList", version: "21.22.1" };
function launchTemplateCapacityReservationSpecificationCapacityReservationTargetToTerraform(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 {
capacity_reservation_id: cdktf.stringToTerraform(struct.capacityReservationId),
capacity_reservation_resource_group_arn: cdktf.stringToTerraform(struct.capacityReservationResourceGroupArn),
};
}
function launchTemplateCapacityReservationSpecificationCapacityReservationTargetToHclTerraform(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 = {
capacity_reservation_id: {
value: cdktf.stringToHclTerraform(struct.capacityReservationId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
capacity_reservation_resource_group_arn: {
value: cdktf.stringToHclTerraform(struct.capacityReservationResourceGroupArn),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutputReference extends cdktf.ComplexObject {
/**
* @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);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._capacityReservationId !== undefined) {
hasAnyValues = true;
internalValueResult.capacityReservationId = this._capacityReservationId;
}
if (this._capacityReservationResourceGroupArn !== undefined) {
hasAnyValues = true;
internalValueResult.capacityReservationResourceGroupArn = this._capacityReservationResourceGroupArn;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._capacityReservationId = undefined;
this._capacityReservationResourceGroupArn = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._capacityReservationId = value.capacityReservationId;
this._capacityReservationResourceGroupArn = value.capacityReservationResourceGroupArn;
}
}
get capacityReservationId() {
return this.getStringAttribute('capacity_reservation_id');
}
set capacityReservationId(value) {
this._capacityReservationId = value;
}
resetCapacityReservationId() {
this._capacityReservationId = undefined;
}
// Temporarily expose input value. Use with caution.
get capacityReservationIdInput() {
return this._capacityReservationId;
}
get capacityReservationResourceGroupArn() {
return this.getStringAttribute('capacity_reservation_resource_group_arn');
}
set capacityReservationResourceGroupArn(value) {
this._capacityReservationResourceGroupArn = value;
}
resetCapacityReservationResourceGroupArn() {
this._capacityReservationResourceGroupArn = undefined;
}
// Temporarily expose input value. Use with caution.
get capacityReservationResourceGroupArnInput() {
return this._capacityReservationResourceGroupArn;
}
}
exports.LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutputReference = LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutputReference;
_d = JSII_RTTI_SYMBOL_1;
LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutputReference[_d] = { fqn: "@cdktf/provider-aws.launchTemplate.LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutputReference", version: "21.22.1" };
function launchTemplateCapacityReservationSpecificationToTerraform(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 {
capacity_reservation_preference: cdktf.stringToTerraform(struct.capacityReservationPreference),
capacity_reservation_target: launchTemplateCapacityReservationSpecificationCapacityReservationTargetToTerraform(struct.capacityReservationTarget),
};
}
function launchTemplateCapacityReservationSpecificationToHclTerraform(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 = {
capacity_reservation_preference: {
value: cdktf.stringToHclTerraform(struct.capacityReservationPreference),
isBlock: false,
type: "simple",
storageClassType: "string",
},
capacity_reservation_target: {
value: launchTemplateCapacityReservationSpecificationCapacityReservationTargetToHclTerraform(struct.capacityReservationTarget),
isBlock: true,
type: "list",
storageClassType: "LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class LaunchTemplateCapacityReservationSpecificationOutputReference extends cdktf.ComplexObject {
/**
* @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);
this.isEmptyObject = false;
// capacity_reservation_target - computed: false, optional: true, required: false
this._capacityReservationTarget = new LaunchTemplateCapacityReservationSpecificationCapacityReservationTargetOutputReference(this, "capacity_reservation_target");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._capacityReservationPreference !== undefined) {
hasAnyValues = true;
internalValueResult.capacityReservationPreference = this._capacityReservationPreference;
}
if (this._capacityReservationTarget?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.capacityReservationTarget = this._capacityReservationTarget?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._capacityReservationPreference = undefined;
this._capacityReservationTarget.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._capacityReservationPreference = value.capacityReservationPreference;
this._capacityReservationTarget.internalValue = value.capacityReservationTarget;
}
}
get capacityReservationPreference() {
return this.getStringAttribute('capacity_reservation_preference');
}
set capacityReservationPreference(value) {
this._capacityReservationPreference = value;
}
resetCapacityReservationPreference() {
this._capacityReservationPreference = undefined;
}
// Temporarily expose input value. Use with caution.
get capacityReservationPreferenceInput() {
return this._capacityReservationPreference;
}
get capacityReservationTarget() {
return this._capacityReservationTarget;
}
putCapacityReservationTarget(value) {
this._capacityReservationTarget.internalValue = value;
}
resetCapacityReservationTarget() {
this._capacityReservationTarget.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get capacityReservationTargetInput() {
return this._capacityReservationTarget.internalValue;
}
}
exports.LaunchTemplateCapacityReservationSpecificationOutputReference = LaunchTemplateCapacityReservationSpecificationOutputReference;
_e = JSII_RTTI_SYMBOL_1;
LaunchTemplateCapacityReservationSpecificationOutputReference[_e] = { fqn: "@cdktf/provider-aws.launchTemplate.LaunchTemplateCapacityReservationSpecificationOutputReference", version: "21.22.1" };
function launchTemplateCpuOptionsToTerraform(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 {
amd_sev_snp: cdktf.stringToTerraform(struct.amdSevSnp),
core_count: cdktf.numberToTerraform(struct.coreCount),
threads_per_core: cdktf.numberToTerraform(struct.threadsPerCore),
};
}
function launchTemplateCpuOptionsToHclTerraform(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 = {
amd_sev_snp: {
value: cdktf.stringToHclTerraform(struct.amdSevSnp),
isBlock: false,
type: "simple",
storageClassType: "string",
},
core_count: {
value: cdktf.numberToHclTerraform(struct.coreCount),
isBlock: false,
type: "simple",
storageClassType: "number",
},
threads_per_core: {
value: cdktf.numberToHclTerraform(struct.threadsPerCore),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class LaunchTemplateCpuOptionsOutputReference extends cdktf.ComplexObject {
/**
* @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);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._amdSevSnp !== undefined) {
hasAnyValues = true;
internalValueResult.amdSevSnp = this._amdSevSnp;
}
if (this._coreCount !== undefined) {
hasAnyValues = true;
internalValueResult.coreCount = this._coreCount;
}
if (this._threadsPerCore !== undefined) {
hasAnyValues = true;
internalValueResult.threadsPerCore = this._threadsPerCore;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._amdSevSnp = undefined;
this._coreCount = undefined;
this._threadsPerCore = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._amdSevSnp = value.amdSevSnp;
this._coreCount = value.coreCount;
this._threadsPerCore = value.threadsPerCore;
}
}
get amdSevSnp() {
return this.getStringAttribute('amd_sev_snp');
}
set amdSevSnp(value) {
this._amdSevSnp = value;
}
resetAmdSevSnp() {
this._amdSevSnp = undefined;
}
// Temporarily expose input value. Use with caution.
get amdSevSnpInput() {
return this._amdSevSnp;
}
get coreCount() {
return this.getNumberAttribute('core_count');
}
set coreCount(value) {
this._coreCount = value;
}
resetCoreCount() {
this._coreCount = undefined;
}
// Temporarily expose input value. Use with caution.
get coreCountInput() {
return this._coreCount;
}
get threadsPerCore() {
return this.getNumberAttribute('threads_per_core');
}
set threadsPerCore(value) {
this._threadsPerCore = value;
}
resetThreadsPerCore() {
this._threadsPerCore = undefined;
}
// Temporarily expose input value. Use with caution.
get threadsPerCoreInput() {
return this._threadsPerCore;
}
}
exports.LaunchTemplateCpuOptionsOutputReference = LaunchTemplateCpuOptionsOutputReference;
_f = JSII_RTTI_SYMBOL_1;
LaunchTemplateCpuOptionsOutputReference[_f] = { fqn: "@cdktf/provider-aws.launchTemplate.LaunchTemplateCpuOptionsOutputReference", version: "21.22.1" };
function launchTemplateCreditSpecificationToTerraform(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 {
cpu_credits: cdktf.stringToTerraform(struct.cpuCredits),
};
}
function launchTemplateCreditSpecificationToHclTerraform(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 = {
cpu_credits: {
value: cdktf.stringToHclTerraform(struct.cpuCredits),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class LaunchTemplateCreditSpecificationOutputReference extends cdktf.ComplexObject {
/**
* @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);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._cpuCredits !== undefined) {
hasAnyValues = true;
internalValueResult.cpuCredits = this._cpuCredits;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._cpuCredits = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._cpuCredits = value.cpuCredits;
}
}
get cpuCredits() {
return this.getStringAttribute('cpu_credits');
}
set cpuCredits(value) {
this._cpuCredits = value;
}
resetCpuCredits() {
this._cpuCredits = undefined;
}
// Temporarily expose input value. Use with caution.
get cpuCreditsInput() {
return this._cpuCredits;
}
}
exports.LaunchTemplateCreditSpecificationOutputReference = LaunchTemplateCreditSpecificationOutputReference;
_g = JSII_RTTI_SYMBOL_1;
LaunchTemplateCreditSpecificationOutputReference[_g] = { fqn: "@cdktf/provider-aws.launchTemplate.LaunchTemplateCreditSpecificationOutputReference", version: "21.22.1" };
function launchTemplateEnclaveOptionsToTerraform(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 {
enabled: cdktf.booleanToTerraform(struct.enabled),
};
}
function launchTemplateEnclaveOptionsToHclTerraform(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 = {
enabled: {
value: cdktf.booleanToHclTerraform(struct.enabled),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class LaunchTemplateEnclaveOptionsOutputReference extends cdktf.ComplexObject {
/**
* @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);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._enabled !== undefined) {
hasAnyValues = true;
internalValueResult.enabled = this._enabled;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._enabled = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._enabled = value.enabled;
}
}
get enabled() {
return this.getBooleanAttribute('enabled');
}
set enabled(value) {
this._enabled = value;
}
resetEnabled() {
this._enabled = undefined;
}
// Temporarily expose input value. Use with caution.
get enabledInput() {
return this._enabled;
}
}
exports.LaunchTemplateEnclaveOptionsOutputReference = LaunchTemplateEnclaveOptionsOutputReference;
_h = JSII_RTTI_SYMBOL_1;
LaunchTemplateEnclaveOptionsOutputReference[_h] = { fqn: "@cdktf/provider-aws.launchTemplate.LaunchTemplateEnclaveOptionsOutputReference", version: "21.22.1" };
function launchTemplateHibernationOptionsToTerraform(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 {
configured: cdktf.booleanToTerraform(struct.configured),
};
}
function launchTemplateHibernationOptionsToHclTerraform(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 = {
configured: {
value: cdktf.booleanToHclTerraform(struct.configured),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class LaunchTemplateHibernationOptionsOutputReference extends cdktf.ComplexObject {
/**
* @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);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._configured !== undefined) {
hasAnyValues = true;
internalValueResult.configured = this._configured;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._configured = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._configured = value.configured;
}
}