UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

1,120 lines (1,119 loc) 365 kB
"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; Object.defineProperty(exports, "__esModule", { value: true }); exports.EksCluster = exports.EksClusterZonalShiftConfigOutputReference = exports.EksClusterVpcConfigOutputReference = exports.EksClusterUpgradePolicyOutputReference = exports.EksClusterTimeoutsOutputReference = exports.EksClusterStorageConfigOutputReference = exports.EksClusterStorageConfigBlockStorageOutputReference = exports.EksClusterRemoteNetworkConfigOutputReference = exports.EksClusterRemoteNetworkConfigRemotePodNetworksOutputReference = exports.EksClusterRemoteNetworkConfigRemoteNodeNetworksOutputReference = exports.EksClusterOutpostConfigOutputReference = exports.EksClusterOutpostConfigControlPlanePlacementOutputReference = exports.EksClusterKubernetesNetworkConfigOutputReference = exports.EksClusterKubernetesNetworkConfigElasticLoadBalancingOutputReference = exports.EksClusterEncryptionConfigOutputReference = exports.EksClusterEncryptionConfigProviderOutputReference = exports.EksClusterControlPlaneScalingConfigOutputReference = exports.EksClusterComputeConfigOutputReference = exports.EksClusterAccessConfigOutputReference = exports.EksClusterIdentityList = exports.EksClusterIdentityOutputReference = exports.EksClusterIdentityOidcList = exports.EksClusterIdentityOidcOutputReference = exports.EksClusterCertificateAuthorityList = exports.EksClusterCertificateAuthorityOutputReference = void 0; exports.eksClusterCertificateAuthorityToTerraform = eksClusterCertificateAuthorityToTerraform; exports.eksClusterCertificateAuthorityToHclTerraform = eksClusterCertificateAuthorityToHclTerraform; exports.eksClusterIdentityOidcToTerraform = eksClusterIdentityOidcToTerraform; exports.eksClusterIdentityOidcToHclTerraform = eksClusterIdentityOidcToHclTerraform; exports.eksClusterIdentityToTerraform = eksClusterIdentityToTerraform; exports.eksClusterIdentityToHclTerraform = eksClusterIdentityToHclTerraform; exports.eksClusterAccessConfigToTerraform = eksClusterAccessConfigToTerraform; exports.eksClusterAccessConfigToHclTerraform = eksClusterAccessConfigToHclTerraform; exports.eksClusterComputeConfigToTerraform = eksClusterComputeConfigToTerraform; exports.eksClusterComputeConfigToHclTerraform = eksClusterComputeConfigToHclTerraform; exports.eksClusterControlPlaneScalingConfigToTerraform = eksClusterControlPlaneScalingConfigToTerraform; exports.eksClusterControlPlaneScalingConfigToHclTerraform = eksClusterControlPlaneScalingConfigToHclTerraform; exports.eksClusterEncryptionConfigProviderToTerraform = eksClusterEncryptionConfigProviderToTerraform; exports.eksClusterEncryptionConfigProviderToHclTerraform = eksClusterEncryptionConfigProviderToHclTerraform; exports.eksClusterEncryptionConfigToTerraform = eksClusterEncryptionConfigToTerraform; exports.eksClusterEncryptionConfigToHclTerraform = eksClusterEncryptionConfigToHclTerraform; exports.eksClusterKubernetesNetworkConfigElasticLoadBalancingToTerraform = eksClusterKubernetesNetworkConfigElasticLoadBalancingToTerraform; exports.eksClusterKubernetesNetworkConfigElasticLoadBalancingToHclTerraform = eksClusterKubernetesNetworkConfigElasticLoadBalancingToHclTerraform; exports.eksClusterKubernetesNetworkConfigToTerraform = eksClusterKubernetesNetworkConfigToTerraform; exports.eksClusterKubernetesNetworkConfigToHclTerraform = eksClusterKubernetesNetworkConfigToHclTerraform; exports.eksClusterOutpostConfigControlPlanePlacementToTerraform = eksClusterOutpostConfigControlPlanePlacementToTerraform; exports.eksClusterOutpostConfigControlPlanePlacementToHclTerraform = eksClusterOutpostConfigControlPlanePlacementToHclTerraform; exports.eksClusterOutpostConfigToTerraform = eksClusterOutpostConfigToTerraform; exports.eksClusterOutpostConfigToHclTerraform = eksClusterOutpostConfigToHclTerraform; exports.eksClusterRemoteNetworkConfigRemoteNodeNetworksToTerraform = eksClusterRemoteNetworkConfigRemoteNodeNetworksToTerraform; exports.eksClusterRemoteNetworkConfigRemoteNodeNetworksToHclTerraform = eksClusterRemoteNetworkConfigRemoteNodeNetworksToHclTerraform; exports.eksClusterRemoteNetworkConfigRemotePodNetworksToTerraform = eksClusterRemoteNetworkConfigRemotePodNetworksToTerraform; exports.eksClusterRemoteNetworkConfigRemotePodNetworksToHclTerraform = eksClusterRemoteNetworkConfigRemotePodNetworksToHclTerraform; exports.eksClusterRemoteNetworkConfigToTerraform = eksClusterRemoteNetworkConfigToTerraform; exports.eksClusterRemoteNetworkConfigToHclTerraform = eksClusterRemoteNetworkConfigToHclTerraform; exports.eksClusterStorageConfigBlockStorageToTerraform = eksClusterStorageConfigBlockStorageToTerraform; exports.eksClusterStorageConfigBlockStorageToHclTerraform = eksClusterStorageConfigBlockStorageToHclTerraform; exports.eksClusterStorageConfigToTerraform = eksClusterStorageConfigToTerraform; exports.eksClusterStorageConfigToHclTerraform = eksClusterStorageConfigToHclTerraform; exports.eksClusterTimeoutsToTerraform = eksClusterTimeoutsToTerraform; exports.eksClusterTimeoutsToHclTerraform = eksClusterTimeoutsToHclTerraform; exports.eksClusterUpgradePolicyToTerraform = eksClusterUpgradePolicyToTerraform; exports.eksClusterUpgradePolicyToHclTerraform = eksClusterUpgradePolicyToHclTerraform; exports.eksClusterVpcConfigToTerraform = eksClusterVpcConfigToTerraform; exports.eksClusterVpcConfigToHclTerraform = eksClusterVpcConfigToHclTerraform; exports.eksClusterZonalShiftConfigToTerraform = eksClusterZonalShiftConfigToTerraform; exports.eksClusterZonalShiftConfigToHclTerraform = eksClusterZonalShiftConfigToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function eksClusterCertificateAuthorityToTerraform(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 {}; } function eksClusterCertificateAuthorityToHclTerraform(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 = {}; return attrs; } class EksClusterCertificateAuthorityOutputReference 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() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; } else { this.isEmptyObject = Object.keys(value).length === 0; } } // data - computed: true, optional: false, required: false get data() { return this.getStringAttribute('data'); } } exports.EksClusterCertificateAuthorityOutputReference = EksClusterCertificateAuthorityOutputReference; _a = JSII_RTTI_SYMBOL_1; EksClusterCertificateAuthorityOutputReference[_a] = { fqn: "@cdktf/provider-aws.eksCluster.EksClusterCertificateAuthorityOutputReference", version: "21.22.1" }; class EksClusterCertificateAuthorityList 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 EksClusterCertificateAuthorityOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.EksClusterCertificateAuthorityList = EksClusterCertificateAuthorityList; _b = JSII_RTTI_SYMBOL_1; EksClusterCertificateAuthorityList[_b] = { fqn: "@cdktf/provider-aws.eksCluster.EksClusterCertificateAuthorityList", version: "21.22.1" }; function eksClusterIdentityOidcToTerraform(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 {}; } function eksClusterIdentityOidcToHclTerraform(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 = {}; return attrs; } class EksClusterIdentityOidcOutputReference 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() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; } else { this.isEmptyObject = Object.keys(value).length === 0; } } // issuer - computed: true, optional: false, required: false get issuer() { return this.getStringAttribute('issuer'); } } exports.EksClusterIdentityOidcOutputReference = EksClusterIdentityOidcOutputReference; _c = JSII_RTTI_SYMBOL_1; EksClusterIdentityOidcOutputReference[_c] = { fqn: "@cdktf/provider-aws.eksCluster.EksClusterIdentityOidcOutputReference", version: "21.22.1" }; class EksClusterIdentityOidcList 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 EksClusterIdentityOidcOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.EksClusterIdentityOidcList = EksClusterIdentityOidcList; _d = JSII_RTTI_SYMBOL_1; EksClusterIdentityOidcList[_d] = { fqn: "@cdktf/provider-aws.eksCluster.EksClusterIdentityOidcList", version: "21.22.1" }; function eksClusterIdentityToTerraform(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 {}; } function eksClusterIdentityToHclTerraform(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 = {}; return attrs; } class EksClusterIdentityOutputReference 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; // oidc - computed: true, optional: false, required: false this._oidc = new EksClusterIdentityOidcList(this, "oidc", false); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; } else { this.isEmptyObject = Object.keys(value).length === 0; } } get oidc() { return this._oidc; } } exports.EksClusterIdentityOutputReference = EksClusterIdentityOutputReference; _e = JSII_RTTI_SYMBOL_1; EksClusterIdentityOutputReference[_e] = { fqn: "@cdktf/provider-aws.eksCluster.EksClusterIdentityOutputReference", version: "21.22.1" }; class EksClusterIdentityList 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 EksClusterIdentityOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.EksClusterIdentityList = EksClusterIdentityList; _f = JSII_RTTI_SYMBOL_1; EksClusterIdentityList[_f] = { fqn: "@cdktf/provider-aws.eksCluster.EksClusterIdentityList", version: "21.22.1" }; function eksClusterAccessConfigToTerraform(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 { authentication_mode: cdktf.stringToTerraform(struct.authenticationMode), bootstrap_cluster_creator_admin_permissions: cdktf.booleanToTerraform(struct.bootstrapClusterCreatorAdminPermissions), }; } function eksClusterAccessConfigToHclTerraform(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 = { authentication_mode: { value: cdktf.stringToHclTerraform(struct.authenticationMode), isBlock: false, type: "simple", storageClassType: "string", }, bootstrap_cluster_creator_admin_permissions: { value: cdktf.booleanToHclTerraform(struct.bootstrapClusterCreatorAdminPermissions), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class EksClusterAccessConfigOutputReference 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._authenticationMode !== undefined) { hasAnyValues = true; internalValueResult.authenticationMode = this._authenticationMode; } if (this._bootstrapClusterCreatorAdminPermissions !== undefined) { hasAnyValues = true; internalValueResult.bootstrapClusterCreatorAdminPermissions = this._bootstrapClusterCreatorAdminPermissions; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._authenticationMode = undefined; this._bootstrapClusterCreatorAdminPermissions = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._authenticationMode = value.authenticationMode; this._bootstrapClusterCreatorAdminPermissions = value.bootstrapClusterCreatorAdminPermissions; } } get authenticationMode() { return this.getStringAttribute('authentication_mode'); } set authenticationMode(value) { this._authenticationMode = value; } resetAuthenticationMode() { this._authenticationMode = undefined; } // Temporarily expose input value. Use with caution. get authenticationModeInput() { return this._authenticationMode; } get bootstrapClusterCreatorAdminPermissions() { return this.getBooleanAttribute('bootstrap_cluster_creator_admin_permissions'); } set bootstrapClusterCreatorAdminPermissions(value) { this._bootstrapClusterCreatorAdminPermissions = value; } resetBootstrapClusterCreatorAdminPermissions() { this._bootstrapClusterCreatorAdminPermissions = undefined; } // Temporarily expose input value. Use with caution. get bootstrapClusterCreatorAdminPermissionsInput() { return this._bootstrapClusterCreatorAdminPermissions; } } exports.EksClusterAccessConfigOutputReference = EksClusterAccessConfigOutputReference; _g = JSII_RTTI_SYMBOL_1; EksClusterAccessConfigOutputReference[_g] = { fqn: "@cdktf/provider-aws.eksCluster.EksClusterAccessConfigOutputReference", version: "21.22.1" }; function eksClusterComputeConfigToTerraform(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), node_pools: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.nodePools), node_role_arn: cdktf.stringToTerraform(struct.nodeRoleArn), }; } function eksClusterComputeConfigToHclTerraform(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", }, node_pools: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.nodePools), isBlock: false, type: "set", storageClassType: "stringList", }, node_role_arn: { value: cdktf.stringToHclTerraform(struct.nodeRoleArn), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class EksClusterComputeConfigOutputReference 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; } if (this._nodePools !== undefined) { hasAnyValues = true; internalValueResult.nodePools = this._nodePools; } if (this._nodeRoleArn !== undefined) { hasAnyValues = true; internalValueResult.nodeRoleArn = this._nodeRoleArn; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._enabled = undefined; this._nodePools = undefined; this._nodeRoleArn = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._enabled = value.enabled; this._nodePools = value.nodePools; this._nodeRoleArn = value.nodeRoleArn; } } 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; } get nodePools() { return cdktf.Fn.tolist(this.getListAttribute('node_pools')); } set nodePools(value) { this._nodePools = value; } resetNodePools() { this._nodePools = undefined; } // Temporarily expose input value. Use with caution. get nodePoolsInput() { return this._nodePools; } get nodeRoleArn() { return this.getStringAttribute('node_role_arn'); } set nodeRoleArn(value) { this._nodeRoleArn = value; } resetNodeRoleArn() { this._nodeRoleArn = undefined; } // Temporarily expose input value. Use with caution. get nodeRoleArnInput() { return this._nodeRoleArn; } } exports.EksClusterComputeConfigOutputReference = EksClusterComputeConfigOutputReference; _h = JSII_RTTI_SYMBOL_1; EksClusterComputeConfigOutputReference[_h] = { fqn: "@cdktf/provider-aws.eksCluster.EksClusterComputeConfigOutputReference", version: "21.22.1" }; function eksClusterControlPlaneScalingConfigToTerraform(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 { tier: cdktf.stringToTerraform(struct.tier), }; } function eksClusterControlPlaneScalingConfigToHclTerraform(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 = { tier: { value: cdktf.stringToHclTerraform(struct.tier), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class EksClusterControlPlaneScalingConfigOutputReference 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._tier !== undefined) { hasAnyValues = true; internalValueResult.tier = this._tier; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._tier = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._tier = value.tier; } } get tier() { return this.getStringAttribute('tier'); } set tier(value) { this._tier = value; } resetTier() { this._tier = undefined; } // Temporarily expose input value. Use with caution. get tierInput() { return this._tier; } } exports.EksClusterControlPlaneScalingConfigOutputReference = EksClusterControlPlaneScalingConfigOutputReference; _j = JSII_RTTI_SYMBOL_1; EksClusterControlPlaneScalingConfigOutputReference[_j] = { fqn: "@cdktf/provider-aws.eksCluster.EksClusterControlPlaneScalingConfigOutputReference", version: "21.22.1" }; function eksClusterEncryptionConfigProviderToTerraform(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 { key_arn: cdktf.stringToTerraform(struct.keyArn), }; } function eksClusterEncryptionConfigProviderToHclTerraform(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 = { key_arn: { value: cdktf.stringToHclTerraform(struct.keyArn), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class EksClusterEncryptionConfigProviderOutputReference 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._keyArn !== undefined) { hasAnyValues = true; internalValueResult.keyArn = this._keyArn; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._keyArn = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._keyArn = value.keyArn; } } get keyArn() { return this.getStringAttribute('key_arn'); } set keyArn(value) { this._keyArn = value; } // Temporarily expose input value. Use with caution. get keyArnInput() { return this._keyArn; } } exports.EksClusterEncryptionConfigProviderOutputReference = EksClusterEncryptionConfigProviderOutputReference; _k = JSII_RTTI_SYMBOL_1; EksClusterEncryptionConfigProviderOutputReference[_k] = { fqn: "@cdktf/provider-aws.eksCluster.EksClusterEncryptionConfigProviderOutputReference", version: "21.22.1" }; function eksClusterEncryptionConfigToTerraform(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 { resources: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resources), provider: eksClusterEncryptionConfigProviderToTerraform(struct.provider), }; } function eksClusterEncryptionConfigToHclTerraform(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 = { resources: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resources), isBlock: false, type: "set", storageClassType: "stringList", }, provider: { value: eksClusterEncryptionConfigProviderToHclTerraform(struct.provider), isBlock: true, type: "list", storageClassType: "EksClusterEncryptionConfigProviderList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class EksClusterEncryptionConfigOutputReference 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; // provider - computed: false, optional: false, required: true this._provider = new EksClusterEncryptionConfigProviderOutputReference(this, "provider"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._resources !== undefined) { hasAnyValues = true; internalValueResult.resources = this._resources; } if (this._provider?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.provider = this._provider?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._resources = undefined; this._provider.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._resources = value.resources; this._provider.internalValue = value.provider; } } get resources() { return cdktf.Fn.tolist(this.getListAttribute('resources')); } set resources(value) { this._resources = value; } // Temporarily expose input value. Use with caution. get resourcesInput() { return this._resources; } get provider() { return this._provider; } putProvider(value) { this._provider.internalValue = value; } // Temporarily expose input value. Use with caution. get providerInput() { return this._provider.internalValue; } } exports.EksClusterEncryptionConfigOutputReference = EksClusterEncryptionConfigOutputReference; _l = JSII_RTTI_SYMBOL_1; EksClusterEncryptionConfigOutputReference[_l] = { fqn: "@cdktf/provider-aws.eksCluster.EksClusterEncryptionConfigOutputReference", version: "21.22.1" }; function eksClusterKubernetesNetworkConfigElasticLoadBalancingToTerraform(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 eksClusterKubernetesNetworkConfigElasticLoadBalancingToHclTerraform(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 EksClusterKubernetesNetworkConfigElasticLoadBalancingOutputReference 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.EksClusterKubernetesNetworkConfigElasticLoadBalancingOutputReference = EksClusterKubernetesNetworkConfigElasticLoadBalancingOutputReference; _m = JSII_RTTI_SYMBOL_1; EksClusterKubernetesNetworkConfigElasticLoadBalancingOutputReference[_m] = { fqn: "@cdktf/provider-aws.eksCluster.EksClusterKubernetesNetworkConfigElasticLoadBalancingOutputReference", version: "21.22.1" }; function eksClusterKubernetesNetworkConfigToTerraform(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 { ip_family: cdktf.stringToTerraform(struct.ipFamily), service_ipv4_cidr: cdktf.stringToTerraform(struct.serviceIpv4Cidr), elastic_load_balancing: eksClusterKubernetesNetworkConfigElasticLoadBalancingToTerraform(struct.elasticLoadBalancing), }; } function eksClusterKubernetesNetworkConfigToHclTerraform(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 = { ip_family: { value: cdktf.stringToHclTerraform(struct.ipFamily), isBlock: false, type: "simple", storageClassType: "string", }, service_ipv4_cidr: { value: cdktf.stringToHclTerraform(struct.serviceIpv4Cidr), isBlock: false, type: "simple", storageClassType: "string", }, elastic_load_balancing: { value: eksClusterKubernetesNetworkConfigElasticLoadBalancingToHclTerraform(struct.elasticLoadBalancing), isBlock: true, type: "list", storageClassType: "EksClusterKubernetesNetworkConfigElasticLoadBalancingList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class EksClusterKubernetesNetworkConfigOutputReference 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; // elastic_load_balancing - computed: false, optional: true, required: false this._elasticLoadBalancing = new EksClusterKubernetesNetworkConfigElasticLoadBalancingOutputReference(this, "elastic_load_balancing"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._ipFamily !== undefined) { hasAnyValues = true; internalValueResult.ipFamily = this._ipFamily; } if (this._serviceIpv4Cidr !== undefined) { hasAnyValues = true; internalValueResult.serviceIpv4Cidr = this._serviceIpv4Cidr; } if (this._elasticLoadBalancing?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.elasticLoadBalancing = this._elasticLoadBalancing?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._ipFamily = undefined; this._serviceIpv4Cidr = undefined; this._elasticLoadBalancing.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._ipFamily = value.ipFamily; this._serviceIpv4Cidr = value.serviceIpv4Cidr; this._elasticLoadBalancing.internalValue = value.elasticLoadBalancing; } } get ipFamily() { return this.getStringAttribute('ip_family'); } set ipFamily(value) { this._ipFamily = value; } resetIpFamily() { this._ipFamily = undefined; } // Temporarily expose input value. Use with caution. get ipFamilyInput() { return this._ipFamily; } get serviceIpv4Cidr() { return this.getStringAttribute('service_ipv4_cidr'); } set serviceIpv4Cidr(value) { this._serviceIpv4Cidr = value; } resetServiceIpv4Cidr() { this._serviceIpv4Cidr = undefined; } // Temporarily expose input value. Use with caution. get serviceIpv4CidrInput() { return this._serviceIpv4Cidr; } // service_ipv6_cidr - computed: true, optional: false, required: false get serviceIpv6Cidr() { return this.getStringAttribute('service_ipv6_cidr'); } get elasticLoadBalancing() { return this._elasticLoadBalancing; } putElasticLoadBalancing(value) { this._elasticLoadBalancing.internalValue = value; } resetElasticLoadBalancing() { this._elasticLoadBalancing.internalValue = undefined; } // Temporarily expose input value. Use with caution. get elasticLoadBalancingInput() { return this._elasticLoadBalancing.internalValue; } } exports.EksClusterKubernetesNetworkConfigOutputReference = EksClusterKubernetesNetworkConfigOutputReference; _o = JSII_RTTI_SYMBOL_1; EksClusterKubernetesNetworkConfigOutputReference[_o] = { fqn: "@cdktf/provider-aws.eksCluster.EksClusterKubernetesNetworkConfigOutputReference", version: "21.22.1" }; function eksClusterOutpostConfigControlPlanePlacementToTerraform(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 { group_name: cdktf.stringToTerraform(struct.groupName), }; } function eksClusterOutpostConfigControlPlanePlacementToHclTerraform(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 = { group_name: { value: cdktf.stringToHclTerraform(struct.groupName), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class EksClusterOutpostConfigControlPlanePlacementOutputReference 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._groupName !== undefined) { hasAnyValues = true; internalValueResult.groupName = this._groupName; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._groupName = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._groupName = value.groupName; } } get groupName() { return this.getStringAttribute('group_name'); } set groupName(value) { this._groupName = value; } // Temporarily expose input value. Use with caution. get groupNameInput() { return this._groupName; } } exports.EksClusterOutpostConfigControlPlanePlacementOutputReference = EksClusterOutpostConfigControlPlanePlacementOutputReference; _p = JSII_RTTI_SYMBOL_1; EksClusterOutpostConfigControlPlanePlacementOutputReference[_p] = { fqn: "@cdktf/provider-aws.eksCluster.EksClusterOutpostConfigControlPlanePlacementOutputReference", version: "21.22.1" }; function eksClusterOutpostConfigToTerraform(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 { control_plane_instance_type: cdktf.stringToTerraform(struct.controlPlaneInstanceType), outpost_arns: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.outpostArns), control_plane_placement: eksClusterOutpostConfigControlPlanePlacementToTerraform(struct.controlPlanePlacement), }; } function eksClusterOutpostConfigToHclTerraform(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 = { control_plane_instance_type: { value: cdktf.stringToHclTerraform(struct.controlPlaneInstanceType), isBlock: false, type: "simple", storageClassType: "string", }, outpost_arns: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.outpostArns), isBlock: false, type: "set", storageClassType: "stringList", }, control_plane_placement: { value: eksClusterOutpostConfigControlPlanePlacementToHclTerraform(struct.controlPlanePlacement), isBlock: true, type: "list", storageClassType: "EksClusterOutpostConfigControlPlanePlacementList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class EksClusterOutpostConfigOutputReference 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; // control_plane_placement - computed: false, optional: true, required: false this._controlPlanePlacement = new EksClusterOutpostConfigControlPlanePlacementOutputReference(this, "control_plane_placement"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._controlPlaneInstanceType !== undefined) { hasAnyValues = true; internalValueResult.controlPlaneInstanceType = this._controlPlaneInstanceType; } if (this._outpostArns !== undefined) { hasAnyValues = true; internalValueResult.outpostArns = this._outpostArns; } if (this._controlPlanePlacement?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.controlPlanePlacement = this._controlPlanePlacement?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._controlPlaneInstanceType = undefined; this._outpostArns = undefined; this._controlPlanePlacement.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._controlPlaneInstanceType = value.controlPlaneInstanceType; this._outpostArns = value.outpostArns; this._controlPlanePlacement.internalValue = value.controlPlanePlacement; } } get controlPlaneInstanceType() { return this.getStringAttribute('control_plane_instance_type'); } set controlPlaneInstanceType(value) { this._controlPlaneInstanceType = value; } // Temporarily expose input value. Use with caution. get controlPlaneInstanceTypeInput() { return this._controlPlaneInstanceType; } get outpostArns() { return cdktf.Fn.tolist(this.getListAttribute('outpost_arns')); } set outpostArns(value) { this._outpostArns = value; } // Temporarily expose input value. Use with caution. get outpostArnsInput() { return this._outpostArns; } get controlPlanePlacement() { return this._controlPlanePlacement;