UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

1,217 lines 256 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o; Object.defineProperty(exports, "__esModule", { value: true }); exports.VerifiedaccessEndpoint = exports.VerifiedaccessEndpointTimeoutsOutputReference = exports.VerifiedaccessEndpointSseSpecificationOutputReference = exports.VerifiedaccessEndpointRdsOptionsOutputReference = exports.VerifiedaccessEndpointNetworkInterfaceOptionsOutputReference = exports.VerifiedaccessEndpointNetworkInterfaceOptionsPortRangeList = exports.VerifiedaccessEndpointNetworkInterfaceOptionsPortRangeOutputReference = exports.VerifiedaccessEndpointLoadBalancerOptionsOutputReference = exports.VerifiedaccessEndpointLoadBalancerOptionsPortRangeList = exports.VerifiedaccessEndpointLoadBalancerOptionsPortRangeOutputReference = exports.VerifiedaccessEndpointCidrOptionsOutputReference = exports.VerifiedaccessEndpointCidrOptionsPortRangeList = exports.VerifiedaccessEndpointCidrOptionsPortRangeOutputReference = void 0; exports.verifiedaccessEndpointCidrOptionsPortRangeToTerraform = verifiedaccessEndpointCidrOptionsPortRangeToTerraform; exports.verifiedaccessEndpointCidrOptionsPortRangeToHclTerraform = verifiedaccessEndpointCidrOptionsPortRangeToHclTerraform; exports.verifiedaccessEndpointCidrOptionsToTerraform = verifiedaccessEndpointCidrOptionsToTerraform; exports.verifiedaccessEndpointCidrOptionsToHclTerraform = verifiedaccessEndpointCidrOptionsToHclTerraform; exports.verifiedaccessEndpointLoadBalancerOptionsPortRangeToTerraform = verifiedaccessEndpointLoadBalancerOptionsPortRangeToTerraform; exports.verifiedaccessEndpointLoadBalancerOptionsPortRangeToHclTerraform = verifiedaccessEndpointLoadBalancerOptionsPortRangeToHclTerraform; exports.verifiedaccessEndpointLoadBalancerOptionsToTerraform = verifiedaccessEndpointLoadBalancerOptionsToTerraform; exports.verifiedaccessEndpointLoadBalancerOptionsToHclTerraform = verifiedaccessEndpointLoadBalancerOptionsToHclTerraform; exports.verifiedaccessEndpointNetworkInterfaceOptionsPortRangeToTerraform = verifiedaccessEndpointNetworkInterfaceOptionsPortRangeToTerraform; exports.verifiedaccessEndpointNetworkInterfaceOptionsPortRangeToHclTerraform = verifiedaccessEndpointNetworkInterfaceOptionsPortRangeToHclTerraform; exports.verifiedaccessEndpointNetworkInterfaceOptionsToTerraform = verifiedaccessEndpointNetworkInterfaceOptionsToTerraform; exports.verifiedaccessEndpointNetworkInterfaceOptionsToHclTerraform = verifiedaccessEndpointNetworkInterfaceOptionsToHclTerraform; exports.verifiedaccessEndpointRdsOptionsToTerraform = verifiedaccessEndpointRdsOptionsToTerraform; exports.verifiedaccessEndpointRdsOptionsToHclTerraform = verifiedaccessEndpointRdsOptionsToHclTerraform; exports.verifiedaccessEndpointSseSpecificationToTerraform = verifiedaccessEndpointSseSpecificationToTerraform; exports.verifiedaccessEndpointSseSpecificationToHclTerraform = verifiedaccessEndpointSseSpecificationToHclTerraform; exports.verifiedaccessEndpointTimeoutsToTerraform = verifiedaccessEndpointTimeoutsToTerraform; exports.verifiedaccessEndpointTimeoutsToHclTerraform = verifiedaccessEndpointTimeoutsToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function verifiedaccessEndpointCidrOptionsPortRangeToTerraform(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 { from_port: cdktf.numberToTerraform(struct.fromPort), to_port: cdktf.numberToTerraform(struct.toPort), }; } function verifiedaccessEndpointCidrOptionsPortRangeToHclTerraform(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 = { from_port: { value: cdktf.numberToHclTerraform(struct.fromPort), isBlock: false, type: "simple", storageClassType: "number", }, to_port: { value: cdktf.numberToHclTerraform(struct.toPort), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class VerifiedaccessEndpointCidrOptionsPortRangeOutputReference 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._fromPort !== undefined) { hasAnyValues = true; internalValueResult.fromPort = this._fromPort; } if (this._toPort !== undefined) { hasAnyValues = true; internalValueResult.toPort = this._toPort; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._fromPort = undefined; this._toPort = 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._fromPort = value.fromPort; this._toPort = value.toPort; } } get fromPort() { return this.getNumberAttribute('from_port'); } set fromPort(value) { this._fromPort = value; } // Temporarily expose input value. Use with caution. get fromPortInput() { return this._fromPort; } get toPort() { return this.getNumberAttribute('to_port'); } set toPort(value) { this._toPort = value; } // Temporarily expose input value. Use with caution. get toPortInput() { return this._toPort; } } exports.VerifiedaccessEndpointCidrOptionsPortRangeOutputReference = VerifiedaccessEndpointCidrOptionsPortRangeOutputReference; _a = JSII_RTTI_SYMBOL_1; VerifiedaccessEndpointCidrOptionsPortRangeOutputReference[_a] = { fqn: "@cdktf/provider-aws.verifiedaccessEndpoint.VerifiedaccessEndpointCidrOptionsPortRangeOutputReference", version: "21.22.1" }; class VerifiedaccessEndpointCidrOptionsPortRangeList 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 VerifiedaccessEndpointCidrOptionsPortRangeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.VerifiedaccessEndpointCidrOptionsPortRangeList = VerifiedaccessEndpointCidrOptionsPortRangeList; _b = JSII_RTTI_SYMBOL_1; VerifiedaccessEndpointCidrOptionsPortRangeList[_b] = { fqn: "@cdktf/provider-aws.verifiedaccessEndpoint.VerifiedaccessEndpointCidrOptionsPortRangeList", version: "21.22.1" }; function verifiedaccessEndpointCidrOptionsToTerraform(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 { cidr: cdktf.stringToTerraform(struct.cidr), protocol: cdktf.stringToTerraform(struct.protocol), subnet_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.subnetIds), port_range: cdktf.listMapper(verifiedaccessEndpointCidrOptionsPortRangeToTerraform, true)(struct.portRange), }; } function verifiedaccessEndpointCidrOptionsToHclTerraform(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 = { cidr: { value: cdktf.stringToHclTerraform(struct.cidr), isBlock: false, type: "simple", storageClassType: "string", }, protocol: { value: cdktf.stringToHclTerraform(struct.protocol), isBlock: false, type: "simple", storageClassType: "string", }, subnet_ids: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.subnetIds), isBlock: false, type: "set", storageClassType: "stringList", }, port_range: { value: cdktf.listMapperHcl(verifiedaccessEndpointCidrOptionsPortRangeToHclTerraform, true)(struct.portRange), isBlock: true, type: "set", storageClassType: "VerifiedaccessEndpointCidrOptionsPortRangeList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class VerifiedaccessEndpointCidrOptionsOutputReference 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; // port_range - computed: false, optional: false, required: true this._portRange = new VerifiedaccessEndpointCidrOptionsPortRangeList(this, "port_range", true); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._cidr !== undefined) { hasAnyValues = true; internalValueResult.cidr = this._cidr; } if (this._protocol !== undefined) { hasAnyValues = true; internalValueResult.protocol = this._protocol; } if (this._subnetIds !== undefined) { hasAnyValues = true; internalValueResult.subnetIds = this._subnetIds; } if (this._portRange?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.portRange = this._portRange?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._cidr = undefined; this._protocol = undefined; this._subnetIds = undefined; this._portRange.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._cidr = value.cidr; this._protocol = value.protocol; this._subnetIds = value.subnetIds; this._portRange.internalValue = value.portRange; } } get cidr() { return this.getStringAttribute('cidr'); } set cidr(value) { this._cidr = value; } // Temporarily expose input value. Use with caution. get cidrInput() { return this._cidr; } get protocol() { return this.getStringAttribute('protocol'); } set protocol(value) { this._protocol = value; } resetProtocol() { this._protocol = undefined; } // Temporarily expose input value. Use with caution. get protocolInput() { return this._protocol; } get subnetIds() { return cdktf.Fn.tolist(this.getListAttribute('subnet_ids')); } set subnetIds(value) { this._subnetIds = value; } resetSubnetIds() { this._subnetIds = undefined; } // Temporarily expose input value. Use with caution. get subnetIdsInput() { return this._subnetIds; } get portRange() { return this._portRange; } putPortRange(value) { this._portRange.internalValue = value; } // Temporarily expose input value. Use with caution. get portRangeInput() { return this._portRange.internalValue; } } exports.VerifiedaccessEndpointCidrOptionsOutputReference = VerifiedaccessEndpointCidrOptionsOutputReference; _c = JSII_RTTI_SYMBOL_1; VerifiedaccessEndpointCidrOptionsOutputReference[_c] = { fqn: "@cdktf/provider-aws.verifiedaccessEndpoint.VerifiedaccessEndpointCidrOptionsOutputReference", version: "21.22.1" }; function verifiedaccessEndpointLoadBalancerOptionsPortRangeToTerraform(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 { from_port: cdktf.numberToTerraform(struct.fromPort), to_port: cdktf.numberToTerraform(struct.toPort), }; } function verifiedaccessEndpointLoadBalancerOptionsPortRangeToHclTerraform(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 = { from_port: { value: cdktf.numberToHclTerraform(struct.fromPort), isBlock: false, type: "simple", storageClassType: "number", }, to_port: { value: cdktf.numberToHclTerraform(struct.toPort), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class VerifiedaccessEndpointLoadBalancerOptionsPortRangeOutputReference 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._fromPort !== undefined) { hasAnyValues = true; internalValueResult.fromPort = this._fromPort; } if (this._toPort !== undefined) { hasAnyValues = true; internalValueResult.toPort = this._toPort; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._fromPort = undefined; this._toPort = 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._fromPort = value.fromPort; this._toPort = value.toPort; } } get fromPort() { return this.getNumberAttribute('from_port'); } set fromPort(value) { this._fromPort = value; } // Temporarily expose input value. Use with caution. get fromPortInput() { return this._fromPort; } get toPort() { return this.getNumberAttribute('to_port'); } set toPort(value) { this._toPort = value; } // Temporarily expose input value. Use with caution. get toPortInput() { return this._toPort; } } exports.VerifiedaccessEndpointLoadBalancerOptionsPortRangeOutputReference = VerifiedaccessEndpointLoadBalancerOptionsPortRangeOutputReference; _d = JSII_RTTI_SYMBOL_1; VerifiedaccessEndpointLoadBalancerOptionsPortRangeOutputReference[_d] = { fqn: "@cdktf/provider-aws.verifiedaccessEndpoint.VerifiedaccessEndpointLoadBalancerOptionsPortRangeOutputReference", version: "21.22.1" }; class VerifiedaccessEndpointLoadBalancerOptionsPortRangeList 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 VerifiedaccessEndpointLoadBalancerOptionsPortRangeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.VerifiedaccessEndpointLoadBalancerOptionsPortRangeList = VerifiedaccessEndpointLoadBalancerOptionsPortRangeList; _e = JSII_RTTI_SYMBOL_1; VerifiedaccessEndpointLoadBalancerOptionsPortRangeList[_e] = { fqn: "@cdktf/provider-aws.verifiedaccessEndpoint.VerifiedaccessEndpointLoadBalancerOptionsPortRangeList", version: "21.22.1" }; function verifiedaccessEndpointLoadBalancerOptionsToTerraform(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 { load_balancer_arn: cdktf.stringToTerraform(struct.loadBalancerArn), port: cdktf.numberToTerraform(struct.port), protocol: cdktf.stringToTerraform(struct.protocol), subnet_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.subnetIds), port_range: cdktf.listMapper(verifiedaccessEndpointLoadBalancerOptionsPortRangeToTerraform, true)(struct.portRange), }; } function verifiedaccessEndpointLoadBalancerOptionsToHclTerraform(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 = { load_balancer_arn: { value: cdktf.stringToHclTerraform(struct.loadBalancerArn), isBlock: false, type: "simple", storageClassType: "string", }, port: { value: cdktf.numberToHclTerraform(struct.port), isBlock: false, type: "simple", storageClassType: "number", }, protocol: { value: cdktf.stringToHclTerraform(struct.protocol), isBlock: false, type: "simple", storageClassType: "string", }, subnet_ids: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.subnetIds), isBlock: false, type: "set", storageClassType: "stringList", }, port_range: { value: cdktf.listMapperHcl(verifiedaccessEndpointLoadBalancerOptionsPortRangeToHclTerraform, true)(struct.portRange), isBlock: true, type: "set", storageClassType: "VerifiedaccessEndpointLoadBalancerOptionsPortRangeList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class VerifiedaccessEndpointLoadBalancerOptionsOutputReference 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; // port_range - computed: false, optional: true, required: false this._portRange = new VerifiedaccessEndpointLoadBalancerOptionsPortRangeList(this, "port_range", true); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._loadBalancerArn !== undefined) { hasAnyValues = true; internalValueResult.loadBalancerArn = this._loadBalancerArn; } if (this._port !== undefined) { hasAnyValues = true; internalValueResult.port = this._port; } if (this._protocol !== undefined) { hasAnyValues = true; internalValueResult.protocol = this._protocol; } if (this._subnetIds !== undefined) { hasAnyValues = true; internalValueResult.subnetIds = this._subnetIds; } if (this._portRange?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.portRange = this._portRange?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._loadBalancerArn = undefined; this._port = undefined; this._protocol = undefined; this._subnetIds = undefined; this._portRange.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._loadBalancerArn = value.loadBalancerArn; this._port = value.port; this._protocol = value.protocol; this._subnetIds = value.subnetIds; this._portRange.internalValue = value.portRange; } } get loadBalancerArn() { return this.getStringAttribute('load_balancer_arn'); } set loadBalancerArn(value) { this._loadBalancerArn = value; } resetLoadBalancerArn() { this._loadBalancerArn = undefined; } // Temporarily expose input value. Use with caution. get loadBalancerArnInput() { return this._loadBalancerArn; } get port() { return this.getNumberAttribute('port'); } set port(value) { this._port = value; } resetPort() { this._port = undefined; } // Temporarily expose input value. Use with caution. get portInput() { return this._port; } get protocol() { return this.getStringAttribute('protocol'); } set protocol(value) { this._protocol = value; } resetProtocol() { this._protocol = undefined; } // Temporarily expose input value. Use with caution. get protocolInput() { return this._protocol; } get subnetIds() { return cdktf.Fn.tolist(this.getListAttribute('subnet_ids')); } set subnetIds(value) { this._subnetIds = value; } resetSubnetIds() { this._subnetIds = undefined; } // Temporarily expose input value. Use with caution. get subnetIdsInput() { return this._subnetIds; } get portRange() { return this._portRange; } putPortRange(value) { this._portRange.internalValue = value; } resetPortRange() { this._portRange.internalValue = undefined; } // Temporarily expose input value. Use with caution. get portRangeInput() { return this._portRange.internalValue; } } exports.VerifiedaccessEndpointLoadBalancerOptionsOutputReference = VerifiedaccessEndpointLoadBalancerOptionsOutputReference; _f = JSII_RTTI_SYMBOL_1; VerifiedaccessEndpointLoadBalancerOptionsOutputReference[_f] = { fqn: "@cdktf/provider-aws.verifiedaccessEndpoint.VerifiedaccessEndpointLoadBalancerOptionsOutputReference", version: "21.22.1" }; function verifiedaccessEndpointNetworkInterfaceOptionsPortRangeToTerraform(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 { from_port: cdktf.numberToTerraform(struct.fromPort), to_port: cdktf.numberToTerraform(struct.toPort), }; } function verifiedaccessEndpointNetworkInterfaceOptionsPortRangeToHclTerraform(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 = { from_port: { value: cdktf.numberToHclTerraform(struct.fromPort), isBlock: false, type: "simple", storageClassType: "number", }, to_port: { value: cdktf.numberToHclTerraform(struct.toPort), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class VerifiedaccessEndpointNetworkInterfaceOptionsPortRangeOutputReference 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._fromPort !== undefined) { hasAnyValues = true; internalValueResult.fromPort = this._fromPort; } if (this._toPort !== undefined) { hasAnyValues = true; internalValueResult.toPort = this._toPort; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._fromPort = undefined; this._toPort = 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._fromPort = value.fromPort; this._toPort = value.toPort; } } get fromPort() { return this.getNumberAttribute('from_port'); } set fromPort(value) { this._fromPort = value; } // Temporarily expose input value. Use with caution. get fromPortInput() { return this._fromPort; } get toPort() { return this.getNumberAttribute('to_port'); } set toPort(value) { this._toPort = value; } // Temporarily expose input value. Use with caution. get toPortInput() { return this._toPort; } } exports.VerifiedaccessEndpointNetworkInterfaceOptionsPortRangeOutputReference = VerifiedaccessEndpointNetworkInterfaceOptionsPortRangeOutputReference; _g = JSII_RTTI_SYMBOL_1; VerifiedaccessEndpointNetworkInterfaceOptionsPortRangeOutputReference[_g] = { fqn: "@cdktf/provider-aws.verifiedaccessEndpoint.VerifiedaccessEndpointNetworkInterfaceOptionsPortRangeOutputReference", version: "21.22.1" }; class VerifiedaccessEndpointNetworkInterfaceOptionsPortRangeList 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 VerifiedaccessEndpointNetworkInterfaceOptionsPortRangeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.VerifiedaccessEndpointNetworkInterfaceOptionsPortRangeList = VerifiedaccessEndpointNetworkInterfaceOptionsPortRangeList; _h = JSII_RTTI_SYMBOL_1; VerifiedaccessEndpointNetworkInterfaceOptionsPortRangeList[_h] = { fqn: "@cdktf/provider-aws.verifiedaccessEndpoint.VerifiedaccessEndpointNetworkInterfaceOptionsPortRangeList", version: "21.22.1" }; function verifiedaccessEndpointNetworkInterfaceOptionsToTerraform(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 { network_interface_id: cdktf.stringToTerraform(struct.networkInterfaceId), port: cdktf.numberToTerraform(struct.port), protocol: cdktf.stringToTerraform(struct.protocol), port_range: cdktf.listMapper(verifiedaccessEndpointNetworkInterfaceOptionsPortRangeToTerraform, true)(struct.portRange), }; } function verifiedaccessEndpointNetworkInterfaceOptionsToHclTerraform(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 = { network_interface_id: { value: cdktf.stringToHclTerraform(struct.networkInterfaceId), isBlock: false, type: "simple", storageClassType: "string", }, port: { value: cdktf.numberToHclTerraform(struct.port), isBlock: false, type: "simple", storageClassType: "number", }, protocol: { value: cdktf.stringToHclTerraform(struct.protocol), isBlock: false, type: "simple", storageClassType: "string", }, port_range: { value: cdktf.listMapperHcl(verifiedaccessEndpointNetworkInterfaceOptionsPortRangeToHclTerraform, true)(struct.portRange), isBlock: true, type: "set", storageClassType: "VerifiedaccessEndpointNetworkInterfaceOptionsPortRangeList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class VerifiedaccessEndpointNetworkInterfaceOptionsOutputReference 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; // port_range - computed: false, optional: true, required: false this._portRange = new VerifiedaccessEndpointNetworkInterfaceOptionsPortRangeList(this, "port_range", true); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._networkInterfaceId !== undefined) { hasAnyValues = true; internalValueResult.networkInterfaceId = this._networkInterfaceId; } if (this._port !== undefined) { hasAnyValues = true; internalValueResult.port = this._port; } if (this._protocol !== undefined) { hasAnyValues = true; internalValueResult.protocol = this._protocol; } if (this._portRange?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.portRange = this._portRange?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._networkInterfaceId = undefined; this._port = undefined; this._protocol = undefined; this._portRange.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._networkInterfaceId = value.networkInterfaceId; this._port = value.port; this._protocol = value.protocol; this._portRange.internalValue = value.portRange; } } get networkInterfaceId() { return this.getStringAttribute('network_interface_id'); } set networkInterfaceId(value) { this._networkInterfaceId = value; } resetNetworkInterfaceId() { this._networkInterfaceId = undefined; } // Temporarily expose input value. Use with caution. get networkInterfaceIdInput() { return this._networkInterfaceId; } get port() { return this.getNumberAttribute('port'); } set port(value) { this._port = value; } resetPort() { this._port = undefined; } // Temporarily expose input value. Use with caution. get portInput() { return this._port; } get protocol() { return this.getStringAttribute('protocol'); } set protocol(value) { this._protocol = value; } resetProtocol() { this._protocol = undefined; } // Temporarily expose input value. Use with caution. get protocolInput() { return this._protocol; } get portRange() { return this._portRange; } putPortRange(value) { this._portRange.internalValue = value; } resetPortRange() { this._portRange.internalValue = undefined; } // Temporarily expose input value. Use with caution. get portRangeInput() { return this._portRange.internalValue; } } exports.VerifiedaccessEndpointNetworkInterfaceOptionsOutputReference = VerifiedaccessEndpointNetworkInterfaceOptionsOutputReference; _j = JSII_RTTI_SYMBOL_1; VerifiedaccessEndpointNetworkInterfaceOptionsOutputReference[_j] = { fqn: "@cdktf/provider-aws.verifiedaccessEndpoint.VerifiedaccessEndpointNetworkInterfaceOptionsOutputReference", version: "21.22.1" }; function verifiedaccessEndpointRdsOptionsToTerraform(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 { port: cdktf.numberToTerraform(struct.port), protocol: cdktf.stringToTerraform(struct.protocol), rds_db_cluster_arn: cdktf.stringToTerraform(struct.rdsDbClusterArn), rds_db_instance_arn: cdktf.stringToTerraform(struct.rdsDbInstanceArn), rds_db_proxy_arn: cdktf.stringToTerraform(struct.rdsDbProxyArn), rds_endpoint: cdktf.stringToTerraform(struct.rdsEndpoint), subnet_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.subnetIds), }; } function verifiedaccessEndpointRdsOptionsToHclTerraform(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 = { port: { value: cdktf.numberToHclTerraform(struct.port), isBlock: false, type: "simple", storageClassType: "number", }, protocol: { value: cdktf.stringToHclTerraform(struct.protocol), isBlock: false, type: "simple", storageClassType: "string", }, rds_db_cluster_arn: { value: cdktf.stringToHclTerraform(struct.rdsDbClusterArn), isBlock: false, type: "simple", storageClassType: "string", }, rds_db_instance_arn: { value: cdktf.stringToHclTerraform(struct.rdsDbInstanceArn), isBlock: false, type: "simple", storageClassType: "string", }, rds_db_proxy_arn: { value: cdktf.stringToHclTerraform(struct.rdsDbProxyArn), isBlock: false, type: "simple", storageClassType: "string", }, rds_endpoint: { value: cdktf.stringToHclTerraform(struct.rdsEndpoint), isBlock: false, type: "simple", storageClassType: "string", }, subnet_ids: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.subnetIds), isBlock: false, type: "set", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class VerifiedaccessEndpointRdsOptionsOutputReference 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._port !== undefined) { hasAnyValues = true; internalValueResult.port = this._port; } if (this._protocol !== undefined) { hasAnyValues = true; internalValueResult.protocol = this._protocol; } if (this._rdsDbClusterArn !== undefined) { hasAnyValues = true; internalValueResult.rdsDbClusterArn = this._rdsDbClusterArn; } if (this._rdsDbInstanceArn !== undefined) { hasAnyValues = true; internalValueResult.rdsDbInstanceArn = this._rdsDbInstanceArn; } if (this._rdsDbProxyArn !== undefined) { hasAnyValues = true; internalValueResult.rdsDbProxyArn = this._rdsDbProxyArn; } if (this._rdsEndpoint !== undefined) { hasAnyValues = true; internalValueResult.rdsEndpoint = this._rdsEndpoint; } if (this._subnetIds !== undefined) { hasAnyValues = true; internalValueResult.subnetIds = this._subnetIds; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._port = undefined; this._protocol = undefined; this._rdsDbClusterArn = undefined; this._rdsDbInstanceArn = undefined; this._rdsDbProxyArn = undefined; this._rdsEndpoint = undefined; this._subnetIds = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._port = value.port; this._protocol = value.protocol; this._rdsDbClusterArn = value.rdsDbClusterArn; this._rdsDbInstanceArn = value.rdsDbInstanceArn; this._rdsDbProxyArn = value.rdsDbProxyArn; this._rdsEndpoint = value.rdsEndpoint; this._subnetIds = value.subnetIds; } } get port() { return this.getNumberAttribute('port'); } set port(value) { this._port = value; } resetPort() { this._port = undefined; } // Temporarily expose input value. Use with caution. get portInput() { return this._port; } get protocol() { return this.getStringAttribute('protocol'); } set protocol(value) { this._protocol = value; } resetProtocol() { this._protocol = undefined; } // Temporarily expose input value. Use with caution. get protocolInput() { return this._protocol; } get rdsDbClusterArn() { return this.getStringAttribute('rds_db_cluster_arn'); } set rdsDbClusterArn(value) { this._rdsDbClusterArn = value; } resetRdsDbClusterArn() { this._rdsDbClusterArn = undefined; } // Temporarily expose input value. Use with caution. get rdsDbClusterArnInput() { return this._rdsDbClusterArn; } get rdsDbInstanceArn() { return this.getStringAttribute('rds_db_instance_arn'); } set rdsDbInstanceArn(value) { this._rdsDbInstanceArn = value; } resetRdsDbInstanceArn() { this._rdsDbInstanceArn = undefined; } // Temporarily expose input value. Use with caution. get rdsDbInstanceArnInput() { return this._rdsDbInstanceArn; } get rdsDbProxyArn() { return this.getStringAttribute('rds_db_proxy_arn'); } set rdsDbProxyArn(value) { this._rdsDbProxyArn = value; } resetRdsDbProxyArn() { this._rdsDbProxyArn = undefined; } // Temporarily expose input value. Use with caution. get rdsDbProxyArnInput() { return this._rdsDbProxyArn; } get rdsEndpoint() { return this.getStringAttribute('rds_endpoint'); } set rdsEndpoint(value) { this._rdsEndpoint = value; } resetRdsEndpoint() { this._rdsEndpoint = undefined; } // Temporarily expose input value. Use with caution. get rdsEndpointInput() { return this._rdsEndpoint; } get subnetIds() { return cdktf.Fn.tolist(this.getListAttribute('subnet_ids')); } set subnetIds(value) { this._subnetIds = value; } resetSubnetIds() { this._subnetIds = undefined; } // Temporarily expose input value. Use with caution. get subnetIdsInput() { return this._subnetIds; } } exports.VerifiedaccessEndpointRdsOptionsOutputReference = VerifiedaccessEndpointRdsOptionsOutputReference; _k = JSII_RTTI_SYMBOL_1; VerifiedaccessEndpointRdsOptionsOutputReference[_k] = { fqn: "@cdktf/provider-aws.verifiedaccessEndpoint.VerifiedaccessEndpointRdsOptionsOutputReference", version: "21.22.1" }; function verifiedaccessEndpointSseSpecificationToTerraform(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 { customer_managed_key_enabled: cdktf.booleanToTerraform(struct.customerManagedKeyEnabled), kms_key_arn: cdktf.stringToTerraform(struct.kmsKeyArn), }; } function verifiedaccessEndpointSseSpecificationToHclTerraform(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 = { customer_managed_key_enabled: { value: cdktf.booleanToHclTerraform(struct.customerManagedKeyEnabled), isBlock: false, type: "simple", storageClassType: "boolean", }, kms_key_arn: { value: cdktf.stringToHclTerraform(struct.kmsKeyArn), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class VerifiedaccessEndpointSseSpecificationOutputReference 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._customerManagedKeyEnabled !== undefined) { hasAnyValues = true; internalValueResult.customerManagedKeyEnabled = this._customerManagedKeyEnabled; } if (this._kmsKeyArn !== undefined) { hasAnyValues = true; internalValueResult.kmsKeyArn = this._kmsKeyArn; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._customerManagedKeyEnabled = undefined; this._kmsKeyArn = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._customerManagedKeyEnabled = value.customerManagedKeyEnabled; this._kmsKeyArn = value.kmsKeyArn; } } get customerManagedKeyEnabled() { return this.getBooleanAttribute('customer_managed_key_enabled'); } set customerManagedKeyEnabled(value) { this._customerManagedKeyEnabled = value; } resetCustomerManagedKeyEnabled() { this._customerManagedKeyEnabled = undefined; } // Temporarily expose input value. Use with caution. get customerManagedKeyEnabledInput() { return this._customerManagedKeyEnabled; } get kmsKeyArn() { return this.getStringAttribute('kms_key_arn'); } set kmsKeyArn(value) { this._kmsKeyArn = value; } resetKmsKeyArn() { this._kmsKeyArn = undefined; } // Temporarily expose input value. Use with caution. get kmsKeyArnInput() { return this._kmsKeyArn; } } exports.VerifiedaccessEndpointSseSpecificationOutputReference = VerifiedaccessEndpointSseSpecificationOutputReference; _l = JSII_RTTI_SYMBOL_1; VerifiedaccessEn