@cdktf/provider-aws
Version:
Prebuilt aws Provider for Terraform CDK (cdktf)
1,012 lines • 153 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
Object.defineProperty(exports, "__esModule", { value: true });
exports.VpclatticeResourceConfiguration = exports.VpclatticeResourceConfigurationTimeoutsOutputReference = exports.VpclatticeResourceConfigurationResourceConfigurationDefinitionList = exports.VpclatticeResourceConfigurationResourceConfigurationDefinitionOutputReference = exports.VpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceList = exports.VpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceOutputReference = exports.VpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceList = exports.VpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceOutputReference = exports.VpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceList = exports.VpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceOutputReference = void 0;
exports.vpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceToTerraform = vpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceToTerraform;
exports.vpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceToHclTerraform = vpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceToHclTerraform;
exports.vpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceToTerraform = vpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceToTerraform;
exports.vpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceToHclTerraform = vpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceToHclTerraform;
exports.vpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceToTerraform = vpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceToTerraform;
exports.vpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceToHclTerraform = vpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceToHclTerraform;
exports.vpclatticeResourceConfigurationResourceConfigurationDefinitionToTerraform = vpclatticeResourceConfigurationResourceConfigurationDefinitionToTerraform;
exports.vpclatticeResourceConfigurationResourceConfigurationDefinitionToHclTerraform = vpclatticeResourceConfigurationResourceConfigurationDefinitionToHclTerraform;
exports.vpclatticeResourceConfigurationTimeoutsToTerraform = vpclatticeResourceConfigurationTimeoutsToTerraform;
exports.vpclatticeResourceConfigurationTimeoutsToHclTerraform = vpclatticeResourceConfigurationTimeoutsToHclTerraform;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function vpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceToTerraform(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 {
arn: cdktf.stringToTerraform(struct.arn),
};
}
function vpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceToHclTerraform(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 = {
arn: {
value: cdktf.stringToHclTerraform(struct.arn),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class VpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceOutputReference 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._arn !== undefined) {
hasAnyValues = true;
internalValueResult.arn = this._arn;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._arn = 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._arn = value.arn;
}
}
get arn() {
return this.getStringAttribute('arn');
}
set arn(value) {
this._arn = value;
}
// Temporarily expose input value. Use with caution.
get arnInput() {
return this._arn;
}
}
exports.VpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceOutputReference = VpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceOutputReference;
_a = JSII_RTTI_SYMBOL_1;
VpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceOutputReference[_a] = { fqn: "@cdktf/provider-aws.vpclatticeResourceConfiguration.VpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceOutputReference", version: "21.22.1" };
class VpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceList 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 VpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.VpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceList = VpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceList;
_b = JSII_RTTI_SYMBOL_1;
VpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceList[_b] = { fqn: "@cdktf/provider-aws.vpclatticeResourceConfiguration.VpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceList", version: "21.22.1" };
function vpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceToTerraform(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 {
domain_name: cdktf.stringToTerraform(struct.domainName),
ip_address_type: cdktf.stringToTerraform(struct.ipAddressType),
};
}
function vpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceToHclTerraform(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 = {
domain_name: {
value: cdktf.stringToHclTerraform(struct.domainName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
ip_address_type: {
value: cdktf.stringToHclTerraform(struct.ipAddressType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class VpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceOutputReference 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._domainName !== undefined) {
hasAnyValues = true;
internalValueResult.domainName = this._domainName;
}
if (this._ipAddressType !== undefined) {
hasAnyValues = true;
internalValueResult.ipAddressType = this._ipAddressType;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._domainName = undefined;
this._ipAddressType = 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._domainName = value.domainName;
this._ipAddressType = value.ipAddressType;
}
}
get domainName() {
return this.getStringAttribute('domain_name');
}
set domainName(value) {
this._domainName = value;
}
// Temporarily expose input value. Use with caution.
get domainNameInput() {
return this._domainName;
}
get ipAddressType() {
return this.getStringAttribute('ip_address_type');
}
set ipAddressType(value) {
this._ipAddressType = value;
}
// Temporarily expose input value. Use with caution.
get ipAddressTypeInput() {
return this._ipAddressType;
}
}
exports.VpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceOutputReference = VpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceOutputReference;
_c = JSII_RTTI_SYMBOL_1;
VpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceOutputReference[_c] = { fqn: "@cdktf/provider-aws.vpclatticeResourceConfiguration.VpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceOutputReference", version: "21.22.1" };
class VpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceList 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 VpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.VpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceList = VpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceList;
_d = JSII_RTTI_SYMBOL_1;
VpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceList[_d] = { fqn: "@cdktf/provider-aws.vpclatticeResourceConfiguration.VpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceList", version: "21.22.1" };
function vpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceToTerraform(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_address: cdktf.stringToTerraform(struct.ipAddress),
};
}
function vpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceToHclTerraform(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_address: {
value: cdktf.stringToHclTerraform(struct.ipAddress),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class VpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceOutputReference 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._ipAddress !== undefined) {
hasAnyValues = true;
internalValueResult.ipAddress = this._ipAddress;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._ipAddress = 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._ipAddress = value.ipAddress;
}
}
get ipAddress() {
return this.getStringAttribute('ip_address');
}
set ipAddress(value) {
this._ipAddress = value;
}
// Temporarily expose input value. Use with caution.
get ipAddressInput() {
return this._ipAddress;
}
}
exports.VpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceOutputReference = VpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceOutputReference;
_e = JSII_RTTI_SYMBOL_1;
VpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceOutputReference[_e] = { fqn: "@cdktf/provider-aws.vpclatticeResourceConfiguration.VpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceOutputReference", version: "21.22.1" };
class VpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceList 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 VpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.VpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceList = VpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceList;
_f = JSII_RTTI_SYMBOL_1;
VpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceList[_f] = { fqn: "@cdktf/provider-aws.vpclatticeResourceConfiguration.VpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceList", version: "21.22.1" };
function vpclatticeResourceConfigurationResourceConfigurationDefinitionToTerraform(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 {
arn_resource: cdktf.listMapper(vpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceToTerraform, true)(struct.arnResource),
dns_resource: cdktf.listMapper(vpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceToTerraform, true)(struct.dnsResource),
ip_resource: cdktf.listMapper(vpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceToTerraform, true)(struct.ipResource),
};
}
function vpclatticeResourceConfigurationResourceConfigurationDefinitionToHclTerraform(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 = {
arn_resource: {
value: cdktf.listMapperHcl(vpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceToHclTerraform, true)(struct.arnResource),
isBlock: true,
type: "list",
storageClassType: "VpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceList",
},
dns_resource: {
value: cdktf.listMapperHcl(vpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceToHclTerraform, true)(struct.dnsResource),
isBlock: true,
type: "list",
storageClassType: "VpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceList",
},
ip_resource: {
value: cdktf.listMapperHcl(vpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceToHclTerraform, true)(struct.ipResource),
isBlock: true,
type: "list",
storageClassType: "VpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class VpclatticeResourceConfigurationResourceConfigurationDefinitionOutputReference 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;
// arn_resource - computed: false, optional: true, required: false
this._arnResource = new VpclatticeResourceConfigurationResourceConfigurationDefinitionArnResourceList(this, "arn_resource", false);
// dns_resource - computed: false, optional: true, required: false
this._dnsResource = new VpclatticeResourceConfigurationResourceConfigurationDefinitionDnsResourceList(this, "dns_resource", false);
// ip_resource - computed: false, optional: true, required: false
this._ipResource = new VpclatticeResourceConfigurationResourceConfigurationDefinitionIpResourceList(this, "ip_resource", false);
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._arnResource?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.arnResource = this._arnResource?.internalValue;
}
if (this._dnsResource?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.dnsResource = this._dnsResource?.internalValue;
}
if (this._ipResource?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.ipResource = this._ipResource?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._arnResource.internalValue = undefined;
this._dnsResource.internalValue = undefined;
this._ipResource.internalValue = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._arnResource.internalValue = value.arnResource;
this._dnsResource.internalValue = value.dnsResource;
this._ipResource.internalValue = value.ipResource;
}
}
get arnResource() {
return this._arnResource;
}
putArnResource(value) {
this._arnResource.internalValue = value;
}
resetArnResource() {
this._arnResource.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get arnResourceInput() {
return this._arnResource.internalValue;
}
get dnsResource() {
return this._dnsResource;
}
putDnsResource(value) {
this._dnsResource.internalValue = value;
}
resetDnsResource() {
this._dnsResource.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get dnsResourceInput() {
return this._dnsResource.internalValue;
}
get ipResource() {
return this._ipResource;
}
putIpResource(value) {
this._ipResource.internalValue = value;
}
resetIpResource() {
this._ipResource.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get ipResourceInput() {
return this._ipResource.internalValue;
}
}
exports.VpclatticeResourceConfigurationResourceConfigurationDefinitionOutputReference = VpclatticeResourceConfigurationResourceConfigurationDefinitionOutputReference;
_g = JSII_RTTI_SYMBOL_1;
VpclatticeResourceConfigurationResourceConfigurationDefinitionOutputReference[_g] = { fqn: "@cdktf/provider-aws.vpclatticeResourceConfiguration.VpclatticeResourceConfigurationResourceConfigurationDefinitionOutputReference", version: "21.22.1" };
class VpclatticeResourceConfigurationResourceConfigurationDefinitionList 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 VpclatticeResourceConfigurationResourceConfigurationDefinitionOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.VpclatticeResourceConfigurationResourceConfigurationDefinitionList = VpclatticeResourceConfigurationResourceConfigurationDefinitionList;
_h = JSII_RTTI_SYMBOL_1;
VpclatticeResourceConfigurationResourceConfigurationDefinitionList[_h] = { fqn: "@cdktf/provider-aws.vpclatticeResourceConfiguration.VpclatticeResourceConfigurationResourceConfigurationDefinitionList", version: "21.22.1" };
function vpclatticeResourceConfigurationTimeoutsToTerraform(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 {
create: cdktf.stringToTerraform(struct.create),
delete: cdktf.stringToTerraform(struct.delete),
update: cdktf.stringToTerraform(struct.update),
};
}
function vpclatticeResourceConfigurationTimeoutsToHclTerraform(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 = {
create: {
value: cdktf.stringToHclTerraform(struct.create),
isBlock: false,
type: "simple",
storageClassType: "string",
},
delete: {
value: cdktf.stringToHclTerraform(struct.delete),
isBlock: false,
type: "simple",
storageClassType: "string",
},
update: {
value: cdktf.stringToHclTerraform(struct.update),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class VpclatticeResourceConfigurationTimeoutsOutputReference 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);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._create !== undefined) {
hasAnyValues = true;
internalValueResult.create = this._create;
}
if (this._delete !== undefined) {
hasAnyValues = true;
internalValueResult.delete = this._delete;
}
if (this._update !== undefined) {
hasAnyValues = true;
internalValueResult.update = this._update;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._create = undefined;
this._delete = undefined;
this._update = 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._create = value.create;
this._delete = value.delete;
this._update = value.update;
}
}
get create() {
return this.getStringAttribute('create');
}
set create(value) {
this._create = value;
}
resetCreate() {
this._create = undefined;
}
// Temporarily expose input value. Use with caution.
get createInput() {
return this._create;
}
get delete() {
return this.getStringAttribute('delete');
}
set delete(value) {
this._delete = value;
}
resetDelete() {
this._delete = undefined;
}
// Temporarily expose input value. Use with caution.
get deleteInput() {
return this._delete;
}
get update() {
return this.getStringAttribute('update');
}
set update(value) {
this._update = value;
}
resetUpdate() {
this._update = undefined;
}
// Temporarily expose input value. Use with caution.
get updateInput() {
return this._update;
}
}
exports.VpclatticeResourceConfigurationTimeoutsOutputReference = VpclatticeResourceConfigurationTimeoutsOutputReference;
_j = JSII_RTTI_SYMBOL_1;
VpclatticeResourceConfigurationTimeoutsOutputReference[_j] = { fqn: "@cdktf/provider-aws.vpclatticeResourceConfiguration.VpclatticeResourceConfigurationTimeoutsOutputReference", version: "21.22.1" };
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/vpclattice_resource_configuration aws_vpclattice_resource_configuration}
*/
class VpclatticeResourceConfiguration extends cdktf.TerraformResource {
// ==============
// STATIC Methods
// ==============
/**
* Generates CDKTF code for importing a VpclatticeResourceConfiguration resource upon running "cdktf plan <stack-name>"
* @param scope The scope in which to define this construct
* @param importToId The construct id used in the generated config for the VpclatticeResourceConfiguration to import
* @param importFromId The id of the existing VpclatticeResourceConfiguration that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/vpclattice_resource_configuration#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the VpclatticeResourceConfiguration to import is found
*/
static generateConfigForImport(scope, importToId, importFromId, provider) {
return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "aws_vpclattice_resource_configuration", importId: importFromId, provider });
}
// ===========
// INITIALIZER
// ===========
/**
* Create a new {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/vpclattice_resource_configuration aws_vpclattice_resource_configuration} Resource
*
* @param scope The scope in which to define this construct
* @param id The scoped construct ID. Must be unique amongst siblings in the same scope
* @param options VpclatticeResourceConfigurationConfig
*/
constructor(scope, id, config) {
super(scope, id, {
terraformResourceType: 'aws_vpclattice_resource_configuration',
terraformGeneratorMetadata: {
providerName: 'aws',
providerVersion: '6.25.0',
providerVersionConstraint: '~> 6.0'
},
provider: config.provider,
dependsOn: config.dependsOn,
count: config.count,
lifecycle: config.lifecycle,
provisioners: config.provisioners,
connection: config.connection,
forEach: config.forEach
});
// tags_all - computed: true, optional: false, required: false
this._tagsAll = new cdktf.StringMap(this, "tags_all");
// resource_configuration_definition - computed: false, optional: true, required: false
this._resourceConfigurationDefinition = new VpclatticeResourceConfigurationResourceConfigurationDefinitionList(this, "resource_configuration_definition", false);
// timeouts - computed: false, optional: true, required: false
this._timeouts = new VpclatticeResourceConfigurationTimeoutsOutputReference(this, "timeouts");
this._allowAssociationToShareableServiceNetwork = config.allowAssociationToShareableServiceNetwork;
this._customDomainName = config.customDomainName;
this._domainVerificationId = config.domainVerificationId;
this._name = config.name;
this._portRanges = config.portRanges;
this._protocol = config.protocol;
this._region = config.region;
this._resourceConfigurationGroupId = config.resourceConfigurationGroupId;
this._resourceGatewayIdentifier = config.resourceGatewayIdentifier;
this._tags = config.tags;
this._type = config.type;
this._resourceConfigurationDefinition.internalValue = config.resourceConfigurationDefinition;
this._timeouts.internalValue = config.timeouts;
}
get allowAssociationToShareableServiceNetwork() {
return this.getBooleanAttribute('allow_association_to_shareable_service_network');
}
set allowAssociationToShareableServiceNetwork(value) {
this._allowAssociationToShareableServiceNetwork = value;
}
resetAllowAssociationToShareableServiceNetwork() {
this._allowAssociationToShareableServiceNetwork = undefined;
}
// Temporarily expose input value. Use with caution.
get allowAssociationToShareableServiceNetworkInput() {
return this._allowAssociationToShareableServiceNetwork;
}
// arn - computed: true, optional: false, required: false
get arn() {
return this.getStringAttribute('arn');
}
get customDomainName() {
return this.getStringAttribute('custom_domain_name');
}
set customDomainName(value) {
this._customDomainName = value;
}
resetCustomDomainName() {
this._customDomainName = undefined;
}
// Temporarily expose input value. Use with caution.
get customDomainNameInput() {
return this._customDomainName;
}
// domain_verification_arn - computed: true, optional: false, required: false
get domainVerificationArn() {
return this.getStringAttribute('domain_verification_arn');
}
get domainVerificationId() {
return this.getStringAttribute('domain_verification_id');
}
set domainVerificationId(value) {
this._domainVerificationId = value;
}
resetDomainVerificationId() {
this._domainVerificationId = undefined;
}
// Temporarily expose input value. Use with caution.
get domainVerificationIdInput() {
return this._domainVerificationId;
}
// domain_verification_status - computed: true, optional: false, required: false
get domainVerificationStatus() {
return this.getStringAttribute('domain_verification_status');
}
// id - computed: true, optional: false, required: false
get id() {
return this.getStringAttribute('id');
}
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 portRanges() {
return cdktf.Fn.tolist(this.getListAttribute('port_ranges'));
}
set portRanges(value) {
this._portRanges = value;
}
resetPortRanges() {
this._portRanges = undefined;
}
// Temporarily expose input value. Use with caution.
get portRangesInput() {
return this._portRanges;
}
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 region() {
return this.getStringAttribute('region');
}
set region(value) {
this._region = value;
}
resetRegion() {
this._region = undefined;
}
// Temporarily expose input value. Use with caution.
get regionInput() {
return this._region;
}
get resourceConfigurationGroupId() {
return this.getStringAttribute('resource_configuration_group_id');
}
set resourceConfigurationGroupId(value) {
this._resourceConfigurationGroupId = value;
}
resetResourceConfigurationGroupId() {
this._resourceConfigurationGroupId = undefined;
}
// Temporarily expose input value. Use with caution.
get resourceConfigurationGroupIdInput() {
return this._resourceConfigurationGroupId;
}
get resourceGatewayIdentifier() {
return this.getStringAttribute('resource_gateway_identifier');
}
set resourceGatewayIdentifier(value) {
this._resourceGatewayIdentifier = value;
}
resetResourceGatewayIdentifier() {
this._resourceGatewayIdentifier = undefined;
}
// Temporarily expose input value. Use with caution.
get resourceGatewayIdentifierInput() {
return this._resourceGatewayIdentifier;
}
get tags() {
return this.getStringMapAttribute('tags');
}
set tags(value) {
this._tags = value;
}
resetTags() {
this._tags = undefined;
}
// Temporarily expose input value. Use with caution.
get tagsInput() {
return this._tags;
}
get tagsAll() {
return this._tagsAll;
}
get type() {
return this.getStringAttribute('type');
}
set type(value) {
this._type = value;
}
resetType() {
this._type = undefined;
}
// Temporarily expose input value. Use with caution.
get typeInput() {
return this._type;
}
get resourceConfigurationDefinition() {
return this._resourceConfigurationDefinition;
}
putResourceConfigurationDefinition(value) {
this._resourceConfigurationDefinition.internalValue = value;
}
resetResourceConfigurationDefinition() {
this._resourceConfigurationDefinition.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get resourceConfigurationDefinitionInput() {
return this._resourceConfigurationDefinition.internalValue;
}
get timeouts() {
return this._timeouts;
}
putTimeouts(value) {
this._timeouts.internalValue = value;
}
resetTimeouts() {
this._timeouts.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get timeoutsInput() {
return this._timeouts.internalValue;
}
// =========
// SYNTHESIS
// =========
synthesizeAttributes() {
return {
allow_association_to_shareable_service_network: cdktf.booleanToTerraform(this._allowAssociationToShareableServiceNetwork),
custom_domain_name: cdktf.stringToTerraform(this._customDomainName),
domain_verification_id: cdktf.stringToTerraform(this._domainVerificationId),
name: cdktf.stringToTerraform(this._name),
port_ranges: cdktf.listMapper(cdktf.stringToTerraform, false)(this._portRanges),
protocol: cdktf.stringToTerraform(this._protocol),
region: cdktf.stringToTerraform(this._region),
resource_configuration_group_id: cdktf.stringToTerraform(this._resourceConfigurationGroupId),
resource_gateway_identifier: cdktf.stringToTerraform(this._resourceGatewayIdentifier),
tags: cdktf.hashMapper(cdktf.stringToTerraform)(this._tags),
type: cdktf.stringToTerraform(this._type),
resource_configuration_definition: cdktf.listMapper(vpclatticeResourceConfigurationResourceConfigurationDefinitionToTerraform, true)(this._resourceConfigurationDefinition.internalValue),
timeouts: vpclatticeResourceConfigurationTimeoutsToTerraform(this._timeouts.internalValue),
};
}
synthesizeHclAttributes() {
const attrs = {
allow_association_to_shareable_service_network: {
value: cdktf.booleanToHclTerraform(this._allowAssociationToShareableServiceNetwork),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
custom_domain_name: {
value: cdktf.stringToHclTerraform(this._customDomainName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
domain_verification_id: {
value: cdktf.stringToHclTerraform(this._domainVerificationId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
name: {
value: cdktf.stringToHclTerraform(this._name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
port_ranges: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._portRanges),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
protocol: {
value: cdktf.stringToHclTerraform(this._protocol),
isBlock: false,
type: "simple",
storageClassType: "string",
},
region: {
value: cdktf.stringToHclTerraform(this._region),
isBlock: false,
type: "simple",
storageClassType: "string",
},
resource_configuration_group_id: {
value: cdktf.stringToHclTerraform(this._resourceConfigurationGroupId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
resource_gateway_identifier: {
value: cdktf.stringToHclTerraform(this._resourceGatewayIdentifier),
isBlock: false,
type: "simple",
storageClassType: "string",
},
tags: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._tags),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
type: {
value: cdktf.stringToHclTerraform(this._type),
isBlock: false,
type: "simple",
storageClassType: "string",
},
resource_configuration_definition: {
value: cdktf.listMapperHcl(vpclatticeResourceConfigurationResourceConfigurationDefinitionToHclTerraform, true)(this._resourceConfigurationDefinition.internalValue),
isBlock: true,
type: "list",
storageClassType: "VpclatticeResourceConfigurationResourceConfigurationDefinitionList",
},
timeouts: {
value: vpclatticeResourceConfigurationTimeoutsToHclTerraform(this._timeouts.internalValue),
isBlock: true,
type: "struct",
storageClassType: "VpclatticeResourceConfigurationTimeouts",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
}
exports.VpclatticeResourceConfiguration = VpclatticeResourceConfiguration;
_k = JSII_RTTI_SYMBOL_1;
VpclatticeResourceConfiguration[_k] = { fqn: "@cdktf/provider-aws.vpclatticeResourceConfiguration.VpclatticeResourceConfiguration", version: "21.22.1" };
// =================
// STATIC PROPERTIES
// =================
VpclatticeResourceConfiguration.tfResourceType = "aws_vpclattice_resource_configuration";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdnBjbGF0dGljZS1yZXNvdXJjZS1jb25maWd1cmF0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFnRkEsb0xBUUM7QUFHRCwwTEFnQkM7QUEwRkQsb0xBU0M7QUFHRCwwTEFzQkM7QUF5R0Qsa0xBUUM7QUFHRCx3TEFnQkM7QUFvR0QsOEpBVUM7QUFHRCxvS0E0QkM7QUFtSkQsZ0hBVUM7QUFHRCxzSEE0QkM7O0FBM3FCRCwrQkFBK0I7QUF1RS9CLFNBQWdCLG9GQUFvRixDQUFDLE1BQXNHO0lBQ3pNLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE9BQU87UUFDTCxHQUFHLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxHQUFHLENBQUM7S0FDMUMsQ0FBQTtBQUNILENBQUM7QUFHRCxTQUFnQix1RkFBdUYsQ0FBQyxNQUFzRztJQUM1TSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQUMsT0FBTyxNQUFNLENBQUM7SUFBQyxDQUFDO0lBQzVGLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvSEFBb0gsQ0FBQyxDQUFDO0lBQ3hJLENBQUM7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