UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

1,246 lines 224 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k; Object.defineProperty(exports, "__esModule", { value: true }); exports.BigqueryDataset = exports.BigqueryDatasetTimeoutsOutputReference = exports.bigqueryDatasetTimeoutsToHclTerraform = exports.bigqueryDatasetTimeoutsToTerraform = exports.BigqueryDatasetExternalDatasetReferenceOutputReference = exports.bigqueryDatasetExternalDatasetReferenceToHclTerraform = exports.bigqueryDatasetExternalDatasetReferenceToTerraform = exports.BigqueryDatasetDefaultEncryptionConfigurationOutputReference = exports.bigqueryDatasetDefaultEncryptionConfigurationToHclTerraform = exports.bigqueryDatasetDefaultEncryptionConfigurationToTerraform = exports.BigqueryDatasetAccessList = exports.BigqueryDatasetAccessOutputReference = exports.bigqueryDatasetAccessToHclTerraform = exports.bigqueryDatasetAccessToTerraform = exports.BigqueryDatasetAccessViewOutputReference = exports.bigqueryDatasetAccessViewToHclTerraform = exports.bigqueryDatasetAccessViewToTerraform = exports.BigqueryDatasetAccessRoutineOutputReference = exports.bigqueryDatasetAccessRoutineToHclTerraform = exports.bigqueryDatasetAccessRoutineToTerraform = exports.BigqueryDatasetAccessDatasetOutputReference = exports.bigqueryDatasetAccessDatasetToHclTerraform = exports.bigqueryDatasetAccessDatasetToTerraform = exports.BigqueryDatasetAccessDatasetDatasetOutputReference = exports.bigqueryDatasetAccessDatasetDatasetToHclTerraform = exports.bigqueryDatasetAccessDatasetDatasetToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function bigqueryDatasetAccessDatasetDatasetToTerraform(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 { dataset_id: cdktf.stringToTerraform(struct.datasetId), project_id: cdktf.stringToTerraform(struct.projectId), }; } exports.bigqueryDatasetAccessDatasetDatasetToTerraform = bigqueryDatasetAccessDatasetDatasetToTerraform; function bigqueryDatasetAccessDatasetDatasetToHclTerraform(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 = { dataset_id: { value: cdktf.stringToHclTerraform(struct.datasetId), isBlock: false, type: "simple", storageClassType: "string", }, project_id: { value: cdktf.stringToHclTerraform(struct.projectId), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.bigqueryDatasetAccessDatasetDatasetToHclTerraform = bigqueryDatasetAccessDatasetDatasetToHclTerraform; class BigqueryDatasetAccessDatasetDatasetOutputReference 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._datasetId !== undefined) { hasAnyValues = true; internalValueResult.datasetId = this._datasetId; } if (this._projectId !== undefined) { hasAnyValues = true; internalValueResult.projectId = this._projectId; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._datasetId = undefined; this._projectId = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._datasetId = value.datasetId; this._projectId = value.projectId; } } get datasetId() { return this.getStringAttribute('dataset_id'); } set datasetId(value) { this._datasetId = value; } // Temporarily expose input value. Use with caution. get datasetIdInput() { return this._datasetId; } get projectId() { return this.getStringAttribute('project_id'); } set projectId(value) { this._projectId = value; } // Temporarily expose input value. Use with caution. get projectIdInput() { return this._projectId; } } exports.BigqueryDatasetAccessDatasetDatasetOutputReference = BigqueryDatasetAccessDatasetDatasetOutputReference; _a = JSII_RTTI_SYMBOL_1; BigqueryDatasetAccessDatasetDatasetOutputReference[_a] = { fqn: "@cdktf/provider-google.bigqueryDataset.BigqueryDatasetAccessDatasetDatasetOutputReference", version: "14.12.0" }; function bigqueryDatasetAccessDatasetToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { target_types: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.targetTypes), dataset: bigqueryDatasetAccessDatasetDatasetToTerraform(struct.dataset), }; } exports.bigqueryDatasetAccessDatasetToTerraform = bigqueryDatasetAccessDatasetToTerraform; function bigqueryDatasetAccessDatasetToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { target_types: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.targetTypes), isBlock: false, type: "list", storageClassType: "stringList", }, dataset: { value: bigqueryDatasetAccessDatasetDatasetToHclTerraform(struct.dataset), isBlock: true, type: "list", storageClassType: "BigqueryDatasetAccessDatasetDatasetList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.bigqueryDatasetAccessDatasetToHclTerraform = bigqueryDatasetAccessDatasetToHclTerraform; class BigqueryDatasetAccessDatasetOutputReference 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; // dataset - computed: false, optional: false, required: true this._dataset = new BigqueryDatasetAccessDatasetDatasetOutputReference(this, "dataset"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._targetTypes !== undefined) { hasAnyValues = true; internalValueResult.targetTypes = this._targetTypes; } if (this._dataset?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.dataset = this._dataset?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._targetTypes = undefined; this._dataset.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._targetTypes = value.targetTypes; this._dataset.internalValue = value.dataset; } } get targetTypes() { return this.getListAttribute('target_types'); } set targetTypes(value) { this._targetTypes = value; } // Temporarily expose input value. Use with caution. get targetTypesInput() { return this._targetTypes; } get dataset() { return this._dataset; } putDataset(value) { this._dataset.internalValue = value; } // Temporarily expose input value. Use with caution. get datasetInput() { return this._dataset.internalValue; } } exports.BigqueryDatasetAccessDatasetOutputReference = BigqueryDatasetAccessDatasetOutputReference; _b = JSII_RTTI_SYMBOL_1; BigqueryDatasetAccessDatasetOutputReference[_b] = { fqn: "@cdktf/provider-google.bigqueryDataset.BigqueryDatasetAccessDatasetOutputReference", version: "14.12.0" }; function bigqueryDatasetAccessRoutineToTerraform(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 { dataset_id: cdktf.stringToTerraform(struct.datasetId), project_id: cdktf.stringToTerraform(struct.projectId), routine_id: cdktf.stringToTerraform(struct.routineId), }; } exports.bigqueryDatasetAccessRoutineToTerraform = bigqueryDatasetAccessRoutineToTerraform; function bigqueryDatasetAccessRoutineToHclTerraform(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 = { dataset_id: { value: cdktf.stringToHclTerraform(struct.datasetId), isBlock: false, type: "simple", storageClassType: "string", }, project_id: { value: cdktf.stringToHclTerraform(struct.projectId), isBlock: false, type: "simple", storageClassType: "string", }, routine_id: { value: cdktf.stringToHclTerraform(struct.routineId), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.bigqueryDatasetAccessRoutineToHclTerraform = bigqueryDatasetAccessRoutineToHclTerraform; class BigqueryDatasetAccessRoutineOutputReference 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._datasetId !== undefined) { hasAnyValues = true; internalValueResult.datasetId = this._datasetId; } if (this._projectId !== undefined) { hasAnyValues = true; internalValueResult.projectId = this._projectId; } if (this._routineId !== undefined) { hasAnyValues = true; internalValueResult.routineId = this._routineId; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._datasetId = undefined; this._projectId = undefined; this._routineId = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._datasetId = value.datasetId; this._projectId = value.projectId; this._routineId = value.routineId; } } get datasetId() { return this.getStringAttribute('dataset_id'); } set datasetId(value) { this._datasetId = value; } // Temporarily expose input value. Use with caution. get datasetIdInput() { return this._datasetId; } get projectId() { return this.getStringAttribute('project_id'); } set projectId(value) { this._projectId = value; } // Temporarily expose input value. Use with caution. get projectIdInput() { return this._projectId; } get routineId() { return this.getStringAttribute('routine_id'); } set routineId(value) { this._routineId = value; } // Temporarily expose input value. Use with caution. get routineIdInput() { return this._routineId; } } exports.BigqueryDatasetAccessRoutineOutputReference = BigqueryDatasetAccessRoutineOutputReference; _c = JSII_RTTI_SYMBOL_1; BigqueryDatasetAccessRoutineOutputReference[_c] = { fqn: "@cdktf/provider-google.bigqueryDataset.BigqueryDatasetAccessRoutineOutputReference", version: "14.12.0" }; function bigqueryDatasetAccessViewToTerraform(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 { dataset_id: cdktf.stringToTerraform(struct.datasetId), project_id: cdktf.stringToTerraform(struct.projectId), table_id: cdktf.stringToTerraform(struct.tableId), }; } exports.bigqueryDatasetAccessViewToTerraform = bigqueryDatasetAccessViewToTerraform; function bigqueryDatasetAccessViewToHclTerraform(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 = { dataset_id: { value: cdktf.stringToHclTerraform(struct.datasetId), isBlock: false, type: "simple", storageClassType: "string", }, project_id: { value: cdktf.stringToHclTerraform(struct.projectId), isBlock: false, type: "simple", storageClassType: "string", }, table_id: { value: cdktf.stringToHclTerraform(struct.tableId), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.bigqueryDatasetAccessViewToHclTerraform = bigqueryDatasetAccessViewToHclTerraform; class BigqueryDatasetAccessViewOutputReference 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._datasetId !== undefined) { hasAnyValues = true; internalValueResult.datasetId = this._datasetId; } if (this._projectId !== undefined) { hasAnyValues = true; internalValueResult.projectId = this._projectId; } if (this._tableId !== undefined) { hasAnyValues = true; internalValueResult.tableId = this._tableId; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._datasetId = undefined; this._projectId = undefined; this._tableId = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._datasetId = value.datasetId; this._projectId = value.projectId; this._tableId = value.tableId; } } get datasetId() { return this.getStringAttribute('dataset_id'); } set datasetId(value) { this._datasetId = value; } // Temporarily expose input value. Use with caution. get datasetIdInput() { return this._datasetId; } get projectId() { return this.getStringAttribute('project_id'); } set projectId(value) { this._projectId = value; } // Temporarily expose input value. Use with caution. get projectIdInput() { return this._projectId; } get tableId() { return this.getStringAttribute('table_id'); } set tableId(value) { this._tableId = value; } // Temporarily expose input value. Use with caution. get tableIdInput() { return this._tableId; } } exports.BigqueryDatasetAccessViewOutputReference = BigqueryDatasetAccessViewOutputReference; _d = JSII_RTTI_SYMBOL_1; BigqueryDatasetAccessViewOutputReference[_d] = { fqn: "@cdktf/provider-google.bigqueryDataset.BigqueryDatasetAccessViewOutputReference", version: "14.12.0" }; function bigqueryDatasetAccessToTerraform(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 { domain: cdktf.stringToTerraform(struct.domain), group_by_email: cdktf.stringToTerraform(struct.groupByEmail), iam_member: cdktf.stringToTerraform(struct.iamMember), role: cdktf.stringToTerraform(struct.role), special_group: cdktf.stringToTerraform(struct.specialGroup), user_by_email: cdktf.stringToTerraform(struct.userByEmail), dataset: bigqueryDatasetAccessDatasetToTerraform(struct.dataset), routine: bigqueryDatasetAccessRoutineToTerraform(struct.routine), view: bigqueryDatasetAccessViewToTerraform(struct.view), }; } exports.bigqueryDatasetAccessToTerraform = bigqueryDatasetAccessToTerraform; function bigqueryDatasetAccessToHclTerraform(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 = { domain: { value: cdktf.stringToHclTerraform(struct.domain), isBlock: false, type: "simple", storageClassType: "string", }, group_by_email: { value: cdktf.stringToHclTerraform(struct.groupByEmail), isBlock: false, type: "simple", storageClassType: "string", }, iam_member: { value: cdktf.stringToHclTerraform(struct.iamMember), isBlock: false, type: "simple", storageClassType: "string", }, role: { value: cdktf.stringToHclTerraform(struct.role), isBlock: false, type: "simple", storageClassType: "string", }, special_group: { value: cdktf.stringToHclTerraform(struct.specialGroup), isBlock: false, type: "simple", storageClassType: "string", }, user_by_email: { value: cdktf.stringToHclTerraform(struct.userByEmail), isBlock: false, type: "simple", storageClassType: "string", }, dataset: { value: bigqueryDatasetAccessDatasetToHclTerraform(struct.dataset), isBlock: true, type: "list", storageClassType: "BigqueryDatasetAccessDatasetList", }, routine: { value: bigqueryDatasetAccessRoutineToHclTerraform(struct.routine), isBlock: true, type: "list", storageClassType: "BigqueryDatasetAccessRoutineList", }, view: { value: bigqueryDatasetAccessViewToHclTerraform(struct.view), isBlock: true, type: "list", storageClassType: "BigqueryDatasetAccessViewList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.bigqueryDatasetAccessToHclTerraform = bigqueryDatasetAccessToHclTerraform; class BigqueryDatasetAccessOutputReference 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; // dataset - computed: false, optional: true, required: false this._dataset = new BigqueryDatasetAccessDatasetOutputReference(this, "dataset"); // routine - computed: false, optional: true, required: false this._routine = new BigqueryDatasetAccessRoutineOutputReference(this, "routine"); // view - computed: false, optional: true, required: false this._view = new BigqueryDatasetAccessViewOutputReference(this, "view"); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._domain !== undefined) { hasAnyValues = true; internalValueResult.domain = this._domain; } if (this._groupByEmail !== undefined) { hasAnyValues = true; internalValueResult.groupByEmail = this._groupByEmail; } if (this._iamMember !== undefined) { hasAnyValues = true; internalValueResult.iamMember = this._iamMember; } if (this._role !== undefined) { hasAnyValues = true; internalValueResult.role = this._role; } if (this._specialGroup !== undefined) { hasAnyValues = true; internalValueResult.specialGroup = this._specialGroup; } if (this._userByEmail !== undefined) { hasAnyValues = true; internalValueResult.userByEmail = this._userByEmail; } if (this._dataset?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.dataset = this._dataset?.internalValue; } if (this._routine?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.routine = this._routine?.internalValue; } if (this._view?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.view = this._view?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._domain = undefined; this._groupByEmail = undefined; this._iamMember = undefined; this._role = undefined; this._specialGroup = undefined; this._userByEmail = undefined; this._dataset.internalValue = undefined; this._routine.internalValue = undefined; this._view.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._domain = value.domain; this._groupByEmail = value.groupByEmail; this._iamMember = value.iamMember; this._role = value.role; this._specialGroup = value.specialGroup; this._userByEmail = value.userByEmail; this._dataset.internalValue = value.dataset; this._routine.internalValue = value.routine; this._view.internalValue = value.view; } } get domain() { return this.getStringAttribute('domain'); } set domain(value) { this._domain = value; } resetDomain() { this._domain = undefined; } // Temporarily expose input value. Use with caution. get domainInput() { return this._domain; } get groupByEmail() { return this.getStringAttribute('group_by_email'); } set groupByEmail(value) { this._groupByEmail = value; } resetGroupByEmail() { this._groupByEmail = undefined; } // Temporarily expose input value. Use with caution. get groupByEmailInput() { return this._groupByEmail; } get iamMember() { return this.getStringAttribute('iam_member'); } set iamMember(value) { this._iamMember = value; } resetIamMember() { this._iamMember = undefined; } // Temporarily expose input value. Use with caution. get iamMemberInput() { return this._iamMember; } get role() { return this.getStringAttribute('role'); } set role(value) { this._role = value; } resetRole() { this._role = undefined; } // Temporarily expose input value. Use with caution. get roleInput() { return this._role; } get specialGroup() { return this.getStringAttribute('special_group'); } set specialGroup(value) { this._specialGroup = value; } resetSpecialGroup() { this._specialGroup = undefined; } // Temporarily expose input value. Use with caution. get specialGroupInput() { return this._specialGroup; } get userByEmail() { return this.getStringAttribute('user_by_email'); } set userByEmail(value) { this._userByEmail = value; } resetUserByEmail() { this._userByEmail = undefined; } // Temporarily expose input value. Use with caution. get userByEmailInput() { return this._userByEmail; } get dataset() { return this._dataset; } putDataset(value) { this._dataset.internalValue = value; } resetDataset() { this._dataset.internalValue = undefined; } // Temporarily expose input value. Use with caution. get datasetInput() { return this._dataset.internalValue; } get routine() { return this._routine; } putRoutine(value) { this._routine.internalValue = value; } resetRoutine() { this._routine.internalValue = undefined; } // Temporarily expose input value. Use with caution. get routineInput() { return this._routine.internalValue; } get view() { return this._view; } putView(value) { this._view.internalValue = value; } resetView() { this._view.internalValue = undefined; } // Temporarily expose input value. Use with caution. get viewInput() { return this._view.internalValue; } } exports.BigqueryDatasetAccessOutputReference = BigqueryDatasetAccessOutputReference; _e = JSII_RTTI_SYMBOL_1; BigqueryDatasetAccessOutputReference[_e] = { fqn: "@cdktf/provider-google.bigqueryDataset.BigqueryDatasetAccessOutputReference", version: "14.12.0" }; class BigqueryDatasetAccessList 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 BigqueryDatasetAccessOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.BigqueryDatasetAccessList = BigqueryDatasetAccessList; _f = JSII_RTTI_SYMBOL_1; BigqueryDatasetAccessList[_f] = { fqn: "@cdktf/provider-google.bigqueryDataset.BigqueryDatasetAccessList", version: "14.12.0" }; function bigqueryDatasetDefaultEncryptionConfigurationToTerraform(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.bigqueryDatasetDefaultEncryptionConfigurationToTerraform = bigqueryDatasetDefaultEncryptionConfigurationToTerraform; function bigqueryDatasetDefaultEncryptionConfigurationToHclTerraform(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.bigqueryDatasetDefaultEncryptionConfigurationToHclTerraform = bigqueryDatasetDefaultEncryptionConfigurationToHclTerraform; class BigqueryDatasetDefaultEncryptionConfigurationOutputReference 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; } } exports.BigqueryDatasetDefaultEncryptionConfigurationOutputReference = BigqueryDatasetDefaultEncryptionConfigurationOutputReference; _g = JSII_RTTI_SYMBOL_1; BigqueryDatasetDefaultEncryptionConfigurationOutputReference[_g] = { fqn: "@cdktf/provider-google.bigqueryDataset.BigqueryDatasetDefaultEncryptionConfigurationOutputReference", version: "14.12.0" }; function bigqueryDatasetExternalDatasetReferenceToTerraform(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: cdktf.stringToTerraform(struct.connection), external_source: cdktf.stringToTerraform(struct.externalSource), }; } exports.bigqueryDatasetExternalDatasetReferenceToTerraform = bigqueryDatasetExternalDatasetReferenceToTerraform; function bigqueryDatasetExternalDatasetReferenceToHclTerraform(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: { value: cdktf.stringToHclTerraform(struct.connection), isBlock: false, type: "simple", storageClassType: "string", }, external_source: { value: cdktf.stringToHclTerraform(struct.externalSource), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.bigqueryDatasetExternalDatasetReferenceToHclTerraform = bigqueryDatasetExternalDatasetReferenceToHclTerraform; class BigqueryDatasetExternalDatasetReferenceOutputReference 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._connection !== undefined) { hasAnyValues = true; internalValueResult.connection = this._connection; } if (this._externalSource !== undefined) { hasAnyValues = true; internalValueResult.externalSource = this._externalSource; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._connection = undefined; this._externalSource = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._connection = value.connection; this._externalSource = value.externalSource; } } get connection() { return this.getStringAttribute('connection'); } set connection(value) { this._connection = value; } // Temporarily expose input value. Use with caution. get connectionInput() { return this._connection; } get externalSource() { return this.getStringAttribute('external_source'); } set externalSource(value) { this._externalSource = value; } // Temporarily expose input value. Use with caution. get externalSourceInput() { return this._externalSource; } } exports.BigqueryDatasetExternalDatasetReferenceOutputReference = BigqueryDatasetExternalDatasetReferenceOutputReference; _h = JSII_RTTI_SYMBOL_1; BigqueryDatasetExternalDatasetReferenceOutputReference[_h] = { fqn: "@cdktf/provider-google.bigqueryDataset.BigqueryDatasetExternalDatasetReferenceOutputReference", version: "14.12.0" }; function bigqueryDatasetTimeoutsToTerraform(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), }; } exports.bigqueryDatasetTimeoutsToTerraform = bigqueryDatasetTimeoutsToTerraform; function bigqueryDatasetTimeoutsToHclTerraform(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", }, update: { value: cdktf.stringToHclTerraform(struct.update), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.bigqueryDatasetTimeoutsToHclTerraform = bigqueryDatasetTimeoutsToHclTerraform; class BigqueryDatasetTimeoutsOutputReference 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; } if (this._update !== undefined) { hasAnyValues = true; internalValueResult.update = this._update; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._create = undefined; this._delete = undefined; this._update = 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; this._update = value.update; } } 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; } get update() { return this.getStringAttribute('update'); } set update(value) { this._update = value; } resetUpdate() { this._update = undefined; } // Temporarily expose input value. Use with caution. get updateInput() { return this._update; } } exports.BigqueryDatasetTimeoutsOutputReference = BigqueryDatasetTimeoutsOutputReference; _j = JSII_RTTI_SYMBOL_1; BigqueryDatasetTimeoutsOutputReference[_j] = { fqn: "@cdktf/provider-google.bigqueryDataset.BigqueryDatasetTimeoutsOutputReference", version: "14.12.0" }; /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/bigquery_dataset google_bigquery_dataset} */ class BigqueryDataset extends cdktf.TerraformResource { // ============== // STATIC Methods // ============== /** * Generates CDKTF code for importing a BigqueryDataset 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 BigqueryDataset to import * @param importFromId The id of the existing BigqueryDataset that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/bigquery_dataset#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the BigqueryDataset to import is found */ static generateConfigForImport(scope, importToId, importFromId, provider) { return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "google_bigquery_dataset", importId: importFromId, provider }); } // =========== // INITIALIZER // =========== /** * Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/bigquery_dataset google_bigquery_dataset} 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 BigqueryDatasetConfig */ constructor(scope, id, config) { super(scope, id, { terraformResourceType: 'google_bigquery_dataset', terraformGeneratorMetadata: { providerName: 'google', providerVersion: '6.13.0', providerVersionConstraint: '~> 6.0' }, provider: config.provider, dependsOn: config.dependsOn, count: config.count, lifecycle: config.lifecycle, provisioners: config.provisioners, connection: config.connection, forEach: config.forEach }); // effective_labels - computed: true, optional: false, required: false this._effectiveLabels = new cdktf.StringMap(this, "effective_labels"); // terraform_labels - computed: true, optional: false, required: false this._terraformLabels = new cdktf.StringMap(this, "terraform_labels"); // access - computed: false, optional: true, required: false this._access = new BigqueryDatasetAccessList(this, "access", true); // default_encryption_configuration - computed: false, optional: true, required: false this._defaultEncryptionConfiguration = new BigqueryDatasetDefaultEncryptionConfigurationOutputReference(this, "default_encryption_configuration"); // external_dataset_reference - computed: false, optional: true, required: false this._externalDatasetReference = new BigqueryDatasetExternalDatasetReferenceOutputReference(this, "external_dataset_reference"); // timeouts - computed: false, optional: true, required: false this._timeouts = new BigqueryDatasetTimeoutsOutputReference(this, "timeouts"); this._datasetId = config.datasetId; this._defaultCollation = config.defaultCollation; this._defaultPartitionExpirationMs = config.defaultPartitionExpirationMs; this._defaultTableExpirationMs = config.defaultTableExpirationMs; this._deleteContentsOnDestroy = config.deleteContentsOnDestroy; this._description = config.description; this._friendlyName = config.friendlyName; this._id = config.id; this._isCaseInsensitive = config.isCaseInsensitive; this._labels = config.labels; this._location = config.location; this._maxTimeTravelHours = config.maxTimeTravelHours; this._project = config.project; this._resourceTags = config.resourceTags; this._storageBillingModel = config.storageBillingModel; this._access.internalValue = config.access; this._defaultEncryptionConfiguration.internalValue = config.defaultEncryptionConfiguration; this._externalDatasetReference.internalValue = config.externalDatasetReference; this._timeouts.internalValue = config.timeouts; } // ========== // ATTRIBUTES // ========== // creation_time - computed: true, optional: false, required: false get creationTime() { return this.getNumberAttribute('creation_time'); } get datasetId() { return this.getStringAttribute('dataset_id'); } set datasetId(value) { this._datasetId = value; } // Temporarily expose input value. Use with caution. get datasetIdInput() { return this._datasetId; } get defaultCollation() { return this.getStringAttribute('default_collation'); } set defaultCollation(value) { this._defaultCollation = value; } resetDefaultCollation() { this._defaultCollation = undefined; } // Temporarily expose input value. Use with caution. get defaultCollationInput() { return this._defaultCollation; } get defaultPartitionExpirationMs() { return this.getNumberAttribute('default_partition_expiration_ms'); } set defaultPartitionExpirationMs(value) { this._defaultPartitionExpirationMs = value; } resetDefaultPartitionExpirationMs() { this._defaultPartitionExpirationMs = undefined; } // Temporarily expose input value. Use with caution. get defaultPartitionExpirationMsInput() { return this._defaultPartitionExpirationMs; } get defaultTableExpirationMs() { return this.getNumberAttribute('default_table_expiration_ms'); } set defaultTableExpirationMs(value) { this._defaultTableExpirationMs = value; } resetDefaultTableExpirationMs() { this._defaultTableExpirationMs = undefined; } // Temporarily expose input value. Use with caution. get defaultTableExpirationMsInput() { return this._defaultTableExpirationMs; } get deleteContentsOnDestroy() { return this.getBooleanAttribute('delete_contents_on_destroy'); } set deleteContentsOnDestroy(value) { this._deleteContentsOnDestroy = value; } resetDeleteContentsOnDestroy() { this._deleteContentsOnDestroy = undefined; } // Temporarily expose input value. Use with caution. get deleteContentsOnDestroyInput() { return this._deleteContentsOnDestroy; } get description() { return this.getStringAttribute('description'); } set description(value) { this._description = value; } resetDescription() { this._description = undefined; } // Temporarily expose input value. Use with caution. get descriptionInput() { return this._description; } get effectiveLabels() { return this._effectiveLabels; } // etag - computed: true, optional: false, required: false get etag() { return this.getStringAttribute('etag'); } get friendlyName() { return this.getStringAttribute('friendly_name'); } set friendlyName(value) { this._friendlyName = value; } resetFriendlyName() { this._friendlyName = undefined; } // Temporarily expose input value. Use with caution. get friendlyNameInput() { return this._friendlyName; } get id() { return