UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

1,134 lines 321 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v; Object.defineProperty(exports, "__esModule", { value: true }); exports.WorkbenchInstance = exports.WorkbenchInstanceTimeoutsOutputReference = exports.workbenchInstanceTimeoutsToHclTerraform = exports.workbenchInstanceTimeoutsToTerraform = exports.WorkbenchInstanceGceSetupOutputReference = exports.workbenchInstanceGceSetupToHclTerraform = exports.workbenchInstanceGceSetupToTerraform = exports.WorkbenchInstanceGceSetupVmImageOutputReference = exports.workbenchInstanceGceSetupVmImageToHclTerraform = exports.workbenchInstanceGceSetupVmImageToTerraform = exports.WorkbenchInstanceGceSetupShieldedInstanceConfigOutputReference = exports.workbenchInstanceGceSetupShieldedInstanceConfigToHclTerraform = exports.workbenchInstanceGceSetupShieldedInstanceConfigToTerraform = exports.WorkbenchInstanceGceSetupServiceAccountsList = exports.WorkbenchInstanceGceSetupServiceAccountsOutputReference = exports.workbenchInstanceGceSetupServiceAccountsToHclTerraform = exports.workbenchInstanceGceSetupServiceAccountsToTerraform = exports.WorkbenchInstanceGceSetupNetworkInterfacesList = exports.WorkbenchInstanceGceSetupNetworkInterfacesOutputReference = exports.workbenchInstanceGceSetupNetworkInterfacesToHclTerraform = exports.workbenchInstanceGceSetupNetworkInterfacesToTerraform = exports.WorkbenchInstanceGceSetupNetworkInterfacesAccessConfigsList = exports.WorkbenchInstanceGceSetupNetworkInterfacesAccessConfigsOutputReference = exports.workbenchInstanceGceSetupNetworkInterfacesAccessConfigsToHclTerraform = exports.workbenchInstanceGceSetupNetworkInterfacesAccessConfigsToTerraform = exports.WorkbenchInstanceGceSetupDataDisksOutputReference = exports.workbenchInstanceGceSetupDataDisksToHclTerraform = exports.workbenchInstanceGceSetupDataDisksToTerraform = exports.WorkbenchInstanceGceSetupContainerImageOutputReference = exports.workbenchInstanceGceSetupContainerImageToHclTerraform = exports.workbenchInstanceGceSetupContainerImageToTerraform = exports.WorkbenchInstanceGceSetupBootDiskOutputReference = exports.workbenchInstanceGceSetupBootDiskToHclTerraform = exports.workbenchInstanceGceSetupBootDiskToTerraform = exports.WorkbenchInstanceGceSetupAcceleratorConfigsList = exports.WorkbenchInstanceGceSetupAcceleratorConfigsOutputReference = exports.workbenchInstanceGceSetupAcceleratorConfigsToHclTerraform = exports.workbenchInstanceGceSetupAcceleratorConfigsToTerraform = exports.WorkbenchInstanceUpgradeHistoryList = exports.WorkbenchInstanceUpgradeHistoryOutputReference = exports.workbenchInstanceUpgradeHistoryToHclTerraform = exports.workbenchInstanceUpgradeHistoryToTerraform = exports.WorkbenchInstanceHealthInfoList = exports.WorkbenchInstanceHealthInfoOutputReference = exports.workbenchInstanceHealthInfoToHclTerraform = exports.workbenchInstanceHealthInfoToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function workbenchInstanceHealthInfoToTerraform(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 {}; } exports.workbenchInstanceHealthInfoToTerraform = workbenchInstanceHealthInfoToTerraform; function workbenchInstanceHealthInfoToHclTerraform(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 = {}; return attrs; } exports.workbenchInstanceHealthInfoToHclTerraform = workbenchInstanceHealthInfoToHclTerraform; class WorkbenchInstanceHealthInfoOutputReference 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() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; } else { this.isEmptyObject = Object.keys(value).length === 0; } } } exports.WorkbenchInstanceHealthInfoOutputReference = WorkbenchInstanceHealthInfoOutputReference; _a = JSII_RTTI_SYMBOL_1; WorkbenchInstanceHealthInfoOutputReference[_a] = { fqn: "@cdktf/provider-google.workbenchInstance.WorkbenchInstanceHealthInfoOutputReference", version: "14.12.0" }; class WorkbenchInstanceHealthInfoList 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 WorkbenchInstanceHealthInfoOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.WorkbenchInstanceHealthInfoList = WorkbenchInstanceHealthInfoList; _b = JSII_RTTI_SYMBOL_1; WorkbenchInstanceHealthInfoList[_b] = { fqn: "@cdktf/provider-google.workbenchInstance.WorkbenchInstanceHealthInfoList", version: "14.12.0" }; function workbenchInstanceUpgradeHistoryToTerraform(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 {}; } exports.workbenchInstanceUpgradeHistoryToTerraform = workbenchInstanceUpgradeHistoryToTerraform; function workbenchInstanceUpgradeHistoryToHclTerraform(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 = {}; return attrs; } exports.workbenchInstanceUpgradeHistoryToHclTerraform = workbenchInstanceUpgradeHistoryToHclTerraform; class WorkbenchInstanceUpgradeHistoryOutputReference 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() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; } else { this.isEmptyObject = Object.keys(value).length === 0; } } // action - computed: true, optional: false, required: false get action() { return this.getStringAttribute('action'); } // container_image - computed: true, optional: false, required: false get containerImage() { return this.getStringAttribute('container_image'); } // create_time - computed: true, optional: false, required: false get createTime() { return this.getStringAttribute('create_time'); } // framework - computed: true, optional: false, required: false get framework() { return this.getStringAttribute('framework'); } // snapshot - computed: true, optional: false, required: false get snapshot() { return this.getStringAttribute('snapshot'); } // state - computed: true, optional: false, required: false get state() { return this.getStringAttribute('state'); } // target_version - computed: true, optional: false, required: false get targetVersion() { return this.getStringAttribute('target_version'); } // version - computed: true, optional: false, required: false get version() { return this.getStringAttribute('version'); } // vm_image - computed: true, optional: false, required: false get vmImage() { return this.getStringAttribute('vm_image'); } } exports.WorkbenchInstanceUpgradeHistoryOutputReference = WorkbenchInstanceUpgradeHistoryOutputReference; _c = JSII_RTTI_SYMBOL_1; WorkbenchInstanceUpgradeHistoryOutputReference[_c] = { fqn: "@cdktf/provider-google.workbenchInstance.WorkbenchInstanceUpgradeHistoryOutputReference", version: "14.12.0" }; class WorkbenchInstanceUpgradeHistoryList 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 WorkbenchInstanceUpgradeHistoryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.WorkbenchInstanceUpgradeHistoryList = WorkbenchInstanceUpgradeHistoryList; _d = JSII_RTTI_SYMBOL_1; WorkbenchInstanceUpgradeHistoryList[_d] = { fqn: "@cdktf/provider-google.workbenchInstance.WorkbenchInstanceUpgradeHistoryList", version: "14.12.0" }; function workbenchInstanceGceSetupAcceleratorConfigsToTerraform(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 { core_count: cdktf.stringToTerraform(struct.coreCount), type: cdktf.stringToTerraform(struct.type), }; } exports.workbenchInstanceGceSetupAcceleratorConfigsToTerraform = workbenchInstanceGceSetupAcceleratorConfigsToTerraform; function workbenchInstanceGceSetupAcceleratorConfigsToHclTerraform(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 = { core_count: { value: cdktf.stringToHclTerraform(struct.coreCount), 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.workbenchInstanceGceSetupAcceleratorConfigsToHclTerraform = workbenchInstanceGceSetupAcceleratorConfigsToHclTerraform; class WorkbenchInstanceGceSetupAcceleratorConfigsOutputReference 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._coreCount !== undefined) { hasAnyValues = true; internalValueResult.coreCount = this._coreCount; } 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._coreCount = 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._coreCount = value.coreCount; this._type = value.type; } } get coreCount() { return this.getStringAttribute('core_count'); } set coreCount(value) { this._coreCount = value; } resetCoreCount() { this._coreCount = undefined; } // Temporarily expose input value. Use with caution. get coreCountInput() { return this._coreCount; } 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.WorkbenchInstanceGceSetupAcceleratorConfigsOutputReference = WorkbenchInstanceGceSetupAcceleratorConfigsOutputReference; _e = JSII_RTTI_SYMBOL_1; WorkbenchInstanceGceSetupAcceleratorConfigsOutputReference[_e] = { fqn: "@cdktf/provider-google.workbenchInstance.WorkbenchInstanceGceSetupAcceleratorConfigsOutputReference", version: "14.12.0" }; class WorkbenchInstanceGceSetupAcceleratorConfigsList 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 WorkbenchInstanceGceSetupAcceleratorConfigsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.WorkbenchInstanceGceSetupAcceleratorConfigsList = WorkbenchInstanceGceSetupAcceleratorConfigsList; _f = JSII_RTTI_SYMBOL_1; WorkbenchInstanceGceSetupAcceleratorConfigsList[_f] = { fqn: "@cdktf/provider-google.workbenchInstance.WorkbenchInstanceGceSetupAcceleratorConfigsList", version: "14.12.0" }; function workbenchInstanceGceSetupBootDiskToTerraform(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 { disk_encryption: cdktf.stringToTerraform(struct.diskEncryption), disk_size_gb: cdktf.stringToTerraform(struct.diskSizeGb), disk_type: cdktf.stringToTerraform(struct.diskType), kms_key: cdktf.stringToTerraform(struct.kmsKey), }; } exports.workbenchInstanceGceSetupBootDiskToTerraform = workbenchInstanceGceSetupBootDiskToTerraform; function workbenchInstanceGceSetupBootDiskToHclTerraform(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 = { disk_encryption: { value: cdktf.stringToHclTerraform(struct.diskEncryption), isBlock: false, type: "simple", storageClassType: "string", }, disk_size_gb: { value: cdktf.stringToHclTerraform(struct.diskSizeGb), isBlock: false, type: "simple", storageClassType: "string", }, disk_type: { value: cdktf.stringToHclTerraform(struct.diskType), isBlock: false, type: "simple", storageClassType: "string", }, kms_key: { value: cdktf.stringToHclTerraform(struct.kmsKey), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.workbenchInstanceGceSetupBootDiskToHclTerraform = workbenchInstanceGceSetupBootDiskToHclTerraform; class WorkbenchInstanceGceSetupBootDiskOutputReference 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._diskEncryption !== undefined) { hasAnyValues = true; internalValueResult.diskEncryption = this._diskEncryption; } if (this._diskSizeGb !== undefined) { hasAnyValues = true; internalValueResult.diskSizeGb = this._diskSizeGb; } if (this._diskType !== undefined) { hasAnyValues = true; internalValueResult.diskType = this._diskType; } if (this._kmsKey !== undefined) { hasAnyValues = true; internalValueResult.kmsKey = this._kmsKey; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._diskEncryption = undefined; this._diskSizeGb = undefined; this._diskType = undefined; this._kmsKey = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._diskEncryption = value.diskEncryption; this._diskSizeGb = value.diskSizeGb; this._diskType = value.diskType; this._kmsKey = value.kmsKey; } } get diskEncryption() { return this.getStringAttribute('disk_encryption'); } set diskEncryption(value) { this._diskEncryption = value; } resetDiskEncryption() { this._diskEncryption = undefined; } // Temporarily expose input value. Use with caution. get diskEncryptionInput() { return this._diskEncryption; } get diskSizeGb() { return this.getStringAttribute('disk_size_gb'); } set diskSizeGb(value) { this._diskSizeGb = value; } resetDiskSizeGb() { this._diskSizeGb = undefined; } // Temporarily expose input value. Use with caution. get diskSizeGbInput() { return this._diskSizeGb; } get diskType() { return this.getStringAttribute('disk_type'); } set diskType(value) { this._diskType = value; } resetDiskType() { this._diskType = undefined; } // Temporarily expose input value. Use with caution. get diskTypeInput() { return this._diskType; } get kmsKey() { return this.getStringAttribute('kms_key'); } set kmsKey(value) { this._kmsKey = value; } resetKmsKey() { this._kmsKey = undefined; } // Temporarily expose input value. Use with caution. get kmsKeyInput() { return this._kmsKey; } } exports.WorkbenchInstanceGceSetupBootDiskOutputReference = WorkbenchInstanceGceSetupBootDiskOutputReference; _g = JSII_RTTI_SYMBOL_1; WorkbenchInstanceGceSetupBootDiskOutputReference[_g] = { fqn: "@cdktf/provider-google.workbenchInstance.WorkbenchInstanceGceSetupBootDiskOutputReference", version: "14.12.0" }; function workbenchInstanceGceSetupContainerImageToTerraform(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 { repository: cdktf.stringToTerraform(struct.repository), tag: cdktf.stringToTerraform(struct.tag), }; } exports.workbenchInstanceGceSetupContainerImageToTerraform = workbenchInstanceGceSetupContainerImageToTerraform; function workbenchInstanceGceSetupContainerImageToHclTerraform(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 = { repository: { value: cdktf.stringToHclTerraform(struct.repository), isBlock: false, type: "simple", storageClassType: "string", }, tag: { value: cdktf.stringToHclTerraform(struct.tag), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.workbenchInstanceGceSetupContainerImageToHclTerraform = workbenchInstanceGceSetupContainerImageToHclTerraform; class WorkbenchInstanceGceSetupContainerImageOutputReference 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._repository !== undefined) { hasAnyValues = true; internalValueResult.repository = this._repository; } if (this._tag !== undefined) { hasAnyValues = true; internalValueResult.tag = this._tag; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._repository = undefined; this._tag = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._repository = value.repository; this._tag = value.tag; } } get repository() { return this.getStringAttribute('repository'); } set repository(value) { this._repository = value; } // Temporarily expose input value. Use with caution. get repositoryInput() { return this._repository; } get tag() { return this.getStringAttribute('tag'); } set tag(value) { this._tag = value; } resetTag() { this._tag = undefined; } // Temporarily expose input value. Use with caution. get tagInput() { return this._tag; } } exports.WorkbenchInstanceGceSetupContainerImageOutputReference = WorkbenchInstanceGceSetupContainerImageOutputReference; _h = JSII_RTTI_SYMBOL_1; WorkbenchInstanceGceSetupContainerImageOutputReference[_h] = { fqn: "@cdktf/provider-google.workbenchInstance.WorkbenchInstanceGceSetupContainerImageOutputReference", version: "14.12.0" }; function workbenchInstanceGceSetupDataDisksToTerraform(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 { disk_encryption: cdktf.stringToTerraform(struct.diskEncryption), disk_size_gb: cdktf.stringToTerraform(struct.diskSizeGb), disk_type: cdktf.stringToTerraform(struct.diskType), kms_key: cdktf.stringToTerraform(struct.kmsKey), }; } exports.workbenchInstanceGceSetupDataDisksToTerraform = workbenchInstanceGceSetupDataDisksToTerraform; function workbenchInstanceGceSetupDataDisksToHclTerraform(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 = { disk_encryption: { value: cdktf.stringToHclTerraform(struct.diskEncryption), isBlock: false, type: "simple", storageClassType: "string", }, disk_size_gb: { value: cdktf.stringToHclTerraform(struct.diskSizeGb), isBlock: false, type: "simple", storageClassType: "string", }, disk_type: { value: cdktf.stringToHclTerraform(struct.diskType), isBlock: false, type: "simple", storageClassType: "string", }, kms_key: { value: cdktf.stringToHclTerraform(struct.kmsKey), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.workbenchInstanceGceSetupDataDisksToHclTerraform = workbenchInstanceGceSetupDataDisksToHclTerraform; class WorkbenchInstanceGceSetupDataDisksOutputReference 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._diskEncryption !== undefined) { hasAnyValues = true; internalValueResult.diskEncryption = this._diskEncryption; } if (this._diskSizeGb !== undefined) { hasAnyValues = true; internalValueResult.diskSizeGb = this._diskSizeGb; } if (this._diskType !== undefined) { hasAnyValues = true; internalValueResult.diskType = this._diskType; } if (this._kmsKey !== undefined) { hasAnyValues = true; internalValueResult.kmsKey = this._kmsKey; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._diskEncryption = undefined; this._diskSizeGb = undefined; this._diskType = undefined; this._kmsKey = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._diskEncryption = value.diskEncryption; this._diskSizeGb = value.diskSizeGb; this._diskType = value.diskType; this._kmsKey = value.kmsKey; } } get diskEncryption() { return this.getStringAttribute('disk_encryption'); } set diskEncryption(value) { this._diskEncryption = value; } resetDiskEncryption() { this._diskEncryption = undefined; } // Temporarily expose input value. Use with caution. get diskEncryptionInput() { return this._diskEncryption; } get diskSizeGb() { return this.getStringAttribute('disk_size_gb'); } set diskSizeGb(value) { this._diskSizeGb = value; } resetDiskSizeGb() { this._diskSizeGb = undefined; } // Temporarily expose input value. Use with caution. get diskSizeGbInput() { return this._diskSizeGb; } get diskType() { return this.getStringAttribute('disk_type'); } set diskType(value) { this._diskType = value; } resetDiskType() { this._diskType = undefined; } // Temporarily expose input value. Use with caution. get diskTypeInput() { return this._diskType; } get kmsKey() { return this.getStringAttribute('kms_key'); } set kmsKey(value) { this._kmsKey = value; } resetKmsKey() { this._kmsKey = undefined; } // Temporarily expose input value. Use with caution. get kmsKeyInput() { return this._kmsKey; } } exports.WorkbenchInstanceGceSetupDataDisksOutputReference = WorkbenchInstanceGceSetupDataDisksOutputReference; _j = JSII_RTTI_SYMBOL_1; WorkbenchInstanceGceSetupDataDisksOutputReference[_j] = { fqn: "@cdktf/provider-google.workbenchInstance.WorkbenchInstanceGceSetupDataDisksOutputReference", version: "14.12.0" }; function workbenchInstanceGceSetupNetworkInterfacesAccessConfigsToTerraform(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 { external_ip: cdktf.stringToTerraform(struct.externalIp), }; } exports.workbenchInstanceGceSetupNetworkInterfacesAccessConfigsToTerraform = workbenchInstanceGceSetupNetworkInterfacesAccessConfigsToTerraform; function workbenchInstanceGceSetupNetworkInterfacesAccessConfigsToHclTerraform(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 = { external_ip: { value: cdktf.stringToHclTerraform(struct.externalIp), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.workbenchInstanceGceSetupNetworkInterfacesAccessConfigsToHclTerraform = workbenchInstanceGceSetupNetworkInterfacesAccessConfigsToHclTerraform; class WorkbenchInstanceGceSetupNetworkInterfacesAccessConfigsOutputReference 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._externalIp !== undefined) { hasAnyValues = true; internalValueResult.externalIp = this._externalIp; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._externalIp = 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._externalIp = value.externalIp; } } get externalIp() { return this.getStringAttribute('external_ip'); } set externalIp(value) { this._externalIp = value; } // Temporarily expose input value. Use with caution. get externalIpInput() { return this._externalIp; } } exports.WorkbenchInstanceGceSetupNetworkInterfacesAccessConfigsOutputReference = WorkbenchInstanceGceSetupNetworkInterfacesAccessConfigsOutputReference; _k = JSII_RTTI_SYMBOL_1; WorkbenchInstanceGceSetupNetworkInterfacesAccessConfigsOutputReference[_k] = { fqn: "@cdktf/provider-google.workbenchInstance.WorkbenchInstanceGceSetupNetworkInterfacesAccessConfigsOutputReference", version: "14.12.0" }; class WorkbenchInstanceGceSetupNetworkInterfacesAccessConfigsList 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 WorkbenchInstanceGceSetupNetworkInterfacesAccessConfigsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.WorkbenchInstanceGceSetupNetworkInterfacesAccessConfigsList = WorkbenchInstanceGceSetupNetworkInterfacesAccessConfigsList; _l = JSII_RTTI_SYMBOL_1; WorkbenchInstanceGceSetupNetworkInterfacesAccessConfigsList[_l] = { fqn: "@cdktf/provider-google.workbenchInstance.WorkbenchInstanceGceSetupNetworkInterfacesAccessConfigsList", version: "14.12.0" }; function workbenchInstanceGceSetupNetworkInterfacesToTerraform(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 { network: cdktf.stringToTerraform(struct.network), nic_type: cdktf.stringToTerraform(struct.nicType), subnet: cdktf.stringToTerraform(struct.subnet), access_configs: cdktf.listMapper(workbenchInstanceGceSetupNetworkInterfacesAccessConfigsToTerraform, true)(struct.accessConfigs), }; } exports.workbenchInstanceGceSetupNetworkInterfacesToTerraform = workbenchInstanceGceSetupNetworkInterfacesToTerraform; function workbenchInstanceGceSetupNetworkInterfacesToHclTerraform(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 = { network: { value: cdktf.stringToHclTerraform(struct.network), isBlock: false, type: "simple", storageClassType: "string", }, nic_type: { value: cdktf.stringToHclTerraform(struct.nicType), isBlock: false, type: "simple", storageClassType: "string", }, subnet: { value: cdktf.stringToHclTerraform(struct.subnet), isBlock: false, type: "simple", storageClassType: "string", }, access_configs: { value: cdktf.listMapperHcl(workbenchInstanceGceSetupNetworkInterfacesAccessConfigsToHclTerraform, true)(struct.accessConfigs), isBlock: true, type: "list", storageClassType: "WorkbenchInstanceGceSetupNetworkInterfacesAccessConfigsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.workbenchInstanceGceSetupNetworkInterfacesToHclTerraform = workbenchInstanceGceSetupNetworkInterfacesToHclTerraform; class WorkbenchInstanceGceSetupNetworkInterfacesOutputReference 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; // access_configs - computed: false, optional: true, required: false this._accessConfigs = new WorkbenchInstanceGceSetupNetworkInterfacesAccessConfigsList(this, "access_configs", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._network !== undefined) { hasAnyValues = true; internalValueResult.network = this._network; } if (this._nicType !== undefined) { hasAnyValues = true; internalValueResult.nicType = this._nicType; } if (this._subnet !== undefined) { hasAnyValues = true; internalValueResult.subnet = this._subnet; } if (this._accessConfigs?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.accessConfigs = this._accessConfigs?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._network = undefined; this._nicType = undefined; this._subnet = undefined; this._accessConfigs.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._network = value.network; this._nicType = value.nicType; this._subnet = value.subnet; this._accessConfigs.internalValue = value.accessConfigs; } } get network() { return this.getStringAttribute('network'); } set network(value) { this._network = value; } resetNetwork() { this._network = undefined; } // Temporarily expose input value. Use with caution. get networkInput() { return this._network; } get nicType() { return this.getStringAttribute('nic_type'); } set nicType(value) { this._nicType = value; } resetNicType() { this._nicType = undefined; } // Temporarily expose input value. Use with caution. get nicTypeInput() { return this._nicType; } get subnet() { return this.getStringAttribute('subnet'); } set subnet(value) { this._subnet = value; } resetSubnet() { this._subnet = undefined; } // Temporarily expose input value. Use with caution. get subnetInput() { return this._subnet; } get accessConfigs() { return this._accessConfigs; } putAccessConfigs(value) { this._accessConfigs.internalValue = value; } resetAccessConfigs() { this._accessConfigs.internalValue = undefined; } // Temporarily expose input value. Use with caution. get accessConfigsInput() { return this._accessConfigs.internalValue; } } exports.WorkbenchInstanceGceSetupNetworkInterfacesOutputReference = WorkbenchInstanceGceSetupNetworkInterfacesOutputReference; _m = JSII_RTTI_SYMBOL_1; WorkbenchInstanceGceSetupNetworkInterfacesOutputReference[_m] = { fqn: "@cdktf/provider-google.workbenchInstance.WorkbenchInstanceGceSetupNetworkInterfacesOutputReference", version: "14.12.0" }; class WorkbenchInstanceGceSetupNetworkInterfacesList 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 WorkbenchInstanceGceSetupNetworkInterfacesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.WorkbenchInstanceGceSetupNetworkInterfacesList = WorkbenchInstanceGceSetupNetworkInterfacesList; _o = JSII_RTTI_SYMBOL_1; WorkbenchInstanceGceSetupNetworkInterfacesList[_o] = { fqn: "@cdktf/provider-google.workbenchInstance.WorkbenchInstanceGceSetupNetworkInterfacesList", version: "14.12.0" }; function workbenchInstanceGceSetupServiceAccountsToTerraform(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 { email: cdktf.stringToTerraform(struct.email), }; } exports.workbenchInstanceGceSetupServiceAccountsToTerraform = workbenchInstanceGceSetupServiceAccountsToTerraform; function workbenchInstanceGceSetupServiceAccountsToHclTerraform(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 = { email: { value: cdktf.stringToHclTerraform(struct.email), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.workbenchInstanceGceSetupServiceAccountsToHclTerraform = workbenchInstanceGceSetupServiceAccountsToHclTerraform; class WorkbenchInstanceGceSetupServiceAccountsOutputReference 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._email !== undefined) { hasAnyValues = true; internalValueResult.email = this._email; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._email = 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._email = value.email; } } get email() { return this.getStringAttribute('email'); } set email(value) { this._email = value; } resetEmail() { this._email = undefined; } // Temporarily expose input value. Use with caution. get emailInput() { return this._email; } // scopes - computed: true, optional: false, required: false get scopes() { return this.getListAttribute('scopes'); } } exports.WorkbenchInstanceGceSetupServiceAccountsOutputReference = WorkbenchInstanceGceSetupServiceAccountsOutputReference; _p = JSII_RTTI_SYMBOL_1; WorkbenchInstanceGceSetupServiceAccountsOutputReference[_p] = { fqn: "@cdktf/provider-google.workbenchInstance.WorkbenchInstanceGceSetupServiceAccountsOutputReference", version: "14.12.0" }; class WorkbenchInstanceGceSetupServiceAccountsList 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 WorkbenchInstanceGceSetupServiceAccountsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.WorkbenchInstanceGceSetupServiceAccountsList = WorkbenchInstanceGceSetupServiceAccountsList; _q = JSII_RTTI_SYMBOL_1; WorkbenchInstanceGceSetupServiceAccountsList[_q]