@cdktf/provider-aws
Version:
Prebuilt aws Provider for Terraform CDK (cdktf)
1,125 lines • 344 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
Object.defineProperty(exports, "__esModule", { value: true });
exports.SchedulerSchedule = exports.SchedulerScheduleTargetOutputReference = exports.SchedulerScheduleTargetSqsParametersOutputReference = exports.SchedulerScheduleTargetSagemakerPipelineParametersOutputReference = exports.SchedulerScheduleTargetSagemakerPipelineParametersPipelineParameterList = exports.SchedulerScheduleTargetSagemakerPipelineParametersPipelineParameterOutputReference = exports.SchedulerScheduleTargetRetryPolicyOutputReference = exports.SchedulerScheduleTargetKinesisParametersOutputReference = exports.SchedulerScheduleTargetEventbridgeParametersOutputReference = exports.SchedulerScheduleTargetEcsParametersOutputReference = exports.SchedulerScheduleTargetEcsParametersPlacementStrategyList = exports.SchedulerScheduleTargetEcsParametersPlacementStrategyOutputReference = exports.SchedulerScheduleTargetEcsParametersPlacementConstraintsList = exports.SchedulerScheduleTargetEcsParametersPlacementConstraintsOutputReference = exports.SchedulerScheduleTargetEcsParametersNetworkConfigurationOutputReference = exports.SchedulerScheduleTargetEcsParametersCapacityProviderStrategyList = exports.SchedulerScheduleTargetEcsParametersCapacityProviderStrategyOutputReference = exports.SchedulerScheduleTargetDeadLetterConfigOutputReference = exports.SchedulerScheduleFlexibleTimeWindowOutputReference = void 0;
exports.schedulerScheduleFlexibleTimeWindowToTerraform = schedulerScheduleFlexibleTimeWindowToTerraform;
exports.schedulerScheduleFlexibleTimeWindowToHclTerraform = schedulerScheduleFlexibleTimeWindowToHclTerraform;
exports.schedulerScheduleTargetDeadLetterConfigToTerraform = schedulerScheduleTargetDeadLetterConfigToTerraform;
exports.schedulerScheduleTargetDeadLetterConfigToHclTerraform = schedulerScheduleTargetDeadLetterConfigToHclTerraform;
exports.schedulerScheduleTargetEcsParametersCapacityProviderStrategyToTerraform = schedulerScheduleTargetEcsParametersCapacityProviderStrategyToTerraform;
exports.schedulerScheduleTargetEcsParametersCapacityProviderStrategyToHclTerraform = schedulerScheduleTargetEcsParametersCapacityProviderStrategyToHclTerraform;
exports.schedulerScheduleTargetEcsParametersNetworkConfigurationToTerraform = schedulerScheduleTargetEcsParametersNetworkConfigurationToTerraform;
exports.schedulerScheduleTargetEcsParametersNetworkConfigurationToHclTerraform = schedulerScheduleTargetEcsParametersNetworkConfigurationToHclTerraform;
exports.schedulerScheduleTargetEcsParametersPlacementConstraintsToTerraform = schedulerScheduleTargetEcsParametersPlacementConstraintsToTerraform;
exports.schedulerScheduleTargetEcsParametersPlacementConstraintsToHclTerraform = schedulerScheduleTargetEcsParametersPlacementConstraintsToHclTerraform;
exports.schedulerScheduleTargetEcsParametersPlacementStrategyToTerraform = schedulerScheduleTargetEcsParametersPlacementStrategyToTerraform;
exports.schedulerScheduleTargetEcsParametersPlacementStrategyToHclTerraform = schedulerScheduleTargetEcsParametersPlacementStrategyToHclTerraform;
exports.schedulerScheduleTargetEcsParametersToTerraform = schedulerScheduleTargetEcsParametersToTerraform;
exports.schedulerScheduleTargetEcsParametersToHclTerraform = schedulerScheduleTargetEcsParametersToHclTerraform;
exports.schedulerScheduleTargetEventbridgeParametersToTerraform = schedulerScheduleTargetEventbridgeParametersToTerraform;
exports.schedulerScheduleTargetEventbridgeParametersToHclTerraform = schedulerScheduleTargetEventbridgeParametersToHclTerraform;
exports.schedulerScheduleTargetKinesisParametersToTerraform = schedulerScheduleTargetKinesisParametersToTerraform;
exports.schedulerScheduleTargetKinesisParametersToHclTerraform = schedulerScheduleTargetKinesisParametersToHclTerraform;
exports.schedulerScheduleTargetRetryPolicyToTerraform = schedulerScheduleTargetRetryPolicyToTerraform;
exports.schedulerScheduleTargetRetryPolicyToHclTerraform = schedulerScheduleTargetRetryPolicyToHclTerraform;
exports.schedulerScheduleTargetSagemakerPipelineParametersPipelineParameterToTerraform = schedulerScheduleTargetSagemakerPipelineParametersPipelineParameterToTerraform;
exports.schedulerScheduleTargetSagemakerPipelineParametersPipelineParameterToHclTerraform = schedulerScheduleTargetSagemakerPipelineParametersPipelineParameterToHclTerraform;
exports.schedulerScheduleTargetSagemakerPipelineParametersToTerraform = schedulerScheduleTargetSagemakerPipelineParametersToTerraform;
exports.schedulerScheduleTargetSagemakerPipelineParametersToHclTerraform = schedulerScheduleTargetSagemakerPipelineParametersToHclTerraform;
exports.schedulerScheduleTargetSqsParametersToTerraform = schedulerScheduleTargetSqsParametersToTerraform;
exports.schedulerScheduleTargetSqsParametersToHclTerraform = schedulerScheduleTargetSqsParametersToHclTerraform;
exports.schedulerScheduleTargetToTerraform = schedulerScheduleTargetToTerraform;
exports.schedulerScheduleTargetToHclTerraform = schedulerScheduleTargetToHclTerraform;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function schedulerScheduleFlexibleTimeWindowToTerraform(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 {
maximum_window_in_minutes: cdktf.numberToTerraform(struct.maximumWindowInMinutes),
mode: cdktf.stringToTerraform(struct.mode),
};
}
function schedulerScheduleFlexibleTimeWindowToHclTerraform(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 = {
maximum_window_in_minutes: {
value: cdktf.numberToHclTerraform(struct.maximumWindowInMinutes),
isBlock: false,
type: "simple",
storageClassType: "number",
},
mode: {
value: cdktf.stringToHclTerraform(struct.mode),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class SchedulerScheduleFlexibleTimeWindowOutputReference 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._maximumWindowInMinutes !== undefined) {
hasAnyValues = true;
internalValueResult.maximumWindowInMinutes = this._maximumWindowInMinutes;
}
if (this._mode !== undefined) {
hasAnyValues = true;
internalValueResult.mode = this._mode;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._maximumWindowInMinutes = undefined;
this._mode = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._maximumWindowInMinutes = value.maximumWindowInMinutes;
this._mode = value.mode;
}
}
get maximumWindowInMinutes() {
return this.getNumberAttribute('maximum_window_in_minutes');
}
set maximumWindowInMinutes(value) {
this._maximumWindowInMinutes = value;
}
resetMaximumWindowInMinutes() {
this._maximumWindowInMinutes = undefined;
}
// Temporarily expose input value. Use with caution.
get maximumWindowInMinutesInput() {
return this._maximumWindowInMinutes;
}
get mode() {
return this.getStringAttribute('mode');
}
set mode(value) {
this._mode = value;
}
// Temporarily expose input value. Use with caution.
get modeInput() {
return this._mode;
}
}
exports.SchedulerScheduleFlexibleTimeWindowOutputReference = SchedulerScheduleFlexibleTimeWindowOutputReference;
_a = JSII_RTTI_SYMBOL_1;
SchedulerScheduleFlexibleTimeWindowOutputReference[_a] = { fqn: "@cdktf/provider-aws.schedulerSchedule.SchedulerScheduleFlexibleTimeWindowOutputReference", version: "21.22.1" };
function schedulerScheduleTargetDeadLetterConfigToTerraform(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 schedulerScheduleTargetDeadLetterConfigToHclTerraform(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 SchedulerScheduleTargetDeadLetterConfigOutputReference 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;
}
// Temporarily expose input value. Use with caution.
get arnInput() {
return this._arn;
}
}
exports.SchedulerScheduleTargetDeadLetterConfigOutputReference = SchedulerScheduleTargetDeadLetterConfigOutputReference;
_b = JSII_RTTI_SYMBOL_1;
SchedulerScheduleTargetDeadLetterConfigOutputReference[_b] = { fqn: "@cdktf/provider-aws.schedulerSchedule.SchedulerScheduleTargetDeadLetterConfigOutputReference", version: "21.22.1" };
function schedulerScheduleTargetEcsParametersCapacityProviderStrategyToTerraform(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 schedulerScheduleTargetEcsParametersCapacityProviderStrategyToHclTerraform(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 SchedulerScheduleTargetEcsParametersCapacityProviderStrategyOutputReference 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.SchedulerScheduleTargetEcsParametersCapacityProviderStrategyOutputReference = SchedulerScheduleTargetEcsParametersCapacityProviderStrategyOutputReference;
_c = JSII_RTTI_SYMBOL_1;
SchedulerScheduleTargetEcsParametersCapacityProviderStrategyOutputReference[_c] = { fqn: "@cdktf/provider-aws.schedulerSchedule.SchedulerScheduleTargetEcsParametersCapacityProviderStrategyOutputReference", version: "21.22.1" };
class SchedulerScheduleTargetEcsParametersCapacityProviderStrategyList 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 SchedulerScheduleTargetEcsParametersCapacityProviderStrategyOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.SchedulerScheduleTargetEcsParametersCapacityProviderStrategyList = SchedulerScheduleTargetEcsParametersCapacityProviderStrategyList;
_d = JSII_RTTI_SYMBOL_1;
SchedulerScheduleTargetEcsParametersCapacityProviderStrategyList[_d] = { fqn: "@cdktf/provider-aws.schedulerSchedule.SchedulerScheduleTargetEcsParametersCapacityProviderStrategyList", version: "21.22.1" };
function schedulerScheduleTargetEcsParametersNetworkConfigurationToTerraform(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 schedulerScheduleTargetEcsParametersNetworkConfigurationToHclTerraform(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 SchedulerScheduleTargetEcsParametersNetworkConfigurationOutputReference 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.SchedulerScheduleTargetEcsParametersNetworkConfigurationOutputReference = SchedulerScheduleTargetEcsParametersNetworkConfigurationOutputReference;
_e = JSII_RTTI_SYMBOL_1;
SchedulerScheduleTargetEcsParametersNetworkConfigurationOutputReference[_e] = { fqn: "@cdktf/provider-aws.schedulerSchedule.SchedulerScheduleTargetEcsParametersNetworkConfigurationOutputReference", version: "21.22.1" };
function schedulerScheduleTargetEcsParametersPlacementConstraintsToTerraform(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 schedulerScheduleTargetEcsParametersPlacementConstraintsToHclTerraform(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 SchedulerScheduleTargetEcsParametersPlacementConstraintsOutputReference 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.SchedulerScheduleTargetEcsParametersPlacementConstraintsOutputReference = SchedulerScheduleTargetEcsParametersPlacementConstraintsOutputReference;
_f = JSII_RTTI_SYMBOL_1;
SchedulerScheduleTargetEcsParametersPlacementConstraintsOutputReference[_f] = { fqn: "@cdktf/provider-aws.schedulerSchedule.SchedulerScheduleTargetEcsParametersPlacementConstraintsOutputReference", version: "21.22.1" };
class SchedulerScheduleTargetEcsParametersPlacementConstraintsList 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 SchedulerScheduleTargetEcsParametersPlacementConstraintsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.SchedulerScheduleTargetEcsParametersPlacementConstraintsList = SchedulerScheduleTargetEcsParametersPlacementConstraintsList;
_g = JSII_RTTI_SYMBOL_1;
SchedulerScheduleTargetEcsParametersPlacementConstraintsList[_g] = { fqn: "@cdktf/provider-aws.schedulerSchedule.SchedulerScheduleTargetEcsParametersPlacementConstraintsList", version: "21.22.1" };
function schedulerScheduleTargetEcsParametersPlacementStrategyToTerraform(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 schedulerScheduleTargetEcsParametersPlacementStrategyToHclTerraform(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 SchedulerScheduleTargetEcsParametersPlacementStrategyOutputReference 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.SchedulerScheduleTargetEcsParametersPlacementStrategyOutputReference = SchedulerScheduleTargetEcsParametersPlacementStrategyOutputReference;
_h = JSII_RTTI_SYMBOL_1;
SchedulerScheduleTargetEcsParametersPlacementStrategyOutputReference[_h] = { fqn: "@cdktf/provider-aws.schedulerSchedule.SchedulerScheduleTargetEcsParametersPlacementStrategyOutputReference", version: "21.22.1" };
class SchedulerScheduleTargetEcsParametersPlacementStrategyList 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 SchedulerScheduleTargetEcsParametersPlacementStrategyOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.SchedulerScheduleTargetEcsParametersPlacementStrategyList = SchedulerScheduleTargetEcsParametersPlacementStrategyList;
_j = JSII_RTTI_SYMBOL_1;
SchedulerScheduleTargetEcsParametersPlacementStrategyList[_j] = { fqn: "@cdktf/provider-aws.schedulerSchedule.SchedulerScheduleTargetEcsParametersPlacementStrategyList", version: "21.22.1" };
function schedulerScheduleTargetEcsParametersToTerraform(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),
reference_id: cdktf.stringToTerraform(struct.referenceId),
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(schedulerScheduleTargetEcsParametersCapacityProviderStrategyToTerraform, true)(struct.capacityProviderStrategy),
network_configuration: schedulerScheduleTargetEcsParametersNetworkConfigurationToTerraform(struct.networkConfiguration),
placement_constraints: cdktf.listMapper(schedulerScheduleTargetEcsParametersPlacementConstraintsToTerraform, true)(struct.placementConstraints),
placement_strategy: cdktf.listMapper(schedulerScheduleTargetEcsParametersPlacementStrategyToTerraform, true)(struct.placementStrategy),
};
}
function schedulerScheduleTargetEcsParametersToHclTerraform(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",
},
reference_id: {
value: cdktf.stringToHclTerraform(struct.referenceId),
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(schedulerScheduleTargetEcsParametersCapacityProviderStrategyToHclTerraform, true)(struct.capacityProviderStrategy),
isBlock: true,
type: "set",
storageClassType: "SchedulerScheduleTargetEcsParametersCapacityProviderStrategyList",
},
network_configuration: {
value: schedulerScheduleTargetEcsParametersNetworkConfigurationToHclTerraform(struct.networkConfiguration),
isBlock: true,
type: "list",
storageClassType: "SchedulerScheduleTargetEcsParametersNetworkConfigurationList",
},
placement_constraints: {
value: cdktf.listMapperHcl(schedulerScheduleTargetEcsParametersPlacementConstraintsToHclTerraform, true)(struct.placementConstraints),
isBlock: true,
type: "set",
storageClassType: "SchedulerScheduleTargetEcsParametersPlacementConstraintsList",
},
placement_strategy: {
value: cdktf.listMapperHcl(schedulerScheduleTargetEcsParametersPlacementStrategyToHclTerraform, true)(struct.placementStrategy),
isBlock: true,
type: "set",
storageClassType: "SchedulerScheduleTargetEcsParametersPlacementStrategyList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class SchedulerScheduleTargetEcsParametersOutputReference 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 SchedulerScheduleTargetEcsParametersCapacityProviderStrategyList(this, "capacity_provider_strategy", true);
// network_configuration - computed: false, optional: true, required: false
this._networkConfiguration = new SchedulerScheduleTargetEcsParametersNetworkConfigurationOutputReference(this, "network_configuration");
// placement_constraints - computed: false, optional: true, required: false
this._placementConstraints = new SchedulerScheduleTargetEcsParametersPlacementConstraintsList(this, "placement_constraints", true);
// placement_strategy - computed: false, optional: true, required: false
this._placementStrategy = new SchedulerScheduleTargetEcsParametersPlacementStrategyList(this, "placement_strategy", 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._referenceId !== undefined) {
hasAnyValues = true;
internalValueResult.referenceId = this._referenceId;
}
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._placementConstraints?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.placementConstraints = this._placementConstraints?.internalValue;
}
if (this._placementStrategy?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.placementStrategy = this._placementStrategy?.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._referenceId = undefined;
this._tags = undefined;
this._taskCount = undefined;
this._taskDefinitionArn = undefined;
this._capacityProviderStrategy.internalValue = undefined;
this._networkConfiguration.internalValue = undefined;
this._placementConstraints.internalValue = undefined;
this._placementStrategy.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._referenceId = value.referenceId;
this._tags = value.tags;
this._taskCount = value.taskCount;
this._taskDefinitionArn = value.taskDefinitionArn;
this._capacityProviderStrategy.internalValue = value.capacityProviderStrategy;
this._networkConfiguration.internalValue = value.networkConfiguration;
this._placementConstraints.internalValue = value.placementConstraints;
this._placementStrategy.internalValue = value.placementStrategy;
}
}
get enableEcsManagedTags() {
return this.getBooleanAttribute('enable_ecs_managed_tags');
}
set enableEcsManagedTags(value) {
this._enableEcsManagedTags = value;
}
resetEnableEcsManagedTags() {
this._enableEcsManagedTags = undefined;
}
// Temporarily expose input value. Use with caution.
get enableEcsManagedTagsInput() {
return this._enableEcsManagedTags;
}
get enableExecuteCommand() {
return this.getBooleanAttribute('enable_execute_command');
}
set enableExecuteCommand(value) {
this._enableExecuteCommand = value;
}
resetEnableExecuteCommand() {
this._enableExecuteCommand = undefined;
}
// Temporarily expose input value. Use with caution.
get enableExecuteCommandInput() {
return this._enableExecuteCommand;
}
get group() {
return this.getStringAttribute('group');
}
set group(value) {
this._group = value;
}
resetGroup() {
this._group = undefined;
}
// Temporarily expose input value. Use with caution.
get groupInput() {
return this._group;
}
get launchType() {
return this.getStringAttribute('launch_type');
}
set launchType(value) {
this._launchType = value;
}
resetLaunchType() {
this._launchType = undefined;
}
// Temporarily expose input value. Use with caution.
get launchTypeInput() {
return this._launchType;
}
get platformVersion() {
return this.getStringAttribute('platform_version');
}
set platformVersion(value) {
this._platformVersion = value;
}
resetPlatformVersion() {
this._platformVersion = undefined;
}
// Temporarily expose input value. Use with caution.
get platformVersionInput() {
return this._platformVersion;
}
get propagateTags() {
return this.getStringAttribute('propagate_tags');
}
set propagateTags(value) {
this._propagateTags = value;
}
resetPropagateTags() {
this._propagateTags = undefined;
}
// Temporarily expose input value. Use with caution.
get propagateTagsInput() {
return this._propagateTags;
}
get referenceId() {
return this.getStringAttribute('reference_id');
}
set referenceId(value) {
this._referenceId = value;
}
resetReferenceId() {
this._referenceId = undefined;
}
// Temporarily expose input value. Use with caution.
get referenceIdInput() {
return this._referenceId;
}
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 taskCount() {
return this.getNumberAttribute('task_count');
}
set taskCount(value) {
this._taskCount = value;
}
resetTaskCount() {
this._taskCount = undefined;
}
// Temporarily expose input value. Use with caution.
get taskCountInput() {
return this._taskCount;
}
get taskDefinitionArn() {
return this.getStringAttribute('task_definition_arn');
}
set taskDefinitionArn(value) {
this._taskDefinitionArn = value;
}
// Temporarily expose input value. Use with caution.
get taskDefinitionArnInput() {
return this._taskDefinitionArn;
}
get capacityProviderStrategy() {
return this._capacityProviderStrategy;
}
putCapacityProviderStrategy(value) {
this._capacityProviderStrategy.internalValue = value;
}
resetCapacityProviderStrategy() {
this._capacityProviderStrategy.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get capacityProviderStrategyInput() {
return this._capacityProviderStrategy.internalValue;
}
get networkConfiguration() {
return this._networkConfiguration;
}
putNetworkConfiguration(value) {
this._networkConfiguration.internalValue = value;
}
resetNetworkConfiguration() {
this._networkConfiguration.internalValue = undefined;
}
// Temporarily expose