UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

843 lines 672 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.AccessContextManagerServicePerimeterSpecOutputReference = exports.accessContextManagerServicePerimeterSpecToHclTerraform = exports.accessContextManagerServicePerimeterSpecToTerraform = exports.AccessContextManagerServicePerimeterSpecVpcAccessibleServicesOutputReference = exports.accessContextManagerServicePerimeterSpecVpcAccessibleServicesToHclTerraform = exports.accessContextManagerServicePerimeterSpecVpcAccessibleServicesToTerraform = exports.AccessContextManagerServicePerimeterSpecIngressPoliciesList = exports.AccessContextManagerServicePerimeterSpecIngressPoliciesOutputReference = exports.accessContextManagerServicePerimeterSpecIngressPoliciesToHclTerraform = exports.accessContextManagerServicePerimeterSpecIngressPoliciesToTerraform = exports.AccessContextManagerServicePerimeterSpecIngressPoliciesIngressToOutputReference = exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressToToHclTerraform = exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressToToTerraform = exports.AccessContextManagerServicePerimeterSpecIngressPoliciesIngressToOperationsList = exports.AccessContextManagerServicePerimeterSpecIngressPoliciesIngressToOperationsOutputReference = exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressToOperationsToHclTerraform = exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressToOperationsToTerraform = exports.AccessContextManagerServicePerimeterSpecIngressPoliciesIngressToOperationsMethodSelectorsList = exports.AccessContextManagerServicePerimeterSpecIngressPoliciesIngressToOperationsMethodSelectorsOutputReference = exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressToOperationsMethodSelectorsToHclTerraform = exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressToOperationsMethodSelectorsToTerraform = exports.AccessContextManagerServicePerimeterSpecIngressPoliciesIngressFromOutputReference = exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressFromToHclTerraform = exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressFromToTerraform = exports.AccessContextManagerServicePerimeterSpecIngressPoliciesIngressFromSourcesList = exports.AccessContextManagerServicePerimeterSpecIngressPoliciesIngressFromSourcesOutputReference = exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressFromSourcesToHclTerraform = exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressFromSourcesToTerraform = exports.AccessContextManagerServicePerimeterSpecEgressPoliciesList = exports.AccessContextManagerServicePerimeterSpecEgressPoliciesOutputReference = exports.accessContextManagerServicePerimeterSpecEgressPoliciesToHclTerraform = exports.accessContextManagerServicePerimeterSpecEgressPoliciesToTerraform = exports.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOutputReference = exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressToToHclTerraform = exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressToToTerraform = exports.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsList = exports.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsOutputReference = exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsToHclTerraform = exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsToTerraform = exports.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsList = exports.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsOutputReference = exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsToHclTerraform = exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsToTerraform = exports.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromOutputReference = exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromToHclTerraform = exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromToTerraform = exports.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesList = exports.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesOutputReference = exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesToHclTerraform = exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesToTerraform = void 0; exports.AccessContextManagerServicePerimeterStatusOutputReference = exports.accessContextManagerServicePerimeterStatusToHclTerraform = exports.accessContextManagerServicePerimeterStatusToTerraform = exports.AccessContextManagerServicePerimeterStatusVpcAccessibleServicesOutputReference = exports.accessContextManagerServicePerimeterStatusVpcAccessibleServicesToHclTerraform = exports.accessContextManagerServicePerimeterStatusVpcAccessibleServicesToTerraform = exports.AccessContextManagerServicePerimeterStatusIngressPoliciesList = exports.AccessContextManagerServicePerimeterStatusIngressPoliciesOutputReference = exports.accessContextManagerServicePerimeterStatusIngressPoliciesToHclTerraform = exports.accessContextManagerServicePerimeterStatusIngressPoliciesToTerraform = exports.AccessContextManagerServicePerimeterStatusIngressPoliciesIngressToOutputReference = exports.accessContextManagerServicePerimeterStatusIngressPoliciesIngressToToHclTerraform = exports.accessContextManagerServicePerimeterStatusIngressPoliciesIngressToToTerraform = exports.AccessContextManagerServicePerimeterStatusIngressPoliciesIngressToOperationsList = exports.AccessContextManagerServicePerimeterStatusIngressPoliciesIngressToOperationsOutputReference = exports.accessContextManagerServicePerimeterStatusIngressPoliciesIngressToOperationsToHclTerraform = exports.accessContextManagerServicePerimeterStatusIngressPoliciesIngressToOperationsToTerraform = exports.AccessContextManagerServicePerimeterStatusIngressPoliciesIngressToOperationsMethodSelectorsList = exports.AccessContextManagerServicePerimeterStatusIngressPoliciesIngressToOperationsMethodSelectorsOutputReference = exports.accessContextManagerServicePerimeterStatusIngressPoliciesIngressToOperationsMethodSelectorsToHclTerraform = exports.accessContextManagerServicePerimeterStatusIngressPoliciesIngressToOperationsMethodSelectorsToTerraform = exports.AccessContextManagerServicePerimeterStatusIngressPoliciesIngressFromOutputReference = exports.accessContextManagerServicePerimeterStatusIngressPoliciesIngressFromToHclTerraform = exports.accessContextManagerServicePerimeterStatusIngressPoliciesIngressFromToTerraform = exports.AccessContextManagerServicePerimeterStatusIngressPoliciesIngressFromSourcesList = exports.AccessContextManagerServicePerimeterStatusIngressPoliciesIngressFromSourcesOutputReference = exports.accessContextManagerServicePerimeterStatusIngressPoliciesIngressFromSourcesToHclTerraform = exports.accessContextManagerServicePerimeterStatusIngressPoliciesIngressFromSourcesToTerraform = exports.AccessContextManagerServicePerimeterStatusEgressPoliciesList = exports.AccessContextManagerServicePerimeterStatusEgressPoliciesOutputReference = exports.accessContextManagerServicePerimeterStatusEgressPoliciesToHclTerraform = exports.accessContextManagerServicePerimeterStatusEgressPoliciesToTerraform = exports.AccessContextManagerServicePerimeterStatusEgressPoliciesEgressToOutputReference = exports.accessContextManagerServicePerimeterStatusEgressPoliciesEgressToToHclTerraform = exports.accessContextManagerServicePerimeterStatusEgressPoliciesEgressToToTerraform = exports.AccessContextManagerServicePerimeterStatusEgressPoliciesEgressToOperationsList = exports.AccessContextManagerServicePerimeterStatusEgressPoliciesEgressToOperationsOutputReference = exports.accessContextManagerServicePerimeterStatusEgressPoliciesEgressToOperationsToHclTerraform = exports.accessContextManagerServicePerimeterStatusEgressPoliciesEgressToOperationsToTerraform = exports.AccessContextManagerServicePerimeterStatusEgressPoliciesEgressToOperationsMethodSelectorsList = exports.AccessContextManagerServicePerimeterStatusEgressPoliciesEgressToOperationsMethodSelectorsOutputReference = exports.accessContextManagerServicePerimeterStatusEgressPoliciesEgressToOperationsMethodSelectorsToHclTerraform = exports.accessContextManagerServicePerimeterStatusEgressPoliciesEgressToOperationsMethodSelectorsToTerraform = exports.AccessContextManagerServicePerimeterStatusEgressPoliciesEgressFromOutputReference = exports.accessContextManagerServicePerimeterStatusEgressPoliciesEgressFromToHclTerraform = exports.accessContextManagerServicePerimeterStatusEgressPoliciesEgressFromToTerraform = exports.AccessContextManagerServicePerimeterStatusEgressPoliciesEgressFromSourcesList = exports.AccessContextManagerServicePerimeterStatusEgressPoliciesEgressFromSourcesOutputReference = exports.accessContextManagerServicePerimeterStatusEgressPoliciesEgressFromSourcesToHclTerraform = exports.accessContextManagerServicePerimeterStatusEgressPoliciesEgressFromSourcesToTerraform = void 0; exports.AccessContextManagerServicePerimeter = exports.AccessContextManagerServicePerimeterTimeoutsOutputReference = exports.accessContextManagerServicePerimeterTimeoutsToHclTerraform = exports.accessContextManagerServicePerimeterTimeoutsToTerraform = void 0; 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), }; } exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesToTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesToTerraform; 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", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesToHclTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesToHclTerraform; 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; } 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.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesOutputReference = AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesOutputReference; _a = JSII_RTTI_SYMBOL_1; AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesOutputReference[_a] = { fqn: "@cdktf/provider-google.accessContextManagerServicePerimeter.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressFromSourcesOutputReference", version: "14.12.0" }; 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.12.0" }; 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), }; } exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromToTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromToTerraform; 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)); } exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromToHclTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromToHclTerraform; 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.12.0" }; 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), }; } exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsToTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsToTerraform; 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)); } exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsToHclTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsMethodSelectorsToHclTerraform; 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.12.0" }; 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.12.0" }; 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), }; } exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsToTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsToTerraform; 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)); } exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsToHclTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsToHclTerraform; 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.12.0" }; 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.12.0" }; 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), operations: cdktf.listMapper(accessContextManagerServicePerimeterSpecEgressPoliciesEgressToOperationsToTerraform, true)(struct.operations), }; } exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressToToTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesEgressToToTerraform; 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", }, 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)); } exports.accessContextManagerServicePerimeterSpecEgressPoliciesEgressToToHclTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesEgressToToHclTerraform; 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._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.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOutputReference = AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOutputReference; _h = JSII_RTTI_SYMBOL_1; AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOutputReference[_h] = { fqn: "@cdktf/provider-google.accessContextManagerServicePerimeter.AccessContextManagerServicePerimeterSpecEgressPoliciesEgressToOutputReference", version: "14.12.0" }; 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 { egress_from: accessContextManagerServicePerimeterSpecEgressPoliciesEgressFromToTerraform(struct.egressFrom), egress_to: accessContextManagerServicePerimeterSpecEgressPoliciesEgressToToTerraform(struct.egressTo), }; } exports.accessContextManagerServicePerimeterSpecEgressPoliciesToTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesToTerraform; 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 = { 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)); } exports.accessContextManagerServicePerimeterSpecEgressPoliciesToHclTerraform = accessContextManagerServicePerimeterSpecEgressPoliciesToHclTerraform; 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._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 = value.egressFrom; this._egressTo.internalValue = value.egressTo; } } get egressFrom() { return this._egressFrom; } putEgressFrom(value) { this._egressFrom.internalValue = value; } resetEgressFrom() { this._egressFrom.internalValue = undefined; } // Temporarily expose input value. Use with caution. get egressFromInput() { return this._egressFrom.internalValue; } get egressTo() { return this._egressTo; } putEgressTo(value) { this._egressTo.internalValue = value; } resetEgressTo() { this._egressTo.internalValue = undefined; } // Temporarily expose input value. Use with caution. get egressToInput() { return this._egressTo.internalValue; } } exports.AccessContextManagerServicePerimeterSpecEgressPoliciesOutputReference = AccessContextManagerServicePerimeterSpecEgressPoliciesOutputReference; _j = JSII_RTTI_SYMBOL_1; AccessContextManagerServicePerimeterSpecEgressPoliciesOutputReference[_j] = { fqn: "@cdktf/provider-google.accessContextManagerServicePerimeter.AccessContextManagerServicePerimeterSpecEgressPoliciesOutputReference", version: "14.12.0" }; class AccessContextManagerServicePerimeterSpecEgressPoliciesList 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 AccessContextManagerServicePerimeterSpecEgressPoliciesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.AccessContextManagerServicePerimeterSpecEgressPoliciesList = AccessContextManagerServicePerimeterSpecEgressPoliciesList; _k = JSII_RTTI_SYMBOL_1; AccessContextManagerServicePerimeterSpecEgressPoliciesList[_k] = { fqn: "@cdktf/provider-google.accessContextManagerServicePerimeter.AccessContextManagerServicePerimeterSpecEgressPoliciesList", version: "14.12.0" }; function accessContextManagerServicePerimeterSpecIngressPoliciesIngressFromSourcesToTerraform(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), }; } exports.accessContextManagerServicePerimeterSpecIngressPoliciesIngressFromSourcesToTerraform = accessContextManagerServicePerimeterSpecIngressPoliciesIngressFromSourcesToTerraform; function accessContextManagerServicePerimeterSpecIngressPoliciesIngressFromSourcesToHclTerraform(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.reso