UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

1,009 lines 269 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, _x, _y, _z; Object.defineProperty(exports, "__esModule", { value: true }); exports.Lexv2ModelsSlotType = exports.Lexv2ModelsSlotTypeValueSelectionSettingList = exports.Lexv2ModelsSlotTypeValueSelectionSettingOutputReference = exports.Lexv2ModelsSlotTypeValueSelectionSettingRegexFilterList = exports.Lexv2ModelsSlotTypeValueSelectionSettingRegexFilterOutputReference = exports.Lexv2ModelsSlotTypeValueSelectionSettingAdvancedRecognitionSettingList = exports.Lexv2ModelsSlotTypeValueSelectionSettingAdvancedRecognitionSettingOutputReference = exports.Lexv2ModelsSlotTypeTimeoutsOutputReference = exports.Lexv2ModelsSlotTypeSlotTypeValuesList = exports.Lexv2ModelsSlotTypeSlotTypeValuesOutputReference = exports.Lexv2ModelsSlotTypeSlotTypeValuesSynonymsList = exports.Lexv2ModelsSlotTypeSlotTypeValuesSynonymsOutputReference = exports.Lexv2ModelsSlotTypeSlotTypeValuesSampleValueList = exports.Lexv2ModelsSlotTypeSlotTypeValuesSampleValueOutputReference = exports.Lexv2ModelsSlotTypeExternalSourceSettingList = exports.Lexv2ModelsSlotTypeExternalSourceSettingOutputReference = exports.Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingList = exports.Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingOutputReference = exports.Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceList = exports.Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceOutputReference = exports.Lexv2ModelsSlotTypeCompositeSlotTypeSettingList = exports.Lexv2ModelsSlotTypeCompositeSlotTypeSettingOutputReference = exports.Lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsList = exports.Lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsOutputReference = void 0; exports.lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsToTerraform = lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsToTerraform; exports.lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsToHclTerraform = lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsToHclTerraform; exports.lexv2ModelsSlotTypeCompositeSlotTypeSettingToTerraform = lexv2ModelsSlotTypeCompositeSlotTypeSettingToTerraform; exports.lexv2ModelsSlotTypeCompositeSlotTypeSettingToHclTerraform = lexv2ModelsSlotTypeCompositeSlotTypeSettingToHclTerraform; exports.lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceToTerraform = lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceToTerraform; exports.lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceToHclTerraform = lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceToHclTerraform; exports.lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingToTerraform = lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingToTerraform; exports.lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingToHclTerraform = lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingToHclTerraform; exports.lexv2ModelsSlotTypeExternalSourceSettingToTerraform = lexv2ModelsSlotTypeExternalSourceSettingToTerraform; exports.lexv2ModelsSlotTypeExternalSourceSettingToHclTerraform = lexv2ModelsSlotTypeExternalSourceSettingToHclTerraform; exports.lexv2ModelsSlotTypeSlotTypeValuesSampleValueToTerraform = lexv2ModelsSlotTypeSlotTypeValuesSampleValueToTerraform; exports.lexv2ModelsSlotTypeSlotTypeValuesSampleValueToHclTerraform = lexv2ModelsSlotTypeSlotTypeValuesSampleValueToHclTerraform; exports.lexv2ModelsSlotTypeSlotTypeValuesSynonymsToTerraform = lexv2ModelsSlotTypeSlotTypeValuesSynonymsToTerraform; exports.lexv2ModelsSlotTypeSlotTypeValuesSynonymsToHclTerraform = lexv2ModelsSlotTypeSlotTypeValuesSynonymsToHclTerraform; exports.lexv2ModelsSlotTypeSlotTypeValuesToTerraform = lexv2ModelsSlotTypeSlotTypeValuesToTerraform; exports.lexv2ModelsSlotTypeSlotTypeValuesToHclTerraform = lexv2ModelsSlotTypeSlotTypeValuesToHclTerraform; exports.lexv2ModelsSlotTypeTimeoutsToTerraform = lexv2ModelsSlotTypeTimeoutsToTerraform; exports.lexv2ModelsSlotTypeTimeoutsToHclTerraform = lexv2ModelsSlotTypeTimeoutsToHclTerraform; exports.lexv2ModelsSlotTypeValueSelectionSettingAdvancedRecognitionSettingToTerraform = lexv2ModelsSlotTypeValueSelectionSettingAdvancedRecognitionSettingToTerraform; exports.lexv2ModelsSlotTypeValueSelectionSettingAdvancedRecognitionSettingToHclTerraform = lexv2ModelsSlotTypeValueSelectionSettingAdvancedRecognitionSettingToHclTerraform; exports.lexv2ModelsSlotTypeValueSelectionSettingRegexFilterToTerraform = lexv2ModelsSlotTypeValueSelectionSettingRegexFilterToTerraform; exports.lexv2ModelsSlotTypeValueSelectionSettingRegexFilterToHclTerraform = lexv2ModelsSlotTypeValueSelectionSettingRegexFilterToHclTerraform; exports.lexv2ModelsSlotTypeValueSelectionSettingToTerraform = lexv2ModelsSlotTypeValueSelectionSettingToTerraform; exports.lexv2ModelsSlotTypeValueSelectionSettingToHclTerraform = lexv2ModelsSlotTypeValueSelectionSettingToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsToTerraform(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), slot_type_id: cdktf.stringToTerraform(struct.slotTypeId), }; } function lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsToHclTerraform(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", }, slot_type_id: { value: cdktf.stringToHclTerraform(struct.slotTypeId), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class Lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsOutputReference 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._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } if (this._slotTypeId !== undefined) { hasAnyValues = true; internalValueResult.slotTypeId = this._slotTypeId; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._name = undefined; this._slotTypeId = 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._name = value.name; this._slotTypeId = value.slotTypeId; } } 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 slotTypeId() { return this.getStringAttribute('slot_type_id'); } set slotTypeId(value) { this._slotTypeId = value; } // Temporarily expose input value. Use with caution. get slotTypeIdInput() { return this._slotTypeId; } } exports.Lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsOutputReference = Lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsOutputReference; _a = JSII_RTTI_SYMBOL_1; Lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsOutputReference[_a] = { fqn: "@cdktf/provider-aws.lexv2ModelsSlotType.Lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsOutputReference", version: "21.22.1" }; class Lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsList 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 Lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.Lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsList = Lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsList; _b = JSII_RTTI_SYMBOL_1; Lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsList[_b] = { fqn: "@cdktf/provider-aws.lexv2ModelsSlotType.Lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsList", version: "21.22.1" }; function lexv2ModelsSlotTypeCompositeSlotTypeSettingToTerraform(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 { sub_slots: cdktf.listMapper(lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsToTerraform, true)(struct.subSlots), }; } function lexv2ModelsSlotTypeCompositeSlotTypeSettingToHclTerraform(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 = { sub_slots: { value: cdktf.listMapperHcl(lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsToHclTerraform, true)(struct.subSlots), isBlock: true, type: "list", storageClassType: "Lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class Lexv2ModelsSlotTypeCompositeSlotTypeSettingOutputReference 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; // sub_slots - computed: false, optional: true, required: false this._subSlots = new Lexv2ModelsSlotTypeCompositeSlotTypeSettingSubSlotsList(this, "sub_slots", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._subSlots?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.subSlots = this._subSlots?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._subSlots.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._subSlots.internalValue = value.subSlots; } } get subSlots() { return this._subSlots; } putSubSlots(value) { this._subSlots.internalValue = value; } resetSubSlots() { this._subSlots.internalValue = undefined; } // Temporarily expose input value. Use with caution. get subSlotsInput() { return this._subSlots.internalValue; } } exports.Lexv2ModelsSlotTypeCompositeSlotTypeSettingOutputReference = Lexv2ModelsSlotTypeCompositeSlotTypeSettingOutputReference; _c = JSII_RTTI_SYMBOL_1; Lexv2ModelsSlotTypeCompositeSlotTypeSettingOutputReference[_c] = { fqn: "@cdktf/provider-aws.lexv2ModelsSlotType.Lexv2ModelsSlotTypeCompositeSlotTypeSettingOutputReference", version: "21.22.1" }; class Lexv2ModelsSlotTypeCompositeSlotTypeSettingList 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 Lexv2ModelsSlotTypeCompositeSlotTypeSettingOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.Lexv2ModelsSlotTypeCompositeSlotTypeSettingList = Lexv2ModelsSlotTypeCompositeSlotTypeSettingList; _d = JSII_RTTI_SYMBOL_1; Lexv2ModelsSlotTypeCompositeSlotTypeSettingList[_d] = { fqn: "@cdktf/provider-aws.lexv2ModelsSlotType.Lexv2ModelsSlotTypeCompositeSlotTypeSettingList", version: "21.22.1" }; function lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceToTerraform(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 { kms_key_arn: cdktf.stringToTerraform(struct.kmsKeyArn), s3_bucket_name: cdktf.stringToTerraform(struct.s3BucketName), s3_object_key: cdktf.stringToTerraform(struct.s3ObjectKey), }; } function lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceToHclTerraform(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 = { kms_key_arn: { value: cdktf.stringToHclTerraform(struct.kmsKeyArn), isBlock: false, type: "simple", storageClassType: "string", }, s3_bucket_name: { value: cdktf.stringToHclTerraform(struct.s3BucketName), isBlock: false, type: "simple", storageClassType: "string", }, s3_object_key: { value: cdktf.stringToHclTerraform(struct.s3ObjectKey), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceOutputReference 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._kmsKeyArn !== undefined) { hasAnyValues = true; internalValueResult.kmsKeyArn = this._kmsKeyArn; } if (this._s3BucketName !== undefined) { hasAnyValues = true; internalValueResult.s3BucketName = this._s3BucketName; } if (this._s3ObjectKey !== undefined) { hasAnyValues = true; internalValueResult.s3ObjectKey = this._s3ObjectKey; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._kmsKeyArn = undefined; this._s3BucketName = undefined; this._s3ObjectKey = 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._kmsKeyArn = value.kmsKeyArn; this._s3BucketName = value.s3BucketName; this._s3ObjectKey = value.s3ObjectKey; } } get kmsKeyArn() { return this.getStringAttribute('kms_key_arn'); } set kmsKeyArn(value) { this._kmsKeyArn = value; } // Temporarily expose input value. Use with caution. get kmsKeyArnInput() { return this._kmsKeyArn; } get s3BucketName() { return this.getStringAttribute('s3_bucket_name'); } set s3BucketName(value) { this._s3BucketName = value; } // Temporarily expose input value. Use with caution. get s3BucketNameInput() { return this._s3BucketName; } get s3ObjectKey() { return this.getStringAttribute('s3_object_key'); } set s3ObjectKey(value) { this._s3ObjectKey = value; } // Temporarily expose input value. Use with caution. get s3ObjectKeyInput() { return this._s3ObjectKey; } } exports.Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceOutputReference = Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceOutputReference; _e = JSII_RTTI_SYMBOL_1; Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceOutputReference[_e] = { fqn: "@cdktf/provider-aws.lexv2ModelsSlotType.Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceOutputReference", version: "21.22.1" }; class Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceList 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 Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceList = Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceList; _f = JSII_RTTI_SYMBOL_1; Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceList[_f] = { fqn: "@cdktf/provider-aws.lexv2ModelsSlotType.Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceList", version: "21.22.1" }; function lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingToTerraform(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 { source: cdktf.listMapper(lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceToTerraform, true)(struct.source), }; } function lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingToHclTerraform(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 = { source: { value: cdktf.listMapperHcl(lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceToHclTerraform, true)(struct.source), isBlock: true, type: "list", storageClassType: "Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingOutputReference 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; // source - computed: false, optional: true, required: false this._source = new Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingSourceList(this, "source", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._source?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.source = this._source?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._source.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._source.internalValue = value.source; } } get source() { return this._source; } putSource(value) { this._source.internalValue = value; } resetSource() { this._source.internalValue = undefined; } // Temporarily expose input value. Use with caution. get sourceInput() { return this._source.internalValue; } } exports.Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingOutputReference = Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingOutputReference; _g = JSII_RTTI_SYMBOL_1; Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingOutputReference[_g] = { fqn: "@cdktf/provider-aws.lexv2ModelsSlotType.Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingOutputReference", version: "21.22.1" }; class Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingList 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 Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingList = Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingList; _h = JSII_RTTI_SYMBOL_1; Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingList[_h] = { fqn: "@cdktf/provider-aws.lexv2ModelsSlotType.Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingList", version: "21.22.1" }; function lexv2ModelsSlotTypeExternalSourceSettingToTerraform(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 { grammar_slot_type_setting: cdktf.listMapper(lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingToTerraform, true)(struct.grammarSlotTypeSetting), }; } function lexv2ModelsSlotTypeExternalSourceSettingToHclTerraform(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 = { grammar_slot_type_setting: { value: cdktf.listMapperHcl(lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingToHclTerraform, true)(struct.grammarSlotTypeSetting), isBlock: true, type: "list", storageClassType: "Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class Lexv2ModelsSlotTypeExternalSourceSettingOutputReference 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; // grammar_slot_type_setting - computed: false, optional: true, required: false this._grammarSlotTypeSetting = new Lexv2ModelsSlotTypeExternalSourceSettingGrammarSlotTypeSettingList(this, "grammar_slot_type_setting", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._grammarSlotTypeSetting?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.grammarSlotTypeSetting = this._grammarSlotTypeSetting?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._grammarSlotTypeSetting.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._grammarSlotTypeSetting.internalValue = value.grammarSlotTypeSetting; } } get grammarSlotTypeSetting() { return this._grammarSlotTypeSetting; } putGrammarSlotTypeSetting(value) { this._grammarSlotTypeSetting.internalValue = value; } resetGrammarSlotTypeSetting() { this._grammarSlotTypeSetting.internalValue = undefined; } // Temporarily expose input value. Use with caution. get grammarSlotTypeSettingInput() { return this._grammarSlotTypeSetting.internalValue; } } exports.Lexv2ModelsSlotTypeExternalSourceSettingOutputReference = Lexv2ModelsSlotTypeExternalSourceSettingOutputReference; _j = JSII_RTTI_SYMBOL_1; Lexv2ModelsSlotTypeExternalSourceSettingOutputReference[_j] = { fqn: "@cdktf/provider-aws.lexv2ModelsSlotType.Lexv2ModelsSlotTypeExternalSourceSettingOutputReference", version: "21.22.1" }; class Lexv2ModelsSlotTypeExternalSourceSettingList 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 Lexv2ModelsSlotTypeExternalSourceSettingOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.Lexv2ModelsSlotTypeExternalSourceSettingList = Lexv2ModelsSlotTypeExternalSourceSettingList; _k = JSII_RTTI_SYMBOL_1; Lexv2ModelsSlotTypeExternalSourceSettingList[_k] = { fqn: "@cdktf/provider-aws.lexv2ModelsSlotType.Lexv2ModelsSlotTypeExternalSourceSettingList", version: "21.22.1" }; function lexv2ModelsSlotTypeSlotTypeValuesSampleValueToTerraform(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 { value: cdktf.stringToTerraform(struct.value), }; } function lexv2ModelsSlotTypeSlotTypeValuesSampleValueToHclTerraform(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 = { value: { value: cdktf.stringToHclTerraform(struct.value), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class Lexv2ModelsSlotTypeSlotTypeValuesSampleValueOutputReference 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._value !== undefined) { hasAnyValues = true; internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._value = 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._value = value.value; } } get value() { return this.getStringAttribute('value'); } set value(value) { this._value = value; } // Temporarily expose input value. Use with caution. get valueInput() { return this._value; } } exports.Lexv2ModelsSlotTypeSlotTypeValuesSampleValueOutputReference = Lexv2ModelsSlotTypeSlotTypeValuesSampleValueOutputReference; _l = JSII_RTTI_SYMBOL_1; Lexv2ModelsSlotTypeSlotTypeValuesSampleValueOutputReference[_l] = { fqn: "@cdktf/provider-aws.lexv2ModelsSlotType.Lexv2ModelsSlotTypeSlotTypeValuesSampleValueOutputReference", version: "21.22.1" }; class Lexv2ModelsSlotTypeSlotTypeValuesSampleValueList 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 Lexv2ModelsSlotTypeSlotTypeValuesSampleValueOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.Lexv2ModelsSlotTypeSlotTypeValuesSampleValueList = Lexv2ModelsSlotTypeSlotTypeValuesSampleValueList; _m = JSII_RTTI_SYMBOL_1; Lexv2ModelsSlotTypeSlotTypeValuesSampleValueList[_m] = { fqn: "@cdktf/provider-aws.lexv2ModelsSlotType.Lexv2ModelsSlotTypeSlotTypeValuesSampleValueList", version: "21.22.1" }; function lexv2ModelsSlotTypeSlotTypeValuesSynonymsToTerraform(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 { value: cdktf.stringToTerraform(struct.value), }; } function lexv2ModelsSlotTypeSlotTypeValuesSynonymsToHclTerraform(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 = { value: { value: cdktf.stringToHclTerraform(struct.value), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class Lexv2ModelsSlotTypeSlotTypeValuesSynonymsOutputReference 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._value !== undefined) { hasAnyValues = true; internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._value = 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._value = value.value; } } get value() { return this.getStringAttribute('value'); } set value(value) { this._value = value; } // Temporarily expose input value. Use with caution. get valueInput() { return this._value; } } exports.Lexv2ModelsSlotTypeSlotTypeValuesSynonymsOutputReference = Lexv2ModelsSlotTypeSlotTypeValuesSynonymsOutputReference; _o = JSII_RTTI_SYMBOL_1; Lexv2ModelsSlotTypeSlotTypeValuesSynonymsOutputReference[_o] = { fqn: "@cdktf/provider-aws.lexv2ModelsSlotType.Lexv2ModelsSlotTypeSlotTypeValuesSynonymsOutputReference", version: "21.22.1" }; class Lexv2ModelsSlotTypeSlotTypeValuesSynonymsList 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 Lexv2ModelsSlotTypeSlotTypeValuesSynonymsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.Lexv2ModelsSlotTypeSlotTypeValuesSynonymsList = Lexv2ModelsSlotTypeSlotTypeValuesSynonymsList; _p = JSII_RTTI_SYMBOL_1; Lexv2ModelsSlotTypeSlotTypeValuesSynonymsList[_p] = { fqn: "@cdktf/provider-aws.lexv2ModelsSlotType.Lexv2ModelsSlotTypeSlotTypeValuesSynonymsList", version: "21.22.1" }; function lexv2ModelsSlotTypeSlotTypeValuesToTerraform(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 { sample_value: cdktf.listMapper(lexv2ModelsSlotTypeSlotTypeValuesSampleValueToTerraform, true)(struct.sampleValue), synonyms: cdktf.listMapper(lexv2ModelsSlotTypeSlotTypeValuesSynonymsToTerraform, true)(struct.synonyms), }; } function lexv2ModelsSlotTypeSlotTypeValuesToHclTerraform(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 = { sample_value: { value: cdktf.listMapperHcl(lexv2ModelsSlotTypeSlotTypeValuesSampleValueToHclTerraform, true)(struct.sampleValue), isBlock: true, type: "list", storageClassType: "Lexv2ModelsSlotTypeSlotTypeValuesSampleValueList", }, synonyms: { value: cdktf.listMapperHcl(lexv2ModelsSlotTypeSlotTypeValuesSynonymsToHclTerraform, true)(struct.synonyms), isBlock: true, type: "list", storageClassType: "Lexv2ModelsSlotTypeSlotTypeValuesSynonymsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class Lexv2ModelsSlotTypeSlotTypeValuesOutputReference 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; // sample_value - computed: false, optional: true, required: false this._sampleValue = new Lexv2ModelsSlotTypeSlotTypeValuesSampleValueList(this, "sample_value", false); // synonyms - computed: false, optional: true, required: false this._synonyms = new Lexv2ModelsSlotTypeSlotTypeValuesSynonymsList(this, "synonyms", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._sampleValue?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.sampleValue = this._sampleValue?.internalValue; } if (this._synonyms?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.synonyms = this._synonyms?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._sampleValue.internalValue = undefined; this._synonyms.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._sampleValue.internalValue = value.sampleValue; this._synonyms.internalValue = value.synonyms; } } get sampleValue() { return this._sampleValue; } putSampleValue(value) { this._sampleValue.internalValue = value; } resetSampleValue() { this._sampleValue.internalValue = undefined; } // Temporarily expose input value. Use with caution. get sampleValueInput() { return this._sampleValue.internalValue; } get synonyms() { return this._synonyms; } putSynonyms(value) { this._synonyms.internalValue = value; } resetSynonyms() { this._synonyms.internalValue = undefined; } // Temporarily expose input value. Use with caution. get synonymsInput() { return this._synonyms.internalValue; } } exports.Lexv2ModelsSlotTypeSlotTypeValuesOutputReference = Lexv2ModelsSlotTypeSlotTypeValuesOutputReference; _q = JSII_RTTI_SYMBOL_1; Lexv2ModelsSlotTypeSlotTypeValuesOutputReference[_q] = { fqn: "@cdktf/provider-aws.lexv2ModelsSlotType.Lexv2ModelsSlotTypeSlotTypeValuesOutputReference", version: "21.22.1" }; class Lexv2ModelsSlotTypeSlotTypeValuesList 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 Lexv2ModelsSlotTypeSlotTypeValuesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.Lexv2ModelsSlotTypeSlotTypeValuesList = Lexv2ModelsSlotTypeSlotTypeValuesList; _r = JSII_RTTI_SYMBOL_1; Lexv2ModelsSlotTypeSlotTypeValuesList[_r] = { fqn: "@cdktf/provider-aws.lexv2ModelsSlotType.Lexv2ModelsSlotTypeSlotTypeValuesList", version: "21.22.1" }; function lexv2ModelsSlotTypeTimeoutsToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { create: cdktf.stringToTerraform(struct.create), delete: cdktf.stringToTerraform(struct.delete), update: cdktf.stringToTerraform(struct.update), }; } function lexv2ModelsSlotTypeTimeoutsToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { create: { value: cdktf.stringToHclTerraform(struct.create), isBlock: false, type: "simple", storageClassType: "string", }, delete: { value: cdktf.stringToHclTerraform(struct.delete), isBlock: fa