@cdktf/provider-aws
Version:
Prebuilt aws Provider for Terraform CDK (cdktf)
1,026 lines • 769 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;
Object.defineProperty(exports, "__esModule", { value: true });
exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsTotalLocalStorageGbToTerraform = exports.AutoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsNetworkInterfaceCountOutputReference = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsNetworkInterfaceCountToHclTerraform = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsNetworkInterfaceCountToTerraform = exports.AutoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsNetworkBandwidthGbpsOutputReference = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsNetworkBandwidthGbpsToHclTerraform = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsNetworkBandwidthGbpsToTerraform = exports.AutoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsMemoryMibOutputReference = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsMemoryMibToHclTerraform = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsMemoryMibToTerraform = exports.AutoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsMemoryGibPerVcpuOutputReference = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsMemoryGibPerVcpuToHclTerraform = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsMemoryGibPerVcpuToTerraform = exports.AutoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsBaselineEbsBandwidthMbpsOutputReference = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsBaselineEbsBandwidthMbpsToHclTerraform = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsBaselineEbsBandwidthMbpsToTerraform = exports.AutoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsAcceleratorTotalMemoryMibOutputReference = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsAcceleratorTotalMemoryMibToHclTerraform = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsAcceleratorTotalMemoryMibToTerraform = exports.AutoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsAcceleratorCountOutputReference = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsAcceleratorCountToHclTerraform = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsAcceleratorCountToTerraform = exports.AutoscalingGroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationOutputReference = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationToHclTerraform = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationToTerraform = exports.AutoscalingGroupMixedInstancesPolicyInstancesDistributionOutputReference = exports.autoscalingGroupMixedInstancesPolicyInstancesDistributionToHclTerraform = exports.autoscalingGroupMixedInstancesPolicyInstancesDistributionToTerraform = exports.AutoscalingGroupLaunchTemplateOutputReference = exports.autoscalingGroupLaunchTemplateToHclTerraform = exports.autoscalingGroupLaunchTemplateToTerraform = exports.AutoscalingGroupInstanceRefreshOutputReference = exports.autoscalingGroupInstanceRefreshToHclTerraform = exports.autoscalingGroupInstanceRefreshToTerraform = exports.AutoscalingGroupInstanceRefreshPreferencesOutputReference = exports.autoscalingGroupInstanceRefreshPreferencesToHclTerraform = exports.autoscalingGroupInstanceRefreshPreferencesToTerraform = exports.AutoscalingGroupInstanceRefreshPreferencesAlarmSpecificationOutputReference = exports.autoscalingGroupInstanceRefreshPreferencesAlarmSpecificationToHclTerraform = exports.autoscalingGroupInstanceRefreshPreferencesAlarmSpecificationToTerraform = exports.AutoscalingGroupInstanceMaintenancePolicyOutputReference = exports.autoscalingGroupInstanceMaintenancePolicyToHclTerraform = exports.autoscalingGroupInstanceMaintenancePolicyToTerraform = exports.AutoscalingGroupInitialLifecycleHookList = exports.AutoscalingGroupInitialLifecycleHookOutputReference = exports.autoscalingGroupInitialLifecycleHookToHclTerraform = exports.autoscalingGroupInitialLifecycleHookToTerraform = exports.AutoscalingGroupAvailabilityZoneDistributionOutputReference = exports.autoscalingGroupAvailabilityZoneDistributionToHclTerraform = exports.autoscalingGroupAvailabilityZoneDistributionToTerraform = void 0;
exports.AutoscalingGroup = exports.AutoscalingGroupWarmPoolOutputReference = exports.autoscalingGroupWarmPoolToHclTerraform = exports.autoscalingGroupWarmPoolToTerraform = exports.AutoscalingGroupWarmPoolInstanceReusePolicyOutputReference = exports.autoscalingGroupWarmPoolInstanceReusePolicyToHclTerraform = exports.autoscalingGroupWarmPoolInstanceReusePolicyToTerraform = exports.AutoscalingGroupTrafficSourceList = exports.AutoscalingGroupTrafficSourceOutputReference = exports.autoscalingGroupTrafficSourceToHclTerraform = exports.autoscalingGroupTrafficSourceToTerraform = exports.AutoscalingGroupTimeoutsOutputReference = exports.autoscalingGroupTimeoutsToHclTerraform = exports.autoscalingGroupTimeoutsToTerraform = exports.AutoscalingGroupTagList = exports.AutoscalingGroupTagOutputReference = exports.autoscalingGroupTagToHclTerraform = exports.autoscalingGroupTagToTerraform = exports.AutoscalingGroupMixedInstancesPolicyOutputReference = exports.autoscalingGroupMixedInstancesPolicyToHclTerraform = exports.autoscalingGroupMixedInstancesPolicyToTerraform = exports.AutoscalingGroupMixedInstancesPolicyLaunchTemplateOutputReference = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateToHclTerraform = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateToTerraform = exports.AutoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideList = exports.AutoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideOutputReference = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideToHclTerraform = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideToTerraform = exports.AutoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideLaunchTemplateSpecificationOutputReference = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideLaunchTemplateSpecificationToHclTerraform = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideLaunchTemplateSpecificationToTerraform = exports.AutoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsOutputReference = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsToHclTerraform = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsToTerraform = exports.AutoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsVcpuCountOutputReference = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsVcpuCountToHclTerraform = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsVcpuCountToTerraform = exports.AutoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsTotalLocalStorageGbOutputReference = exports.autoscalingGroupMixedInstancesPolicyLaunchTemplateOverrideInstanceRequirementsTotalLocalStorageGbToHclTerraform = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function autoscalingGroupAvailabilityZoneDistributionToTerraform(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_distribution_strategy: cdktf.stringToTerraform(struct.capacityDistributionStrategy),
};
}
exports.autoscalingGroupAvailabilityZoneDistributionToTerraform = autoscalingGroupAvailabilityZoneDistributionToTerraform;
function autoscalingGroupAvailabilityZoneDistributionToHclTerraform(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_distribution_strategy: {
value: cdktf.stringToHclTerraform(struct.capacityDistributionStrategy),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.autoscalingGroupAvailabilityZoneDistributionToHclTerraform = autoscalingGroupAvailabilityZoneDistributionToHclTerraform;
class AutoscalingGroupAvailabilityZoneDistributionOutputReference 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._capacityDistributionStrategy !== undefined) {
hasAnyValues = true;
internalValueResult.capacityDistributionStrategy = this._capacityDistributionStrategy;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._capacityDistributionStrategy = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._capacityDistributionStrategy = value.capacityDistributionStrategy;
}
}
get capacityDistributionStrategy() {
return this.getStringAttribute('capacity_distribution_strategy');
}
set capacityDistributionStrategy(value) {
this._capacityDistributionStrategy = value;
}
resetCapacityDistributionStrategy() {
this._capacityDistributionStrategy = undefined;
}
// Temporarily expose input value. Use with caution.
get capacityDistributionStrategyInput() {
return this._capacityDistributionStrategy;
}
}
exports.AutoscalingGroupAvailabilityZoneDistributionOutputReference = AutoscalingGroupAvailabilityZoneDistributionOutputReference;
_a = JSII_RTTI_SYMBOL_1;
AutoscalingGroupAvailabilityZoneDistributionOutputReference[_a] = { fqn: "@cdktf/provider-aws.autoscalingGroup.AutoscalingGroupAvailabilityZoneDistributionOutputReference", version: "19.50.0" };
function autoscalingGroupInitialLifecycleHookToTerraform(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 {
default_result: cdktf.stringToTerraform(struct.defaultResult),
heartbeat_timeout: cdktf.numberToTerraform(struct.heartbeatTimeout),
lifecycle_transition: cdktf.stringToTerraform(struct.lifecycleTransition),
name: cdktf.stringToTerraform(struct.name),
notification_metadata: cdktf.stringToTerraform(struct.notificationMetadata),
notification_target_arn: cdktf.stringToTerraform(struct.notificationTargetArn),
role_arn: cdktf.stringToTerraform(struct.roleArn),
};
}
exports.autoscalingGroupInitialLifecycleHookToTerraform = autoscalingGroupInitialLifecycleHookToTerraform;
function autoscalingGroupInitialLifecycleHookToHclTerraform(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 = {
default_result: {
value: cdktf.stringToHclTerraform(struct.defaultResult),
isBlock: false,
type: "simple",
storageClassType: "string",
},
heartbeat_timeout: {
value: cdktf.numberToHclTerraform(struct.heartbeatTimeout),
isBlock: false,
type: "simple",
storageClassType: "number",
},
lifecycle_transition: {
value: cdktf.stringToHclTerraform(struct.lifecycleTransition),
isBlock: false,
type: "simple",
storageClassType: "string",
},
name: {
value: cdktf.stringToHclTerraform(struct.name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
notification_metadata: {
value: cdktf.stringToHclTerraform(struct.notificationMetadata),
isBlock: false,
type: "simple",
storageClassType: "string",
},
notification_target_arn: {
value: cdktf.stringToHclTerraform(struct.notificationTargetArn),
isBlock: false,
type: "simple",
storageClassType: "string",
},
role_arn: {
value: cdktf.stringToHclTerraform(struct.roleArn),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.autoscalingGroupInitialLifecycleHookToHclTerraform = autoscalingGroupInitialLifecycleHookToHclTerraform;
class AutoscalingGroupInitialLifecycleHookOutputReference 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;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._defaultResult !== undefined) {
hasAnyValues = true;
internalValueResult.defaultResult = this._defaultResult;
}
if (this._heartbeatTimeout !== undefined) {
hasAnyValues = true;
internalValueResult.heartbeatTimeout = this._heartbeatTimeout;
}
if (this._lifecycleTransition !== undefined) {
hasAnyValues = true;
internalValueResult.lifecycleTransition = this._lifecycleTransition;
}
if (this._name !== undefined) {
hasAnyValues = true;
internalValueResult.name = this._name;
}
if (this._notificationMetadata !== undefined) {
hasAnyValues = true;
internalValueResult.notificationMetadata = this._notificationMetadata;
}
if (this._notificationTargetArn !== undefined) {
hasAnyValues = true;
internalValueResult.notificationTargetArn = this._notificationTargetArn;
}
if (this._roleArn !== undefined) {
hasAnyValues = true;
internalValueResult.roleArn = this._roleArn;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._defaultResult = undefined;
this._heartbeatTimeout = undefined;
this._lifecycleTransition = undefined;
this._name = undefined;
this._notificationMetadata = undefined;
this._notificationTargetArn = undefined;
this._roleArn = 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._defaultResult = value.defaultResult;
this._heartbeatTimeout = value.heartbeatTimeout;
this._lifecycleTransition = value.lifecycleTransition;
this._name = value.name;
this._notificationMetadata = value.notificationMetadata;
this._notificationTargetArn = value.notificationTargetArn;
this._roleArn = value.roleArn;
}
}
get defaultResult() {
return this.getStringAttribute('default_result');
}
set defaultResult(value) {
this._defaultResult = value;
}
resetDefaultResult() {
this._defaultResult = undefined;
}
// Temporarily expose input value. Use with caution.
get defaultResultInput() {
return this._defaultResult;
}
get heartbeatTimeout() {
return this.getNumberAttribute('heartbeat_timeout');
}
set heartbeatTimeout(value) {
this._heartbeatTimeout = value;
}
resetHeartbeatTimeout() {
this._heartbeatTimeout = undefined;
}
// Temporarily expose input value. Use with caution.
get heartbeatTimeoutInput() {
return this._heartbeatTimeout;
}
get lifecycleTransition() {
return this.getStringAttribute('lifecycle_transition');
}
set lifecycleTransition(value) {
this._lifecycleTransition = value;
}
// Temporarily expose input value. Use with caution.
get lifecycleTransitionInput() {
return this._lifecycleTransition;
}
get name() {
return this.getStringAttribute('name');
}
set name(value) {
this._name = value;
}
// Temporarily expose input value. Use with caution.
get nameInput() {
return this._name;
}
get notificationMetadata() {
return this.getStringAttribute('notification_metadata');
}
set notificationMetadata(value) {
this._notificationMetadata = value;
}
resetNotificationMetadata() {
this._notificationMetadata = undefined;
}
// Temporarily expose input value. Use with caution.
get notificationMetadataInput() {
return this._notificationMetadata;
}
get notificationTargetArn() {
return this.getStringAttribute('notification_target_arn');
}
set notificationTargetArn(value) {
this._notificationTargetArn = value;
}
resetNotificationTargetArn() {
this._notificationTargetArn = undefined;
}
// Temporarily expose input value. Use with caution.
get notificationTargetArnInput() {
return this._notificationTargetArn;
}
get roleArn() {
return this.getStringAttribute('role_arn');
}
set roleArn(value) {
this._roleArn = value;
}
resetRoleArn() {
this._roleArn = undefined;
}
// Temporarily expose input value. Use with caution.
get roleArnInput() {
return this._roleArn;
}
}
exports.AutoscalingGroupInitialLifecycleHookOutputReference = AutoscalingGroupInitialLifecycleHookOutputReference;
_b = JSII_RTTI_SYMBOL_1;
AutoscalingGroupInitialLifecycleHookOutputReference[_b] = { fqn: "@cdktf/provider-aws.autoscalingGroup.AutoscalingGroupInitialLifecycleHookOutputReference", version: "19.50.0" };
class AutoscalingGroupInitialLifecycleHookList 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 AutoscalingGroupInitialLifecycleHookOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.AutoscalingGroupInitialLifecycleHookList = AutoscalingGroupInitialLifecycleHookList;
_c = JSII_RTTI_SYMBOL_1;
AutoscalingGroupInitialLifecycleHookList[_c] = { fqn: "@cdktf/provider-aws.autoscalingGroup.AutoscalingGroupInitialLifecycleHookList", version: "19.50.0" };
function autoscalingGroupInstanceMaintenancePolicyToTerraform(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 {
max_healthy_percentage: cdktf.numberToTerraform(struct.maxHealthyPercentage),
min_healthy_percentage: cdktf.numberToTerraform(struct.minHealthyPercentage),
};
}
exports.autoscalingGroupInstanceMaintenancePolicyToTerraform = autoscalingGroupInstanceMaintenancePolicyToTerraform;
function autoscalingGroupInstanceMaintenancePolicyToHclTerraform(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 = {
max_healthy_percentage: {
value: cdktf.numberToHclTerraform(struct.maxHealthyPercentage),
isBlock: false,
type: "simple",
storageClassType: "number",
},
min_healthy_percentage: {
value: cdktf.numberToHclTerraform(struct.minHealthyPercentage),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.autoscalingGroupInstanceMaintenancePolicyToHclTerraform = autoscalingGroupInstanceMaintenancePolicyToHclTerraform;
class AutoscalingGroupInstanceMaintenancePolicyOutputReference 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._maxHealthyPercentage !== undefined) {
hasAnyValues = true;
internalValueResult.maxHealthyPercentage = this._maxHealthyPercentage;
}
if (this._minHealthyPercentage !== undefined) {
hasAnyValues = true;
internalValueResult.minHealthyPercentage = this._minHealthyPercentage;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._maxHealthyPercentage = undefined;
this._minHealthyPercentage = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._maxHealthyPercentage = value.maxHealthyPercentage;
this._minHealthyPercentage = value.minHealthyPercentage;
}
}
get maxHealthyPercentage() {
return this.getNumberAttribute('max_healthy_percentage');
}
set maxHealthyPercentage(value) {
this._maxHealthyPercentage = value;
}
// Temporarily expose input value. Use with caution.
get maxHealthyPercentageInput() {
return this._maxHealthyPercentage;
}
get minHealthyPercentage() {
return this.getNumberAttribute('min_healthy_percentage');
}
set minHealthyPercentage(value) {
this._minHealthyPercentage = value;
}
// Temporarily expose input value. Use with caution.
get minHealthyPercentageInput() {
return this._minHealthyPercentage;
}
}
exports.AutoscalingGroupInstanceMaintenancePolicyOutputReference = AutoscalingGroupInstanceMaintenancePolicyOutputReference;
_d = JSII_RTTI_SYMBOL_1;
AutoscalingGroupInstanceMaintenancePolicyOutputReference[_d] = { fqn: "@cdktf/provider-aws.autoscalingGroup.AutoscalingGroupInstanceMaintenancePolicyOutputReference", version: "19.50.0" };
function autoscalingGroupInstanceRefreshPreferencesAlarmSpecificationToTerraform(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 {
alarms: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.alarms),
};
}
exports.autoscalingGroupInstanceRefreshPreferencesAlarmSpecificationToTerraform = autoscalingGroupInstanceRefreshPreferencesAlarmSpecificationToTerraform;
function autoscalingGroupInstanceRefreshPreferencesAlarmSpecificationToHclTerraform(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 = {
alarms: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.alarms),
isBlock: false,
type: "list",
storageClassType: "stringList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.autoscalingGroupInstanceRefreshPreferencesAlarmSpecificationToHclTerraform = autoscalingGroupInstanceRefreshPreferencesAlarmSpecificationToHclTerraform;
class AutoscalingGroupInstanceRefreshPreferencesAlarmSpecificationOutputReference 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._alarms !== undefined) {
hasAnyValues = true;
internalValueResult.alarms = this._alarms;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._alarms = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._alarms = value.alarms;
}
}
get alarms() {
return this.getListAttribute('alarms');
}
set alarms(value) {
this._alarms = value;
}
resetAlarms() {
this._alarms = undefined;
}
// Temporarily expose input value. Use with caution.
get alarmsInput() {
return this._alarms;
}
}
exports.AutoscalingGroupInstanceRefreshPreferencesAlarmSpecificationOutputReference = AutoscalingGroupInstanceRefreshPreferencesAlarmSpecificationOutputReference;
_e = JSII_RTTI_SYMBOL_1;
AutoscalingGroupInstanceRefreshPreferencesAlarmSpecificationOutputReference[_e] = { fqn: "@cdktf/provider-aws.autoscalingGroup.AutoscalingGroupInstanceRefreshPreferencesAlarmSpecificationOutputReference", version: "19.50.0" };
function autoscalingGroupInstanceRefreshPreferencesToTerraform(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 {
auto_rollback: cdktf.booleanToTerraform(struct.autoRollback),
checkpoint_delay: cdktf.stringToTerraform(struct.checkpointDelay),
checkpoint_percentages: cdktf.listMapper(cdktf.numberToTerraform, false)(struct.checkpointPercentages),
instance_warmup: cdktf.stringToTerraform(struct.instanceWarmup),
max_healthy_percentage: cdktf.numberToTerraform(struct.maxHealthyPercentage),
min_healthy_percentage: cdktf.numberToTerraform(struct.minHealthyPercentage),
scale_in_protected_instances: cdktf.stringToTerraform(struct.scaleInProtectedInstances),
skip_matching: cdktf.booleanToTerraform(struct.skipMatching),
standby_instances: cdktf.stringToTerraform(struct.standbyInstances),
alarm_specification: autoscalingGroupInstanceRefreshPreferencesAlarmSpecificationToTerraform(struct.alarmSpecification),
};
}
exports.autoscalingGroupInstanceRefreshPreferencesToTerraform = autoscalingGroupInstanceRefreshPreferencesToTerraform;
function autoscalingGroupInstanceRefreshPreferencesToHclTerraform(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 = {
auto_rollback: {
value: cdktf.booleanToHclTerraform(struct.autoRollback),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
checkpoint_delay: {
value: cdktf.stringToHclTerraform(struct.checkpointDelay),
isBlock: false,
type: "simple",
storageClassType: "string",
},
checkpoint_percentages: {
value: cdktf.listMapperHcl(cdktf.numberToHclTerraform, false)(struct.checkpointPercentages),
isBlock: false,
type: "list",
storageClassType: "numberList",
},
instance_warmup: {
value: cdktf.stringToHclTerraform(struct.instanceWarmup),
isBlock: false,
type: "simple",
storageClassType: "string",
},
max_healthy_percentage: {
value: cdktf.numberToHclTerraform(struct.maxHealthyPercentage),
isBlock: false,
type: "simple",
storageClassType: "number",
},
min_healthy_percentage: {
value: cdktf.numberToHclTerraform(struct.minHealthyPercentage),
isBlock: false,
type: "simple",
storageClassType: "number",
},
scale_in_protected_instances: {
value: cdktf.stringToHclTerraform(struct.scaleInProtectedInstances),
isBlock: false,
type: "simple",
storageClassType: "string",
},
skip_matching: {
value: cdktf.booleanToHclTerraform(struct.skipMatching),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
standby_instances: {
value: cdktf.stringToHclTerraform(struct.standbyInstances),
isBlock: false,
type: "simple",
storageClassType: "string",
},
alarm_specification: {
value: autoscalingGroupInstanceRefreshPreferencesAlarmSpecificationToHclTerraform(struct.alarmSpecification),
isBlock: true,
type: "list",
storageClassType: "AutoscalingGroupInstanceRefreshPreferencesAlarmSpecificationList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.autoscalingGroupInstanceRefreshPreferencesToHclTerraform = autoscalingGroupInstanceRefreshPreferencesToHclTerraform;
class AutoscalingGroupInstanceRefreshPreferencesOutputReference 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;
// alarm_specification - computed: false, optional: true, required: false
this._alarmSpecification = new AutoscalingGroupInstanceRefreshPreferencesAlarmSpecificationOutputReference(this, "alarm_specification");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._autoRollback !== undefined) {
hasAnyValues = true;
internalValueResult.autoRollback = this._autoRollback;
}
if (this._checkpointDelay !== undefined) {
hasAnyValues = true;
internalValueResult.checkpointDelay = this._checkpointDelay;
}
if (this._checkpointPercentages !== undefined) {
hasAnyValues = true;
internalValueResult.checkpointPercentages = this._checkpointPercentages;
}
if (this._instanceWarmup !== undefined) {
hasAnyValues = true;
internalValueResult.instanceWarmup = this._instanceWarmup;
}
if (this._maxHealthyPercentage !== undefined) {
hasAnyValues = true;
internalValueResult.maxHealthyPercentage = this._maxHealthyPercentage;
}
if (this._minHealthyPercentage !== undefined) {
hasAnyValues = true;
internalValueResult.minHealthyPercentage = this._minHealthyPercentage;
}
if (this._scaleInProtectedInstances !== undefined) {
hasAnyValues = true;
internalValueResult.scaleInProtectedInstances = this._scaleInProtectedInstances;
}
if (this._skipMatching !== undefined) {
hasAnyValues = true;
internalValueResult.skipMatching = this._skipMatching;
}
if (this._standbyInstances !== undefined) {
hasAnyValues = true;
internalValueResult.standbyInstances = this._standbyInstances;
}
if (this._alarmSpecification?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.alarmSpecification = this._alarmSpecification?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._autoRollback = undefined;
this._checkpointDelay = undefined;
this._checkpointPercentages = undefined;
this._instanceWarmup = undefined;
this._maxHealthyPercentage = undefined;
this._minHealthyPercentage = undefined;
this._scaleInProtectedInstances = undefined;
this._skipMatching = undefined;
this._standbyInstances = undefined;
this._alarmSpecification.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._autoRollback = value.autoRollback;
this._checkpointDelay = value.checkpointDelay;
this._checkpointPercentages = value.checkpointPercentages;
this._instanceWarmup = value.instanceWarmup;
this._maxHealthyPercentage = value.maxHealthyPercentage;
this._minHealthyPercentage = value.minHealthyPercentage;
this._scaleInProtectedInstances = value.scaleInProtectedInstances;
this._skipMatching = value.skipMatching;
this._standbyInstances = value.standbyInstances;
this._alarmSpecification.internalValue = value.alarmSpecification;
}
}
get autoRollback() {
return this.getBooleanAttribute('auto_rollback');
}
set autoRollback(value) {
this._autoRollback = value;
}
resetAutoRollback() {
this._autoRollback = undefined;
}
// Temporarily expose input value. Use with caution.
get autoRollbackInput() {
return this._autoRollback;
}
get checkpointDelay() {
return this.getStringAttribute('checkpoint_delay');
}
set checkpointDelay(value) {
this._checkpointDelay = value;
}
resetCheckpointDelay() {
this._checkpointDelay = undefined;
}
// Temporarily expose input value. Use with caution.
get checkpointDelayInput() {
return this._checkpointDelay;
}
get checkpointPercentages() {
return this.getNumberListAttribute('checkpoint_percentages');
}
set checkpointPercentages(value) {
this._checkpointPercentages = value;
}
resetCheckpointPercentages() {
this._checkpointPercentages = undefined;
}
// Temporarily expose input value. Use with caution.
get checkpointPercentagesInput() {
return this._checkpointPercentages;
}
get instanceWarmup() {
return this.getStringAttribute('instance_warmup');
}
set instanceWarmup(value) {
this._instanceWarmup = value;
}
resetInstanceWarmup() {
this._instanceWarmup = undefined;
}
// Temporarily expose input value. Use with caution.
get instanceWarmupInput() {
return this._instanceWarmup;
}
get maxHealthyPercentage() {
return this.getNumberAttribute('max_healthy_percentage');
}
set maxHealthyPercentage(value) {
this._maxHealthyPercentage = value;
}
resetMaxHealthyPercentage() {
this._maxHealthyPercentage = undefined;
}
// Temporarily expose input value. Use with caution.
get maxHealthyPercentageInput() {
return this._maxHealthyPercentage;
}
get minHealthyPercentage() {
return this.getNumberAttribute('min_healthy_percentage');
}
set minHealthyPercentage(value) {
this._minHealthyPercentage = value;
}
resetMinHealthyPercentage() {
this._minHealthyPercentage = undefined;
}
// Temporarily expose input value. Use with caution.
get minHealthyPercentageInput() {
return this._minHealthyPercentage;
}
get scaleInProtectedInstances() {
return this.getStringAttribute('scale_in_protected_instances');
}
set scaleInProtectedInstances(value) {
this._scaleInProtectedInstances = value;
}
resetScaleInProtectedInstances() {
this._scaleInProtectedInstances = undefined;
}
// Temporarily expose input value. Use with caution.
get scaleInProtectedInstancesInput() {
return this._scaleInProtectedInstances;
}
get skipMatching() {
return this.getBooleanAttribute('skip_matching');
}
set skipMatching(value) {
this._skipMatching = value;
}
resetSkipMatching() {
this._skipMatching = undefined;
}
// Temporarily expose input value. Use with caution.
get skipMatchingInput() {
return this._skipMatching;
}
get standbyInstances() {
return this.getStringAttribute('standby_instances');
}
set standbyInstances(value) {
this._standbyInstances = value;
}
resetStandbyInstances() {
this._standbyInstances = undefined;
}
// Temporarily expose input value. Use with caution.
get standbyInstancesInput() {
return this._standbyInstances;
}
get alarmSpecification() {
return this._alarmSpecification;
}
putAlarmSpecification(value) {
this._alarmSpecification.internalValue = value;
}
resetAlarmSpecification() {
this._alarmSpecification.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get alarmSpecificationInput() {
return this._alarmSpecification.internalValue;
}
}
exports.AutoscalingGroupInstanceRefreshPreferencesOutputReference = AutoscalingGroupInstanceRefreshPreferencesOutputReference;
_f = JSII_RTTI_SYMBOL_1;
AutoscalingGroupInstanceRefreshPreferencesOutputReference[_f] = { fqn: "@cdktf/provider-aws.autoscalingGroup.AutoscalingGroupInstanceRefreshPreferencesOutputReference", version: "19.50.0" };
function autoscalingGroupInstanceRefreshToTerraform(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 {
strategy: cdktf.stringToTerraform(struct.strategy),
triggers: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.triggers),
preferences: autoscalingGroupInstanceRefreshPreferencesToTerraform(struct.preferences),
};
}
exports.autoscalingGroupInstanceRefreshToTerraform = autoscalingGroupInstanceRefreshToTerraform;
function autoscalingGroupInstanceRefreshToHclTerraform(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 = {
strategy: {
value: cdktf.stringToHclTerraform(struct.strategy),
isBlock: false,
type: "simple",
storageClassType: "string",
},
triggers: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.triggers),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
preferences: {
value: autoscalingGroupInstanceRefreshPreferencesToHclTerraform(struct.preferences),
isBlock: true,
type: "list",
storageClassType: "AutoscalingGroupInstanceRefreshPreferencesList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.autoscalingGroupInstanceRefreshToHclTerraform = autoscalingGroupInstanceRefreshToHclTerraform;
class AutoscalingGroupInstanceRefreshOutputReference 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;
// preferences - computed: false, optional: true, required: false
this._preferences = new AutoscalingGroupInstanceRefreshPreferencesOutputReference(this, "preferences");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._strategy !== undefined) {
hasAnyValues = true;
internalValueResult.strategy = this._strategy;
}
if (this._triggers !== undefined) {
hasAnyValues = true;
internalValueResult.triggers = this._triggers;
}
if (this._preferences?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.preferences = this._preferences?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._strategy = undefined;
this._triggers = undefined;
this._preferences.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._strategy = value.strategy;
this._triggers = value.triggers;
this._preferences.internalValue = value.preferences;
}
}
get strategy() {
return this.getStringAttribute('strategy');
}
set strategy(value) {
this._strategy = value;
}
// Temporarily expose input value. Use with caution.
get strategyInput() {
return this._strategy;
}
get triggers() {
return cdktf.Fn.tolist(this.getListAttribute('triggers'));
}
set triggers(value) {
this._triggers = value;
}
resetTriggers() {
this._triggers = undefined;
}
// Temporarily expose input value. Use with caution.
get triggersInput() {
return this._triggers;
}
get preferences() {
return this._preferences;
}
putPreferences(value) {
this._preferences.internalValue = value;
}
resetPreferences() {
this._preferences.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get preferencesInput() {
return this._preferences.internalValue;
}
}
exports.AutoscalingGroupInstanceRefreshOutputReference = AutoscalingGroupInstanceRefreshOutputReference;
_g = JSII_RTTI_SYMBOL_1;
AutoscalingGroupInstanceRefreshOutputReference[_g] = { fqn: "@cdktf/provider-aws.autoscalingGroup.AutoscalingGroupInstanceRefreshOutputReference", version: "19.50.0" };
function autoscalingGroupLaunchTemplateToTerraform(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 {
id: cdktf.stringToTerraform(struct.id),
name: cdktf.stringToTerraform(struct.name),
version: cdktf.stringToTerraform(struct.version),
};
}
exports.autoscalingGroupLaunchTemplateToTerraform = autoscalingGroupLaunchTemplateToTerraform;
function autoscalingGroupLaunchTemplateToHclTerraform(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 = {
id: {
value: cdktf.stringToHclTerraform(struct.id),
isBlock: false,
type: "simple",
storageClassType: "string",
},
name: {
value: cdktf.stringToHclTerraform(struct.name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
version: {
value: cdktf.stringToHclTerraform(struct.version),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.autoscalingGroupLaunchTemplateToHclTerraform = autoscalingGroupLaunchTemplateToHclTerraform;
class AutoscalingGroupLaunchTemplateOutputReference 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._id !== undefined) {
hasAnyValues = true;
internalValueResult.id = this._id;
}
if (this._name !== undefined) {
hasAnyValues = true;
internalValueResult.name = this._name;
}
if (this._version !== undefined) {
hasAnyValues = true;
internalValueResult.version = this._version;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value ===