@cdktf/provider-aws
Version:
Prebuilt aws Provider for Terraform CDK (cdktf)
1,071 lines • 395 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;
Object.defineProperty(exports, "__esModule", { value: true });
exports.DlmLifecyclePolicyPolicyDetailsScheduleOutputReference = exports.dlmLifecyclePolicyPolicyDetailsScheduleToHclTerraform = exports.dlmLifecyclePolicyPolicyDetailsScheduleToTerraform = exports.DlmLifecyclePolicyPolicyDetailsScheduleShareRuleOutputReference = exports.dlmLifecyclePolicyPolicyDetailsScheduleShareRuleToHclTerraform = exports.dlmLifecyclePolicyPolicyDetailsScheduleShareRuleToTerraform = exports.DlmLifecyclePolicyPolicyDetailsScheduleRetainRuleOutputReference = exports.dlmLifecyclePolicyPolicyDetailsScheduleRetainRuleToHclTerraform = exports.dlmLifecyclePolicyPolicyDetailsScheduleRetainRuleToTerraform = exports.DlmLifecyclePolicyPolicyDetailsScheduleFastRestoreRuleOutputReference = exports.dlmLifecyclePolicyPolicyDetailsScheduleFastRestoreRuleToHclTerraform = exports.dlmLifecyclePolicyPolicyDetailsScheduleFastRestoreRuleToTerraform = exports.DlmLifecyclePolicyPolicyDetailsScheduleDeprecateRuleOutputReference = exports.dlmLifecyclePolicyPolicyDetailsScheduleDeprecateRuleToHclTerraform = exports.dlmLifecyclePolicyPolicyDetailsScheduleDeprecateRuleToTerraform = exports.DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleList = exports.DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleOutputReference = exports.dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleToHclTerraform = exports.dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleToTerraform = exports.DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleRetainRuleOutputReference = exports.dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleRetainRuleToHclTerraform = exports.dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleRetainRuleToTerraform = exports.DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRuleOutputReference = exports.dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRuleToHclTerraform = exports.dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRuleToTerraform = exports.DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleOutputReference = exports.dlmLifecyclePolicyPolicyDetailsScheduleCreateRuleToHclTerraform = exports.dlmLifecyclePolicyPolicyDetailsScheduleCreateRuleToTerraform = exports.DlmLifecyclePolicyPolicyDetailsParametersOutputReference = exports.dlmLifecyclePolicyPolicyDetailsParametersToHclTerraform = exports.dlmLifecyclePolicyPolicyDetailsParametersToTerraform = exports.DlmLifecyclePolicyPolicyDetailsEventSourceOutputReference = exports.dlmLifecyclePolicyPolicyDetailsEventSourceToHclTerraform = exports.dlmLifecyclePolicyPolicyDetailsEventSourceToTerraform = exports.DlmLifecyclePolicyPolicyDetailsEventSourceParametersOutputReference = exports.dlmLifecyclePolicyPolicyDetailsEventSourceParametersToHclTerraform = exports.dlmLifecyclePolicyPolicyDetailsEventSourceParametersToTerraform = exports.DlmLifecyclePolicyPolicyDetailsActionOutputReference = exports.dlmLifecyclePolicyPolicyDetailsActionToHclTerraform = exports.dlmLifecyclePolicyPolicyDetailsActionToTerraform = exports.DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyList = exports.DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyOutputReference = exports.dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyToHclTerraform = exports.dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyToTerraform = exports.DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleOutputReference = exports.dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleToHclTerraform = exports.dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleToTerraform = exports.DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationOutputReference = exports.dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationToHclTerraform = exports.dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationToTerraform = void 0;
exports.DlmLifecyclePolicy = exports.DlmLifecyclePolicyPolicyDetailsOutputReference = exports.dlmLifecyclePolicyPolicyDetailsToHclTerraform = exports.dlmLifecyclePolicyPolicyDetailsToTerraform = exports.DlmLifecyclePolicyPolicyDetailsScheduleList = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationToTerraform(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 {
cmk_arn: cdktf.stringToTerraform(struct.cmkArn),
encrypted: cdktf.booleanToTerraform(struct.encrypted),
};
}
exports.dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationToTerraform = dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationToTerraform;
function dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationToHclTerraform(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 = {
cmk_arn: {
value: cdktf.stringToHclTerraform(struct.cmkArn),
isBlock: false,
type: "simple",
storageClassType: "string",
},
encrypted: {
value: cdktf.booleanToHclTerraform(struct.encrypted),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationToHclTerraform = dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationToHclTerraform;
class DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationOutputReference 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._cmkArn !== undefined) {
hasAnyValues = true;
internalValueResult.cmkArn = this._cmkArn;
}
if (this._encrypted !== undefined) {
hasAnyValues = true;
internalValueResult.encrypted = this._encrypted;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._cmkArn = undefined;
this._encrypted = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._cmkArn = value.cmkArn;
this._encrypted = value.encrypted;
}
}
get cmkArn() {
return this.getStringAttribute('cmk_arn');
}
set cmkArn(value) {
this._cmkArn = value;
}
resetCmkArn() {
this._cmkArn = undefined;
}
// Temporarily expose input value. Use with caution.
get cmkArnInput() {
return this._cmkArn;
}
get encrypted() {
return this.getBooleanAttribute('encrypted');
}
set encrypted(value) {
this._encrypted = value;
}
resetEncrypted() {
this._encrypted = undefined;
}
// Temporarily expose input value. Use with caution.
get encryptedInput() {
return this._encrypted;
}
}
exports.DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationOutputReference = DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationOutputReference;
_a = JSII_RTTI_SYMBOL_1;
DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationOutputReference[_a] = { fqn: "@cdktf/provider-aws.dlmLifecyclePolicy.DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationOutputReference", version: "19.50.0" };
function dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleToTerraform(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 {
interval: cdktf.numberToTerraform(struct.interval),
interval_unit: cdktf.stringToTerraform(struct.intervalUnit),
};
}
exports.dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleToTerraform = dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleToTerraform;
function dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleToHclTerraform(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 = {
interval: {
value: cdktf.numberToHclTerraform(struct.interval),
isBlock: false,
type: "simple",
storageClassType: "number",
},
interval_unit: {
value: cdktf.stringToHclTerraform(struct.intervalUnit),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleToHclTerraform = dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleToHclTerraform;
class DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleOutputReference 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._interval !== undefined) {
hasAnyValues = true;
internalValueResult.interval = this._interval;
}
if (this._intervalUnit !== undefined) {
hasAnyValues = true;
internalValueResult.intervalUnit = this._intervalUnit;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._interval = undefined;
this._intervalUnit = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._interval = value.interval;
this._intervalUnit = value.intervalUnit;
}
}
get interval() {
return this.getNumberAttribute('interval');
}
set interval(value) {
this._interval = value;
}
// Temporarily expose input value. Use with caution.
get intervalInput() {
return this._interval;
}
get intervalUnit() {
return this.getStringAttribute('interval_unit');
}
set intervalUnit(value) {
this._intervalUnit = value;
}
// Temporarily expose input value. Use with caution.
get intervalUnitInput() {
return this._intervalUnit;
}
}
exports.DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleOutputReference = DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleOutputReference;
_b = JSII_RTTI_SYMBOL_1;
DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleOutputReference[_b] = { fqn: "@cdktf/provider-aws.dlmLifecyclePolicy.DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleOutputReference", version: "19.50.0" };
function dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyToTerraform(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 {
target: cdktf.stringToTerraform(struct.target),
encryption_configuration: dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationToTerraform(struct.encryptionConfiguration),
retain_rule: dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleToTerraform(struct.retainRule),
};
}
exports.dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyToTerraform = dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyToTerraform;
function dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyToHclTerraform(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 = {
target: {
value: cdktf.stringToHclTerraform(struct.target),
isBlock: false,
type: "simple",
storageClassType: "string",
},
encryption_configuration: {
value: dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationToHclTerraform(struct.encryptionConfiguration),
isBlock: true,
type: "list",
storageClassType: "DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationList",
},
retain_rule: {
value: dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleToHclTerraform(struct.retainRule),
isBlock: true,
type: "list",
storageClassType: "DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyToHclTerraform = dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyToHclTerraform;
class DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyOutputReference 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;
// encryption_configuration - computed: false, optional: false, required: true
this._encryptionConfiguration = new DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyEncryptionConfigurationOutputReference(this, "encryption_configuration");
// retain_rule - computed: false, optional: true, required: false
this._retainRule = new DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyRetainRuleOutputReference(this, "retain_rule");
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._target !== undefined) {
hasAnyValues = true;
internalValueResult.target = this._target;
}
if (this._encryptionConfiguration?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.encryptionConfiguration = this._encryptionConfiguration?.internalValue;
}
if (this._retainRule?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.retainRule = this._retainRule?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._target = undefined;
this._encryptionConfiguration.internalValue = undefined;
this._retainRule.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._target = value.target;
this._encryptionConfiguration.internalValue = value.encryptionConfiguration;
this._retainRule.internalValue = value.retainRule;
}
}
get target() {
return this.getStringAttribute('target');
}
set target(value) {
this._target = value;
}
// Temporarily expose input value. Use with caution.
get targetInput() {
return this._target;
}
get encryptionConfiguration() {
return this._encryptionConfiguration;
}
putEncryptionConfiguration(value) {
this._encryptionConfiguration.internalValue = value;
}
// Temporarily expose input value. Use with caution.
get encryptionConfigurationInput() {
return this._encryptionConfiguration.internalValue;
}
get retainRule() {
return this._retainRule;
}
putRetainRule(value) {
this._retainRule.internalValue = value;
}
resetRetainRule() {
this._retainRule.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get retainRuleInput() {
return this._retainRule.internalValue;
}
}
exports.DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyOutputReference = DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyOutputReference;
_c = JSII_RTTI_SYMBOL_1;
DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyOutputReference[_c] = { fqn: "@cdktf/provider-aws.dlmLifecyclePolicy.DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyOutputReference", version: "19.50.0" };
class DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyList 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 DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyList = DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyList;
_d = JSII_RTTI_SYMBOL_1;
DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyList[_d] = { fqn: "@cdktf/provider-aws.dlmLifecyclePolicy.DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyList", version: "19.50.0" };
function dlmLifecyclePolicyPolicyDetailsActionToTerraform(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 {
name: cdktf.stringToTerraform(struct.name),
cross_region_copy: cdktf.listMapper(dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyToTerraform, true)(struct.crossRegionCopy),
};
}
exports.dlmLifecyclePolicyPolicyDetailsActionToTerraform = dlmLifecyclePolicyPolicyDetailsActionToTerraform;
function dlmLifecyclePolicyPolicyDetailsActionToHclTerraform(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 = {
name: {
value: cdktf.stringToHclTerraform(struct.name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
cross_region_copy: {
value: cdktf.listMapperHcl(dlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyToHclTerraform, true)(struct.crossRegionCopy),
isBlock: true,
type: "set",
storageClassType: "DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.dlmLifecyclePolicyPolicyDetailsActionToHclTerraform = dlmLifecyclePolicyPolicyDetailsActionToHclTerraform;
class DlmLifecyclePolicyPolicyDetailsActionOutputReference 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;
// cross_region_copy - computed: false, optional: false, required: true
this._crossRegionCopy = new DlmLifecyclePolicyPolicyDetailsActionCrossRegionCopyList(this, "cross_region_copy", true);
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._name !== undefined) {
hasAnyValues = true;
internalValueResult.name = this._name;
}
if (this._crossRegionCopy?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.crossRegionCopy = this._crossRegionCopy?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._name = undefined;
this._crossRegionCopy.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._name = value.name;
this._crossRegionCopy.internalValue = value.crossRegionCopy;
}
}
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 crossRegionCopy() {
return this._crossRegionCopy;
}
putCrossRegionCopy(value) {
this._crossRegionCopy.internalValue = value;
}
// Temporarily expose input value. Use with caution.
get crossRegionCopyInput() {
return this._crossRegionCopy.internalValue;
}
}
exports.DlmLifecyclePolicyPolicyDetailsActionOutputReference = DlmLifecyclePolicyPolicyDetailsActionOutputReference;
_e = JSII_RTTI_SYMBOL_1;
DlmLifecyclePolicyPolicyDetailsActionOutputReference[_e] = { fqn: "@cdktf/provider-aws.dlmLifecyclePolicy.DlmLifecyclePolicyPolicyDetailsActionOutputReference", version: "19.50.0" };
function dlmLifecyclePolicyPolicyDetailsEventSourceParametersToTerraform(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 {
description_regex: cdktf.stringToTerraform(struct.descriptionRegex),
event_type: cdktf.stringToTerraform(struct.eventType),
snapshot_owner: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.snapshotOwner),
};
}
exports.dlmLifecyclePolicyPolicyDetailsEventSourceParametersToTerraform = dlmLifecyclePolicyPolicyDetailsEventSourceParametersToTerraform;
function dlmLifecyclePolicyPolicyDetailsEventSourceParametersToHclTerraform(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 = {
description_regex: {
value: cdktf.stringToHclTerraform(struct.descriptionRegex),
isBlock: false,
type: "simple",
storageClassType: "string",
},
event_type: {
value: cdktf.stringToHclTerraform(struct.eventType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
snapshot_owner: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.snapshotOwner),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.dlmLifecyclePolicyPolicyDetailsEventSourceParametersToHclTerraform = dlmLifecyclePolicyPolicyDetailsEventSourceParametersToHclTerraform;
class DlmLifecyclePolicyPolicyDetailsEventSourceParametersOutputReference 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._descriptionRegex !== undefined) {
hasAnyValues = true;
internalValueResult.descriptionRegex = this._descriptionRegex;
}
if (this._eventType !== undefined) {
hasAnyValues = true;
internalValueResult.eventType = this._eventType;
}
if (this._snapshotOwner !== undefined) {
hasAnyValues = true;
internalValueResult.snapshotOwner = this._snapshotOwner;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._descriptionRegex = undefined;
this._eventType = undefined;
this._snapshotOwner = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._descriptionRegex = value.descriptionRegex;
this._eventType = value.eventType;
this._snapshotOwner = value.snapshotOwner;
}
}
get descriptionRegex() {
return this.getStringAttribute('description_regex');
}
set descriptionRegex(value) {
this._descriptionRegex = value;
}
// Temporarily expose input value. Use with caution.
get descriptionRegexInput() {
return this._descriptionRegex;
}
get eventType() {
return this.getStringAttribute('event_type');
}
set eventType(value) {
this._eventType = value;
}
// Temporarily expose input value. Use with caution.
get eventTypeInput() {
return this._eventType;
}
get snapshotOwner() {
return cdktf.Fn.tolist(this.getListAttribute('snapshot_owner'));
}
set snapshotOwner(value) {
this._snapshotOwner = value;
}
// Temporarily expose input value. Use with caution.
get snapshotOwnerInput() {
return this._snapshotOwner;
}
}
exports.DlmLifecyclePolicyPolicyDetailsEventSourceParametersOutputReference = DlmLifecyclePolicyPolicyDetailsEventSourceParametersOutputReference;
_f = JSII_RTTI_SYMBOL_1;
DlmLifecyclePolicyPolicyDetailsEventSourceParametersOutputReference[_f] = { fqn: "@cdktf/provider-aws.dlmLifecyclePolicy.DlmLifecyclePolicyPolicyDetailsEventSourceParametersOutputReference", version: "19.50.0" };
function dlmLifecyclePolicyPolicyDetailsEventSourceToTerraform(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 {
type: cdktf.stringToTerraform(struct.type),
parameters: dlmLifecyclePolicyPolicyDetailsEventSourceParametersToTerraform(struct.parameters),
};
}
exports.dlmLifecyclePolicyPolicyDetailsEventSourceToTerraform = dlmLifecyclePolicyPolicyDetailsEventSourceToTerraform;
function dlmLifecyclePolicyPolicyDetailsEventSourceToHclTerraform(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 = {
type: {
value: cdktf.stringToHclTerraform(struct.type),
isBlock: false,
type: "simple",
storageClassType: "string",
},
parameters: {
value: dlmLifecyclePolicyPolicyDetailsEventSourceParametersToHclTerraform(struct.parameters),
isBlock: true,
type: "list",
storageClassType: "DlmLifecyclePolicyPolicyDetailsEventSourceParametersList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.dlmLifecyclePolicyPolicyDetailsEventSourceToHclTerraform = dlmLifecyclePolicyPolicyDetailsEventSourceToHclTerraform;
class DlmLifecyclePolicyPolicyDetailsEventSourceOutputReference 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;
// parameters - computed: false, optional: false, required: true
this._parameters = new DlmLifecyclePolicyPolicyDetailsEventSourceParametersOutputReference(this, "parameters");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._type !== undefined) {
hasAnyValues = true;
internalValueResult.type = this._type;
}
if (this._parameters?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.parameters = this._parameters?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._type = undefined;
this._parameters.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._type = value.type;
this._parameters.internalValue = value.parameters;
}
}
get type() {
return this.getStringAttribute('type');
}
set type(value) {
this._type = value;
}
// Temporarily expose input value. Use with caution.
get typeInput() {
return this._type;
}
get parameters() {
return this._parameters;
}
putParameters(value) {
this._parameters.internalValue = value;
}
// Temporarily expose input value. Use with caution.
get parametersInput() {
return this._parameters.internalValue;
}
}
exports.DlmLifecyclePolicyPolicyDetailsEventSourceOutputReference = DlmLifecyclePolicyPolicyDetailsEventSourceOutputReference;
_g = JSII_RTTI_SYMBOL_1;
DlmLifecyclePolicyPolicyDetailsEventSourceOutputReference[_g] = { fqn: "@cdktf/provider-aws.dlmLifecyclePolicy.DlmLifecyclePolicyPolicyDetailsEventSourceOutputReference", version: "19.50.0" };
function dlmLifecyclePolicyPolicyDetailsParametersToTerraform(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 {
exclude_boot_volume: cdktf.booleanToTerraform(struct.excludeBootVolume),
no_reboot: cdktf.booleanToTerraform(struct.noReboot),
};
}
exports.dlmLifecyclePolicyPolicyDetailsParametersToTerraform = dlmLifecyclePolicyPolicyDetailsParametersToTerraform;
function dlmLifecyclePolicyPolicyDetailsParametersToHclTerraform(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 = {
exclude_boot_volume: {
value: cdktf.booleanToHclTerraform(struct.excludeBootVolume),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
no_reboot: {
value: cdktf.booleanToHclTerraform(struct.noReboot),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.dlmLifecyclePolicyPolicyDetailsParametersToHclTerraform = dlmLifecyclePolicyPolicyDetailsParametersToHclTerraform;
class DlmLifecyclePolicyPolicyDetailsParametersOutputReference 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._excludeBootVolume !== undefined) {
hasAnyValues = true;
internalValueResult.excludeBootVolume = this._excludeBootVolume;
}
if (this._noReboot !== undefined) {
hasAnyValues = true;
internalValueResult.noReboot = this._noReboot;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._excludeBootVolume = undefined;
this._noReboot = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._excludeBootVolume = value.excludeBootVolume;
this._noReboot = value.noReboot;
}
}
get excludeBootVolume() {
return this.getBooleanAttribute('exclude_boot_volume');
}
set excludeBootVolume(value) {
this._excludeBootVolume = value;
}
resetExcludeBootVolume() {
this._excludeBootVolume = undefined;
}
// Temporarily expose input value. Use with caution.
get excludeBootVolumeInput() {
return this._excludeBootVolume;
}
get noReboot() {
return this.getBooleanAttribute('no_reboot');
}
set noReboot(value) {
this._noReboot = value;
}
resetNoReboot() {
this._noReboot = undefined;
}
// Temporarily expose input value. Use with caution.
get noRebootInput() {
return this._noReboot;
}
}
exports.DlmLifecyclePolicyPolicyDetailsParametersOutputReference = DlmLifecyclePolicyPolicyDetailsParametersOutputReference;
_h = JSII_RTTI_SYMBOL_1;
DlmLifecyclePolicyPolicyDetailsParametersOutputReference[_h] = { fqn: "@cdktf/provider-aws.dlmLifecyclePolicy.DlmLifecyclePolicyPolicyDetailsParametersOutputReference", version: "19.50.0" };
function dlmLifecyclePolicyPolicyDetailsScheduleCreateRuleToTerraform(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 {
cron_expression: cdktf.stringToTerraform(struct.cronExpression),
interval: cdktf.numberToTerraform(struct.interval),
interval_unit: cdktf.stringToTerraform(struct.intervalUnit),
location: cdktf.stringToTerraform(struct.location),
times: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.times),
};
}
exports.dlmLifecyclePolicyPolicyDetailsScheduleCreateRuleToTerraform = dlmLifecyclePolicyPolicyDetailsScheduleCreateRuleToTerraform;
function dlmLifecyclePolicyPolicyDetailsScheduleCreateRuleToHclTerraform(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 = {
cron_expression: {
value: cdktf.stringToHclTerraform(struct.cronExpression),
isBlock: false,
type: "simple",
storageClassType: "string",
},
interval: {
value: cdktf.numberToHclTerraform(struct.interval),
isBlock: false,
type: "simple",
storageClassType: "number",
},
interval_unit: {
value: cdktf.stringToHclTerraform(struct.intervalUnit),
isBlock: false,
type: "simple",
storageClassType: "string",
},
location: {
value: cdktf.stringToHclTerraform(struct.location),
isBlock: false,
type: "simple",
storageClassType: "string",
},
times: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.times),
isBlock: false,
type: "list",
storageClassType: "stringList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.dlmLifecyclePolicyPolicyDetailsScheduleCreateRuleToHclTerraform = dlmLifecyclePolicyPolicyDetailsScheduleCreateRuleToHclTerraform;
class DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleOutputReference 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._cronExpression !== undefined) {
hasAnyValues = true;
internalValueResult.cronExpression = this._cronExpression;
}
if (this._interval !== undefined) {
hasAnyValues = true;
internalValueResult.interval = this._interval;
}
if (this._intervalUnit !== undefined) {
hasAnyValues = true;
internalValueResult.intervalUnit = this._intervalUnit;
}
if (this._location !== undefined) {
hasAnyValues = true;
internalValueResult.location = this._location;
}
if (this._times !== undefined) {
hasAnyValues = true;
internalValueResult.times = this._times;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._cronExpression = undefined;
this._interval = undefined;
this._intervalUnit = undefined;
this._location = undefined;
this._times = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._cronExpression = value.cronExpression;
this._interval = value.interval;
this._intervalUnit = value.intervalUnit;
this._location = value.location;
this._times = value.times;
}
}
get cronExpression() {
return this.getStringAttribute('cron_expression');
}
set cronExpression(value) {
this._cronExpression = value;
}
resetCronExpression() {
this._cronExpression = undefined;
}
// Temporarily expose input value. Use with caution.
get cronExpressionInput() {
return this._cronExpression;
}
get interval() {
return this.getNumberAttribute('interval');
}
set interval(value) {
this._interval = value;
}
resetInterval() {
this._interval = undefined;
}
// Temporarily expose input value. Use with caution.
get intervalInput() {
return this._interval;
}
get intervalUnit() {
return this.getStringAttribute('interval_unit');
}
set intervalUnit(value) {
this._intervalUnit = value;
}
resetIntervalUnit() {
this._intervalUnit = undefined;
}
// Temporarily expose input value. Use with caution.
get intervalUnitInput() {
return this._intervalUnit;
}
get location() {
return this.getStringAttribute('location');
}
set location(value) {
this._location = value;
}
resetLocation() {
this._location = undefined;
}
// Temporarily expose input value. Use with caution.
get locationInput() {
return this._location;
}
get times() {
return this.getListAttribute('times');
}
set times(value) {
this._times = value;
}
resetTimes() {
this._times = undefined;
}
// Temporarily expose input value. Use with caution.
get timesInput() {
return this._times;
}
}
exports.DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleOutputReference = DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleOutputReference;
_j = JSII_RTTI_SYMBOL_1;
DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleOutputReference[_j] = { fqn: "@cdktf/provider-aws.dlmLifecyclePolicy.DlmLifecyclePolicyPolicyDetailsScheduleCreateRuleOutputReference", version: "19.50.0" };
function dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRuleToTerraform(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 {
interval: cdktf.numberToTerraform(struct.interval),
interval_unit: cdktf.stringToTerraform(struct.intervalUnit),
};
}
exports.dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRuleToTerraform = dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRuleToTerraform;
function dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRuleToHclTerraform(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 = {
interval: {
value: cdktf.numberToHclTerraform(struct.interval),
isBlock: false,
type: "simple",
storageClassType: "number",
},
interval_unit: {
value: cdktf.stringToHclTerraform(struct.intervalUnit),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRuleToHclTerraform = dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRuleToHclTerraform;
class DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRuleOutputReference 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._interval !== undefined) {
hasAnyValues = true;
internalValueResult.interval = this._interval;
}
if (this._intervalUnit !== undefined) {
hasAnyValues = true;
internalValueResult.intervalUnit = this._intervalUnit;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._interval = undefined;
this._intervalUnit = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._interval = value.interval;
this._intervalUnit = value.intervalUnit;
}
}
get interval() {
return this.getNumberAttribute('interval');
}
set interval(value) {
this._interval = value;
}
// Temporarily expose input value. Use with caution.
get intervalInput() {
return this._interval;
}
get intervalUnit() {
return this.getStringAttribute('interval_unit');
}
set intervalUnit(value) {
this._intervalUnit = value;
}
// Temporarily expose input value. Use with caution.
get intervalUnitInput() {
return this._intervalUnit;
}
}
exports.DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRuleOutputReference = DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRuleOutputReference;
_k = JSII_RTTI_SYMBOL_1;
DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRuleOutputReference[_k] = { fqn: "@cdktf/provider-aws.dlmLifecyclePolicy.DlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleDeprecateRuleOutputReference", version: "19.50.0" };
function dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleRetainRuleToTerraform(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 {
interval: cdktf.numberToTerraform(struct.interval),
interval_unit: cdktf.stringToTerraform(struct.intervalUnit),
};
}
exports.dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleRetainRuleToTerraform = dlmLifecyclePolicyPolicyDetailsScheduleCrossRegionCopyRuleRetainRuleToTerraform;
function dlmLif