UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

759 lines 716 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23; Object.defineProperty(exports, "__esModule", { value: true }); exports.AccessContextManagerServicePerimetersServicePerimetersSpecOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersSpecToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersSpecToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersSpecVpcAccessibleServicesOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersSpecVpcAccessibleServicesToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersSpecVpcAccessibleServicesToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesList = exports.AccessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesIngressToOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesIngressToToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesIngressToToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesIngressToOperationsList = exports.AccessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesIngressToOperationsOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesIngressToOperationsToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesIngressToOperationsToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesIngressToOperationsMethodSelectorsList = exports.AccessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesIngressToOperationsMethodSelectorsOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesIngressToOperationsMethodSelectorsToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesIngressToOperationsMethodSelectorsToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesIngressFromOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesIngressFromToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesIngressFromToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesIngressFromSourcesList = exports.AccessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesIngressFromSourcesOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesIngressFromSourcesToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersSpecIngressPoliciesIngressFromSourcesToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesList = exports.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsList = exports.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsList = exports.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesList = exports.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesToTerraform = void 0; exports.AccessContextManagerServicePerimetersServicePerimetersStatusOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersStatusToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersStatusToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersStatusVpcAccessibleServicesOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersStatusVpcAccessibleServicesToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersStatusVpcAccessibleServicesToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesList = exports.AccessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesIngressToOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesIngressToToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesIngressToToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesIngressToOperationsList = exports.AccessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesIngressToOperationsOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesIngressToOperationsToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesIngressToOperationsToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesIngressToOperationsMethodSelectorsList = exports.AccessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesIngressToOperationsMethodSelectorsOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesIngressToOperationsMethodSelectorsToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesIngressToOperationsMethodSelectorsToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesIngressFromOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesIngressFromToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesIngressFromToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesIngressFromSourcesList = exports.AccessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesIngressFromSourcesOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesIngressFromSourcesToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersStatusIngressPoliciesIngressFromSourcesToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesList = exports.AccessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesEgressToOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesEgressToToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesEgressToToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesEgressToOperationsList = exports.AccessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesEgressToOperationsOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesEgressToOperationsToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesEgressToOperationsToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesEgressToOperationsMethodSelectorsList = exports.AccessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesEgressToOperationsMethodSelectorsOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesEgressToOperationsMethodSelectorsToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesEgressToOperationsMethodSelectorsToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesEgressFromOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesEgressFromToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesEgressFromToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesEgressFromSourcesList = exports.AccessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesEgressFromSourcesOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesEgressFromSourcesToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersStatusEgressPoliciesEgressFromSourcesToTerraform = void 0; exports.AccessContextManagerServicePerimeters = exports.AccessContextManagerServicePerimetersTimeoutsOutputReference = exports.accessContextManagerServicePerimetersTimeoutsToHclTerraform = exports.accessContextManagerServicePerimetersTimeoutsToTerraform = exports.AccessContextManagerServicePerimetersServicePerimetersList = exports.AccessContextManagerServicePerimetersServicePerimetersOutputReference = exports.accessContextManagerServicePerimetersServicePerimetersToHclTerraform = exports.accessContextManagerServicePerimetersServicePerimetersToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesToTerraform(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 { access_level: cdktf.stringToTerraform(struct.accessLevel), }; } exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesToTerraform = accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesToTerraform; function accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesToHclTerraform(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 = { access_level: { value: cdktf.stringToHclTerraform(struct.accessLevel), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesToHclTerraform = accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesToHclTerraform; class AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesOutputReference 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._accessLevel !== undefined) { hasAnyValues = true; internalValueResult.accessLevel = this._accessLevel; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._accessLevel = 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._accessLevel = value.accessLevel; } } get accessLevel() { return this.getStringAttribute('access_level'); } set accessLevel(value) { this._accessLevel = value; } resetAccessLevel() { this._accessLevel = undefined; } // Temporarily expose input value. Use with caution. get accessLevelInput() { return this._accessLevel; } } exports.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesOutputReference = AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesOutputReference; _a = JSII_RTTI_SYMBOL_1; AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesOutputReference[_a] = { fqn: "@cdktf/provider-google.accessContextManagerServicePerimeters.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesOutputReference", version: "14.12.0" }; class AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesList 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 AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesList = AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesList; _b = JSII_RTTI_SYMBOL_1; AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesList[_b] = { fqn: "@cdktf/provider-google.accessContextManagerServicePerimeters.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesList", version: "14.12.0" }; function accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromToTerraform(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 { identities: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.identities), identity_type: cdktf.stringToTerraform(struct.identityType), source_restriction: cdktf.stringToTerraform(struct.sourceRestriction), sources: cdktf.listMapper(accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesToTerraform, true)(struct.sources), }; } exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromToTerraform = accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromToTerraform; function accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromToHclTerraform(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 = { identities: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.identities), isBlock: false, type: "set", storageClassType: "stringList", }, identity_type: { value: cdktf.stringToHclTerraform(struct.identityType), isBlock: false, type: "simple", storageClassType: "string", }, source_restriction: { value: cdktf.stringToHclTerraform(struct.sourceRestriction), isBlock: false, type: "simple", storageClassType: "string", }, sources: { value: cdktf.listMapperHcl(accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesToHclTerraform, true)(struct.sources), isBlock: true, type: "list", storageClassType: "AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromToHclTerraform = accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromToHclTerraform; class AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromOutputReference 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; // sources - computed: false, optional: true, required: false this._sources = new AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromSourcesList(this, "sources", false); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._identities !== undefined) { hasAnyValues = true; internalValueResult.identities = this._identities; } if (this._identityType !== undefined) { hasAnyValues = true; internalValueResult.identityType = this._identityType; } if (this._sourceRestriction !== undefined) { hasAnyValues = true; internalValueResult.sourceRestriction = this._sourceRestriction; } if (this._sources?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.sources = this._sources?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._identities = undefined; this._identityType = undefined; this._sourceRestriction = undefined; this._sources.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._identities = value.identities; this._identityType = value.identityType; this._sourceRestriction = value.sourceRestriction; this._sources.internalValue = value.sources; } } get identities() { return cdktf.Fn.tolist(this.getListAttribute('identities')); } set identities(value) { this._identities = value; } resetIdentities() { this._identities = undefined; } // Temporarily expose input value. Use with caution. get identitiesInput() { return this._identities; } get identityType() { return this.getStringAttribute('identity_type'); } set identityType(value) { this._identityType = value; } resetIdentityType() { this._identityType = undefined; } // Temporarily expose input value. Use with caution. get identityTypeInput() { return this._identityType; } get sourceRestriction() { return this.getStringAttribute('source_restriction'); } set sourceRestriction(value) { this._sourceRestriction = value; } resetSourceRestriction() { this._sourceRestriction = undefined; } // Temporarily expose input value. Use with caution. get sourceRestrictionInput() { return this._sourceRestriction; } get sources() { return this._sources; } putSources(value) { this._sources.internalValue = value; } resetSources() { this._sources.internalValue = undefined; } // Temporarily expose input value. Use with caution. get sourcesInput() { return this._sources.internalValue; } } exports.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromOutputReference = AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromOutputReference; _c = JSII_RTTI_SYMBOL_1; AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromOutputReference[_c] = { fqn: "@cdktf/provider-google.accessContextManagerServicePerimeters.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromOutputReference", version: "14.12.0" }; function accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsToTerraform(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 { method: cdktf.stringToTerraform(struct.method), permission: cdktf.stringToTerraform(struct.permission), }; } exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsToTerraform = accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsToTerraform; function accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsToHclTerraform(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 = { method: { value: cdktf.stringToHclTerraform(struct.method), isBlock: false, type: "simple", storageClassType: "string", }, permission: { value: cdktf.stringToHclTerraform(struct.permission), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsToHclTerraform = accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsToHclTerraform; class AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsOutputReference 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._method !== undefined) { hasAnyValues = true; internalValueResult.method = this._method; } if (this._permission !== undefined) { hasAnyValues = true; internalValueResult.permission = this._permission; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._method = undefined; this._permission = 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._method = value.method; this._permission = value.permission; } } get method() { return this.getStringAttribute('method'); } set method(value) { this._method = value; } resetMethod() { this._method = undefined; } // Temporarily expose input value. Use with caution. get methodInput() { return this._method; } get permission() { return this.getStringAttribute('permission'); } set permission(value) { this._permission = value; } resetPermission() { this._permission = undefined; } // Temporarily expose input value. Use with caution. get permissionInput() { return this._permission; } } exports.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsOutputReference = AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsOutputReference; _d = JSII_RTTI_SYMBOL_1; AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsOutputReference[_d] = { fqn: "@cdktf/provider-google.accessContextManagerServicePerimeters.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsOutputReference", version: "14.12.0" }; class AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsList 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 AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsList = AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsList; _e = JSII_RTTI_SYMBOL_1; AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsList[_e] = { fqn: "@cdktf/provider-google.accessContextManagerServicePerimeters.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsList", version: "14.12.0" }; function accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsToTerraform(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 { service_name: cdktf.stringToTerraform(struct.serviceName), method_selectors: cdktf.listMapper(accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsToTerraform, true)(struct.methodSelectors), }; } exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsToTerraform = accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsToTerraform; function accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsToHclTerraform(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 = { service_name: { value: cdktf.stringToHclTerraform(struct.serviceName), isBlock: false, type: "simple", storageClassType: "string", }, method_selectors: { value: cdktf.listMapperHcl(accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsToHclTerraform, true)(struct.methodSelectors), isBlock: true, type: "list", storageClassType: "AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsToHclTerraform = accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsToHclTerraform; class AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsOutputReference 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; // method_selectors - computed: false, optional: true, required: false this._methodSelectors = new AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsMethodSelectorsList(this, "method_selectors", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._serviceName !== undefined) { hasAnyValues = true; internalValueResult.serviceName = this._serviceName; } if (this._methodSelectors?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.methodSelectors = this._methodSelectors?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._serviceName = undefined; this._methodSelectors.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._serviceName = value.serviceName; this._methodSelectors.internalValue = value.methodSelectors; } } get serviceName() { return this.getStringAttribute('service_name'); } set serviceName(value) { this._serviceName = value; } resetServiceName() { this._serviceName = undefined; } // Temporarily expose input value. Use with caution. get serviceNameInput() { return this._serviceName; } get methodSelectors() { return this._methodSelectors; } putMethodSelectors(value) { this._methodSelectors.internalValue = value; } resetMethodSelectors() { this._methodSelectors.internalValue = undefined; } // Temporarily expose input value. Use with caution. get methodSelectorsInput() { return this._methodSelectors.internalValue; } } exports.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsOutputReference = AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsOutputReference; _f = JSII_RTTI_SYMBOL_1; AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsOutputReference[_f] = { fqn: "@cdktf/provider-google.accessContextManagerServicePerimeters.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsOutputReference", version: "14.12.0" }; class AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsList 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 AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsList = AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsList; _g = JSII_RTTI_SYMBOL_1; AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsList[_g] = { fqn: "@cdktf/provider-google.accessContextManagerServicePerimeters.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsList", version: "14.12.0" }; function accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToToTerraform(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_resources: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.externalResources), resources: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.resources), operations: cdktf.listMapper(accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsToTerraform, true)(struct.operations), }; } exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToToTerraform = accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToToTerraform; function accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToToHclTerraform(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_resources: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.externalResources), isBlock: false, type: "set", storageClassType: "stringList", }, resources: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.resources), isBlock: false, type: "set", storageClassType: "stringList", }, operations: { value: cdktf.listMapperHcl(accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsToHclTerraform, true)(struct.operations), isBlock: true, type: "list", storageClassType: "AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToToHclTerraform = accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToToHclTerraform; class AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOutputReference 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; // operations - computed: false, optional: true, required: false this._operations = new AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOperationsList(this, "operations", false); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._externalResources !== undefined) { hasAnyValues = true; internalValueResult.externalResources = this._externalResources; } if (this._resources !== undefined) { hasAnyValues = true; internalValueResult.resources = this._resources; } if (this._operations?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.operations = this._operations?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._externalResources = undefined; this._resources = undefined; this._operations.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._externalResources = value.externalResources; this._resources = value.resources; this._operations.internalValue = value.operations; } } get externalResources() { return cdktf.Fn.tolist(this.getListAttribute('external_resources')); } set externalResources(value) { this._externalResources = value; } resetExternalResources() { this._externalResources = undefined; } // Temporarily expose input value. Use with caution. get externalResourcesInput() { return this._externalResources; } get resources() { return cdktf.Fn.tolist(this.getListAttribute('resources')); } set resources(value) { this._resources = value; } resetResources() { this._resources = undefined; } // Temporarily expose input value. Use with caution. get resourcesInput() { return this._resources; } get operations() { return this._operations; } putOperations(value) { this._operations.internalValue = value; } resetOperations() { this._operations.internalValue = undefined; } // Temporarily expose input value. Use with caution. get operationsInput() { return this._operations.internalValue; } } exports.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOutputReference = AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOutputReference; _h = JSII_RTTI_SYMBOL_1; AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOutputReference[_h] = { fqn: "@cdktf/provider-google.accessContextManagerServicePerimeters.AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOutputReference", version: "14.12.0" }; function accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesToTerraform(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 { egress_from: accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromToTerraform(struct.egressFrom), egress_to: accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToToTerraform(struct.egressTo), }; } exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesToTerraform = accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesToTerraform; function accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesToHclTerraform(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 = { egress_from: { value: accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromToHclTerraform(struct.egressFrom), isBlock: true, type: "list", storageClassType: "AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromList", }, egress_to: { value: accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToToHclTerraform(struct.egressTo), isBlock: true, type: "list", storageClassType: "AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesToHclTerraform = accessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesToHclTerraform; class AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesOutputReference 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; // egress_from - computed: false, optional: true, required: false this._egressFrom = new AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressFromOutputReference(this, "egress_from"); // egress_to - computed: false, optional: true, required: false this._egressTo = new AccessContextManagerServicePerimetersServicePerimetersSpecEgressPoliciesEgressToOutputReference(this, "egress_to"); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._egressFrom?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.egressFrom = this._egressFrom?.internalValue; } if (this._egressTo?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.egressTo = this._egressTo?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._egressFrom.internalValue = undefined; this._egressTo.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._egressFrom.internalValue = v