UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

849 lines (848 loc) 701 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; Object.defineProperty(exports, "__esModule", { value: true }); exports.AccessContextManagerServicePerimeter = exports.AccessContextManagerServicePerimeterTimeoutsOutputReference = exports.AccessContextManagerServicePerimeterStatusOutputReference = exports.AccessContextManagerServicePerimeterStatusVpcAccessibleServicesOutputReference = exports.AccessContextManagerServicePerimeterStatusIngressPoliciesList = exports.AccessContextManagerServicePerimeterStatusIngressPoliciesOutputReference = exports.AccessContextManagerServicePerimeterStatusIngressPoliciesIngressToOutputReference = exports.AccessContextManagerServicePerimeterStatusIngressPoliciesIngressToOperationsList = exports.AccessContextManagerServicePerimeterStatusIngressPoliciesIngressToOperationsOutputReference = exports.AccessContextManagerServicePerimeterStatusIngressPoliciesIngressToOperationsMethodSelectorsList = exports.AccessContextManagerServicePerimeterStatusIngressPoliciesIngressToOperationsMethodSelectorsOutputReference = exports.AccessContextManagerServicePerimeterStatusIngressPoliciesIngressFromOutputReference = exports.AccessContextManagerServicePerimeterStatusIngressPoliciesIngressFromSourcesList = exports.AccessContextManagerServicePerimeterStatusIngressPoliciesIngressFromSourcesOutputReference = exports.AccessContextManagerServicePerimeterStatusEgressPoliciesList = exports.AccessContextManagerServicePerimeterStatusEgressPoliciesOutputReference = exports.AccessContextManagerServicePerimeterStatusEgressPoliciesEgressToOutputReference = exports.AccessContextManagerServicePerimeterStatusEgressPoliciesEgressToOperationsList = exports.AccessContextManagerServicePerimeterStatusEgressPoliciesEgressToOperationsOutputReference = exports.AccessContextManagerServicePerimeterStatusEgressPoliciesEgressToOperationsMethodSelectorsList = exports.AccessContextManagerServicePerimeterStatusEgressPoliciesEgressToOperationsMethodSelectorsOutputReference = exports.AccessContextManagerServicePerimeterStatusEgressPoliciesEgressFromOutputReference = exports.AccessContextManagerServicePerimeterStatusEgressPoliciesEgressFromSourcesList = exports.AccessContextManagerServicePerimeterStatusEgressPoliciesEgressFromSourcesOutputReference = exports.AccessContextManagerServicePerimeterSpecOutputReference = exports.AccessContextManagerServicePerimeterSpecVpcAccessibleServicesOutputReference = exports.AccessContextManagerServicePerimeterSpecIngressPoliciesList = exports.AccessContextManagerServicePerimeterSpecIngressPoliciesOutputReference = exports.AccessContextManagerServicePerimeterSpecIngressPoliciesIngressToOutputReference = exports.AccessContextManagerServicePerimeterSpecIngressPoliciesIngressToOperationsList = exports.AccessContextManagerServicePerimeterSpecIngressPoliciesIngressToOperationsOutputReference = exports.AccessContextManagerServicePerimeterSpecIngressPoliciesIngressToOperationsMethodSelectorsList = exports.AccessContextManagerServicePerimeterSpecIngressPoliciesIngressToOperationsMethodSelectorsOutputReference = exports.AccessContextManagerServicePerimeterSpecIngressPoliciesIngressFromOutputReference = exports.AccessContextManagerServicePerimeterSpecIngressPoliciesIngressFromSourcesList = exports.AccessContextManagerServicePerimeterSpecIngressPoliciesIngressFromSourcesOutputReference = exports.AccessContextManagerServicePerimeterSpecEgressPoliciesList = exports.AccessContextManagerServicePerimeterSpecEgressPoliciesOutputReference = exports.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOutputReference = exports.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsList = exports.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsOutputReference = exports.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsList = exports.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsOutputReference = exports.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromOutputReference = exports.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesList = exports.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesOutputReference = void 0; exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesToTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesToTerraform; exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesToHclTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesToHclTerraform; exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromToTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromToTerraform; exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromToHclTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromToHclTerraform; exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsToTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsToTerraform; exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsToHclTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsToHclTerraform; exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsToTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsToTerraform; exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsToHclTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsToHclTerraform; exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressToToTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesEgressToToTerraform; exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressToToHclTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesEgressToToHclTerraform; exports.accessContextManagerServicePerimeterSpecEgressPoliciesToTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesToTerraform; exports.accessContextManagerServicePerimeterSpecEgressPoliciesToHclTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesToHclTerraform; exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressFromSourcesToTerraform = accessContextManagerServicePerimeterSpecIngressPoliciesIngressFromSourcesToTerraform; exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressFromSourcesToHclTerraform = accessContextManagerServicePerimeterSpecIngressPoliciesIngressFromSourcesToHclTerraform; exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressFromToTerraform = accessContextManagerServicePerimeterSpecIngressPoliciesIngressFromToTerraform; exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressFromToHclTerraform = accessContextManagerServicePerimeterSpecIngressPoliciesIngressFromToHclTerraform; exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressToOperationsMethodSelectorsToTerraform = accessContextManagerServicePerimeterSpecIngressPoliciesIngressToOperationsMethodSelectorsToTerraform; exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressToOperationsMethodSelectorsToHclTerraform = accessContextManagerServicePerimeterSpecIngressPoliciesIngressToOperationsMethodSelectorsToHclTerraform; exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressToOperationsToTerraform = accessContextManagerServicePerimeterSpecIngressPoliciesIngressToOperationsToTerraform; exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressToOperationsToHclTerraform = accessContextManagerServicePerimeterSpecIngressPoliciesIngressToOperationsToHclTerraform; exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressToToTerraform = accessContextManagerServicePerimeterSpecIngressPoliciesIngressToToTerraform; exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressToToHclTerraform = accessContextManagerServicePerimeterSpecIngressPoliciesIngressToToHclTerraform; exports.accessContextManagerServicePerimeterSpecIngressPoliciesToTerraform = accessContextManagerServicePerimeterSpecIngressPoliciesToTerraform; exports.accessContextManagerServicePerimeterSpecIngressPoliciesToHclTerraform = accessContextManagerServicePerimeterSpecIngressPoliciesToHclTerraform; exports.accessContextManagerServicePerimeterSpecVpcAccessibleServicesToTerraform = accessContextManagerServicePerimeterSpecVpcAccessibleServicesToTerraform; exports.accessContextManagerServicePerimeterSpecVpcAccessibleServicesToHclTerraform = accessContextManagerServicePerimeterSpecVpcAccessibleServicesToHclTerraform; exports.accessContextManagerServicePerimeterSpecToTerraform = accessContextManagerServicePerimeterSpecToTerraform; exports.accessContextManagerServicePerimeterSpecToHclTerraform = accessContextManagerServicePerimeterSpecToHclTerraform; exports.accessContextManagerServicePerimeterStatusEgressPoliciesEgressFromSourcesToTerraform = accessContextManagerServicePerimeterStatusEgressPoliciesEgressFromSourcesToTerraform; exports.accessContextManagerServicePerimeterStatusEgressPoliciesEgressFromSourcesToHclTerraform = accessContextManagerServicePerimeterStatusEgressPoliciesEgressFromSourcesToHclTerraform; exports.accessContextManagerServicePerimeterStatusEgressPoliciesEgressFromToTerraform = accessContextManagerServicePerimeterStatusEgressPoliciesEgressFromToTerraform; exports.accessContextManagerServicePerimeterStatusEgressPoliciesEgressFromToHclTerraform = accessContextManagerServicePerimeterStatusEgressPoliciesEgressFromToHclTerraform; exports.accessContextManagerServicePerimeterStatusEgressPoliciesEgressToOperationsMethodSelectorsToTerraform = accessContextManagerServicePerimeterStatusEgressPoliciesEgressToOperationsMethodSelectorsToTerraform; exports.accessContextManagerServicePerimeterStatusEgressPoliciesEgressToOperationsMethodSelectorsToHclTerraform = accessContextManagerServicePerimeterStatusEgressPoliciesEgressToOperationsMethodSelectorsToHclTerraform; exports.accessContextManagerServicePerimeterStatusEgressPoliciesEgressToOperationsToTerraform = accessContextManagerServicePerimeterStatusEgressPoliciesEgressToOperationsToTerraform; exports.accessContextManagerServicePerimeterStatusEgressPoliciesEgressToOperationsToHclTerraform = accessContextManagerServicePerimeterStatusEgressPoliciesEgressToOperationsToHclTerraform; exports.accessContextManagerServicePerimeterStatusEgressPoliciesEgressToToTerraform = accessContextManagerServicePerimeterStatusEgressPoliciesEgressToToTerraform; exports.accessContextManagerServicePerimeterStatusEgressPoliciesEgressToToHclTerraform = accessContextManagerServicePerimeterStatusEgressPoliciesEgressToToHclTerraform; exports.accessContextManagerServicePerimeterStatusEgressPoliciesToTerraform = accessContextManagerServicePerimeterStatusEgressPoliciesToTerraform; exports.accessContextManagerServicePerimeterStatusEgressPoliciesToHclTerraform = accessContextManagerServicePerimeterStatusEgressPoliciesToHclTerraform; exports.accessContextManagerServicePerimeterStatusIngressPoliciesIngressFromSourcesToTerraform = accessContextManagerServicePerimeterStatusIngressPoliciesIngressFromSourcesToTerraform; exports.accessContextManagerServicePerimeterStatusIngressPoliciesIngressFromSourcesToHclTerraform = accessContextManagerServicePerimeterStatusIngressPoliciesIngressFromSourcesToHclTerraform; exports.accessContextManagerServicePerimeterStatusIngressPoliciesIngressFromToTerraform = accessContextManagerServicePerimeterStatusIngressPoliciesIngressFromToTerraform; exports.accessContextManagerServicePerimeterStatusIngressPoliciesIngressFromToHclTerraform = accessContextManagerServicePerimeterStatusIngressPoliciesIngressFromToHclTerraform; exports.accessContextManagerServicePerimeterStatusIngressPoliciesIngressToOperationsMethodSelectorsToTerraform = accessContextManagerServicePerimeterStatusIngressPoliciesIngressToOperationsMethodSelectorsToTerraform; exports.accessContextManagerServicePerimeterStatusIngressPoliciesIngressToOperationsMethodSelectorsToHclTerraform = accessContextManagerServicePerimeterStatusIngressPoliciesIngressToOperationsMethodSelectorsToHclTerraform; exports.accessContextManagerServicePerimeterStatusIngressPoliciesIngressToOperationsToTerraform = accessContextManagerServicePerimeterStatusIngressPoliciesIngressToOperationsToTerraform; exports.accessContextManagerServicePerimeterStatusIngressPoliciesIngressToOperationsToHclTerraform = accessContextManagerServicePerimeterStatusIngressPoliciesIngressToOperationsToHclTerraform; exports.accessContextManagerServicePerimeterStatusIngressPoliciesIngressToToTerraform = accessContextManagerServicePerimeterStatusIngressPoliciesIngressToToTerraform; exports.accessContextManagerServicePerimeterStatusIngressPoliciesIngressToToHclTerraform = accessContextManagerServicePerimeterStatusIngressPoliciesIngressToToHclTerraform; exports.accessContextManagerServicePerimeterStatusIngressPoliciesToTerraform = accessContextManagerServicePerimeterStatusIngressPoliciesToTerraform; exports.accessContextManagerServicePerimeterStatusIngressPoliciesToHclTerraform = accessContextManagerServicePerimeterStatusIngressPoliciesToHclTerraform; exports.accessContextManagerServicePerimeterStatusVpcAccessibleServicesToTerraform = accessContextManagerServicePerimeterStatusVpcAccessibleServicesToTerraform; exports.accessContextManagerServicePerimeterStatusVpcAccessibleServicesToHclTerraform = accessContextManagerServicePerimeterStatusVpcAccessibleServicesToHclTerraform; exports.accessContextManagerServicePerimeterStatusToTerraform = accessContextManagerServicePerimeterStatusToTerraform; exports.accessContextManagerServicePerimeterStatusToHclTerraform = accessContextManagerServicePerimeterStatusToHclTerraform; exports.accessContextManagerServicePerimeterTimeoutsToTerraform = accessContextManagerServicePerimeterTimeoutsToTerraform; exports.accessContextManagerServicePerimeterTimeoutsToHclTerraform = accessContextManagerServicePerimeterTimeoutsToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesToTerraform(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), resource: cdktf.stringToTerraform(struct.resource), }; } function accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesToHclTerraform(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", }, resource: { value: cdktf.stringToHclTerraform(struct.resource), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesOutputReference 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; } if (this._resource !== undefined) { hasAnyValues = true; internalValueResult.resource = this._resource; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._accessLevel = undefined; this._resource = 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; this._resource = value.resource; } } 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; } get resource() { return this.getStringAttribute('resource'); } set resource(value) { this._resource = value; } resetResource() { this._resource = undefined; } // Temporarily expose input value. Use with caution. get resourceInput() { return this._resource; } } exports.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesOutputReference = AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesOutputReference; _a = JSII_RTTI_SYMBOL_1; AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesOutputReference[_a] = { fqn: "@cdktf/provider-google.accessContextManagerServicePerimeter.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesOutputReference", version: "14.35.1" }; class AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesList 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 AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesList = AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesList; _b = JSII_RTTI_SYMBOL_1; AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesList[_b] = { fqn: "@cdktf/provider-google.accessContextManagerServicePerimeter.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesList", version: "14.35.1" }; function accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromToTerraform(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(accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesToTerraform, true)(struct.sources), }; } function accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromToHclTerraform(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(accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesToHclTerraform, true)(struct.sources), isBlock: true, type: "list", storageClassType: "AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromOutputReference 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 AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesList(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.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromOutputReference = AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromOutputReference; _c = JSII_RTTI_SYMBOL_1; AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromOutputReference[_c] = { fqn: "@cdktf/provider-google.accessContextManagerServicePerimeter.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromOutputReference", version: "14.35.1" }; function accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsToTerraform(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), }; } function accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsToHclTerraform(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)); } class AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsOutputReference 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.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsOutputReference = AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsOutputReference; _d = JSII_RTTI_SYMBOL_1; AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsOutputReference[_d] = { fqn: "@cdktf/provider-google.accessContextManagerServicePerimeter.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsOutputReference", version: "14.35.1" }; class AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsList 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 AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsList = AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsList; _e = JSII_RTTI_SYMBOL_1; AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsList[_e] = { fqn: "@cdktf/provider-google.accessContextManagerServicePerimeter.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsList", version: "14.35.1" }; function accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsToTerraform(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(accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsToTerraform, true)(struct.methodSelectors), }; } function accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsToHclTerraform(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(accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsToHclTerraform, true)(struct.methodSelectors), isBlock: true, type: "list", storageClassType: "AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsOutputReference 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 AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsList(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.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsOutputReference = AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsOutputReference; _f = JSII_RTTI_SYMBOL_1; AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsOutputReference[_f] = { fqn: "@cdktf/provider-google.accessContextManagerServicePerimeter.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsOutputReference", version: "14.35.1" }; class AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsList 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 AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsList = AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsList; _g = JSII_RTTI_SYMBOL_1; AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsList[_g] = { fqn: "@cdktf/provider-google.accessContextManagerServicePerimeter.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsList", version: "14.35.1" }; function accessContextManagerServicePerimeterSpecEgressPoliciesEgressToToTerraform(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), roles: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.roles), operations: cdktf.listMapper(accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsToTerraform, true)(struct.operations), }; } function accessContextManagerServicePerimeterSpecEgressPoliciesEgressToToHclTerraform(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", }, roles: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.roles), isBlock: false, type: "list", storageClassType: "stringList", }, operations: { value: cdktf.listMapperHcl(accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsToHclTerraform, true)(struct.operations), isBlock: true, type: "list", storageClassType: "AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOutputReference 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 AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsList(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._roles !== undefined) { hasAnyValues = true; internalValueResult.roles = this._roles; } 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._roles = undefined; this._operations.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._externalResources = value.externalResources; this._resources = value.resources; this._roles = value.roles; 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 roles() { return this.getListAttribute('roles'); } set roles(value) { this._roles = value; } resetRoles() { this._roles = undefined; } // Temporarily expose input value. Use with caution. get rolesInput() { return this._roles; } 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.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOutputReference = AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOutputReference; _h = JSII_RTTI_SYMBOL_1; AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOutputReference[_h] = { fqn: "@cdktf/provider-google.accessContextManagerServicePerimeter.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOutputReference", version: "14.35.1" }; function accessContextManagerServicePerimeterSpecEgressPoliciesToTerraform(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 { title: cdktf.stringToTerraform(struct.title), egress_from: accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromToTerraform(struct.egressFrom), egress_to: accessContextManagerServicePerimeterSpecEgressPoliciesEgressToToTerraform(struct.egressTo), }; } function accessContextManagerServicePerimeterSpecEgressPoliciesToHclTerraform(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 = { title: { value: cdktf.stringToHclTerraform(struct.title), isBlock: false, type: "simple", storageClassType: "string", }, egress_from: { value: accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromToHclTerraform(struct.egressFrom), isBlock: true, type: "list", storageClassType: "AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromList", }, egress_to: { value: accessContextManagerServicePerimeterSpecEgressPoliciesEgressToToHclTerraform(struct.egressTo), isBlock: true, type: "list", storageClassType: "AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class AccessContextManagerServicePerimeterSpecEgressPoliciesOutputReference 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 AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromOutputReference(this, "egress_from"); // egress_to - computed: false, optional: true, required: false this._egressTo = new AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOutputReference(this, "egress_to"); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._title !== undefined) { hasAnyValues = true; internalValueResult.title = this._title; } if (this._egressFrom?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.egressFrom = this._egressFrom?.internalValue; } if (this._egressTo?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.egressTo = this._egressTo?.internalValue;