@cdktf/provider-aws
Version:
Prebuilt aws Provider for Terraform CDK (cdktf)
1,090 lines • 402 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CloudwatchEventTarget = exports.CloudwatchEventTargetSqsTargetOutputReference = exports.CloudwatchEventTargetSagemakerPipelineTargetOutputReference = exports.CloudwatchEventTargetSagemakerPipelineTargetPipelineParameterListStructList = exports.CloudwatchEventTargetSagemakerPipelineTargetPipelineParameterListStructOutputReference = exports.CloudwatchEventTargetRunCommandTargetsList = exports.CloudwatchEventTargetRunCommandTargetsOutputReference = exports.CloudwatchEventTargetRetryPolicyOutputReference = exports.CloudwatchEventTargetRedshiftTargetOutputReference = exports.CloudwatchEventTargetKinesisTargetOutputReference = exports.CloudwatchEventTargetInputTransformerOutputReference = exports.CloudwatchEventTargetHttpTargetOutputReference = exports.CloudwatchEventTargetEcsTargetOutputReference = exports.CloudwatchEventTargetEcsTargetPlacementConstraintList = exports.CloudwatchEventTargetEcsTargetPlacementConstraintOutputReference = exports.CloudwatchEventTargetEcsTargetOrderedPlacementStrategyList = exports.CloudwatchEventTargetEcsTargetOrderedPlacementStrategyOutputReference = exports.CloudwatchEventTargetEcsTargetNetworkConfigurationOutputReference = exports.CloudwatchEventTargetEcsTargetCapacityProviderStrategyList = exports.CloudwatchEventTargetEcsTargetCapacityProviderStrategyOutputReference = exports.CloudwatchEventTargetDeadLetterConfigOutputReference = exports.CloudwatchEventTargetBatchTargetOutputReference = exports.CloudwatchEventTargetAppsyncTargetOutputReference = void 0;
exports.cloudwatchEventTargetAppsyncTargetToTerraform = cloudwatchEventTargetAppsyncTargetToTerraform;
exports.cloudwatchEventTargetAppsyncTargetToHclTerraform = cloudwatchEventTargetAppsyncTargetToHclTerraform;
exports.cloudwatchEventTargetBatchTargetToTerraform = cloudwatchEventTargetBatchTargetToTerraform;
exports.cloudwatchEventTargetBatchTargetToHclTerraform = cloudwatchEventTargetBatchTargetToHclTerraform;
exports.cloudwatchEventTargetDeadLetterConfigToTerraform = cloudwatchEventTargetDeadLetterConfigToTerraform;
exports.cloudwatchEventTargetDeadLetterConfigToHclTerraform = cloudwatchEventTargetDeadLetterConfigToHclTerraform;
exports.cloudwatchEventTargetEcsTargetCapacityProviderStrategyToTerraform = cloudwatchEventTargetEcsTargetCapacityProviderStrategyToTerraform;
exports.cloudwatchEventTargetEcsTargetCapacityProviderStrategyToHclTerraform = cloudwatchEventTargetEcsTargetCapacityProviderStrategyToHclTerraform;
exports.cloudwatchEventTargetEcsTargetNetworkConfigurationToTerraform = cloudwatchEventTargetEcsTargetNetworkConfigurationToTerraform;
exports.cloudwatchEventTargetEcsTargetNetworkConfigurationToHclTerraform = cloudwatchEventTargetEcsTargetNetworkConfigurationToHclTerraform;
exports.cloudwatchEventTargetEcsTargetOrderedPlacementStrategyToTerraform = cloudwatchEventTargetEcsTargetOrderedPlacementStrategyToTerraform;
exports.cloudwatchEventTargetEcsTargetOrderedPlacementStrategyToHclTerraform = cloudwatchEventTargetEcsTargetOrderedPlacementStrategyToHclTerraform;
exports.cloudwatchEventTargetEcsTargetPlacementConstraintToTerraform = cloudwatchEventTargetEcsTargetPlacementConstraintToTerraform;
exports.cloudwatchEventTargetEcsTargetPlacementConstraintToHclTerraform = cloudwatchEventTargetEcsTargetPlacementConstraintToHclTerraform;
exports.cloudwatchEventTargetEcsTargetToTerraform = cloudwatchEventTargetEcsTargetToTerraform;
exports.cloudwatchEventTargetEcsTargetToHclTerraform = cloudwatchEventTargetEcsTargetToHclTerraform;
exports.cloudwatchEventTargetHttpTargetToTerraform = cloudwatchEventTargetHttpTargetToTerraform;
exports.cloudwatchEventTargetHttpTargetToHclTerraform = cloudwatchEventTargetHttpTargetToHclTerraform;
exports.cloudwatchEventTargetInputTransformerToTerraform = cloudwatchEventTargetInputTransformerToTerraform;
exports.cloudwatchEventTargetInputTransformerToHclTerraform = cloudwatchEventTargetInputTransformerToHclTerraform;
exports.cloudwatchEventTargetKinesisTargetToTerraform = cloudwatchEventTargetKinesisTargetToTerraform;
exports.cloudwatchEventTargetKinesisTargetToHclTerraform = cloudwatchEventTargetKinesisTargetToHclTerraform;
exports.cloudwatchEventTargetRedshiftTargetToTerraform = cloudwatchEventTargetRedshiftTargetToTerraform;
exports.cloudwatchEventTargetRedshiftTargetToHclTerraform = cloudwatchEventTargetRedshiftTargetToHclTerraform;
exports.cloudwatchEventTargetRetryPolicyToTerraform = cloudwatchEventTargetRetryPolicyToTerraform;
exports.cloudwatchEventTargetRetryPolicyToHclTerraform = cloudwatchEventTargetRetryPolicyToHclTerraform;
exports.cloudwatchEventTargetRunCommandTargetsToTerraform = cloudwatchEventTargetRunCommandTargetsToTerraform;
exports.cloudwatchEventTargetRunCommandTargetsToHclTerraform = cloudwatchEventTargetRunCommandTargetsToHclTerraform;
exports.cloudwatchEventTargetSagemakerPipelineTargetPipelineParameterListStructToTerraform = cloudwatchEventTargetSagemakerPipelineTargetPipelineParameterListStructToTerraform;
exports.cloudwatchEventTargetSagemakerPipelineTargetPipelineParameterListStructToHclTerraform = cloudwatchEventTargetSagemakerPipelineTargetPipelineParameterListStructToHclTerraform;
exports.cloudwatchEventTargetSagemakerPipelineTargetToTerraform = cloudwatchEventTargetSagemakerPipelineTargetToTerraform;
exports.cloudwatchEventTargetSagemakerPipelineTargetToHclTerraform = cloudwatchEventTargetSagemakerPipelineTargetToHclTerraform;
exports.cloudwatchEventTargetSqsTargetToTerraform = cloudwatchEventTargetSqsTargetToTerraform;
exports.cloudwatchEventTargetSqsTargetToHclTerraform = cloudwatchEventTargetSqsTargetToHclTerraform;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function cloudwatchEventTargetAppsyncTargetToTerraform(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 {
graphql_operation: cdktf.stringToTerraform(struct.graphqlOperation),
};
}
function cloudwatchEventTargetAppsyncTargetToHclTerraform(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 = {
graphql_operation: {
value: cdktf.stringToHclTerraform(struct.graphqlOperation),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class CloudwatchEventTargetAppsyncTargetOutputReference 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._graphqlOperation !== undefined) {
hasAnyValues = true;
internalValueResult.graphqlOperation = this._graphqlOperation;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._graphqlOperation = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._graphqlOperation = value.graphqlOperation;
}
}
get graphqlOperation() {
return this.getStringAttribute('graphql_operation');
}
set graphqlOperation(value) {
this._graphqlOperation = value;
}
resetGraphqlOperation() {
this._graphqlOperation = undefined;
}
// Temporarily expose input value. Use with caution.
get graphqlOperationInput() {
return this._graphqlOperation;
}
}
exports.CloudwatchEventTargetAppsyncTargetOutputReference = CloudwatchEventTargetAppsyncTargetOutputReference;
_a = JSII_RTTI_SYMBOL_1;
CloudwatchEventTargetAppsyncTargetOutputReference[_a] = { fqn: "@cdktf/provider-aws.cloudwatchEventTarget.CloudwatchEventTargetAppsyncTargetOutputReference", version: "21.22.1" };
function cloudwatchEventTargetBatchTargetToTerraform(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 {
array_size: cdktf.numberToTerraform(struct.arraySize),
job_attempts: cdktf.numberToTerraform(struct.jobAttempts),
job_definition: cdktf.stringToTerraform(struct.jobDefinition),
job_name: cdktf.stringToTerraform(struct.jobName),
};
}
function cloudwatchEventTargetBatchTargetToHclTerraform(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 = {
array_size: {
value: cdktf.numberToHclTerraform(struct.arraySize),
isBlock: false,
type: "simple",
storageClassType: "number",
},
job_attempts: {
value: cdktf.numberToHclTerraform(struct.jobAttempts),
isBlock: false,
type: "simple",
storageClassType: "number",
},
job_definition: {
value: cdktf.stringToHclTerraform(struct.jobDefinition),
isBlock: false,
type: "simple",
storageClassType: "string",
},
job_name: {
value: cdktf.stringToHclTerraform(struct.jobName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class CloudwatchEventTargetBatchTargetOutputReference 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._arraySize !== undefined) {
hasAnyValues = true;
internalValueResult.arraySize = this._arraySize;
}
if (this._jobAttempts !== undefined) {
hasAnyValues = true;
internalValueResult.jobAttempts = this._jobAttempts;
}
if (this._jobDefinition !== undefined) {
hasAnyValues = true;
internalValueResult.jobDefinition = this._jobDefinition;
}
if (this._jobName !== undefined) {
hasAnyValues = true;
internalValueResult.jobName = this._jobName;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._arraySize = undefined;
this._jobAttempts = undefined;
this._jobDefinition = undefined;
this._jobName = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._arraySize = value.arraySize;
this._jobAttempts = value.jobAttempts;
this._jobDefinition = value.jobDefinition;
this._jobName = value.jobName;
}
}
get arraySize() {
return this.getNumberAttribute('array_size');
}
set arraySize(value) {
this._arraySize = value;
}
resetArraySize() {
this._arraySize = undefined;
}
// Temporarily expose input value. Use with caution.
get arraySizeInput() {
return this._arraySize;
}
get jobAttempts() {
return this.getNumberAttribute('job_attempts');
}
set jobAttempts(value) {
this._jobAttempts = value;
}
resetJobAttempts() {
this._jobAttempts = undefined;
}
// Temporarily expose input value. Use with caution.
get jobAttemptsInput() {
return this._jobAttempts;
}
get jobDefinition() {
return this.getStringAttribute('job_definition');
}
set jobDefinition(value) {
this._jobDefinition = value;
}
// Temporarily expose input value. Use with caution.
get jobDefinitionInput() {
return this._jobDefinition;
}
get jobName() {
return this.getStringAttribute('job_name');
}
set jobName(value) {
this._jobName = value;
}
// Temporarily expose input value. Use with caution.
get jobNameInput() {
return this._jobName;
}
}
exports.CloudwatchEventTargetBatchTargetOutputReference = CloudwatchEventTargetBatchTargetOutputReference;
_b = JSII_RTTI_SYMBOL_1;
CloudwatchEventTargetBatchTargetOutputReference[_b] = { fqn: "@cdktf/provider-aws.cloudwatchEventTarget.CloudwatchEventTargetBatchTargetOutputReference", version: "21.22.1" };
function cloudwatchEventTargetDeadLetterConfigToTerraform(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 cloudwatchEventTargetDeadLetterConfigToHclTerraform(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 CloudwatchEventTargetDeadLetterConfigOutputReference 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._arn !== undefined) {
hasAnyValues = true;
internalValueResult.arn = this._arn;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._arn = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._arn = value.arn;
}
}
get arn() {
return this.getStringAttribute('arn');
}
set arn(value) {
this._arn = value;
}
resetArn() {
this._arn = undefined;
}
// Temporarily expose input value. Use with caution.
get arnInput() {
return this._arn;
}
}
exports.CloudwatchEventTargetDeadLetterConfigOutputReference = CloudwatchEventTargetDeadLetterConfigOutputReference;
_c = JSII_RTTI_SYMBOL_1;
CloudwatchEventTargetDeadLetterConfigOutputReference[_c] = { fqn: "@cdktf/provider-aws.cloudwatchEventTarget.CloudwatchEventTargetDeadLetterConfigOutputReference", version: "21.22.1" };
function cloudwatchEventTargetEcsTargetCapacityProviderStrategyToTerraform(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 {
base: cdktf.numberToTerraform(struct.base),
capacity_provider: cdktf.stringToTerraform(struct.capacityProvider),
weight: cdktf.numberToTerraform(struct.weight),
};
}
function cloudwatchEventTargetEcsTargetCapacityProviderStrategyToHclTerraform(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 = {
base: {
value: cdktf.numberToHclTerraform(struct.base),
isBlock: false,
type: "simple",
storageClassType: "number",
},
capacity_provider: {
value: cdktf.stringToHclTerraform(struct.capacityProvider),
isBlock: false,
type: "simple",
storageClassType: "string",
},
weight: {
value: cdktf.numberToHclTerraform(struct.weight),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class CloudwatchEventTargetEcsTargetCapacityProviderStrategyOutputReference 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._base !== undefined) {
hasAnyValues = true;
internalValueResult.base = this._base;
}
if (this._capacityProvider !== undefined) {
hasAnyValues = true;
internalValueResult.capacityProvider = this._capacityProvider;
}
if (this._weight !== undefined) {
hasAnyValues = true;
internalValueResult.weight = this._weight;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._base = undefined;
this._capacityProvider = undefined;
this._weight = 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._base = value.base;
this._capacityProvider = value.capacityProvider;
this._weight = value.weight;
}
}
get base() {
return this.getNumberAttribute('base');
}
set base(value) {
this._base = value;
}
resetBase() {
this._base = undefined;
}
// Temporarily expose input value. Use with caution.
get baseInput() {
return this._base;
}
get capacityProvider() {
return this.getStringAttribute('capacity_provider');
}
set capacityProvider(value) {
this._capacityProvider = value;
}
// Temporarily expose input value. Use with caution.
get capacityProviderInput() {
return this._capacityProvider;
}
get weight() {
return this.getNumberAttribute('weight');
}
set weight(value) {
this._weight = value;
}
resetWeight() {
this._weight = undefined;
}
// Temporarily expose input value. Use with caution.
get weightInput() {
return this._weight;
}
}
exports.CloudwatchEventTargetEcsTargetCapacityProviderStrategyOutputReference = CloudwatchEventTargetEcsTargetCapacityProviderStrategyOutputReference;
_d = JSII_RTTI_SYMBOL_1;
CloudwatchEventTargetEcsTargetCapacityProviderStrategyOutputReference[_d] = { fqn: "@cdktf/provider-aws.cloudwatchEventTarget.CloudwatchEventTargetEcsTargetCapacityProviderStrategyOutputReference", version: "21.22.1" };
class CloudwatchEventTargetEcsTargetCapacityProviderStrategyList 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 CloudwatchEventTargetEcsTargetCapacityProviderStrategyOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.CloudwatchEventTargetEcsTargetCapacityProviderStrategyList = CloudwatchEventTargetEcsTargetCapacityProviderStrategyList;
_e = JSII_RTTI_SYMBOL_1;
CloudwatchEventTargetEcsTargetCapacityProviderStrategyList[_e] = { fqn: "@cdktf/provider-aws.cloudwatchEventTarget.CloudwatchEventTargetEcsTargetCapacityProviderStrategyList", version: "21.22.1" };
function cloudwatchEventTargetEcsTargetNetworkConfigurationToTerraform(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 {
assign_public_ip: cdktf.booleanToTerraform(struct.assignPublicIp),
security_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.securityGroups),
subnets: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.subnets),
};
}
function cloudwatchEventTargetEcsTargetNetworkConfigurationToHclTerraform(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 = {
assign_public_ip: {
value: cdktf.booleanToHclTerraform(struct.assignPublicIp),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
security_groups: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.securityGroups),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
subnets: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.subnets),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class CloudwatchEventTargetEcsTargetNetworkConfigurationOutputReference 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._assignPublicIp !== undefined) {
hasAnyValues = true;
internalValueResult.assignPublicIp = this._assignPublicIp;
}
if (this._securityGroups !== undefined) {
hasAnyValues = true;
internalValueResult.securityGroups = this._securityGroups;
}
if (this._subnets !== undefined) {
hasAnyValues = true;
internalValueResult.subnets = this._subnets;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._assignPublicIp = undefined;
this._securityGroups = undefined;
this._subnets = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._assignPublicIp = value.assignPublicIp;
this._securityGroups = value.securityGroups;
this._subnets = value.subnets;
}
}
get assignPublicIp() {
return this.getBooleanAttribute('assign_public_ip');
}
set assignPublicIp(value) {
this._assignPublicIp = value;
}
resetAssignPublicIp() {
this._assignPublicIp = undefined;
}
// Temporarily expose input value. Use with caution.
get assignPublicIpInput() {
return this._assignPublicIp;
}
get securityGroups() {
return cdktf.Fn.tolist(this.getListAttribute('security_groups'));
}
set securityGroups(value) {
this._securityGroups = value;
}
resetSecurityGroups() {
this._securityGroups = undefined;
}
// Temporarily expose input value. Use with caution.
get securityGroupsInput() {
return this._securityGroups;
}
get subnets() {
return cdktf.Fn.tolist(this.getListAttribute('subnets'));
}
set subnets(value) {
this._subnets = value;
}
// Temporarily expose input value. Use with caution.
get subnetsInput() {
return this._subnets;
}
}
exports.CloudwatchEventTargetEcsTargetNetworkConfigurationOutputReference = CloudwatchEventTargetEcsTargetNetworkConfigurationOutputReference;
_f = JSII_RTTI_SYMBOL_1;
CloudwatchEventTargetEcsTargetNetworkConfigurationOutputReference[_f] = { fqn: "@cdktf/provider-aws.cloudwatchEventTarget.CloudwatchEventTargetEcsTargetNetworkConfigurationOutputReference", version: "21.22.1" };
function cloudwatchEventTargetEcsTargetOrderedPlacementStrategyToTerraform(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 {
field: cdktf.stringToTerraform(struct.field),
type: cdktf.stringToTerraform(struct.type),
};
}
function cloudwatchEventTargetEcsTargetOrderedPlacementStrategyToHclTerraform(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 = {
field: {
value: cdktf.stringToHclTerraform(struct.field),
isBlock: false,
type: "simple",
storageClassType: "string",
},
type: {
value: cdktf.stringToHclTerraform(struct.type),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class CloudwatchEventTargetEcsTargetOrderedPlacementStrategyOutputReference 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._field !== undefined) {
hasAnyValues = true;
internalValueResult.field = this._field;
}
if (this._type !== undefined) {
hasAnyValues = true;
internalValueResult.type = this._type;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._field = undefined;
this._type = 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._field = value.field;
this._type = value.type;
}
}
get field() {
return this.getStringAttribute('field');
}
set field(value) {
this._field = value;
}
resetField() {
this._field = undefined;
}
// Temporarily expose input value. Use with caution.
get fieldInput() {
return this._field;
}
get type() {
return this.getStringAttribute('type');
}
set type(value) {
this._type = value;
}
// Temporarily expose input value. Use with caution.
get typeInput() {
return this._type;
}
}
exports.CloudwatchEventTargetEcsTargetOrderedPlacementStrategyOutputReference = CloudwatchEventTargetEcsTargetOrderedPlacementStrategyOutputReference;
_g = JSII_RTTI_SYMBOL_1;
CloudwatchEventTargetEcsTargetOrderedPlacementStrategyOutputReference[_g] = { fqn: "@cdktf/provider-aws.cloudwatchEventTarget.CloudwatchEventTargetEcsTargetOrderedPlacementStrategyOutputReference", version: "21.22.1" };
class CloudwatchEventTargetEcsTargetOrderedPlacementStrategyList 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 CloudwatchEventTargetEcsTargetOrderedPlacementStrategyOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.CloudwatchEventTargetEcsTargetOrderedPlacementStrategyList = CloudwatchEventTargetEcsTargetOrderedPlacementStrategyList;
_h = JSII_RTTI_SYMBOL_1;
CloudwatchEventTargetEcsTargetOrderedPlacementStrategyList[_h] = { fqn: "@cdktf/provider-aws.cloudwatchEventTarget.CloudwatchEventTargetEcsTargetOrderedPlacementStrategyList", version: "21.22.1" };
function cloudwatchEventTargetEcsTargetPlacementConstraintToTerraform(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 {
expression: cdktf.stringToTerraform(struct.expression),
type: cdktf.stringToTerraform(struct.type),
};
}
function cloudwatchEventTargetEcsTargetPlacementConstraintToHclTerraform(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 = {
expression: {
value: cdktf.stringToHclTerraform(struct.expression),
isBlock: false,
type: "simple",
storageClassType: "string",
},
type: {
value: cdktf.stringToHclTerraform(struct.type),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class CloudwatchEventTargetEcsTargetPlacementConstraintOutputReference 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._expression !== undefined) {
hasAnyValues = true;
internalValueResult.expression = this._expression;
}
if (this._type !== undefined) {
hasAnyValues = true;
internalValueResult.type = this._type;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._expression = undefined;
this._type = 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._expression = value.expression;
this._type = value.type;
}
}
get expression() {
return this.getStringAttribute('expression');
}
set expression(value) {
this._expression = value;
}
resetExpression() {
this._expression = undefined;
}
// Temporarily expose input value. Use with caution.
get expressionInput() {
return this._expression;
}
get type() {
return this.getStringAttribute('type');
}
set type(value) {
this._type = value;
}
// Temporarily expose input value. Use with caution.
get typeInput() {
return this._type;
}
}
exports.CloudwatchEventTargetEcsTargetPlacementConstraintOutputReference = CloudwatchEventTargetEcsTargetPlacementConstraintOutputReference;
_j = JSII_RTTI_SYMBOL_1;
CloudwatchEventTargetEcsTargetPlacementConstraintOutputReference[_j] = { fqn: "@cdktf/provider-aws.cloudwatchEventTarget.CloudwatchEventTargetEcsTargetPlacementConstraintOutputReference", version: "21.22.1" };
class CloudwatchEventTargetEcsTargetPlacementConstraintList 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 CloudwatchEventTargetEcsTargetPlacementConstraintOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.CloudwatchEventTargetEcsTargetPlacementConstraintList = CloudwatchEventTargetEcsTargetPlacementConstraintList;
_k = JSII_RTTI_SYMBOL_1;
CloudwatchEventTargetEcsTargetPlacementConstraintList[_k] = { fqn: "@cdktf/provider-aws.cloudwatchEventTarget.CloudwatchEventTargetEcsTargetPlacementConstraintList", version: "21.22.1" };
function cloudwatchEventTargetEcsTargetToTerraform(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 {
enable_ecs_managed_tags: cdktf.booleanToTerraform(struct.enableEcsManagedTags),
enable_execute_command: cdktf.booleanToTerraform(struct.enableExecuteCommand),
group: cdktf.stringToTerraform(struct.group),
launch_type: cdktf.stringToTerraform(struct.launchType),
platform_version: cdktf.stringToTerraform(struct.platformVersion),
propagate_tags: cdktf.stringToTerraform(struct.propagateTags),
tags: cdktf.hashMapper(cdktf.stringToTerraform)(struct.tags),
task_count: cdktf.numberToTerraform(struct.taskCount),
task_definition_arn: cdktf.stringToTerraform(struct.taskDefinitionArn),
capacity_provider_strategy: cdktf.listMapper(cloudwatchEventTargetEcsTargetCapacityProviderStrategyToTerraform, true)(struct.capacityProviderStrategy),
network_configuration: cloudwatchEventTargetEcsTargetNetworkConfigurationToTerraform(struct.networkConfiguration),
ordered_placement_strategy: cdktf.listMapper(cloudwatchEventTargetEcsTargetOrderedPlacementStrategyToTerraform, true)(struct.orderedPlacementStrategy),
placement_constraint: cdktf.listMapper(cloudwatchEventTargetEcsTargetPlacementConstraintToTerraform, true)(struct.placementConstraint),
};
}
function cloudwatchEventTargetEcsTargetToHclTerraform(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 = {
enable_ecs_managed_tags: {
value: cdktf.booleanToHclTerraform(struct.enableEcsManagedTags),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
enable_execute_command: {
value: cdktf.booleanToHclTerraform(struct.enableExecuteCommand),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
group: {
value: cdktf.stringToHclTerraform(struct.group),
isBlock: false,
type: "simple",
storageClassType: "string",
},
launch_type: {
value: cdktf.stringToHclTerraform(struct.launchType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
platform_version: {
value: cdktf.stringToHclTerraform(struct.platformVersion),
isBlock: false,
type: "simple",
storageClassType: "string",
},
propagate_tags: {
value: cdktf.stringToHclTerraform(struct.propagateTags),
isBlock: false,
type: "simple",
storageClassType: "string",
},
tags: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.tags),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
task_count: {
value: cdktf.numberToHclTerraform(struct.taskCount),
isBlock: false,
type: "simple",
storageClassType: "number",
},
task_definition_arn: {
value: cdktf.stringToHclTerraform(struct.taskDefinitionArn),
isBlock: false,
type: "simple",
storageClassType: "string",
},
capacity_provider_strategy: {
value: cdktf.listMapperHcl(cloudwatchEventTargetEcsTargetCapacityProviderStrategyToHclTerraform, true)(struct.capacityProviderStrategy),
isBlock: true,
type: "set",
storageClassType: "CloudwatchEventTargetEcsTargetCapacityProviderStrategyList",
},
network_configuration: {
value: cloudwatchEventTargetEcsTargetNetworkConfigurationToHclTerraform(struct.networkConfiguration),
isBlock: true,
type: "list",
storageClassType: "CloudwatchEventTargetEcsTargetNetworkConfigurationList",
},
ordered_placement_strategy: {
value: cdktf.listMapperHcl(cloudwatchEventTargetEcsTargetOrderedPlacementStrategyToHclTerraform, true)(struct.orderedPlacementStrategy),
isBlock: true,
type: "list",
storageClassType: "CloudwatchEventTargetEcsTargetOrderedPlacementStrategyList",
},
placement_constraint: {
value: cdktf.listMapperHcl(cloudwatchEventTargetEcsTargetPlacementConstraintToHclTerraform, true)(struct.placementConstraint),
isBlock: true,
type: "set",
storageClassType: "CloudwatchEventTargetEcsTargetPlacementConstraintList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class CloudwatchEventTargetEcsTargetOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
// capacity_provider_strategy - computed: false, optional: true, required: false
this._capacityProviderStrategy = new CloudwatchEventTargetEcsTargetCapacityProviderStrategyList(this, "capacity_provider_strategy", true);
// network_configuration - computed: false, optional: true, required: false
this._networkConfiguration = new CloudwatchEventTargetEcsTargetNetworkConfigurationOutputReference(this, "network_configuration");
// ordered_placement_strategy - computed: false, optional: true, required: false
this._orderedPlacementStrategy = new CloudwatchEventTargetEcsTargetOrderedPlacementStrategyList(this, "ordered_placement_strategy", false);
// placement_constraint - computed: false, optional: true, required: false
this._placementConstraint = new CloudwatchEventTargetEcsTargetPlacementConstraintList(this, "placement_constraint", true);
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._enableEcsManagedTags !== undefined) {
hasAnyValues = true;
internalValueResult.enableEcsManagedTags = this._enableEcsManagedTags;
}
if (this._enableExecuteCommand !== undefined) {
hasAnyValues = true;
internalValueResult.enableExecuteCommand = this._enableExecuteCommand;
}
if (this._group !== undefined) {
hasAnyValues = true;
internalValueResult.group = this._group;
}
if (this._launchType !== undefined) {
hasAnyValues = true;
internalValueResult.launchType = this._launchType;
}
if (this._platformVersion !== undefined) {
hasAnyValues = true;
internalValueResult.platformVersion = this._platformVersion;
}
if (this._propagateTags !== undefined) {
hasAnyValues = true;
internalValueResult.propagateTags = this._propagateTags;
}
if (this._tags !== undefined) {
hasAnyValues = true;
internalValueResult.tags = this._tags;
}
if (this._taskCount !== undefined) {
hasAnyValues = true;
internalValueResult.taskCount = this._taskCount;
}
if (this._taskDefinitionArn !== undefined) {
hasAnyValues = true;
internalValueResult.taskDefinitionArn = this._taskDefinitionArn;
}
if (this._capacityProviderStrategy?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.capacityProviderStrategy = this._capacityProviderStrategy?.internalValue;
}
if (this._networkConfiguration?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.networkConfiguration = this._networkConfiguration?.internalValue;
}
if (this._orderedPlacementStrategy?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.orderedPlacementStrategy = this._orderedPlacementStrategy?.internalValue;
}
if (this._placementConstraint?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.placementConstraint = this._placementConstraint?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._enableEcsManagedTags = undefined;
this._enableExecuteCommand = undefined;
this._group = undefined;
this._launchType = undefined;
this._platformVersion = undefined;
this._propagateTags = undefined;
this._tags = undefined;
this._taskCount = undefined;
this._taskDefinitionArn = undefined;
this._capacityProviderStrategy.internalValue = undefined;
this._networkConfiguration.internalValue = undefined;
this._orderedPlacementStrategy.internalValue = undefined;
this._placementConstraint.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._enableEcsManagedTags = value.enableEcsManagedTags;
this._enableExecuteCommand = value.enableExecuteCommand;
this._group = value.group;
this._launchType = value.launchType;
this._platformVersion = value.platformVersion;
this._propagateTags = value.propagateTags;
this._tags = value.tags;
this._taskCount = value.taskCount;
this._taskDefinitionArn = value.taskDefinitionArn;
this._capacityProviderStrategy.internalValue = value.capacityProviderStrategy;
this._networkConfiguration.internalValue = value.