UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

1,077 lines (1,076 loc) 594 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, _0, _1, _2; Object.defineProperty(exports, "__esModule", { value: true }); exports.BigqueryTableTableConstraintsForeignKeysColumnReferencesOutputReference = exports.bigqueryTableTableConstraintsForeignKeysColumnReferencesToHclTerraform = exports.bigqueryTableTableConstraintsForeignKeysColumnReferencesToTerraform = exports.BigqueryTableRangePartitioningOutputReference = exports.bigqueryTableRangePartitioningToHclTerraform = exports.bigqueryTableRangePartitioningToTerraform = exports.BigqueryTableRangePartitioningRangeOutputReference = exports.bigqueryTableRangePartitioningRangeToHclTerraform = exports.bigqueryTableRangePartitioningRangeToTerraform = exports.BigqueryTableMaterializedViewOutputReference = exports.bigqueryTableMaterializedViewToHclTerraform = exports.bigqueryTableMaterializedViewToTerraform = exports.BigqueryTableExternalDataConfigurationOutputReference = exports.bigqueryTableExternalDataConfigurationToHclTerraform = exports.bigqueryTableExternalDataConfigurationToTerraform = exports.BigqueryTableExternalDataConfigurationParquetOptionsOutputReference = exports.bigqueryTableExternalDataConfigurationParquetOptionsToHclTerraform = exports.bigqueryTableExternalDataConfigurationParquetOptionsToTerraform = exports.BigqueryTableExternalDataConfigurationJsonOptionsOutputReference = exports.bigqueryTableExternalDataConfigurationJsonOptionsToHclTerraform = exports.bigqueryTableExternalDataConfigurationJsonOptionsToTerraform = exports.BigqueryTableExternalDataConfigurationHivePartitioningOptionsOutputReference = exports.bigqueryTableExternalDataConfigurationHivePartitioningOptionsToHclTerraform = exports.bigqueryTableExternalDataConfigurationHivePartitioningOptionsToTerraform = exports.BigqueryTableExternalDataConfigurationGoogleSheetsOptionsOutputReference = exports.bigqueryTableExternalDataConfigurationGoogleSheetsOptionsToHclTerraform = exports.bigqueryTableExternalDataConfigurationGoogleSheetsOptionsToTerraform = exports.BigqueryTableExternalDataConfigurationCsvOptionsOutputReference = exports.bigqueryTableExternalDataConfigurationCsvOptionsToHclTerraform = exports.bigqueryTableExternalDataConfigurationCsvOptionsToTerraform = exports.BigqueryTableExternalDataConfigurationBigtableOptionsOutputReference = exports.bigqueryTableExternalDataConfigurationBigtableOptionsToHclTerraform = exports.bigqueryTableExternalDataConfigurationBigtableOptionsToTerraform = exports.BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyList = exports.BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyOutputReference = exports.bigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyToHclTerraform = exports.bigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyToTerraform = exports.BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnList = exports.BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnOutputReference = exports.bigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnToHclTerraform = exports.bigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnToTerraform = exports.BigqueryTableExternalDataConfigurationAvroOptionsOutputReference = exports.bigqueryTableExternalDataConfigurationAvroOptionsToHclTerraform = exports.bigqueryTableExternalDataConfigurationAvroOptionsToTerraform = exports.BigqueryTableEncryptionConfigurationOutputReference = exports.bigqueryTableEncryptionConfigurationToHclTerraform = exports.bigqueryTableEncryptionConfigurationToTerraform = exports.BigqueryTableBiglakeConfigurationOutputReference = exports.bigqueryTableBiglakeConfigurationToHclTerraform = exports.bigqueryTableBiglakeConfigurationToTerraform = void 0; exports.BigqueryTable = exports.BigqueryTableViewOutputReference = exports.bigqueryTableViewToHclTerraform = exports.bigqueryTableViewToTerraform = exports.BigqueryTableTimePartitioningOutputReference = exports.bigqueryTableTimePartitioningToHclTerraform = exports.bigqueryTableTimePartitioningToTerraform = exports.BigqueryTableTableReplicationInfoOutputReference = exports.bigqueryTableTableReplicationInfoToHclTerraform = exports.bigqueryTableTableReplicationInfoToTerraform = exports.BigqueryTableTableConstraintsOutputReference = exports.bigqueryTableTableConstraintsToHclTerraform = exports.bigqueryTableTableConstraintsToTerraform = exports.BigqueryTableTableConstraintsPrimaryKeyOutputReference = exports.bigqueryTableTableConstraintsPrimaryKeyToHclTerraform = exports.bigqueryTableTableConstraintsPrimaryKeyToTerraform = exports.BigqueryTableTableConstraintsForeignKeysList = exports.BigqueryTableTableConstraintsForeignKeysOutputReference = exports.bigqueryTableTableConstraintsForeignKeysToHclTerraform = exports.bigqueryTableTableConstraintsForeignKeysToTerraform = exports.BigqueryTableTableConstraintsForeignKeysReferencedTableOutputReference = exports.bigqueryTableTableConstraintsForeignKeysReferencedTableToHclTerraform = exports.bigqueryTableTableConstraintsForeignKeysReferencedTableToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function bigqueryTableBiglakeConfigurationToTerraform(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 { connection_id: cdktf.stringToTerraform(struct.connectionId), file_format: cdktf.stringToTerraform(struct.fileFormat), storage_uri: cdktf.stringToTerraform(struct.storageUri), table_format: cdktf.stringToTerraform(struct.tableFormat), }; } exports.bigqueryTableBiglakeConfigurationToTerraform = bigqueryTableBiglakeConfigurationToTerraform; function bigqueryTableBiglakeConfigurationToHclTerraform(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 = { connection_id: { value: cdktf.stringToHclTerraform(struct.connectionId), isBlock: false, type: "simple", storageClassType: "string", }, file_format: { value: cdktf.stringToHclTerraform(struct.fileFormat), isBlock: false, type: "simple", storageClassType: "string", }, storage_uri: { value: cdktf.stringToHclTerraform(struct.storageUri), isBlock: false, type: "simple", storageClassType: "string", }, table_format: { value: cdktf.stringToHclTerraform(struct.tableFormat), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.bigqueryTableBiglakeConfigurationToHclTerraform = bigqueryTableBiglakeConfigurationToHclTerraform; class BigqueryTableBiglakeConfigurationOutputReference 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._connectionId !== undefined) { hasAnyValues = true; internalValueResult.connectionId = this._connectionId; } if (this._fileFormat !== undefined) { hasAnyValues = true; internalValueResult.fileFormat = this._fileFormat; } if (this._storageUri !== undefined) { hasAnyValues = true; internalValueResult.storageUri = this._storageUri; } if (this._tableFormat !== undefined) { hasAnyValues = true; internalValueResult.tableFormat = this._tableFormat; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._connectionId = undefined; this._fileFormat = undefined; this._storageUri = undefined; this._tableFormat = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._connectionId = value.connectionId; this._fileFormat = value.fileFormat; this._storageUri = value.storageUri; this._tableFormat = value.tableFormat; } } get connectionId() { return this.getStringAttribute('connection_id'); } set connectionId(value) { this._connectionId = value; } // Temporarily expose input value. Use with caution. get connectionIdInput() { return this._connectionId; } get fileFormat() { return this.getStringAttribute('file_format'); } set fileFormat(value) { this._fileFormat = value; } // Temporarily expose input value. Use with caution. get fileFormatInput() { return this._fileFormat; } get storageUri() { return this.getStringAttribute('storage_uri'); } set storageUri(value) { this._storageUri = value; } // Temporarily expose input value. Use with caution. get storageUriInput() { return this._storageUri; } get tableFormat() { return this.getStringAttribute('table_format'); } set tableFormat(value) { this._tableFormat = value; } // Temporarily expose input value. Use with caution. get tableFormatInput() { return this._tableFormat; } } exports.BigqueryTableBiglakeConfigurationOutputReference = BigqueryTableBiglakeConfigurationOutputReference; _a = JSII_RTTI_SYMBOL_1; BigqueryTableBiglakeConfigurationOutputReference[_a] = { fqn: "@cdktf/provider-google.bigqueryTable.BigqueryTableBiglakeConfigurationOutputReference", version: "14.12.0" }; function bigqueryTableEncryptionConfigurationToTerraform(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_name: cdktf.stringToTerraform(struct.kmsKeyName), }; } exports.bigqueryTableEncryptionConfigurationToTerraform = bigqueryTableEncryptionConfigurationToTerraform; function bigqueryTableEncryptionConfigurationToHclTerraform(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_name: { value: cdktf.stringToHclTerraform(struct.kmsKeyName), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.bigqueryTableEncryptionConfigurationToHclTerraform = bigqueryTableEncryptionConfigurationToHclTerraform; class BigqueryTableEncryptionConfigurationOutputReference 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._kmsKeyName !== undefined) { hasAnyValues = true; internalValueResult.kmsKeyName = this._kmsKeyName; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._kmsKeyName = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._kmsKeyName = value.kmsKeyName; } } get kmsKeyName() { return this.getStringAttribute('kms_key_name'); } set kmsKeyName(value) { this._kmsKeyName = value; } // Temporarily expose input value. Use with caution. get kmsKeyNameInput() { return this._kmsKeyName; } // kms_key_version - computed: true, optional: false, required: false get kmsKeyVersion() { return this.getStringAttribute('kms_key_version'); } } exports.BigqueryTableEncryptionConfigurationOutputReference = BigqueryTableEncryptionConfigurationOutputReference; _b = JSII_RTTI_SYMBOL_1; BigqueryTableEncryptionConfigurationOutputReference[_b] = { fqn: "@cdktf/provider-google.bigqueryTable.BigqueryTableEncryptionConfigurationOutputReference", version: "14.12.0" }; function bigqueryTableExternalDataConfigurationAvroOptionsToTerraform(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 { use_avro_logical_types: cdktf.booleanToTerraform(struct.useAvroLogicalTypes), }; } exports.bigqueryTableExternalDataConfigurationAvroOptionsToTerraform = bigqueryTableExternalDataConfigurationAvroOptionsToTerraform; function bigqueryTableExternalDataConfigurationAvroOptionsToHclTerraform(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 = { use_avro_logical_types: { value: cdktf.booleanToHclTerraform(struct.useAvroLogicalTypes), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.bigqueryTableExternalDataConfigurationAvroOptionsToHclTerraform = bigqueryTableExternalDataConfigurationAvroOptionsToHclTerraform; class BigqueryTableExternalDataConfigurationAvroOptionsOutputReference 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._useAvroLogicalTypes !== undefined) { hasAnyValues = true; internalValueResult.useAvroLogicalTypes = this._useAvroLogicalTypes; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._useAvroLogicalTypes = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._useAvroLogicalTypes = value.useAvroLogicalTypes; } } get useAvroLogicalTypes() { return this.getBooleanAttribute('use_avro_logical_types'); } set useAvroLogicalTypes(value) { this._useAvroLogicalTypes = value; } // Temporarily expose input value. Use with caution. get useAvroLogicalTypesInput() { return this._useAvroLogicalTypes; } } exports.BigqueryTableExternalDataConfigurationAvroOptionsOutputReference = BigqueryTableExternalDataConfigurationAvroOptionsOutputReference; _c = JSII_RTTI_SYMBOL_1; BigqueryTableExternalDataConfigurationAvroOptionsOutputReference[_c] = { fqn: "@cdktf/provider-google.bigqueryTable.BigqueryTableExternalDataConfigurationAvroOptionsOutputReference", version: "14.12.0" }; function bigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnToTerraform(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 { encoding: cdktf.stringToTerraform(struct.encoding), field_name: cdktf.stringToTerraform(struct.fieldName), only_read_latest: cdktf.booleanToTerraform(struct.onlyReadLatest), qualifier_encoded: cdktf.stringToTerraform(struct.qualifierEncoded), qualifier_string: cdktf.stringToTerraform(struct.qualifierString), type: cdktf.stringToTerraform(struct.type), }; } exports.bigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnToTerraform = bigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnToTerraform; function bigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnToHclTerraform(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 = { encoding: { value: cdktf.stringToHclTerraform(struct.encoding), isBlock: false, type: "simple", storageClassType: "string", }, field_name: { value: cdktf.stringToHclTerraform(struct.fieldName), isBlock: false, type: "simple", storageClassType: "string", }, only_read_latest: { value: cdktf.booleanToHclTerraform(struct.onlyReadLatest), isBlock: false, type: "simple", storageClassType: "boolean", }, qualifier_encoded: { value: cdktf.stringToHclTerraform(struct.qualifierEncoded), isBlock: false, type: "simple", storageClassType: "string", }, qualifier_string: { value: cdktf.stringToHclTerraform(struct.qualifierString), 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)); } exports.bigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnToHclTerraform = bigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnToHclTerraform; class BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnOutputReference 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._encoding !== undefined) { hasAnyValues = true; internalValueResult.encoding = this._encoding; } if (this._fieldName !== undefined) { hasAnyValues = true; internalValueResult.fieldName = this._fieldName; } if (this._onlyReadLatest !== undefined) { hasAnyValues = true; internalValueResult.onlyReadLatest = this._onlyReadLatest; } if (this._qualifierEncoded !== undefined) { hasAnyValues = true; internalValueResult.qualifierEncoded = this._qualifierEncoded; } if (this._qualifierString !== undefined) { hasAnyValues = true; internalValueResult.qualifierString = this._qualifierString; } 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._encoding = undefined; this._fieldName = undefined; this._onlyReadLatest = undefined; this._qualifierEncoded = undefined; this._qualifierString = 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._encoding = value.encoding; this._fieldName = value.fieldName; this._onlyReadLatest = value.onlyReadLatest; this._qualifierEncoded = value.qualifierEncoded; this._qualifierString = value.qualifierString; this._type = value.type; } } get encoding() { return this.getStringAttribute('encoding'); } set encoding(value) { this._encoding = value; } resetEncoding() { this._encoding = undefined; } // Temporarily expose input value. Use with caution. get encodingInput() { return this._encoding; } get fieldName() { return this.getStringAttribute('field_name'); } set fieldName(value) { this._fieldName = value; } resetFieldName() { this._fieldName = undefined; } // Temporarily expose input value. Use with caution. get fieldNameInput() { return this._fieldName; } get onlyReadLatest() { return this.getBooleanAttribute('only_read_latest'); } set onlyReadLatest(value) { this._onlyReadLatest = value; } resetOnlyReadLatest() { this._onlyReadLatest = undefined; } // Temporarily expose input value. Use with caution. get onlyReadLatestInput() { return this._onlyReadLatest; } get qualifierEncoded() { return this.getStringAttribute('qualifier_encoded'); } set qualifierEncoded(value) { this._qualifierEncoded = value; } resetQualifierEncoded() { this._qualifierEncoded = undefined; } // Temporarily expose input value. Use with caution. get qualifierEncodedInput() { return this._qualifierEncoded; } get qualifierString() { return this.getStringAttribute('qualifier_string'); } set qualifierString(value) { this._qualifierString = value; } resetQualifierString() { this._qualifierString = undefined; } // Temporarily expose input value. Use with caution. get qualifierStringInput() { return this._qualifierString; } get type() { return this.getStringAttribute('type'); } set type(value) { this._type = value; } resetType() { this._type = undefined; } // Temporarily expose input value. Use with caution. get typeInput() { return this._type; } } exports.BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnOutputReference = BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnOutputReference; _d = JSII_RTTI_SYMBOL_1; BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnOutputReference[_d] = { fqn: "@cdktf/provider-google.bigqueryTable.BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnOutputReference", version: "14.12.0" }; class BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnList 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 BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnList = BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnList; _e = JSII_RTTI_SYMBOL_1; BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnList[_e] = { fqn: "@cdktf/provider-google.bigqueryTable.BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnList", version: "14.12.0" }; function bigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyToTerraform(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 { encoding: cdktf.stringToTerraform(struct.encoding), family_id: cdktf.stringToTerraform(struct.familyId), only_read_latest: cdktf.booleanToTerraform(struct.onlyReadLatest), type: cdktf.stringToTerraform(struct.type), column: cdktf.listMapper(bigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnToTerraform, true)(struct.column), }; } exports.bigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyToTerraform = bigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyToTerraform; function bigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyToHclTerraform(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 = { encoding: { value: cdktf.stringToHclTerraform(struct.encoding), isBlock: false, type: "simple", storageClassType: "string", }, family_id: { value: cdktf.stringToHclTerraform(struct.familyId), isBlock: false, type: "simple", storageClassType: "string", }, only_read_latest: { value: cdktf.booleanToHclTerraform(struct.onlyReadLatest), isBlock: false, type: "simple", storageClassType: "boolean", }, type: { value: cdktf.stringToHclTerraform(struct.type), isBlock: false, type: "simple", storageClassType: "string", }, column: { value: cdktf.listMapperHcl(bigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnToHclTerraform, true)(struct.column), isBlock: true, type: "list", storageClassType: "BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.bigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyToHclTerraform = bigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyToHclTerraform; class BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyOutputReference 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 - computed: false, optional: true, required: false this._column = new BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyColumnList(this, "column", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._encoding !== undefined) { hasAnyValues = true; internalValueResult.encoding = this._encoding; } if (this._familyId !== undefined) { hasAnyValues = true; internalValueResult.familyId = this._familyId; } if (this._onlyReadLatest !== undefined) { hasAnyValues = true; internalValueResult.onlyReadLatest = this._onlyReadLatest; } if (this._type !== undefined) { hasAnyValues = true; internalValueResult.type = this._type; } if (this._column?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.column = this._column?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._encoding = undefined; this._familyId = undefined; this._onlyReadLatest = undefined; this._type = undefined; this._column.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._encoding = value.encoding; this._familyId = value.familyId; this._onlyReadLatest = value.onlyReadLatest; this._type = value.type; this._column.internalValue = value.column; } } get encoding() { return this.getStringAttribute('encoding'); } set encoding(value) { this._encoding = value; } resetEncoding() { this._encoding = undefined; } // Temporarily expose input value. Use with caution. get encodingInput() { return this._encoding; } get familyId() { return this.getStringAttribute('family_id'); } set familyId(value) { this._familyId = value; } resetFamilyId() { this._familyId = undefined; } // Temporarily expose input value. Use with caution. get familyIdInput() { return this._familyId; } get onlyReadLatest() { return this.getBooleanAttribute('only_read_latest'); } set onlyReadLatest(value) { this._onlyReadLatest = value; } resetOnlyReadLatest() { this._onlyReadLatest = undefined; } // Temporarily expose input value. Use with caution. get onlyReadLatestInput() { return this._onlyReadLatest; } get type() { return this.getStringAttribute('type'); } set type(value) { this._type = value; } resetType() { this._type = undefined; } // Temporarily expose input value. Use with caution. get typeInput() { return this._type; } get column() { return this._column; } putColumn(value) { this._column.internalValue = value; } resetColumn() { this._column.internalValue = undefined; } // Temporarily expose input value. Use with caution. get columnInput() { return this._column.internalValue; } } exports.BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyOutputReference = BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyOutputReference; _f = JSII_RTTI_SYMBOL_1; BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyOutputReference[_f] = { fqn: "@cdktf/provider-google.bigqueryTable.BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyOutputReference", version: "14.12.0" }; class BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyList 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 BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyList = BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyList; _g = JSII_RTTI_SYMBOL_1; BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyList[_g] = { fqn: "@cdktf/provider-google.bigqueryTable.BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyList", version: "14.12.0" }; function bigqueryTableExternalDataConfigurationBigtableOptionsToTerraform(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 { ignore_unspecified_column_families: cdktf.booleanToTerraform(struct.ignoreUnspecifiedColumnFamilies), output_column_families_as_json: cdktf.booleanToTerraform(struct.outputColumnFamiliesAsJson), read_rowkey_as_string: cdktf.booleanToTerraform(struct.readRowkeyAsString), column_family: cdktf.listMapper(bigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyToTerraform, true)(struct.columnFamily), }; } exports.bigqueryTableExternalDataConfigurationBigtableOptionsToTerraform = bigqueryTableExternalDataConfigurationBigtableOptionsToTerraform; function bigqueryTableExternalDataConfigurationBigtableOptionsToHclTerraform(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 = { ignore_unspecified_column_families: { value: cdktf.booleanToHclTerraform(struct.ignoreUnspecifiedColumnFamilies), isBlock: false, type: "simple", storageClassType: "boolean", }, output_column_families_as_json: { value: cdktf.booleanToHclTerraform(struct.outputColumnFamiliesAsJson), isBlock: false, type: "simple", storageClassType: "boolean", }, read_rowkey_as_string: { value: cdktf.booleanToHclTerraform(struct.readRowkeyAsString), isBlock: false, type: "simple", storageClassType: "boolean", }, column_family: { value: cdktf.listMapperHcl(bigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyToHclTerraform, true)(struct.columnFamily), isBlock: true, type: "list", storageClassType: "BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.bigqueryTableExternalDataConfigurationBigtableOptionsToHclTerraform = bigqueryTableExternalDataConfigurationBigtableOptionsToHclTerraform; class BigqueryTableExternalDataConfigurationBigtableOptionsOutputReference 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; // column_family - computed: false, optional: true, required: false this._columnFamily = new BigqueryTableExternalDataConfigurationBigtableOptionsColumnFamilyList(this, "column_family", false); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._ignoreUnspecifiedColumnFamilies !== undefined) { hasAnyValues = true; internalValueResult.ignoreUnspecifiedColumnFamilies = this._ignoreUnspecifiedColumnFamilies; } if (this._outputColumnFamiliesAsJson !== undefined) { hasAnyValues = true; internalValueResult.outputColumnFamiliesAsJson = this._outputColumnFamiliesAsJson; } if (this._readRowkeyAsString !== undefined) { hasAnyValues = true; internalValueResult.readRowkeyAsString = this._readRowkeyAsString; } if (this._columnFamily?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.columnFamily = this._columnFamily?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._ignoreUnspecifiedColumnFamilies = undefined; this._outputColumnFamiliesAsJson = undefined; this._readRowkeyAsString = undefined; this._columnFamily.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._ignoreUnspecifiedColumnFamilies = value.ignoreUnspecifiedColumnFamilies; this._outputColumnFamiliesAsJson = value.outputColumnFamiliesAsJson; this._readRowkeyAsString = value.readRowkeyAsString; this._columnFamily.internalValue = value.columnFamily; } } get ignoreUnspecifiedColumnFamilies() { return this.getBooleanAttribute('ignore_unspecified_column_families'); } set ignoreUnspecifiedColumnFamilies(value) { this._ignoreUnspecifiedColumnFamilies = value; } resetIgnoreUnspecifiedColumnFamilies() { this._ignoreUnspecifiedColumnFamilies = undefined; } // Temporarily expose input value. Use with caution. get ignoreUnspecifiedColumnFamiliesInput() { return this._ignoreUnspecifiedColumnFamilies; } get outputColumnFamiliesAsJson() { return this.getBooleanAttribute('output_column_families_as_json'); } set outputColumnFamiliesAsJson(value) { this._outputColumnFamiliesAsJson = value; } resetOutputColumnFamiliesAsJson() { this._outputColumnFamiliesAsJson = undefined; } // Temporarily expose input value. Use with caution. get outputColumnFamiliesAsJsonInput() { return this._outputColumnFamiliesAsJson; } get readRowkeyAsString() { return this.getBooleanAttribute('read_rowkey_as_string'); } set readRowkeyAsString(value) { this._readRowkeyAsString = value; } resetReadRowkeyAsString() { this._readRowkeyAsString = undefined; } // Temporarily expose input value. Use with caution. get readRowkeyAsStringInput() { return this._readRowkeyAsString; } get columnFamily() { return this._columnFamily; } putColumnFamily(value) { this._columnFamily.internalValue = value; } resetColumnFamily() { this._columnFamily.internalValue = undefined; } // Temporarily expose input value. Use with caution. get columnFamilyInput() { return this._columnFamily.internalValue; } } exports.BigqueryTableExternalDataConfigurationBigtableOptionsOutputReference = BigqueryTableExternalDataConfigurationBigtableOptionsOutputReference; _h = JSII_RTTI_SYMBOL_1; BigqueryTableExternalDataConfigurationBigtableOptionsOutputReference[_h] = { fqn: "@cdktf/provider-google.bigqueryTable.BigqueryTableExternalDataConfigurationBigtableOptionsOutputReference", version: "14.12.0" }; function bigqueryTableExternalDataConfigurationCsvOptionsToTerraform(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 { allow_jagged_rows: cdktf.booleanToTerraform(struct.allowJaggedRows), allow_quoted_newlines: cdktf.booleanToTerraform(struct.allowQuotedNewlines), encoding: cdktf.stringToTerraform(struct.encoding), field_delimiter: cdktf.stringToTerraform(struct.fieldDelimiter), quote: cdktf.stringToTerraform(struct.quote), skip_leading_rows: cdktf.numberToTerraform(struct.skipLeadingRows), }; } exports.bigqueryTableExternalDataConfigurationCsvOptionsToTerraform = bigqueryTableExternalDataConfigurationCsvOptionsToTerraform; function bigqueryTableExternalDataConfigurationCsvOptionsToHclTerraform(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 = { allow_jagged_rows: { value: cdktf.booleanToHclTerraform(struct.allowJaggedRows), isBlock: false, type: "simple", storageClassType: "boolean", }, allow_quoted_newlines: { value: cdktf.booleanToHclTerraform(struct.allowQuotedNewlines), isBlock: false, type: "simple", storageClassType: "boolean", }, encoding: { value: cdktf.stringToHclTerraform(struct.encoding), isBlock: false, type: "simple", storageClassType: "string", }, field_delimiter: { value: cdktf.stringToHclTerraform(struct.fieldDelimiter), isBlock: false, type: "simple", storageClassType: "string", }, quote: { value: cdktf.stringToHclTerraform(struct.quote), isBlock: false, type: "simple", storageClassType: "string", }, skip_leading_rows: { value: cdktf.numberToHclTerraform(struct.skipLeadingRows), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.bigqueryTableExternalDataConfigurationCsvOptionsToHclTerraform = bigqueryTableExternalDataConfigurationCsvOptionsToHclTerraform; class BigqueryTableExternalDataConfigurationCsvOptionsOutputReference 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._allowJaggedRows !== undefined) { hasAnyValues = true; internalValueResult.allowJaggedRows = this._allowJaggedRows; } if (this._allowQuotedNewlines !== undefined) { hasAnyValues = true; internalValueResult.allowQuotedNewlines = this._allowQuotedNewlines; } if (this._encoding !== undefined) { hasAnyValues = true; internalValueResult.encoding = this._encoding; } if (this._fieldDelimiter !== undefined) { hasAnyValues = true; internalValueResult.fieldDelimiter = this._fieldDelimiter; } if (this._quote !== undefined) { hasAnyValues = true; internalValueResult.quote = this._quote; } if (this._skipLeadingRows !== undefined) { hasAnyValues = true; internalValueResult.skipLeadingRows = this._skipLeadingRows; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._allowJaggedRows = undefined; this._allowQuotedNewlines = undefined; this._encoding = undefined; this._fieldDelimiter = undefined; this._quote = undefined; this._skipLeadingRows = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._allowJaggedRows = value.allowJaggedRows; this._allowQuotedNewlines = value.allowQuotedNewlines; this._encoding = value.encoding; this._fieldDelimiter = value.fieldDelimiter; this._quote = value.quote; this._skipLeadingRows = value.skipLeadingRows; } } get allowJaggedRows() { return this.getBooleanAttribute('allow_jagged_rows'); } set allowJaggedRows(value) { this._allowJaggedRows = value; } resetAllowJaggedRows() { this._allowJaggedRows = undefined; } // Temporarily expose input value. Use with caution. get allowJaggedRowsInput() { return this._allowJaggedRows; } get allowQuotedNewlines() { return this.getBooleanAttribute('allow_quoted_newlines'); } set allowQuotedNewlines(value) { this._allowQuotedNewlines = value; } resetAllowQuotedNewlines() { this._allowQuotedNewlines = undefined; } // Temporarily expose input value. Use with caution. get allowQuotedNewlinesInput() { return this._allowQuotedNewlines; } get encoding() { return this.getStringAttribute('encoding'); } set encoding(value) { this._encoding = value; } resetEncoding() { this._encoding = undefined; } // Temporarily expose input value. Use with caution. get encodingInput() { return this._encoding; } get fieldDelimiter() { return this.getStringAttribute('field_delimiter'); } set fieldDelimiter(value) {