UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

1,002 lines (1,001 loc) 253 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q; Object.defineProperty(exports, "__esModule", { value: true }); exports.AccessContextManagerAccessLevels = exports.AccessContextManagerAccessLevelsTimeoutsOutputReference = exports.accessContextManagerAccessLevelsTimeoutsToHclTerraform = exports.accessContextManagerAccessLevelsTimeoutsToTerraform = exports.AccessContextManagerAccessLevelsAccessLevelsList = exports.AccessContextManagerAccessLevelsAccessLevelsOutputReference = exports.accessContextManagerAccessLevelsAccessLevelsToHclTerraform = exports.accessContextManagerAccessLevelsAccessLevelsToTerraform = exports.AccessContextManagerAccessLevelsAccessLevelsCustomOutputReference = exports.accessContextManagerAccessLevelsAccessLevelsCustomToHclTerraform = exports.accessContextManagerAccessLevelsAccessLevelsCustomToTerraform = exports.AccessContextManagerAccessLevelsAccessLevelsCustomExprOutputReference = exports.accessContextManagerAccessLevelsAccessLevelsCustomExprToHclTerraform = exports.accessContextManagerAccessLevelsAccessLevelsCustomExprToTerraform = exports.AccessContextManagerAccessLevelsAccessLevelsBasicOutputReference = exports.accessContextManagerAccessLevelsAccessLevelsBasicToHclTerraform = exports.accessContextManagerAccessLevelsAccessLevelsBasicToTerraform = exports.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsList = exports.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsOutputReference = exports.accessContextManagerAccessLevelsAccessLevelsBasicConditionsToHclTerraform = exports.accessContextManagerAccessLevelsAccessLevelsBasicConditionsToTerraform = exports.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesList = exports.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesOutputReference = exports.accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesToHclTerraform = exports.accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesToTerraform = exports.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkOutputReference = exports.accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkToHclTerraform = exports.accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkToTerraform = exports.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOutputReference = exports.accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyToHclTerraform = exports.accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyToTerraform = exports.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsList = exports.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsOutputReference = exports.accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsToHclTerraform = exports.accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsToTerraform(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), }; } exports.accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsToTerraform = accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsToTerraform; function accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsToHclTerraform(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", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsToHclTerraform = accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsToHclTerraform; class AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsOutputReference 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; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._minimumVersion = undefined; this._osType = 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; } } 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; } } exports.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsOutputReference = AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsOutputReference; _a = JSII_RTTI_SYMBOL_1; AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsOutputReference[_a] = { fqn: "@cdktf/provider-google.accessContextManagerAccessLevels.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsOutputReference", version: "14.12.0" }; class AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsList 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 AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsList = AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsList; _b = JSII_RTTI_SYMBOL_1; AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsList[_b] = { fqn: "@cdktf/provider-google.accessContextManagerAccessLevels.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsList", version: "14.12.0" }; function accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyToTerraform(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(accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsToTerraform, true)(struct.osConstraints), }; } exports.accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyToTerraform = accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyToTerraform; function accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyToHclTerraform(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(accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsToHclTerraform, true)(struct.osConstraints), isBlock: true, type: "list", storageClassType: "AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyToHclTerraform = accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyToHclTerraform; class AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOutputReference 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 AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOsConstraintsList(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.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOutputReference = AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOutputReference; _c = JSII_RTTI_SYMBOL_1; AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOutputReference[_c] = { fqn: "@cdktf/provider-google.accessContextManagerAccessLevels.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOutputReference", version: "14.12.0" }; function accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkToTerraform(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.accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkToTerraform = accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkToTerraform; function accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkToHclTerraform(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.accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkToHclTerraform = accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkToHclTerraform; class AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkOutputReference 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.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkOutputReference = AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkOutputReference; _d = JSII_RTTI_SYMBOL_1; AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkOutputReference[_d] = { fqn: "@cdktf/provider-google.accessContextManagerAccessLevels.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkOutputReference", version: "14.12.0" }; function accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesToTerraform(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: accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkToTerraform(struct.vpcSubnetwork), }; } exports.accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesToTerraform = accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesToTerraform; function accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesToHclTerraform(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: accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkToHclTerraform(struct.vpcSubnetwork), isBlock: true, type: "list", storageClassType: "AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesToHclTerraform = accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesToHclTerraform; class AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesOutputReference 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 AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesVpcSubnetworkOutputReference(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.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesOutputReference = AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesOutputReference; _e = JSII_RTTI_SYMBOL_1; AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesOutputReference[_e] = { fqn: "@cdktf/provider-google.accessContextManagerAccessLevels.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesOutputReference", version: "14.12.0" }; class AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesList 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 AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesList = AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesList; _f = JSII_RTTI_SYMBOL_1; AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesList[_f] = { fqn: "@cdktf/provider-google.accessContextManagerAccessLevels.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesList", version: "14.12.0" }; function accessContextManagerAccessLevelsAccessLevelsBasicConditionsToTerraform(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: accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyToTerraform(struct.devicePolicy), vpc_network_sources: cdktf.listMapper(accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesToTerraform, true)(struct.vpcNetworkSources), }; } exports.accessContextManagerAccessLevelsAccessLevelsBasicConditionsToTerraform = accessContextManagerAccessLevelsAccessLevelsBasicConditionsToTerraform; function accessContextManagerAccessLevelsAccessLevelsBasicConditionsToHclTerraform(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: accessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyToHclTerraform(struct.devicePolicy), isBlock: true, type: "list", storageClassType: "AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyList", }, vpc_network_sources: { value: cdktf.listMapperHcl(accessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesToHclTerraform, true)(struct.vpcNetworkSources), isBlock: true, type: "list", storageClassType: "AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.accessContextManagerAccessLevelsAccessLevelsBasicConditionsToHclTerraform = accessContextManagerAccessLevelsAccessLevelsBasicConditionsToHclTerraform; class AccessContextManagerAccessLevelsAccessLevelsBasicConditionsOutputReference 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 AccessContextManagerAccessLevelsAccessLevelsBasicConditionsDevicePolicyOutputReference(this, "device_policy"); // vpc_network_sources - computed: false, optional: true, required: false this._vpcNetworkSources = new AccessContextManagerAccessLevelsAccessLevelsBasicConditionsVpcNetworkSourcesList(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.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsOutputReference = AccessContextManagerAccessLevelsAccessLevelsBasicConditionsOutputReference; _g = JSII_RTTI_SYMBOL_1; AccessContextManagerAccessLevelsAccessLevelsBasicConditionsOutputReference[_g] = { fqn: "@cdktf/provider-google.accessContextManagerAccessLevels.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsOutputReference", version: "14.12.0" }; class AccessContextManagerAccessLevelsAccessLevelsBasicConditionsList 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 AccessContextManagerAccessLevelsAccessLevelsBasicConditionsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsList = AccessContextManagerAccessLevelsAccessLevelsBasicConditionsList; _h = JSII_RTTI_SYMBOL_1; AccessContextManagerAccessLevelsAccessLevelsBasicConditionsList[_h] = { fqn: "@cdktf/provider-google.accessContextManagerAccessLevels.AccessContextManagerAccessLevelsAccessLevelsBasicConditionsList", version: "14.12.0" }; function accessContextManagerAccessLevelsAccessLevelsBasicToTerraform(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(accessContextManagerAccessLevelsAccessLevelsBasicConditionsToTerraform, true)(struct.conditions), }; } exports.accessContextManagerAccessLevelsAccessLevelsBasicToTerraform = accessContextManagerAccessLevelsAccessLevelsBasicToTerraform; function accessContextManagerAccessLevelsAccessLevelsBasicToHclTerraform(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(accessContextManagerAccessLevelsAccessLevelsBasicConditionsToHclTerraform, true)(struct.conditions), isBlock: true, type: "list", storageClassType: "AccessContextManagerAccessLevelsAccessLevelsBasicConditionsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.accessContextManagerAccessLevelsAccessLevelsBasicToHclTerraform = accessContextManagerAccessLevelsAccessLevelsBasicToHclTerraform; class AccessContextManagerAccessLevelsAccessLevelsBasicOutputReference 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 AccessContextManagerAccessLevelsAccessLevelsBasicConditionsList(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.AccessContextManagerAccessLevelsAccessLevelsBasicOutputReference = AccessContextManagerAccessLevelsAccessLevelsBasicOutputReference; _j = JSII_RTTI_SYMBOL_1; AccessContextManagerAccessLevelsAccessLevelsBasicOutputReference[_j] = { fqn: "@cdktf/provider-google.accessContextManagerAccessLevels.AccessContextManagerAccessLevelsAccessLevelsBasicOutputReference", version: "14.12.0" }; function accessContextManagerAccessLevelsAccessLevelsCustomExprToTerraform(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.accessContextManagerAccessLevelsAccessLevelsCustomExprToTerraform = accessContextManagerAccessLevelsAccessLevelsCustomExprToTerraform; function accessContextManagerAccessLevelsAccessLevelsCustomExprToHclTerraform(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.accessContextManagerAccessLevelsAccessLevelsCustomExprToHclTerraform = accessContextManagerAccessLevelsAccessLevelsCustomExprToHclTerraform; class AccessContextManagerAccessLevelsAccessLevelsCustomExprOutputReference 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;