UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

928 lines 295 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; Object.defineProperty(exports, "__esModule", { value: true }); exports.ComputeRegionNetworkFirewallPolicyWithRules = exports.ComputeRegionNetworkFirewallPolicyWithRulesTimeoutsOutputReference = exports.ComputeRegionNetworkFirewallPolicyWithRulesRuleList = exports.ComputeRegionNetworkFirewallPolicyWithRulesRuleOutputReference = exports.ComputeRegionNetworkFirewallPolicyWithRulesRuleTargetSecureTagList = exports.ComputeRegionNetworkFirewallPolicyWithRulesRuleTargetSecureTagOutputReference = exports.ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchOutputReference = exports.ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagList = exports.ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagOutputReference = exports.ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigList = exports.ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigOutputReference = exports.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesList = exports.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesOutputReference = exports.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesTargetSecureTagList = exports.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesTargetSecureTagOutputReference = exports.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchList = exports.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchOutputReference = exports.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchSrcSecureTagList = exports.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchSrcSecureTagOutputReference = exports.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchLayer4ConfigList = exports.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchLayer4ConfigOutputReference = void 0; exports.computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchLayer4ConfigToTerraform = computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchLayer4ConfigToTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchLayer4ConfigToHclTerraform = computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchLayer4ConfigToHclTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchSrcSecureTagToTerraform = computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchSrcSecureTagToTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchSrcSecureTagToHclTerraform = computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchSrcSecureTagToHclTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchToTerraform = computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchToTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchToHclTerraform = computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchToHclTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesTargetSecureTagToTerraform = computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesTargetSecureTagToTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesTargetSecureTagToHclTerraform = computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesTargetSecureTagToHclTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesToTerraform = computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesToTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesToHclTerraform = computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesToHclTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigToTerraform = computeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigToTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigToHclTerraform = computeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigToHclTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagToTerraform = computeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagToTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagToHclTerraform = computeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagToHclTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesRuleMatchToTerraform = computeRegionNetworkFirewallPolicyWithRulesRuleMatchToTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesRuleMatchToHclTerraform = computeRegionNetworkFirewallPolicyWithRulesRuleMatchToHclTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesRuleTargetSecureTagToTerraform = computeRegionNetworkFirewallPolicyWithRulesRuleTargetSecureTagToTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesRuleTargetSecureTagToHclTerraform = computeRegionNetworkFirewallPolicyWithRulesRuleTargetSecureTagToHclTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesRuleToTerraform = computeRegionNetworkFirewallPolicyWithRulesRuleToTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesRuleToHclTerraform = computeRegionNetworkFirewallPolicyWithRulesRuleToHclTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesTimeoutsToTerraform = computeRegionNetworkFirewallPolicyWithRulesTimeoutsToTerraform; exports.computeRegionNetworkFirewallPolicyWithRulesTimeoutsToHclTerraform = computeRegionNetworkFirewallPolicyWithRulesTimeoutsToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchLayer4ConfigToTerraform(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 {}; } function computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchLayer4ConfigToHclTerraform(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 = {}; return attrs; } class ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchLayer4ConfigOutputReference 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() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; } else { this.isEmptyObject = Object.keys(value).length === 0; } } // ip_protocol - computed: true, optional: false, required: false get ipProtocol() { return this.getStringAttribute('ip_protocol'); } // ports - computed: true, optional: false, required: false get ports() { return this.getListAttribute('ports'); } } exports.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchLayer4ConfigOutputReference = ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchLayer4ConfigOutputReference; _a = JSII_RTTI_SYMBOL_1; ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchLayer4ConfigOutputReference[_a] = { fqn: "@cdktf/provider-google.computeRegionNetworkFirewallPolicyWithRules.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchLayer4ConfigOutputReference", version: "16.3.0" }; class ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchLayer4ConfigList 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 ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchLayer4ConfigOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchLayer4ConfigList = ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchLayer4ConfigList; _b = JSII_RTTI_SYMBOL_1; ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchLayer4ConfigList[_b] = { fqn: "@cdktf/provider-google.computeRegionNetworkFirewallPolicyWithRules.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchLayer4ConfigList", version: "16.3.0" }; function computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchSrcSecureTagToTerraform(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 {}; } function computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchSrcSecureTagToHclTerraform(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 = {}; return attrs; } class ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchSrcSecureTagOutputReference 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() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; } else { this.isEmptyObject = Object.keys(value).length === 0; } } // name - computed: true, optional: false, required: false get name() { return this.getStringAttribute('name'); } // state - computed: true, optional: false, required: false get state() { return this.getStringAttribute('state'); } } exports.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchSrcSecureTagOutputReference = ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchSrcSecureTagOutputReference; _c = JSII_RTTI_SYMBOL_1; ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchSrcSecureTagOutputReference[_c] = { fqn: "@cdktf/provider-google.computeRegionNetworkFirewallPolicyWithRules.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchSrcSecureTagOutputReference", version: "16.3.0" }; class ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchSrcSecureTagList 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 ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchSrcSecureTagOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchSrcSecureTagList = ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchSrcSecureTagList; _d = JSII_RTTI_SYMBOL_1; ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchSrcSecureTagList[_d] = { fqn: "@cdktf/provider-google.computeRegionNetworkFirewallPolicyWithRules.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchSrcSecureTagList", version: "16.3.0" }; function computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchToTerraform(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 {}; } function computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchToHclTerraform(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 = {}; return attrs; } class ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchOutputReference 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; // layer4_config - computed: true, optional: false, required: false this._layer4Config = new ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchLayer4ConfigList(this, "layer4_config", false); // src_secure_tag - computed: true, optional: false, required: false this._srcSecureTag = new ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchSrcSecureTagList(this, "src_secure_tag", false); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; } else { this.isEmptyObject = Object.keys(value).length === 0; } } // dest_address_groups - computed: true, optional: false, required: false get destAddressGroups() { return this.getListAttribute('dest_address_groups'); } // dest_fqdns - computed: true, optional: false, required: false get destFqdns() { return this.getListAttribute('dest_fqdns'); } // dest_ip_ranges - computed: true, optional: false, required: false get destIpRanges() { return this.getListAttribute('dest_ip_ranges'); } // dest_region_codes - computed: true, optional: false, required: false get destRegionCodes() { return this.getListAttribute('dest_region_codes'); } // dest_threat_intelligences - computed: true, optional: false, required: false get destThreatIntelligences() { return this.getListAttribute('dest_threat_intelligences'); } get layer4Config() { return this._layer4Config; } // src_address_groups - computed: true, optional: false, required: false get srcAddressGroups() { return this.getListAttribute('src_address_groups'); } // src_fqdns - computed: true, optional: false, required: false get srcFqdns() { return this.getListAttribute('src_fqdns'); } // src_ip_ranges - computed: true, optional: false, required: false get srcIpRanges() { return this.getListAttribute('src_ip_ranges'); } // src_region_codes - computed: true, optional: false, required: false get srcRegionCodes() { return this.getListAttribute('src_region_codes'); } get srcSecureTag() { return this._srcSecureTag; } // src_threat_intelligences - computed: true, optional: false, required: false get srcThreatIntelligences() { return this.getListAttribute('src_threat_intelligences'); } } exports.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchOutputReference = ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchOutputReference; _e = JSII_RTTI_SYMBOL_1; ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchOutputReference[_e] = { fqn: "@cdktf/provider-google.computeRegionNetworkFirewallPolicyWithRules.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchOutputReference", version: "16.3.0" }; class ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchList 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 ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchList = ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchList; _f = JSII_RTTI_SYMBOL_1; ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchList[_f] = { fqn: "@cdktf/provider-google.computeRegionNetworkFirewallPolicyWithRules.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchList", version: "16.3.0" }; function computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesTargetSecureTagToTerraform(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 {}; } function computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesTargetSecureTagToHclTerraform(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 = {}; return attrs; } class ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesTargetSecureTagOutputReference 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() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; } else { this.isEmptyObject = Object.keys(value).length === 0; } } // name - computed: true, optional: false, required: false get name() { return this.getStringAttribute('name'); } // state - computed: true, optional: false, required: false get state() { return this.getStringAttribute('state'); } } exports.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesTargetSecureTagOutputReference = ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesTargetSecureTagOutputReference; _g = JSII_RTTI_SYMBOL_1; ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesTargetSecureTagOutputReference[_g] = { fqn: "@cdktf/provider-google.computeRegionNetworkFirewallPolicyWithRules.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesTargetSecureTagOutputReference", version: "16.3.0" }; class ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesTargetSecureTagList 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 ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesTargetSecureTagOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesTargetSecureTagList = ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesTargetSecureTagList; _h = JSII_RTTI_SYMBOL_1; ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesTargetSecureTagList[_h] = { fqn: "@cdktf/provider-google.computeRegionNetworkFirewallPolicyWithRules.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesTargetSecureTagList", version: "16.3.0" }; function computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesToTerraform(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 {}; } function computeRegionNetworkFirewallPolicyWithRulesPredefinedRulesToHclTerraform(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 = {}; return attrs; } class ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesOutputReference 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; // match - computed: true, optional: false, required: false this._match = new ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesMatchList(this, "match", false); // target_secure_tag - computed: true, optional: false, required: false this._targetSecureTag = new ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesTargetSecureTagList(this, "target_secure_tag", false); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; } else { this.isEmptyObject = Object.keys(value).length === 0; } } // action - computed: true, optional: false, required: false get action() { return this.getStringAttribute('action'); } // description - computed: true, optional: false, required: false get description() { return this.getStringAttribute('description'); } // direction - computed: true, optional: false, required: false get direction() { return this.getStringAttribute('direction'); } // disabled - computed: true, optional: false, required: false get disabled() { return this.getBooleanAttribute('disabled'); } // enable_logging - computed: true, optional: false, required: false get enableLogging() { return this.getBooleanAttribute('enable_logging'); } get match() { return this._match; } // priority - computed: true, optional: false, required: false get priority() { return this.getNumberAttribute('priority'); } // rule_name - computed: true, optional: false, required: false get ruleName() { return this.getStringAttribute('rule_name'); } // security_profile_group - computed: true, optional: false, required: false get securityProfileGroup() { return this.getStringAttribute('security_profile_group'); } get targetSecureTag() { return this._targetSecureTag; } // target_service_accounts - computed: true, optional: false, required: false get targetServiceAccounts() { return this.getListAttribute('target_service_accounts'); } // tls_inspect - computed: true, optional: false, required: false get tlsInspect() { return this.getBooleanAttribute('tls_inspect'); } } exports.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesOutputReference = ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesOutputReference; _j = JSII_RTTI_SYMBOL_1; ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesOutputReference[_j] = { fqn: "@cdktf/provider-google.computeRegionNetworkFirewallPolicyWithRules.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesOutputReference", version: "16.3.0" }; class ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesList 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 ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesList = ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesList; _k = JSII_RTTI_SYMBOL_1; ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesList[_k] = { fqn: "@cdktf/provider-google.computeRegionNetworkFirewallPolicyWithRules.ComputeRegionNetworkFirewallPolicyWithRulesPredefinedRulesList", version: "16.3.0" }; function computeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { ip_protocol: cdktf.stringToTerraform(struct.ipProtocol), ports: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.ports), }; } function computeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { ip_protocol: { value: cdktf.stringToHclTerraform(struct.ipProtocol), isBlock: false, type: "simple", storageClassType: "string", }, ports: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.ports), isBlock: false, type: "list", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigOutputReference 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._ipProtocol !== undefined) { hasAnyValues = true; internalValueResult.ipProtocol = this._ipProtocol; } if (this._ports !== undefined) { hasAnyValues = true; internalValueResult.ports = this._ports; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._ipProtocol = undefined; this._ports = 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._ipProtocol = value.ipProtocol; this._ports = value.ports; } } get ipProtocol() { return this.getStringAttribute('ip_protocol'); } set ipProtocol(value) { this._ipProtocol = value; } // Temporarily expose input value. Use with caution. get ipProtocolInput() { return this._ipProtocol; } get ports() { return this.getListAttribute('ports'); } set ports(value) { this._ports = value; } resetPorts() { this._ports = undefined; } // Temporarily expose input value. Use with caution. get portsInput() { return this._ports; } } exports.ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigOutputReference = ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigOutputReference; _l = JSII_RTTI_SYMBOL_1; ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigOutputReference[_l] = { fqn: "@cdktf/provider-google.computeRegionNetworkFirewallPolicyWithRules.ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigOutputReference", version: "16.3.0" }; class ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigList 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 ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigList = ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigList; _m = JSII_RTTI_SYMBOL_1; ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigList[_m] = { fqn: "@cdktf/provider-google.computeRegionNetworkFirewallPolicyWithRules.ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigList", version: "16.3.0" }; function computeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagToTerraform(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 { name: cdktf.stringToTerraform(struct.name), }; } function computeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagToHclTerraform(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 = { name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagOutputReference 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._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._name = 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._name = value.name; } } get name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } resetName() { this._name = undefined; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } // state - computed: true, optional: false, required: false get state() { return this.getStringAttribute('state'); } } exports.ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagOutputReference = ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagOutputReference; _o = JSII_RTTI_SYMBOL_1; ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagOutputReference[_o] = { fqn: "@cdktf/provider-google.computeRegionNetworkFirewallPolicyWithRules.ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagOutputReference", version: "16.3.0" }; class ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagList 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 ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagList = ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagList; _p = JSII_RTTI_SYMBOL_1; ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagList[_p] = { fqn: "@cdktf/provider-google.computeRegionNetworkFirewallPolicyWithRules.ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagList", version: "16.3.0" }; function computeRegionNetworkFirewallPolicyWithRulesRuleMatchToTerraform(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 { dest_address_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.destAddressGroups), dest_fqdns: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.destFqdns), dest_ip_ranges: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.destIpRanges), dest_region_codes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.destRegionCodes), dest_threat_intelligences: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.destThreatIntelligences), src_address_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.srcAddressGroups), src_fqdns: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.srcFqdns), src_ip_ranges: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.srcIpRanges), src_region_codes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.srcRegionCodes), src_threat_intelligences: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.srcThreatIntelligences), layer4_config: cdktf.listMapper(computeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigToTerraform, true)(struct.layer4Config), src_secure_tag: cdktf.listMapper(computeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagToTerraform, true)(struct.srcSecureTag), }; } function computeRegionNetworkFirewallPolicyWithRulesRuleMatchToHclTerraform(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 = { dest_address_groups: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.destAddressGroups), isBlock: false, type: "list", storageClassType: "stringList", }, dest_fqdns: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.destFqdns), isBlock: false, type: "list", storageClassType: "stringList", }, dest_ip_ranges: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.destIpRanges), isBlock: false, type: "list", storageClassType: "stringList", }, dest_region_codes: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.destRegionCodes), isBlock: false, type: "list", storageClassType: "stringList", }, dest_threat_intelligences: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.destThreatIntelligences), isBlock: false, type: "list", storageClassType: "stringList", }, src_address_groups: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.srcAddressGroups), isBlock: false, type: "list", storageClassType: "stringList", }, src_fqdns: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.srcFqdns), isBlock: false, type: "list", storageClassType: "stringList", }, src_ip_ranges: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.srcIpRanges), isBlock: false, type: "list", storageClassType: "stringList", }, src_region_codes: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.srcRegionCodes), isBlock: false, type: "list", storageClassType: "stringList", }, src_threat_intelligences: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.srcThreatIntelligences), isBlock: false, type: "list", storageClassType: "stringList", }, layer4_config: { value: cdktf.listMapperHcl(computeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigToHclTerraform, true)(struct.layer4Config), isBlock: true, type: "list", storageClassType: "ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigList", }, src_secure_tag: { value: cdktf.listMapperHcl(computeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagToHclTerraform, true)(struct.srcSecureTag), isBlock: true, type: "list", storageClassType: "ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchOutputReference 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; // layer4_config - computed: false, optional: false, required: true this._layer4Config = new ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigList(this, "layer4_config", false); // src_secure_tag - computed: false, optional: true, required: false this._srcSecureTag = new ComputeRegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagList(this, "src_secure_tag", false); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._destAddressGroups !== undefined) { hasAnyValues = true; internalValueResult.destAddressGroups = this._destAddressGroups; } if (this._destFqdns !== undefined) { hasAnyValues = true; internalValueResult.destFqdns = this._destFqdns; } if (this._destIpRanges !== undefined) { hasAnyValues = true; internalValueResult.destIpRanges = this._destIpRanges; } if (this._destRegionCodes !== undefined) { hasAnyValues = true; internalValueResult.destRegionCodes = this._destRegionCodes; } if (this._destThreatIntelligences !== undefined) { hasAnyValues = true; internalValueResult.destThreatIntelligences = this._destThreatIntelligences; } if (this._srcAddressGroups !== undefined) { hasAnyValues = true; internalValueResult.srcAddressGroups = this._srcAddressGroups; } if (this._srcFqdns !== undefined) { hasAnyValues = true; internalValueResult.srcFqdns = this._srcFqdns; } if (this._srcIpRanges !== undefined) { hasAnyValues = true; internalValueResult.srcIpRanges = this._srcIpRanges; } if (this._srcRegionCodes !== undefined) { hasAnyValues = true; internalValueResult.srcRegionCodes = this._srcRegionCodes; } if (this._srcThreatIntelligences !== undefined) { hasAnyValues = true; internalValueResult.srcThreatIntelligences = this._srcThreatIntelligences; } if (this._layer4Config?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.layer4Config = this._layer4Config?.internalValue; } if (this._srcSecureTag?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.srcSecureTag = this._srcSecureTag?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._destAddressGroups = undefined; this._destFqdns = undefined; this._destIpRanges = undefined; this._destRegionCodes = undefined; this._destThreatIntelligences = undefined; this._srcAddressGroups = undefined; this._srcFqdns = undefined; this._srcIpRanges = undefined; this._srcRegionCodes = undefined; this._srcThreatIntelligences = undefined; this._layer4Config.internalValue = undefined; this._srcSecureTag.internalValue = undefined; } else { this.isEmptyObject = Object.ke