UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

1,058 lines 233 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o; Object.defineProperty(exports, "__esModule", { value: true }); exports.AccessContextManagerAccessLevel = exports.AccessContextManagerAccessLevelTimeoutsOutputReference = exports.accessContextManagerAccessLevelTimeoutsToHclTerraform = exports.accessContextManagerAccessLevelTimeoutsToTerraform = exports.AccessContextManagerAccessLevelCustomOutputReference = exports.accessContextManagerAccessLevelCustomToHclTerraform = exports.accessContextManagerAccessLevelCustomToTerraform = exports.AccessContextManagerAccessLevelCustomExprOutputReference = exports.accessContextManagerAccessLevelCustomExprToHclTerraform = exports.accessContextManagerAccessLevelCustomExprToTerraform = exports.AccessContextManagerAccessLevelBasicOutputReference = exports.accessContextManagerAccessLevelBasicToHclTerraform = exports.accessContextManagerAccessLevelBasicToTerraform = exports.AccessContextManagerAccessLevelBasicConditionsList = exports.AccessContextManagerAccessLevelBasicConditionsOutputReference = exports.accessContextManagerAccessLevelBasicConditionsToHclTerraform = exports.accessContextManagerAccessLevelBasicConditionsToTerraform = exports.AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesList = exports.AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesOutputReference = exports.accessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesToHclTerraform = exports.accessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesToTerraform = exports.AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesVpcSubnetworkOutputReference = exports.accessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesVpcSubnetworkToHclTerraform = exports.accessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesVpcSubnetworkToTerraform = exports.AccessContextManagerAccessLevelBasicConditionsDevicePolicyOutputReference = exports.accessContextManagerAccessLevelBasicConditionsDevicePolicyToHclTerraform = exports.accessContextManagerAccessLevelBasicConditionsDevicePolicyToTerraform = exports.AccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsList = exports.AccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsOutputReference = exports.accessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsToHclTerraform = exports.accessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function accessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsToTerraform(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 { minimum_version: cdktf.stringToTerraform(struct.minimumVersion), os_type: cdktf.stringToTerraform(struct.osType), require_verified_chrome_os: cdktf.booleanToTerraform(struct.requireVerifiedChromeOs), }; } exports.accessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsToTerraform = accessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsToTerraform; function accessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsToHclTerraform(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 = { minimum_version: { value: cdktf.stringToHclTerraform(struct.minimumVersion), isBlock: false, type: "simple", storageClassType: "string", }, os_type: { value: cdktf.stringToHclTerraform(struct.osType), isBlock: false, type: "simple", storageClassType: "string", }, require_verified_chrome_os: { value: cdktf.booleanToHclTerraform(struct.requireVerifiedChromeOs), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.accessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsToHclTerraform = accessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsToHclTerraform; class AccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsOutputReference 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._minimumVersion !== undefined) { hasAnyValues = true; internalValueResult.minimumVersion = this._minimumVersion; } if (this._osType !== undefined) { hasAnyValues = true; internalValueResult.osType = this._osType; } if (this._requireVerifiedChromeOs !== undefined) { hasAnyValues = true; internalValueResult.requireVerifiedChromeOs = this._requireVerifiedChromeOs; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._minimumVersion = undefined; this._osType = undefined; this._requireVerifiedChromeOs = 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._minimumVersion = value.minimumVersion; this._osType = value.osType; this._requireVerifiedChromeOs = value.requireVerifiedChromeOs; } } get minimumVersion() { return this.getStringAttribute('minimum_version'); } set minimumVersion(value) { this._minimumVersion = value; } resetMinimumVersion() { this._minimumVersion = undefined; } // Temporarily expose input value. Use with caution. get minimumVersionInput() { return this._minimumVersion; } get osType() { return this.getStringAttribute('os_type'); } set osType(value) { this._osType = value; } // Temporarily expose input value. Use with caution. get osTypeInput() { return this._osType; } get requireVerifiedChromeOs() { return this.getBooleanAttribute('require_verified_chrome_os'); } set requireVerifiedChromeOs(value) { this._requireVerifiedChromeOs = value; } resetRequireVerifiedChromeOs() { this._requireVerifiedChromeOs = undefined; } // Temporarily expose input value. Use with caution. get requireVerifiedChromeOsInput() { return this._requireVerifiedChromeOs; } } exports.AccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsOutputReference = AccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsOutputReference; _a = JSII_RTTI_SYMBOL_1; AccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsOutputReference[_a] = { fqn: "@cdktf/provider-google.accessContextManagerAccessLevel.AccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsOutputReference", version: "14.12.0" }; class AccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsList 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 AccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.AccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsList = AccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsList; _b = JSII_RTTI_SYMBOL_1; AccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsList[_b] = { fqn: "@cdktf/provider-google.accessContextManagerAccessLevel.AccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsList", version: "14.12.0" }; function accessContextManagerAccessLevelBasicConditionsDevicePolicyToTerraform(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 { allowed_device_management_levels: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.allowedDeviceManagementLevels), allowed_encryption_statuses: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.allowedEncryptionStatuses), require_admin_approval: cdktf.booleanToTerraform(struct.requireAdminApproval), require_corp_owned: cdktf.booleanToTerraform(struct.requireCorpOwned), require_screen_lock: cdktf.booleanToTerraform(struct.requireScreenLock), os_constraints: cdktf.listMapper(accessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsToTerraform, true)(struct.osConstraints), }; } exports.accessContextManagerAccessLevelBasicConditionsDevicePolicyToTerraform = accessContextManagerAccessLevelBasicConditionsDevicePolicyToTerraform; function accessContextManagerAccessLevelBasicConditionsDevicePolicyToHclTerraform(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 = { allowed_device_management_levels: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.allowedDeviceManagementLevels), isBlock: false, type: "list", storageClassType: "stringList", }, allowed_encryption_statuses: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.allowedEncryptionStatuses), isBlock: false, type: "list", storageClassType: "stringList", }, require_admin_approval: { value: cdktf.booleanToHclTerraform(struct.requireAdminApproval), isBlock: false, type: "simple", storageClassType: "boolean", }, require_corp_owned: { value: cdktf.booleanToHclTerraform(struct.requireCorpOwned), isBlock: false, type: "simple", storageClassType: "boolean", }, require_screen_lock: { value: cdktf.booleanToHclTerraform(struct.requireScreenLock), isBlock: false, type: "simple", storageClassType: "boolean", }, os_constraints: { value: cdktf.listMapperHcl(accessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsToHclTerraform, true)(struct.osConstraints), isBlock: true, type: "list", storageClassType: "AccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.accessContextManagerAccessLevelBasicConditionsDevicePolicyToHclTerraform = accessContextManagerAccessLevelBasicConditionsDevicePolicyToHclTerraform; class AccessContextManagerAccessLevelBasicConditionsDevicePolicyOutputReference 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; // os_constraints - computed: false, optional: true, required: false this._osConstraints = new AccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsList(this, "os_constraints", false); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._allowedDeviceManagementLevels !== undefined) { hasAnyValues = true; internalValueResult.allowedDeviceManagementLevels = this._allowedDeviceManagementLevels; } if (this._allowedEncryptionStatuses !== undefined) { hasAnyValues = true; internalValueResult.allowedEncryptionStatuses = this._allowedEncryptionStatuses; } if (this._requireAdminApproval !== undefined) { hasAnyValues = true; internalValueResult.requireAdminApproval = this._requireAdminApproval; } if (this._requireCorpOwned !== undefined) { hasAnyValues = true; internalValueResult.requireCorpOwned = this._requireCorpOwned; } if (this._requireScreenLock !== undefined) { hasAnyValues = true; internalValueResult.requireScreenLock = this._requireScreenLock; } if (this._osConstraints?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.osConstraints = this._osConstraints?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._allowedDeviceManagementLevels = undefined; this._allowedEncryptionStatuses = undefined; this._requireAdminApproval = undefined; this._requireCorpOwned = undefined; this._requireScreenLock = undefined; this._osConstraints.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._allowedDeviceManagementLevels = value.allowedDeviceManagementLevels; this._allowedEncryptionStatuses = value.allowedEncryptionStatuses; this._requireAdminApproval = value.requireAdminApproval; this._requireCorpOwned = value.requireCorpOwned; this._requireScreenLock = value.requireScreenLock; this._osConstraints.internalValue = value.osConstraints; } } get allowedDeviceManagementLevels() { return this.getListAttribute('allowed_device_management_levels'); } set allowedDeviceManagementLevels(value) { this._allowedDeviceManagementLevels = value; } resetAllowedDeviceManagementLevels() { this._allowedDeviceManagementLevels = undefined; } // Temporarily expose input value. Use with caution. get allowedDeviceManagementLevelsInput() { return this._allowedDeviceManagementLevels; } get allowedEncryptionStatuses() { return this.getListAttribute('allowed_encryption_statuses'); } set allowedEncryptionStatuses(value) { this._allowedEncryptionStatuses = value; } resetAllowedEncryptionStatuses() { this._allowedEncryptionStatuses = undefined; } // Temporarily expose input value. Use with caution. get allowedEncryptionStatusesInput() { return this._allowedEncryptionStatuses; } get requireAdminApproval() { return this.getBooleanAttribute('require_admin_approval'); } set requireAdminApproval(value) { this._requireAdminApproval = value; } resetRequireAdminApproval() { this._requireAdminApproval = undefined; } // Temporarily expose input value. Use with caution. get requireAdminApprovalInput() { return this._requireAdminApproval; } get requireCorpOwned() { return this.getBooleanAttribute('require_corp_owned'); } set requireCorpOwned(value) { this._requireCorpOwned = value; } resetRequireCorpOwned() { this._requireCorpOwned = undefined; } // Temporarily expose input value. Use with caution. get requireCorpOwnedInput() { return this._requireCorpOwned; } get requireScreenLock() { return this.getBooleanAttribute('require_screen_lock'); } set requireScreenLock(value) { this._requireScreenLock = value; } resetRequireScreenLock() { this._requireScreenLock = undefined; } // Temporarily expose input value. Use with caution. get requireScreenLockInput() { return this._requireScreenLock; } get osConstraints() { return this._osConstraints; } putOsConstraints(value) { this._osConstraints.internalValue = value; } resetOsConstraints() { this._osConstraints.internalValue = undefined; } // Temporarily expose input value. Use with caution. get osConstraintsInput() { return this._osConstraints.internalValue; } } exports.AccessContextManagerAccessLevelBasicConditionsDevicePolicyOutputReference = AccessContextManagerAccessLevelBasicConditionsDevicePolicyOutputReference; _c = JSII_RTTI_SYMBOL_1; AccessContextManagerAccessLevelBasicConditionsDevicePolicyOutputReference[_c] = { fqn: "@cdktf/provider-google.accessContextManagerAccessLevel.AccessContextManagerAccessLevelBasicConditionsDevicePolicyOutputReference", version: "14.12.0" }; function accessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesVpcSubnetworkToTerraform(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), vpc_ip_subnetworks: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.vpcIpSubnetworks), }; } exports.accessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesVpcSubnetworkToTerraform = accessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesVpcSubnetworkToTerraform; function accessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesVpcSubnetworkToHclTerraform(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", }, vpc_ip_subnetworks: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.vpcIpSubnetworks), isBlock: false, type: "list", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.accessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesVpcSubnetworkToHclTerraform = accessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesVpcSubnetworkToHclTerraform; class AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesVpcSubnetworkOutputReference 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._network !== undefined) { hasAnyValues = true; internalValueResult.network = this._network; } if (this._vpcIpSubnetworks !== undefined) { hasAnyValues = true; internalValueResult.vpcIpSubnetworks = this._vpcIpSubnetworks; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._network = undefined; this._vpcIpSubnetworks = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._network = value.network; this._vpcIpSubnetworks = value.vpcIpSubnetworks; } } get network() { return this.getStringAttribute('network'); } set network(value) { this._network = value; } // Temporarily expose input value. Use with caution. get networkInput() { return this._network; } get vpcIpSubnetworks() { return this.getListAttribute('vpc_ip_subnetworks'); } set vpcIpSubnetworks(value) { this._vpcIpSubnetworks = value; } resetVpcIpSubnetworks() { this._vpcIpSubnetworks = undefined; } // Temporarily expose input value. Use with caution. get vpcIpSubnetworksInput() { return this._vpcIpSubnetworks; } } exports.AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesVpcSubnetworkOutputReference = AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesVpcSubnetworkOutputReference; _d = JSII_RTTI_SYMBOL_1; AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesVpcSubnetworkOutputReference[_d] = { fqn: "@cdktf/provider-google.accessContextManagerAccessLevel.AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesVpcSubnetworkOutputReference", version: "14.12.0" }; function accessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesToTerraform(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 { vpc_subnetwork: accessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesVpcSubnetworkToTerraform(struct.vpcSubnetwork), }; } exports.accessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesToTerraform = accessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesToTerraform; function accessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesToHclTerraform(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 = { vpc_subnetwork: { value: accessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesVpcSubnetworkToHclTerraform(struct.vpcSubnetwork), isBlock: true, type: "list", storageClassType: "AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesVpcSubnetworkList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.accessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesToHclTerraform = accessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesToHclTerraform; class AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesOutputReference 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; // vpc_subnetwork - computed: false, optional: true, required: false this._vpcSubnetwork = new AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesVpcSubnetworkOutputReference(this, "vpc_subnetwork"); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._vpcSubnetwork?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.vpcSubnetwork = this._vpcSubnetwork?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._vpcSubnetwork.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._vpcSubnetwork.internalValue = value.vpcSubnetwork; } } get vpcSubnetwork() { return this._vpcSubnetwork; } putVpcSubnetwork(value) { this._vpcSubnetwork.internalValue = value; } resetVpcSubnetwork() { this._vpcSubnetwork.internalValue = undefined; } // Temporarily expose input value. Use with caution. get vpcSubnetworkInput() { return this._vpcSubnetwork.internalValue; } } exports.AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesOutputReference = AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesOutputReference; _e = JSII_RTTI_SYMBOL_1; AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesOutputReference[_e] = { fqn: "@cdktf/provider-google.accessContextManagerAccessLevel.AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesOutputReference", version: "14.12.0" }; class AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesList 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 AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesList = AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesList; _f = JSII_RTTI_SYMBOL_1; AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesList[_f] = { fqn: "@cdktf/provider-google.accessContextManagerAccessLevel.AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesList", version: "14.12.0" }; function accessContextManagerAccessLevelBasicConditionsToTerraform(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 { ip_subnetworks: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.ipSubnetworks), members: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.members), negate: cdktf.booleanToTerraform(struct.negate), regions: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.regions), required_access_levels: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.requiredAccessLevels), device_policy: accessContextManagerAccessLevelBasicConditionsDevicePolicyToTerraform(struct.devicePolicy), vpc_network_sources: cdktf.listMapper(accessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesToTerraform, true)(struct.vpcNetworkSources), }; } exports.accessContextManagerAccessLevelBasicConditionsToTerraform = accessContextManagerAccessLevelBasicConditionsToTerraform; function accessContextManagerAccessLevelBasicConditionsToHclTerraform(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 = { ip_subnetworks: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.ipSubnetworks), isBlock: false, type: "list", storageClassType: "stringList", }, members: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.members), isBlock: false, type: "list", storageClassType: "stringList", }, negate: { value: cdktf.booleanToHclTerraform(struct.negate), isBlock: false, type: "simple", storageClassType: "boolean", }, regions: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.regions), isBlock: false, type: "list", storageClassType: "stringList", }, required_access_levels: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.requiredAccessLevels), isBlock: false, type: "list", storageClassType: "stringList", }, device_policy: { value: accessContextManagerAccessLevelBasicConditionsDevicePolicyToHclTerraform(struct.devicePolicy), isBlock: true, type: "list", storageClassType: "AccessContextManagerAccessLevelBasicConditionsDevicePolicyList", }, vpc_network_sources: { value: cdktf.listMapperHcl(accessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesToHclTerraform, true)(struct.vpcNetworkSources), isBlock: true, type: "list", storageClassType: "AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.accessContextManagerAccessLevelBasicConditionsToHclTerraform = accessContextManagerAccessLevelBasicConditionsToHclTerraform; class AccessContextManagerAccessLevelBasicConditionsOutputReference 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; // device_policy - computed: false, optional: true, required: false this._devicePolicy = new AccessContextManagerAccessLevelBasicConditionsDevicePolicyOutputReference(this, "device_policy"); // vpc_network_sources - computed: false, optional: true, required: false this._vpcNetworkSources = new AccessContextManagerAccessLevelBasicConditionsVpcNetworkSourcesList(this, "vpc_network_sources", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._ipSubnetworks !== undefined) { hasAnyValues = true; internalValueResult.ipSubnetworks = this._ipSubnetworks; } if (this._members !== undefined) { hasAnyValues = true; internalValueResult.members = this._members; } if (this._negate !== undefined) { hasAnyValues = true; internalValueResult.negate = this._negate; } if (this._regions !== undefined) { hasAnyValues = true; internalValueResult.regions = this._regions; } if (this._requiredAccessLevels !== undefined) { hasAnyValues = true; internalValueResult.requiredAccessLevels = this._requiredAccessLevels; } if (this._devicePolicy?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.devicePolicy = this._devicePolicy?.internalValue; } if (this._vpcNetworkSources?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.vpcNetworkSources = this._vpcNetworkSources?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._ipSubnetworks = undefined; this._members = undefined; this._negate = undefined; this._regions = undefined; this._requiredAccessLevels = undefined; this._devicePolicy.internalValue = undefined; this._vpcNetworkSources.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._ipSubnetworks = value.ipSubnetworks; this._members = value.members; this._negate = value.negate; this._regions = value.regions; this._requiredAccessLevels = value.requiredAccessLevels; this._devicePolicy.internalValue = value.devicePolicy; this._vpcNetworkSources.internalValue = value.vpcNetworkSources; } } get ipSubnetworks() { return this.getListAttribute('ip_subnetworks'); } set ipSubnetworks(value) { this._ipSubnetworks = value; } resetIpSubnetworks() { this._ipSubnetworks = undefined; } // Temporarily expose input value. Use with caution. get ipSubnetworksInput() { return this._ipSubnetworks; } get members() { return this.getListAttribute('members'); } set members(value) { this._members = value; } resetMembers() { this._members = undefined; } // Temporarily expose input value. Use with caution. get membersInput() { return this._members; } get negate() { return this.getBooleanAttribute('negate'); } set negate(value) { this._negate = value; } resetNegate() { this._negate = undefined; } // Temporarily expose input value. Use with caution. get negateInput() { return this._negate; } get regions() { return this.getListAttribute('regions'); } set regions(value) { this._regions = value; } resetRegions() { this._regions = undefined; } // Temporarily expose input value. Use with caution. get regionsInput() { return this._regions; } get requiredAccessLevels() { return this.getListAttribute('required_access_levels'); } set requiredAccessLevels(value) { this._requiredAccessLevels = value; } resetRequiredAccessLevels() { this._requiredAccessLevels = undefined; } // Temporarily expose input value. Use with caution. get requiredAccessLevelsInput() { return this._requiredAccessLevels; } get devicePolicy() { return this._devicePolicy; } putDevicePolicy(value) { this._devicePolicy.internalValue = value; } resetDevicePolicy() { this._devicePolicy.internalValue = undefined; } // Temporarily expose input value. Use with caution. get devicePolicyInput() { return this._devicePolicy.internalValue; } get vpcNetworkSources() { return this._vpcNetworkSources; } putVpcNetworkSources(value) { this._vpcNetworkSources.internalValue = value; } resetVpcNetworkSources() { this._vpcNetworkSources.internalValue = undefined; } // Temporarily expose input value. Use with caution. get vpcNetworkSourcesInput() { return this._vpcNetworkSources.internalValue; } } exports.AccessContextManagerAccessLevelBasicConditionsOutputReference = AccessContextManagerAccessLevelBasicConditionsOutputReference; _g = JSII_RTTI_SYMBOL_1; AccessContextManagerAccessLevelBasicConditionsOutputReference[_g] = { fqn: "@cdktf/provider-google.accessContextManagerAccessLevel.AccessContextManagerAccessLevelBasicConditionsOutputReference", version: "14.12.0" }; class AccessContextManagerAccessLevelBasicConditionsList 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 AccessContextManagerAccessLevelBasicConditionsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.AccessContextManagerAccessLevelBasicConditionsList = AccessContextManagerAccessLevelBasicConditionsList; _h = JSII_RTTI_SYMBOL_1; AccessContextManagerAccessLevelBasicConditionsList[_h] = { fqn: "@cdktf/provider-google.accessContextManagerAccessLevel.AccessContextManagerAccessLevelBasicConditionsList", version: "14.12.0" }; function accessContextManagerAccessLevelBasicToTerraform(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 { combining_function: cdktf.stringToTerraform(struct.combiningFunction), conditions: cdktf.listMapper(accessContextManagerAccessLevelBasicConditionsToTerraform, true)(struct.conditions), }; } exports.accessContextManagerAccessLevelBasicToTerraform = accessContextManagerAccessLevelBasicToTerraform; function accessContextManagerAccessLevelBasicToHclTerraform(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 = { combining_function: { value: cdktf.stringToHclTerraform(struct.combiningFunction), isBlock: false, type: "simple", storageClassType: "string", }, conditions: { value: cdktf.listMapperHcl(accessContextManagerAccessLevelBasicConditionsToHclTerraform, true)(struct.conditions), isBlock: true, type: "list", storageClassType: "AccessContextManagerAccessLevelBasicConditionsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.accessContextManagerAccessLevelBasicToHclTerraform = accessContextManagerAccessLevelBasicToHclTerraform; class AccessContextManagerAccessLevelBasicOutputReference 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; // conditions - computed: false, optional: false, required: true this._conditions = new AccessContextManagerAccessLevelBasicConditionsList(this, "conditions", false); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._combiningFunction !== undefined) { hasAnyValues = true; internalValueResult.combiningFunction = this._combiningFunction; } if (this._conditions?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.conditions = this._conditions?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._combiningFunction = undefined; this._conditions.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._combiningFunction = value.combiningFunction; this._conditions.internalValue = value.conditions; } } get combiningFunction() { return this.getStringAttribute('combining_function'); } set combiningFunction(value) { this._combiningFunction = value; } resetCombiningFunction() { this._combiningFunction = undefined; } // Temporarily expose input value. Use with caution. get combiningFunctionInput() { return this._combiningFunction; } get conditions() { return this._conditions; } putConditions(value) { this._conditions.internalValue = value; } // Temporarily expose input value. Use with caution. get conditionsInput() { return this._conditions.internalValue; } } exports.AccessContextManagerAccessLevelBasicOutputReference = AccessContextManagerAccessLevelBasicOutputReference; _j = JSII_RTTI_SYMBOL_1; AccessContextManagerAccessLevelBasicOutputReference[_j] = { fqn: "@cdktf/provider-google.accessContextManagerAccessLevel.AccessContextManagerAccessLevelBasicOutputReference", version: "14.12.0" }; function accessContextManagerAccessLevelCustomExprToTerraform(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 { description: cdktf.stringToTerraform(struct.description), expression: cdktf.stringToTerraform(struct.expression), location: cdktf.stringToTerraform(struct.location), title: cdktf.stringToTerraform(struct.title), }; } exports.accessContextManagerAccessLevelCustomExprToTerraform = accessContextManagerAccessLevelCustomExprToTerraform; function accessContextManagerAccessLevelCustomExprToHclTerraform(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 = { description: { value: cdktf.stringToHclTerraform(struct.description), isBlock: false, type: "simple", storageClassType: "string", }, expression: { value: cdktf.stringToHclTerraform(struct.expression), isBlock: false, type: "simple", storageClassType: "string", }, location: { value: cdktf.stringToHclTerraform(struct.location), isBlock: false, type: "simple", storageClassType: "string", }, title: { value: cdktf.stringToHclTerraform(struct.title), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.accessContextManagerAccessLevelCustomExprToHclTerraform = accessContextManagerAccessLevelCustomExprToHclTerraform; class AccessContextManagerAccessLevelCustomExprOutputReference 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._description !== undefined) { hasAnyValues = true; internalValueResult.description = this._description; } if (this._expression !== undefined) { hasAnyValues = true; internalValueResult.expression = this._expression; } if (this._location !== undefined) { hasAnyValues = true; internalValueResult.location = this._location; } if (this._title !== undefined) { hasAnyValues = true; internalValueResult.title = this._title; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._description = undefined; this._expression = undefined; this._location = undefined; this._title = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._description = value.description; this._expression = value.expression; this._location = value.location; this._title = value.title; } } get description() { return this.getStringAttribute('description'); } set description(value) { this._description = value; } resetDescription() { this._description = undef