UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

1,156 lines 365 kB
"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.CeAnomalySubscription = exports.CeAnomalySubscriptionThresholdExpressionOutputReference = exports.CeAnomalySubscriptionThresholdExpressionTagsOutputReference = exports.CeAnomalySubscriptionThresholdExpressionOrList = exports.CeAnomalySubscriptionThresholdExpressionOrOutputReference = exports.CeAnomalySubscriptionThresholdExpressionOrTagsOutputReference = exports.CeAnomalySubscriptionThresholdExpressionOrDimensionOutputReference = exports.CeAnomalySubscriptionThresholdExpressionOrCostCategoryOutputReference = exports.CeAnomalySubscriptionThresholdExpressionNotOutputReference = exports.CeAnomalySubscriptionThresholdExpressionNotTagsOutputReference = exports.CeAnomalySubscriptionThresholdExpressionNotDimensionOutputReference = exports.CeAnomalySubscriptionThresholdExpressionNotCostCategoryOutputReference = exports.CeAnomalySubscriptionThresholdExpressionDimensionOutputReference = exports.CeAnomalySubscriptionThresholdExpressionCostCategoryOutputReference = exports.CeAnomalySubscriptionThresholdExpressionAndList = exports.CeAnomalySubscriptionThresholdExpressionAndOutputReference = exports.CeAnomalySubscriptionThresholdExpressionAndTagsOutputReference = exports.CeAnomalySubscriptionThresholdExpressionAndDimensionOutputReference = exports.CeAnomalySubscriptionThresholdExpressionAndCostCategoryOutputReference = exports.CeAnomalySubscriptionSubscriberList = exports.CeAnomalySubscriptionSubscriberOutputReference = void 0; exports.ceAnomalySubscriptionSubscriberToTerraform = ceAnomalySubscriptionSubscriberToTerraform; exports.ceAnomalySubscriptionSubscriberToHclTerraform = ceAnomalySubscriptionSubscriberToHclTerraform; exports.ceAnomalySubscriptionThresholdExpressionAndCostCategoryToTerraform = ceAnomalySubscriptionThresholdExpressionAndCostCategoryToTerraform; exports.ceAnomalySubscriptionThresholdExpressionAndCostCategoryToHclTerraform = ceAnomalySubscriptionThresholdExpressionAndCostCategoryToHclTerraform; exports.ceAnomalySubscriptionThresholdExpressionAndDimensionToTerraform = ceAnomalySubscriptionThresholdExpressionAndDimensionToTerraform; exports.ceAnomalySubscriptionThresholdExpressionAndDimensionToHclTerraform = ceAnomalySubscriptionThresholdExpressionAndDimensionToHclTerraform; exports.ceAnomalySubscriptionThresholdExpressionAndTagsToTerraform = ceAnomalySubscriptionThresholdExpressionAndTagsToTerraform; exports.ceAnomalySubscriptionThresholdExpressionAndTagsToHclTerraform = ceAnomalySubscriptionThresholdExpressionAndTagsToHclTerraform; exports.ceAnomalySubscriptionThresholdExpressionAndToTerraform = ceAnomalySubscriptionThresholdExpressionAndToTerraform; exports.ceAnomalySubscriptionThresholdExpressionAndToHclTerraform = ceAnomalySubscriptionThresholdExpressionAndToHclTerraform; exports.ceAnomalySubscriptionThresholdExpressionCostCategoryToTerraform = ceAnomalySubscriptionThresholdExpressionCostCategoryToTerraform; exports.ceAnomalySubscriptionThresholdExpressionCostCategoryToHclTerraform = ceAnomalySubscriptionThresholdExpressionCostCategoryToHclTerraform; exports.ceAnomalySubscriptionThresholdExpressionDimensionToTerraform = ceAnomalySubscriptionThresholdExpressionDimensionToTerraform; exports.ceAnomalySubscriptionThresholdExpressionDimensionToHclTerraform = ceAnomalySubscriptionThresholdExpressionDimensionToHclTerraform; exports.ceAnomalySubscriptionThresholdExpressionNotCostCategoryToTerraform = ceAnomalySubscriptionThresholdExpressionNotCostCategoryToTerraform; exports.ceAnomalySubscriptionThresholdExpressionNotCostCategoryToHclTerraform = ceAnomalySubscriptionThresholdExpressionNotCostCategoryToHclTerraform; exports.ceAnomalySubscriptionThresholdExpressionNotDimensionToTerraform = ceAnomalySubscriptionThresholdExpressionNotDimensionToTerraform; exports.ceAnomalySubscriptionThresholdExpressionNotDimensionToHclTerraform = ceAnomalySubscriptionThresholdExpressionNotDimensionToHclTerraform; exports.ceAnomalySubscriptionThresholdExpressionNotTagsToTerraform = ceAnomalySubscriptionThresholdExpressionNotTagsToTerraform; exports.ceAnomalySubscriptionThresholdExpressionNotTagsToHclTerraform = ceAnomalySubscriptionThresholdExpressionNotTagsToHclTerraform; exports.ceAnomalySubscriptionThresholdExpressionNotToTerraform = ceAnomalySubscriptionThresholdExpressionNotToTerraform; exports.ceAnomalySubscriptionThresholdExpressionNotToHclTerraform = ceAnomalySubscriptionThresholdExpressionNotToHclTerraform; exports.ceAnomalySubscriptionThresholdExpressionOrCostCategoryToTerraform = ceAnomalySubscriptionThresholdExpressionOrCostCategoryToTerraform; exports.ceAnomalySubscriptionThresholdExpressionOrCostCategoryToHclTerraform = ceAnomalySubscriptionThresholdExpressionOrCostCategoryToHclTerraform; exports.ceAnomalySubscriptionThresholdExpressionOrDimensionToTerraform = ceAnomalySubscriptionThresholdExpressionOrDimensionToTerraform; exports.ceAnomalySubscriptionThresholdExpressionOrDimensionToHclTerraform = ceAnomalySubscriptionThresholdExpressionOrDimensionToHclTerraform; exports.ceAnomalySubscriptionThresholdExpressionOrTagsToTerraform = ceAnomalySubscriptionThresholdExpressionOrTagsToTerraform; exports.ceAnomalySubscriptionThresholdExpressionOrTagsToHclTerraform = ceAnomalySubscriptionThresholdExpressionOrTagsToHclTerraform; exports.ceAnomalySubscriptionThresholdExpressionOrToTerraform = ceAnomalySubscriptionThresholdExpressionOrToTerraform; exports.ceAnomalySubscriptionThresholdExpressionOrToHclTerraform = ceAnomalySubscriptionThresholdExpressionOrToHclTerraform; exports.ceAnomalySubscriptionThresholdExpressionTagsToTerraform = ceAnomalySubscriptionThresholdExpressionTagsToTerraform; exports.ceAnomalySubscriptionThresholdExpressionTagsToHclTerraform = ceAnomalySubscriptionThresholdExpressionTagsToHclTerraform; exports.ceAnomalySubscriptionThresholdExpressionToTerraform = ceAnomalySubscriptionThresholdExpressionToTerraform; exports.ceAnomalySubscriptionThresholdExpressionToHclTerraform = ceAnomalySubscriptionThresholdExpressionToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function ceAnomalySubscriptionSubscriberToTerraform(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 { address: cdktf.stringToTerraform(struct.address), type: cdktf.stringToTerraform(struct.type), }; } function ceAnomalySubscriptionSubscriberToHclTerraform(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 = { address: { value: cdktf.stringToHclTerraform(struct.address), 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 CeAnomalySubscriptionSubscriberOutputReference 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._address !== undefined) { hasAnyValues = true; internalValueResult.address = this._address; } 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._address = 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._address = value.address; this._type = value.type; } } get address() { return this.getStringAttribute('address'); } set address(value) { this._address = value; } // Temporarily expose input value. Use with caution. get addressInput() { return this._address; } 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.CeAnomalySubscriptionSubscriberOutputReference = CeAnomalySubscriptionSubscriberOutputReference; _a = JSII_RTTI_SYMBOL_1; CeAnomalySubscriptionSubscriberOutputReference[_a] = { fqn: "@cdktf/provider-aws.ceAnomalySubscription.CeAnomalySubscriptionSubscriberOutputReference", version: "21.22.1" }; class CeAnomalySubscriptionSubscriberList 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 CeAnomalySubscriptionSubscriberOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.CeAnomalySubscriptionSubscriberList = CeAnomalySubscriptionSubscriberList; _b = JSII_RTTI_SYMBOL_1; CeAnomalySubscriptionSubscriberList[_b] = { fqn: "@cdktf/provider-aws.ceAnomalySubscription.CeAnomalySubscriptionSubscriberList", version: "21.22.1" }; function ceAnomalySubscriptionThresholdExpressionAndCostCategoryToTerraform(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 { key: cdktf.stringToTerraform(struct.key), match_options: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.matchOptions), values: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.values), }; } function ceAnomalySubscriptionThresholdExpressionAndCostCategoryToHclTerraform(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 = { key: { value: cdktf.stringToHclTerraform(struct.key), isBlock: false, type: "simple", storageClassType: "string", }, match_options: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.matchOptions), isBlock: false, type: "set", storageClassType: "stringList", }, values: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.values), isBlock: false, type: "set", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CeAnomalySubscriptionThresholdExpressionAndCostCategoryOutputReference 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._key !== undefined) { hasAnyValues = true; internalValueResult.key = this._key; } if (this._matchOptions !== undefined) { hasAnyValues = true; internalValueResult.matchOptions = this._matchOptions; } if (this._values !== undefined) { hasAnyValues = true; internalValueResult.values = this._values; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._key = undefined; this._matchOptions = undefined; this._values = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._key = value.key; this._matchOptions = value.matchOptions; this._values = value.values; } } get key() { return this.getStringAttribute('key'); } set key(value) { this._key = value; } resetKey() { this._key = undefined; } // Temporarily expose input value. Use with caution. get keyInput() { return this._key; } get matchOptions() { return cdktf.Fn.tolist(this.getListAttribute('match_options')); } set matchOptions(value) { this._matchOptions = value; } resetMatchOptions() { this._matchOptions = undefined; } // Temporarily expose input value. Use with caution. get matchOptionsInput() { return this._matchOptions; } get values() { return cdktf.Fn.tolist(this.getListAttribute('values')); } set values(value) { this._values = value; } resetValues() { this._values = undefined; } // Temporarily expose input value. Use with caution. get valuesInput() { return this._values; } } exports.CeAnomalySubscriptionThresholdExpressionAndCostCategoryOutputReference = CeAnomalySubscriptionThresholdExpressionAndCostCategoryOutputReference; _c = JSII_RTTI_SYMBOL_1; CeAnomalySubscriptionThresholdExpressionAndCostCategoryOutputReference[_c] = { fqn: "@cdktf/provider-aws.ceAnomalySubscription.CeAnomalySubscriptionThresholdExpressionAndCostCategoryOutputReference", version: "21.22.1" }; function ceAnomalySubscriptionThresholdExpressionAndDimensionToTerraform(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 { key: cdktf.stringToTerraform(struct.key), match_options: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.matchOptions), values: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.values), }; } function ceAnomalySubscriptionThresholdExpressionAndDimensionToHclTerraform(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 = { key: { value: cdktf.stringToHclTerraform(struct.key), isBlock: false, type: "simple", storageClassType: "string", }, match_options: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.matchOptions), isBlock: false, type: "set", storageClassType: "stringList", }, values: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.values), isBlock: false, type: "set", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CeAnomalySubscriptionThresholdExpressionAndDimensionOutputReference 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._key !== undefined) { hasAnyValues = true; internalValueResult.key = this._key; } if (this._matchOptions !== undefined) { hasAnyValues = true; internalValueResult.matchOptions = this._matchOptions; } if (this._values !== undefined) { hasAnyValues = true; internalValueResult.values = this._values; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._key = undefined; this._matchOptions = undefined; this._values = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._key = value.key; this._matchOptions = value.matchOptions; this._values = value.values; } } get key() { return this.getStringAttribute('key'); } set key(value) { this._key = value; } resetKey() { this._key = undefined; } // Temporarily expose input value. Use with caution. get keyInput() { return this._key; } get matchOptions() { return cdktf.Fn.tolist(this.getListAttribute('match_options')); } set matchOptions(value) { this._matchOptions = value; } resetMatchOptions() { this._matchOptions = undefined; } // Temporarily expose input value. Use with caution. get matchOptionsInput() { return this._matchOptions; } get values() { return cdktf.Fn.tolist(this.getListAttribute('values')); } set values(value) { this._values = value; } resetValues() { this._values = undefined; } // Temporarily expose input value. Use with caution. get valuesInput() { return this._values; } } exports.CeAnomalySubscriptionThresholdExpressionAndDimensionOutputReference = CeAnomalySubscriptionThresholdExpressionAndDimensionOutputReference; _d = JSII_RTTI_SYMBOL_1; CeAnomalySubscriptionThresholdExpressionAndDimensionOutputReference[_d] = { fqn: "@cdktf/provider-aws.ceAnomalySubscription.CeAnomalySubscriptionThresholdExpressionAndDimensionOutputReference", version: "21.22.1" }; function ceAnomalySubscriptionThresholdExpressionAndTagsToTerraform(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 { key: cdktf.stringToTerraform(struct.key), match_options: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.matchOptions), values: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.values), }; } function ceAnomalySubscriptionThresholdExpressionAndTagsToHclTerraform(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 = { key: { value: cdktf.stringToHclTerraform(struct.key), isBlock: false, type: "simple", storageClassType: "string", }, match_options: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.matchOptions), isBlock: false, type: "set", storageClassType: "stringList", }, values: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.values), isBlock: false, type: "set", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CeAnomalySubscriptionThresholdExpressionAndTagsOutputReference 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._key !== undefined) { hasAnyValues = true; internalValueResult.key = this._key; } if (this._matchOptions !== undefined) { hasAnyValues = true; internalValueResult.matchOptions = this._matchOptions; } if (this._values !== undefined) { hasAnyValues = true; internalValueResult.values = this._values; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._key = undefined; this._matchOptions = undefined; this._values = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._key = value.key; this._matchOptions = value.matchOptions; this._values = value.values; } } get key() { return this.getStringAttribute('key'); } set key(value) { this._key = value; } resetKey() { this._key = undefined; } // Temporarily expose input value. Use with caution. get keyInput() { return this._key; } get matchOptions() { return cdktf.Fn.tolist(this.getListAttribute('match_options')); } set matchOptions(value) { this._matchOptions = value; } resetMatchOptions() { this._matchOptions = undefined; } // Temporarily expose input value. Use with caution. get matchOptionsInput() { return this._matchOptions; } get values() { return cdktf.Fn.tolist(this.getListAttribute('values')); } set values(value) { this._values = value; } resetValues() { this._values = undefined; } // Temporarily expose input value. Use with caution. get valuesInput() { return this._values; } } exports.CeAnomalySubscriptionThresholdExpressionAndTagsOutputReference = CeAnomalySubscriptionThresholdExpressionAndTagsOutputReference; _e = JSII_RTTI_SYMBOL_1; CeAnomalySubscriptionThresholdExpressionAndTagsOutputReference[_e] = { fqn: "@cdktf/provider-aws.ceAnomalySubscription.CeAnomalySubscriptionThresholdExpressionAndTagsOutputReference", version: "21.22.1" }; function ceAnomalySubscriptionThresholdExpressionAndToTerraform(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 { cost_category: ceAnomalySubscriptionThresholdExpressionAndCostCategoryToTerraform(struct.costCategory), dimension: ceAnomalySubscriptionThresholdExpressionAndDimensionToTerraform(struct.dimension), tags: ceAnomalySubscriptionThresholdExpressionAndTagsToTerraform(struct.tags), }; } function ceAnomalySubscriptionThresholdExpressionAndToHclTerraform(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 = { cost_category: { value: ceAnomalySubscriptionThresholdExpressionAndCostCategoryToHclTerraform(struct.costCategory), isBlock: true, type: "list", storageClassType: "CeAnomalySubscriptionThresholdExpressionAndCostCategoryList", }, dimension: { value: ceAnomalySubscriptionThresholdExpressionAndDimensionToHclTerraform(struct.dimension), isBlock: true, type: "list", storageClassType: "CeAnomalySubscriptionThresholdExpressionAndDimensionList", }, tags: { value: ceAnomalySubscriptionThresholdExpressionAndTagsToHclTerraform(struct.tags), isBlock: true, type: "list", storageClassType: "CeAnomalySubscriptionThresholdExpressionAndTagsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CeAnomalySubscriptionThresholdExpressionAndOutputReference 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; // cost_category - computed: false, optional: true, required: false this._costCategory = new CeAnomalySubscriptionThresholdExpressionAndCostCategoryOutputReference(this, "cost_category"); // dimension - computed: false, optional: true, required: false this._dimension = new CeAnomalySubscriptionThresholdExpressionAndDimensionOutputReference(this, "dimension"); // tags - computed: false, optional: true, required: false this._tags = new CeAnomalySubscriptionThresholdExpressionAndTagsOutputReference(this, "tags"); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._costCategory?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.costCategory = this._costCategory?.internalValue; } if (this._dimension?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.dimension = this._dimension?.internalValue; } if (this._tags?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.tags = this._tags?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._costCategory.internalValue = undefined; this._dimension.internalValue = undefined; this._tags.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._costCategory.internalValue = value.costCategory; this._dimension.internalValue = value.dimension; this._tags.internalValue = value.tags; } } get costCategory() { return this._costCategory; } putCostCategory(value) { this._costCategory.internalValue = value; } resetCostCategory() { this._costCategory.internalValue = undefined; } // Temporarily expose input value. Use with caution. get costCategoryInput() { return this._costCategory.internalValue; } get dimension() { return this._dimension; } putDimension(value) { this._dimension.internalValue = value; } resetDimension() { this._dimension.internalValue = undefined; } // Temporarily expose input value. Use with caution. get dimensionInput() { return this._dimension.internalValue; } get tags() { return this._tags; } putTags(value) { this._tags.internalValue = value; } resetTags() { this._tags.internalValue = undefined; } // Temporarily expose input value. Use with caution. get tagsInput() { return this._tags.internalValue; } } exports.CeAnomalySubscriptionThresholdExpressionAndOutputReference = CeAnomalySubscriptionThresholdExpressionAndOutputReference; _f = JSII_RTTI_SYMBOL_1; CeAnomalySubscriptionThresholdExpressionAndOutputReference[_f] = { fqn: "@cdktf/provider-aws.ceAnomalySubscription.CeAnomalySubscriptionThresholdExpressionAndOutputReference", version: "21.22.1" }; class CeAnomalySubscriptionThresholdExpressionAndList 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 CeAnomalySubscriptionThresholdExpressionAndOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.CeAnomalySubscriptionThresholdExpressionAndList = CeAnomalySubscriptionThresholdExpressionAndList; _g = JSII_RTTI_SYMBOL_1; CeAnomalySubscriptionThresholdExpressionAndList[_g] = { fqn: "@cdktf/provider-aws.ceAnomalySubscription.CeAnomalySubscriptionThresholdExpressionAndList", version: "21.22.1" }; function ceAnomalySubscriptionThresholdExpressionCostCategoryToTerraform(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 { key: cdktf.stringToTerraform(struct.key), match_options: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.matchOptions), values: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.values), }; } function ceAnomalySubscriptionThresholdExpressionCostCategoryToHclTerraform(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 = { key: { value: cdktf.stringToHclTerraform(struct.key), isBlock: false, type: "simple", storageClassType: "string", }, match_options: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.matchOptions), isBlock: false, type: "set", storageClassType: "stringList", }, values: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.values), isBlock: false, type: "set", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CeAnomalySubscriptionThresholdExpressionCostCategoryOutputReference 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._key !== undefined) { hasAnyValues = true; internalValueResult.key = this._key; } if (this._matchOptions !== undefined) { hasAnyValues = true; internalValueResult.matchOptions = this._matchOptions; } if (this._values !== undefined) { hasAnyValues = true; internalValueResult.values = this._values; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._key = undefined; this._matchOptions = undefined; this._values = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._key = value.key; this._matchOptions = value.matchOptions; this._values = value.values; } } get key() { return this.getStringAttribute('key'); } set key(value) { this._key = value; } resetKey() { this._key = undefined; } // Temporarily expose input value. Use with caution. get keyInput() { return this._key; } get matchOptions() { return cdktf.Fn.tolist(this.getListAttribute('match_options')); } set matchOptions(value) { this._matchOptions = value; } resetMatchOptions() { this._matchOptions = undefined; } // Temporarily expose input value. Use with caution. get matchOptionsInput() { return this._matchOptions; } get values() { return cdktf.Fn.tolist(this.getListAttribute('values')); } set values(value) { this._values = value; } resetValues() { this._values = undefined; } // Temporarily expose input value. Use with caution. get valuesInput() { return this._values; } } exports.CeAnomalySubscriptionThresholdExpressionCostCategoryOutputReference = CeAnomalySubscriptionThresholdExpressionCostCategoryOutputReference; _h = JSII_RTTI_SYMBOL_1; CeAnomalySubscriptionThresholdExpressionCostCategoryOutputReference[_h] = { fqn: "@cdktf/provider-aws.ceAnomalySubscription.CeAnomalySubscriptionThresholdExpressionCostCategoryOutputReference", version: "21.22.1" }; function ceAnomalySubscriptionThresholdExpressionDimensionToTerraform(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 { key: cdktf.stringToTerraform(struct.key), match_options: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.matchOptions), values: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.values), }; } function ceAnomalySubscriptionThresholdExpressionDimensionToHclTerraform(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 = { key: { value: cdktf.stringToHclTerraform(struct.key), isBlock: false, type: "simple", storageClassType: "string", }, match_options: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.matchOptions), isBlock: false, type: "set", storageClassType: "stringList", }, values: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.values), isBlock: false, type: "set", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CeAnomalySubscriptionThresholdExpressionDimensionOutputReference 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._key !== undefined) { hasAnyValues = true; internalValueResult.key = this._key; } if (this._matchOptions !== undefined) { hasAnyValues = true; internalValueResult.matchOptions = this._matchOptions; } if (this._values !== undefined) { hasAnyValues = true; internalValueResult.values = this._values; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._key = undefined; this._matchOptions = undefined; this._values = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._key = value.key; this._matchOptions = value.matchOptions; this._values = value.values; } } get key() { return this.getStringAttribute('key'); } set key(value) { this._key = value; } resetKey() { this._key = undefined; } // Temporarily expose input value. Use with caution. get keyInput() { return this._key; } get matchOptions() { return cdktf.Fn.tolist(this.getListAttribute('match_options')); } set matchOptions(value) { this._matchOptions = value; } resetMatchOptions() { this._matchOptions = undefined; } // Temporarily expose input value. Use with caution. get matchOptionsInput() { return this._matchOptions; } get values() { return cdktf.Fn.tolist(this.getListAttribute('values')); } set values(value) { this._values = value; } resetValues() { this._values = undefined; } // Temporarily expose input value. Use with caution. get valuesInput() { return this._values; } } exports.CeAnomalySubscriptionThresholdExpressionDimensionOutputReference = CeAnomalySubscriptionThresholdExpressionDimensionOutputReference; _j = JSII_RTTI_SYMBOL_1; CeAnomalySubscriptionThresholdExpressionDimensionOutputReference[_j] = { fqn: "@cdktf/provider-aws.ceAnomalySubscription.CeAnomalySubscriptionThresholdExpressionDimensionOutputReference", version: "21.22.1" }; function ceAnomalySubscriptionThresholdExpressionNotCostCategoryToTerraform(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 { key: cdktf.stringToTerraform(struct.key), match_options: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.matchOptions), values: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.values), }; } function ceAnomalySubscriptionThresholdExpressionNotCostCategoryToHclTerraform(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 = { key: { value: cdktf.stringToHclTerraform(struct.key), isBlock: false, type: "simple", storageClassType: "string", }, match_options: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.matchOptions), isBlock: false, type: "set", storageClassType: "stringList", }, values: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.values), isBlock: false, type: "set", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CeAnomalySubscriptionThresholdExpressionNotCostCategoryOutputReference 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._key !== undefined) { hasAnyValues = true; internalValueResult.key = this._key; } if (this._matchOptions !== undefined) { hasAnyValues = true; internalValueResult.matchOptions = this._matchOptions; } if (this._values !== undefined) { hasAnyValues = true; internalValueResult.values = this._values; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._key = undefined; this._matchOptions = undefined; this._values = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._key = value.key; this._matchOptions = value.matchOptions; this._values = value.values; } } get key() { return this.getStringAttribute('key'); } set key(value) { this._key = value; } resetKey() { this._key = undefined; } // Temporarily expose input value. Use with caution. get keyInput() { return this._key; } get matchOptions() { return cdktf.Fn.tolist(this.getListAttribute('match_options')); } set matchOptions(value) { this._matchOptions = value; } resetMatchOptions() { this._matchOptions = undefined; } // Temporarily expose input value. Use with caution. get matchOptionsInput() { return this._matchOptions; } get values() { return cdktf.Fn.tolist(this.getListAttribute('values')); } set values(value) { this._values = value; } resetValues() { this._values = undefined; } // Temporarily expose input value. Use with caution. get valuesInput() { return this._values; } } exports.CeAnomalySubscriptionThresholdExpressionNotCostCategoryOutputReference = CeAnomalySubscriptionThresholdExpressionNotCostCategoryOutputReference; _k = JSII_RTTI_SYMBOL_1; CeAnomalySubscriptionThresholdExpressionNotCostCategoryOutputReference[_k] = { fqn: "@cdktf/provider-aws.ceAnomalySubscription.CeAnomalySubscriptionThresholdExpressionNotCostCategoryOutputReference", version: "21.22.1" }; function ceAnomalySubscriptionThresholdExpressionNotDimensionToTerraform(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 { key: cdktf.stringToTerraform(struct.key), match_options: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.matchOptions), values: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.values), }; } function ceAnomalySubscriptionThresholdExpressionNotDimensionToHclTerraform(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 = { key: { value: cdktf.stringToHclTerraform(struct.key), isBlock: false, type: "simple", storageClassType: "string", }, match_options: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.matchOptions), isBlock: false, type: "set", storageClassType: "stringList", }, values: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.values), isBlock: false, type: "set", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class CeAnomalySubscriptionThresholdExpressionNotDimensionOutputReference 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._key !== undefined) { hasAnyValues = true; internalValueResult.key = this._key; } if (this._matchOptions !== undefined) { hasAnyValues = true; internalValueResult.matchOptions = this._matchOptions; } if (this._values !== undefined) { hasAnyValues = true; internalValueResult.values = this._values; } return hasAnyValues