UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

1,112 lines 157 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m; Object.defineProperty(exports, "__esModule", { value: true }); exports.LakeformationResourceLfTag = exports.LakeformationResourceLfTagTimeoutsOutputReference = exports.lakeformationResourceLfTagTimeoutsToHclTerraform = exports.lakeformationResourceLfTagTimeoutsToTerraform = exports.LakeformationResourceLfTagTableWithColumnsList = exports.LakeformationResourceLfTagTableWithColumnsOutputReference = exports.lakeformationResourceLfTagTableWithColumnsToHclTerraform = exports.lakeformationResourceLfTagTableWithColumnsToTerraform = exports.LakeformationResourceLfTagTableWithColumnsColumnWildcardList = exports.LakeformationResourceLfTagTableWithColumnsColumnWildcardOutputReference = exports.lakeformationResourceLfTagTableWithColumnsColumnWildcardToHclTerraform = exports.lakeformationResourceLfTagTableWithColumnsColumnWildcardToTerraform = exports.LakeformationResourceLfTagTableList = exports.LakeformationResourceLfTagTableOutputReference = exports.lakeformationResourceLfTagTableToHclTerraform = exports.lakeformationResourceLfTagTableToTerraform = exports.LakeformationResourceLfTagLfTagList = exports.LakeformationResourceLfTagLfTagOutputReference = exports.lakeformationResourceLfTagLfTagToHclTerraform = exports.lakeformationResourceLfTagLfTagToTerraform = exports.LakeformationResourceLfTagDatabaseList = exports.LakeformationResourceLfTagDatabaseOutputReference = exports.lakeformationResourceLfTagDatabaseToHclTerraform = exports.lakeformationResourceLfTagDatabaseToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function lakeformationResourceLfTagDatabaseToTerraform(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 { catalog_id: cdktf.stringToTerraform(struct.catalogId), name: cdktf.stringToTerraform(struct.name), }; } exports.lakeformationResourceLfTagDatabaseToTerraform = lakeformationResourceLfTagDatabaseToTerraform; function lakeformationResourceLfTagDatabaseToHclTerraform(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 = { catalog_id: { value: cdktf.stringToHclTerraform(struct.catalogId), isBlock: false, type: "simple", storageClassType: "string", }, name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.lakeformationResourceLfTagDatabaseToHclTerraform = lakeformationResourceLfTagDatabaseToHclTerraform; class LakeformationResourceLfTagDatabaseOutputReference 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._catalogId !== undefined) { hasAnyValues = true; internalValueResult.catalogId = this._catalogId; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._catalogId = undefined; this._name = 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._catalogId = value.catalogId; this._name = value.name; } } get catalogId() { return this.getStringAttribute('catalog_id'); } set catalogId(value) { this._catalogId = value; } resetCatalogId() { this._catalogId = undefined; } // Temporarily expose input value. Use with caution. get catalogIdInput() { return this._catalogId; } get name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } } exports.LakeformationResourceLfTagDatabaseOutputReference = LakeformationResourceLfTagDatabaseOutputReference; _a = JSII_RTTI_SYMBOL_1; LakeformationResourceLfTagDatabaseOutputReference[_a] = { fqn: "@cdktf/provider-aws.lakeformationResourceLfTag.LakeformationResourceLfTagDatabaseOutputReference", version: "19.50.0" }; class LakeformationResourceLfTagDatabaseList 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 LakeformationResourceLfTagDatabaseOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.LakeformationResourceLfTagDatabaseList = LakeformationResourceLfTagDatabaseList; _b = JSII_RTTI_SYMBOL_1; LakeformationResourceLfTagDatabaseList[_b] = { fqn: "@cdktf/provider-aws.lakeformationResourceLfTag.LakeformationResourceLfTagDatabaseList", version: "19.50.0" }; function lakeformationResourceLfTagLfTagToTerraform(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 { catalog_id: cdktf.stringToTerraform(struct.catalogId), key: cdktf.stringToTerraform(struct.key), value: cdktf.stringToTerraform(struct.value), }; } exports.lakeformationResourceLfTagLfTagToTerraform = lakeformationResourceLfTagLfTagToTerraform; function lakeformationResourceLfTagLfTagToHclTerraform(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 = { catalog_id: { value: cdktf.stringToHclTerraform(struct.catalogId), isBlock: false, type: "simple", storageClassType: "string", }, key: { value: cdktf.stringToHclTerraform(struct.key), isBlock: false, type: "simple", storageClassType: "string", }, 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)); } exports.lakeformationResourceLfTagLfTagToHclTerraform = lakeformationResourceLfTagLfTagToHclTerraform; class LakeformationResourceLfTagLfTagOutputReference 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._catalogId !== undefined) { hasAnyValues = true; internalValueResult.catalogId = this._catalogId; } if (this._key !== undefined) { hasAnyValues = true; internalValueResult.key = this._key; } 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._catalogId = undefined; this._key = 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._catalogId = value.catalogId; this._key = value.key; this._value = value.value; } } get catalogId() { return this.getStringAttribute('catalog_id'); } set catalogId(value) { this._catalogId = value; } resetCatalogId() { this._catalogId = undefined; } // Temporarily expose input value. Use with caution. get catalogIdInput() { return this._catalogId; } get key() { return this.getStringAttribute('key'); } set key(value) { this._key = value; } // Temporarily expose input value. Use with caution. get keyInput() { return this._key; } 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.LakeformationResourceLfTagLfTagOutputReference = LakeformationResourceLfTagLfTagOutputReference; _c = JSII_RTTI_SYMBOL_1; LakeformationResourceLfTagLfTagOutputReference[_c] = { fqn: "@cdktf/provider-aws.lakeformationResourceLfTag.LakeformationResourceLfTagLfTagOutputReference", version: "19.50.0" }; class LakeformationResourceLfTagLfTagList 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 LakeformationResourceLfTagLfTagOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.LakeformationResourceLfTagLfTagList = LakeformationResourceLfTagLfTagList; _d = JSII_RTTI_SYMBOL_1; LakeformationResourceLfTagLfTagList[_d] = { fqn: "@cdktf/provider-aws.lakeformationResourceLfTag.LakeformationResourceLfTagLfTagList", version: "19.50.0" }; function lakeformationResourceLfTagTableToTerraform(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 { catalog_id: cdktf.stringToTerraform(struct.catalogId), database_name: cdktf.stringToTerraform(struct.databaseName), name: cdktf.stringToTerraform(struct.name), wildcard: cdktf.booleanToTerraform(struct.wildcard), }; } exports.lakeformationResourceLfTagTableToTerraform = lakeformationResourceLfTagTableToTerraform; function lakeformationResourceLfTagTableToHclTerraform(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 = { catalog_id: { value: cdktf.stringToHclTerraform(struct.catalogId), isBlock: false, type: "simple", storageClassType: "string", }, database_name: { value: cdktf.stringToHclTerraform(struct.databaseName), isBlock: false, type: "simple", storageClassType: "string", }, name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, wildcard: { value: cdktf.booleanToHclTerraform(struct.wildcard), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.lakeformationResourceLfTagTableToHclTerraform = lakeformationResourceLfTagTableToHclTerraform; class LakeformationResourceLfTagTableOutputReference 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._catalogId !== undefined) { hasAnyValues = true; internalValueResult.catalogId = this._catalogId; } if (this._databaseName !== undefined) { hasAnyValues = true; internalValueResult.databaseName = this._databaseName; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } if (this._wildcard !== undefined) { hasAnyValues = true; internalValueResult.wildcard = this._wildcard; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._catalogId = undefined; this._databaseName = undefined; this._name = undefined; this._wildcard = 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._catalogId = value.catalogId; this._databaseName = value.databaseName; this._name = value.name; this._wildcard = value.wildcard; } } get catalogId() { return this.getStringAttribute('catalog_id'); } set catalogId(value) { this._catalogId = value; } resetCatalogId() { this._catalogId = undefined; } // Temporarily expose input value. Use with caution. get catalogIdInput() { return this._catalogId; } get databaseName() { return this.getStringAttribute('database_name'); } set databaseName(value) { this._databaseName = value; } // Temporarily expose input value. Use with caution. get databaseNameInput() { return this._databaseName; } get name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } resetName() { this._name = undefined; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } get wildcard() { return this.getBooleanAttribute('wildcard'); } set wildcard(value) { this._wildcard = value; } resetWildcard() { this._wildcard = undefined; } // Temporarily expose input value. Use with caution. get wildcardInput() { return this._wildcard; } } exports.LakeformationResourceLfTagTableOutputReference = LakeformationResourceLfTagTableOutputReference; _e = JSII_RTTI_SYMBOL_1; LakeformationResourceLfTagTableOutputReference[_e] = { fqn: "@cdktf/provider-aws.lakeformationResourceLfTag.LakeformationResourceLfTagTableOutputReference", version: "19.50.0" }; class LakeformationResourceLfTagTableList 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 LakeformationResourceLfTagTableOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.LakeformationResourceLfTagTableList = LakeformationResourceLfTagTableList; _f = JSII_RTTI_SYMBOL_1; LakeformationResourceLfTagTableList[_f] = { fqn: "@cdktf/provider-aws.lakeformationResourceLfTag.LakeformationResourceLfTagTableList", version: "19.50.0" }; function lakeformationResourceLfTagTableWithColumnsColumnWildcardToTerraform(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 { excluded_column_names: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.excludedColumnNames), }; } exports.lakeformationResourceLfTagTableWithColumnsColumnWildcardToTerraform = lakeformationResourceLfTagTableWithColumnsColumnWildcardToTerraform; function lakeformationResourceLfTagTableWithColumnsColumnWildcardToHclTerraform(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 = { excluded_column_names: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.excludedColumnNames), isBlock: false, type: "set", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.lakeformationResourceLfTagTableWithColumnsColumnWildcardToHclTerraform = lakeformationResourceLfTagTableWithColumnsColumnWildcardToHclTerraform; class LakeformationResourceLfTagTableWithColumnsColumnWildcardOutputReference 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._excludedColumnNames !== undefined) { hasAnyValues = true; internalValueResult.excludedColumnNames = this._excludedColumnNames; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._excludedColumnNames = 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._excludedColumnNames = value.excludedColumnNames; } } get excludedColumnNames() { return cdktf.Fn.tolist(this.getListAttribute('excluded_column_names')); } set excludedColumnNames(value) { this._excludedColumnNames = value; } resetExcludedColumnNames() { this._excludedColumnNames = undefined; } // Temporarily expose input value. Use with caution. get excludedColumnNamesInput() { return this._excludedColumnNames; } } exports.LakeformationResourceLfTagTableWithColumnsColumnWildcardOutputReference = LakeformationResourceLfTagTableWithColumnsColumnWildcardOutputReference; _g = JSII_RTTI_SYMBOL_1; LakeformationResourceLfTagTableWithColumnsColumnWildcardOutputReference[_g] = { fqn: "@cdktf/provider-aws.lakeformationResourceLfTag.LakeformationResourceLfTagTableWithColumnsColumnWildcardOutputReference", version: "19.50.0" }; class LakeformationResourceLfTagTableWithColumnsColumnWildcardList 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 LakeformationResourceLfTagTableWithColumnsColumnWildcardOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.LakeformationResourceLfTagTableWithColumnsColumnWildcardList = LakeformationResourceLfTagTableWithColumnsColumnWildcardList; _h = JSII_RTTI_SYMBOL_1; LakeformationResourceLfTagTableWithColumnsColumnWildcardList[_h] = { fqn: "@cdktf/provider-aws.lakeformationResourceLfTag.LakeformationResourceLfTagTableWithColumnsColumnWildcardList", version: "19.50.0" }; function lakeformationResourceLfTagTableWithColumnsToTerraform(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 { catalog_id: cdktf.stringToTerraform(struct.catalogId), column_names: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.columnNames), database_name: cdktf.stringToTerraform(struct.databaseName), name: cdktf.stringToTerraform(struct.name), column_wildcard: cdktf.listMapper(lakeformationResourceLfTagTableWithColumnsColumnWildcardToTerraform, true)(struct.columnWildcard), }; } exports.lakeformationResourceLfTagTableWithColumnsToTerraform = lakeformationResourceLfTagTableWithColumnsToTerraform; function lakeformationResourceLfTagTableWithColumnsToHclTerraform(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 = { catalog_id: { value: cdktf.stringToHclTerraform(struct.catalogId), isBlock: false, type: "simple", storageClassType: "string", }, column_names: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.columnNames), isBlock: false, type: "set", storageClassType: "stringList", }, database_name: { value: cdktf.stringToHclTerraform(struct.databaseName), isBlock: false, type: "simple", storageClassType: "string", }, name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, column_wildcard: { value: cdktf.listMapperHcl(lakeformationResourceLfTagTableWithColumnsColumnWildcardToHclTerraform, true)(struct.columnWildcard), isBlock: true, type: "list", storageClassType: "LakeformationResourceLfTagTableWithColumnsColumnWildcardList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.lakeformationResourceLfTagTableWithColumnsToHclTerraform = lakeformationResourceLfTagTableWithColumnsToHclTerraform; class LakeformationResourceLfTagTableWithColumnsOutputReference 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; // column_wildcard - computed: false, optional: true, required: false this._columnWildcard = new LakeformationResourceLfTagTableWithColumnsColumnWildcardList(this, "column_wildcard", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._catalogId !== undefined) { hasAnyValues = true; internalValueResult.catalogId = this._catalogId; } if (this._columnNames !== undefined) { hasAnyValues = true; internalValueResult.columnNames = this._columnNames; } if (this._databaseName !== undefined) { hasAnyValues = true; internalValueResult.databaseName = this._databaseName; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } if (this._columnWildcard?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.columnWildcard = this._columnWildcard?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._catalogId = undefined; this._columnNames = undefined; this._databaseName = undefined; this._name = undefined; this._columnWildcard.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._catalogId = value.catalogId; this._columnNames = value.columnNames; this._databaseName = value.databaseName; this._name = value.name; this._columnWildcard.internalValue = value.columnWildcard; } } get catalogId() { return this.getStringAttribute('catalog_id'); } set catalogId(value) { this._catalogId = value; } resetCatalogId() { this._catalogId = undefined; } // Temporarily expose input value. Use with caution. get catalogIdInput() { return this._catalogId; } get columnNames() { return cdktf.Fn.tolist(this.getListAttribute('column_names')); } set columnNames(value) { this._columnNames = value; } resetColumnNames() { this._columnNames = undefined; } // Temporarily expose input value. Use with caution. get columnNamesInput() { return this._columnNames; } get databaseName() { return this.getStringAttribute('database_name'); } set databaseName(value) { this._databaseName = value; } // Temporarily expose input value. Use with caution. get databaseNameInput() { return this._databaseName; } 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 columnWildcard() { return this._columnWildcard; } putColumnWildcard(value) { this._columnWildcard.internalValue = value; } resetColumnWildcard() { this._columnWildcard.internalValue = undefined; } // Temporarily expose input value. Use with caution. get columnWildcardInput() { return this._columnWildcard.internalValue; } } exports.LakeformationResourceLfTagTableWithColumnsOutputReference = LakeformationResourceLfTagTableWithColumnsOutputReference; _j = JSII_RTTI_SYMBOL_1; LakeformationResourceLfTagTableWithColumnsOutputReference[_j] = { fqn: "@cdktf/provider-aws.lakeformationResourceLfTag.LakeformationResourceLfTagTableWithColumnsOutputReference", version: "19.50.0" }; class LakeformationResourceLfTagTableWithColumnsList 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 LakeformationResourceLfTagTableWithColumnsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.LakeformationResourceLfTagTableWithColumnsList = LakeformationResourceLfTagTableWithColumnsList; _k = JSII_RTTI_SYMBOL_1; LakeformationResourceLfTagTableWithColumnsList[_k] = { fqn: "@cdktf/provider-aws.lakeformationResourceLfTag.LakeformationResourceLfTagTableWithColumnsList", version: "19.50.0" }; function lakeformationResourceLfTagTimeoutsToTerraform(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), }; } exports.lakeformationResourceLfTagTimeoutsToTerraform = lakeformationResourceLfTagTimeoutsToTerraform; function lakeformationResourceLfTagTimeoutsToHclTerraform(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: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.lakeformationResourceLfTagTimeoutsToHclTerraform = lakeformationResourceLfTagTimeoutsToHclTerraform; class LakeformationResourceLfTagTimeoutsOutputReference 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); this.isEmptyObject = false; } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._create !== undefined) { hasAnyValues = true; internalValueResult.create = this._create; } if (this._delete !== undefined) { hasAnyValues = true; internalValueResult.delete = this._delete; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._create = undefined; this._delete = 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._create = value.create; this._delete = value.delete; } } get create() { return this.getStringAttribute('create'); } set create(value) { this._create = value; } resetCreate() { this._create = undefined; } // Temporarily expose input value. Use with caution. get createInput() { return this._create; } get delete() { return this.getStringAttribute('delete'); } set delete(value) { this._delete = value; } resetDelete() { this._delete = undefined; } // Temporarily expose input value. Use with caution. get deleteInput() { return this._delete; } } exports.LakeformationResourceLfTagTimeoutsOutputReference = LakeformationResourceLfTagTimeoutsOutputReference; _l = JSII_RTTI_SYMBOL_1; LakeformationResourceLfTagTimeoutsOutputReference[_l] = { fqn: "@cdktf/provider-aws.lakeformationResourceLfTag.LakeformationResourceLfTagTimeoutsOutputReference", version: "19.50.0" }; /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/lakeformation_resource_lf_tag aws_lakeformation_resource_lf_tag} */ class LakeformationResourceLfTag extends cdktf.TerraformResource { // ============== // STATIC Methods // ============== /** * Generates CDKTF code for importing a LakeformationResourceLfTag resource upon running "cdktf plan <stack-name>" * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the LakeformationResourceLfTag to import * @param importFromId The id of the existing LakeformationResourceLfTag that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/lakeformation_resource_lf_tag#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the LakeformationResourceLfTag to import is found */ static generateConfigForImport(scope, importToId, importFromId, provider) { return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "aws_lakeformation_resource_lf_tag", importId: importFromId, provider }); } // =========== // INITIALIZER // =========== /** * Create a new {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/lakeformation_resource_lf_tag aws_lakeformation_resource_lf_tag} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options LakeformationResourceLfTagConfig = {} */ constructor(scope, id, config = {}) { super(scope, id, { terraformResourceType: 'aws_lakeformation_resource_lf_tag', terraformGeneratorMetadata: { providerName: 'aws', providerVersion: '5.84.0', providerVersionConstraint: '~> 5.0' }, provider: config.provider, dependsOn: config.dependsOn, count: config.count, lifecycle: config.lifecycle, provisioners: config.provisioners, connection: config.connection, forEach: config.forEach }); // database - computed: false, optional: true, required: false this._database = new LakeformationResourceLfTagDatabaseList(this, "database", false); // lf_tag - computed: false, optional: true, required: false this._lfTag = new LakeformationResourceLfTagLfTagList(this, "lf_tag", false); // table - computed: false, optional: true, required: false this._table = new LakeformationResourceLfTagTableList(this, "table", false); // table_with_columns - computed: false, optional: true, required: false this._tableWithColumns = new LakeformationResourceLfTagTableWithColumnsList(this, "table_with_columns", false); // timeouts - computed: false, optional: true, required: false this._timeouts = new LakeformationResourceLfTagTimeoutsOutputReference(this, "timeouts"); this._catalogId = config.catalogId; this._database.internalValue = config.database; this._lfTag.internalValue = config.lfTag; this._table.internalValue = config.table; this._tableWithColumns.internalValue = config.tableWithColumns; this._timeouts.internalValue = config.timeouts; } get catalogId() { return this.getStringAttribute('catalog_id'); } set catalogId(value) { this._catalogId = value; } resetCatalogId() { this._catalogId = undefined; } // Temporarily expose input value. Use with caution. get catalogIdInput() { return this._catalogId; } // id - computed: true, optional: false, required: false get id() { return this.getStringAttribute('id'); } get database() { return this._database; } putDatabase(value) { this._database.internalValue = value; } resetDatabase() { this._database.internalValue = undefined; } // Temporarily expose input value. Use with caution. get databaseInput() { return this._database.internalValue; } get lfTag() { return this._lfTag; } putLfTag(value) { this._lfTag.internalValue = value; } resetLfTag() { this._lfTag.internalValue = undefined; } // Temporarily expose input value. Use with caution. get lfTagInput() { return this._lfTag.internalValue; } get table() { return this._table; } putTable(value) { this._table.internalValue = value; } resetTable() { this._table.internalValue = undefined; } // Temporarily expose input value. Use with caution. get tableInput() { return this._table.internalValue; } get tableWithColumns() { return this._tableWithColumns; } putTableWithColumns(value) { this._tableWithColumns.internalValue = value; } resetTableWithColumns() { this._tableWithColumns.internalValue = undefined; } // Temporarily expose input value. Use with caution. get tableWithColumnsInput() { return this._tableWithColumns.internalValue; } get timeouts() { return this._timeouts; } putTimeouts(value) { this._timeouts.internalValue = value; } resetTimeouts() { this._timeouts.internalValue = undefined; } // Temporarily expose input value. Use with caution. get timeoutsInput() { return this._timeouts.internalValue; } // ========= // SYNTHESIS // ========= synthesizeAttributes() { return { catalog_id: cdktf.stringToTerraform(this._catalogId), database: cdktf.listMapper(lakeformationResourceLfTagDatabaseToTerraform, true)(this._database.internalValue), lf_tag: cdktf.listMapper(lakeformationResourceLfTagLfTagToTerraform, true)(this._lfTag.internalValue), table: cdktf.listMapper(lakeformationResourceLfTagTableToTerraform, true)(this._table.internalValue), table_with_columns: cdktf.listMapper(lakeformationResourceLfTagTableWithColumnsToTerraform, true)(this._tableWithColumns.internalValue), timeouts: lakeformationResourceLfTagTimeoutsToTerraform(this._timeouts.internalValue), }; } synthesizeHclAttributes() { const attrs = { catalog_id: { value: cdktf.stringToHclTerraform(this._catalogId), isBlock: false, type: "simple", storageClassType: "string", }, database: { value: cdktf.listMapperHcl(lakeformationResourceLfTagDatabaseToHclTerraform, true)(this._database.internalValue), isBlock: true, type: "list", storageClassType: "LakeformationResourceLfTagDatabaseList", }, lf_tag: { value: cdktf.listMapperHcl(lakeformationResourceLfTagLfTagToHclTerraform, true)(this._lfTag.internalValue), isBlock: true, type: "list", storageClassType: "LakeformationResourceLfTagLfTagList", }, table: { value: cdktf.listMapperHcl(lakeformationResourceLfTagTableToHclTerraform, true)(this._table.internalValue), isBlock: true, type: "list", storageClassType: "LakeformationResourceLfTagTableList", }, table_with_columns: { value: cdktf.listMapperHcl(lakeformationResourceLfTagTableWithColumnsToHclTerraform, true)(this._tableWithColumns.internalValue), isBlock: true, type: "list", storageClassType: "LakeformationResourceLfTagTableWithColumnsList", }, timeouts: { value: lakeformationResourceLfTagTimeoutsToHclTerraform(this._timeouts.internalValue), isBlock: true, type: "struct", storageClassType: "LakeformationResourceLfTagTimeouts", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } } exports.LakeformationResourceLfTag = LakeformationResourceLfTag; _m = JSII_RTTI_SYMBOL_1; LakeformationResourceLfTag[_m] = { fqn: "@cdktf/provider-aws.lakeformationResourceLfTag.LakeformationResourceLfTag", version: "19.50.0" }; // ================= // STATIC PROPERTIES // ================= LakeformationResourceLfTag.tfResourceType = "aws_lakeformation_resource_lf_tag"; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGFrZWZvcm1hdGlvbi1yZXNvdXJjZS1sZi10YWcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFTQSwrQkFBK0I7QUFtRC9CLFNBQWdCLDZDQUE2QyxDQUFDLE1BQStEO0lBQzNILElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE9BQU87UUFDTCxVQUFVLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxTQUFTLENBQUM7UUFDdEQsSUFBSSxFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFPLENBQUMsSUFBSSxDQUFDO0tBQzVDLENBQUE7QUFDSCxDQUFDO0FBVEQsc0dBU0M7QUFHRCxTQUFnQixnREFBZ0QsQ0FBQyxNQUErRDtJQUM5SCxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQUMsT0FBTyxNQUFNLENBQUM7SUFBQyxDQUFDO0lBQzVGLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvSEFBb0gsQ0FBQyxDQUFDO0lBQ3hJLENBQUM7SUFDRCxNQUFNLEtBQUssR0FBRztRQUNaLFVBQVUsRUFBRTtZQUNWLEtBQUssRUFBRSxLQUFLLENBQUMsb0JBQW9CLENBQUMsTUFBTyxDQUFDLFNBQVMsQ0FBQztZQUNwRCxPQUFPLEVBQUUsS0FBSztZQUNkLElBQUksRUFBRSxRQUFRO1lBQ2QsZ0JBQWdCLEVBQUUsUUFBUTtTQUMzQjtRQUNELElBQUksRUFBRTtZQUNKLEtBQUssRUFBRSxLQUFLLENBQUMsb0JBQW9CLENBQUMsTUFBTyxDQUFDLElBQUksQ0FBQztZQUMvQyxPQUFPLEVBQUUsS0FBSztZQUNkLElBQUksRUFBRSxRQUFRO1lBQ2QsZ0JBQWdCLEVBQUUsUUFBUTtTQUMzQjtLQUNGLENBQUM7SUFFRiw4QkFBOEI7SUFDOUIsT0FBTyxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLEtBQUssS0FBSyxTQUFTLElBQUksS0FBSyxDQUFDLEtBQUssS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDO0FBQzVILENBQUM7QUF0QkQsNEdBc0JDO0FBRUQsTUFBYSxpREFBa0QsU0FBUSxLQUFLLENBQUMsYUFBYTtJQUl4Rjs7Ozs7TUFLRTtJQUNGLFlBQW1CLGlCQUE2QyxFQUFFLGtCQUEwQixFQUFFLGtCQUEwQixFQUFFLHNCQUErQjtRQUN2SixLQUFLLENBQUMsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsc0JBQXNCLEVBQUUsa0JBQWtCLEN