UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

1,084 lines 214 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q; Object.defineProperty(exports, "__esModule", { value: true }); exports.ContainerClusterWorkloadIdentityConfigOutputReference = exports.containerClusterWorkloadIdentityConfigToHclTerraform = exports.containerClusterWorkloadIdentityConfigToTerraform = exports.ContainerClusterVerticalPodAutoscalingOutputReference = exports.containerClusterVerticalPodAutoscalingToHclTerraform = exports.containerClusterVerticalPodAutoscalingToTerraform = exports.ContainerClusterTimeoutsOutputReference = exports.containerClusterTimeoutsToHclTerraform = exports.containerClusterTimeoutsToTerraform = exports.ContainerClusterServiceExternalIpsConfigOutputReference = exports.containerClusterServiceExternalIpsConfigToHclTerraform = exports.containerClusterServiceExternalIpsConfigToTerraform = exports.ContainerClusterSecurityPostureConfigOutputReference = exports.containerClusterSecurityPostureConfigToHclTerraform = exports.containerClusterSecurityPostureConfigToTerraform = exports.ContainerClusterSecretManagerConfigOutputReference = exports.containerClusterSecretManagerConfigToHclTerraform = exports.containerClusterSecretManagerConfigToTerraform = exports.ContainerClusterResourceUsageExportConfigOutputReference = exports.containerClusterResourceUsageExportConfigToHclTerraform = exports.containerClusterResourceUsageExportConfigToTerraform = exports.ContainerClusterResourceUsageExportConfigBigqueryDestinationOutputReference = exports.containerClusterResourceUsageExportConfigBigqueryDestinationToHclTerraform = exports.containerClusterResourceUsageExportConfigBigqueryDestinationToTerraform = exports.ContainerClusterReleaseChannelOutputReference = exports.containerClusterReleaseChannelToHclTerraform = exports.containerClusterReleaseChannelToTerraform = exports.ContainerClusterPrivateClusterConfigOutputReference = exports.containerClusterPrivateClusterConfigToHclTerraform = exports.containerClusterPrivateClusterConfigToTerraform = exports.ContainerClusterPrivateClusterConfigMasterGlobalAccessConfigOutputReference = exports.containerClusterPrivateClusterConfigMasterGlobalAccessConfigToHclTerraform = exports.containerClusterPrivateClusterConfigMasterGlobalAccessConfigToTerraform = exports.ContainerClusterNotificationConfigOutputReference = exports.containerClusterNotificationConfigToHclTerraform = exports.containerClusterNotificationConfigToTerraform = exports.ContainerClusterNotificationConfigPubsubOutputReference = exports.containerClusterNotificationConfigPubsubToHclTerraform = exports.containerClusterNotificationConfigPubsubToTerraform = exports.ContainerClusterNotificationConfigPubsubFilterOutputReference = exports.containerClusterNotificationConfigPubsubFilterToHclTerraform = exports.containerClusterNotificationConfigPubsubFilterToTerraform = exports.ContainerClusterNodePoolDefaultsOutputReference = exports.containerClusterNodePoolDefaultsToHclTerraform = exports.containerClusterNodePoolDefaultsToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); /** * Copyright (c) HashiCorp, Inc. * SPDX-License-Identifier: MPL-2.0 */ const cdktf = require("cdktf"); const structs0_1 = require("./structs0"); function containerClusterNodePoolDefaultsToTerraform(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 { node_config_defaults: (0, structs0_1.containerClusterNodePoolDefaultsNodeConfigDefaultsToTerraform)(struct.nodeConfigDefaults), }; } exports.containerClusterNodePoolDefaultsToTerraform = containerClusterNodePoolDefaultsToTerraform; function containerClusterNodePoolDefaultsToHclTerraform(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 = { node_config_defaults: { value: (0, structs0_1.containerClusterNodePoolDefaultsNodeConfigDefaultsToHclTerraform)(struct.nodeConfigDefaults), isBlock: true, type: "list", storageClassType: "ContainerClusterNodePoolDefaultsNodeConfigDefaultsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.containerClusterNodePoolDefaultsToHclTerraform = containerClusterNodePoolDefaultsToHclTerraform; class ContainerClusterNodePoolDefaultsOutputReference 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; // node_config_defaults - computed: false, optional: true, required: false this._nodeConfigDefaults = new structs0_1.ContainerClusterNodePoolDefaultsNodeConfigDefaultsOutputReference(this, "node_config_defaults"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._nodeConfigDefaults?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.nodeConfigDefaults = this._nodeConfigDefaults?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._nodeConfigDefaults.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._nodeConfigDefaults.internalValue = value.nodeConfigDefaults; } } get nodeConfigDefaults() { return this._nodeConfigDefaults; } putNodeConfigDefaults(value) { this._nodeConfigDefaults.internalValue = value; } resetNodeConfigDefaults() { this._nodeConfigDefaults.internalValue = undefined; } // Temporarily expose input value. Use with caution. get nodeConfigDefaultsInput() { return this._nodeConfigDefaults.internalValue; } } exports.ContainerClusterNodePoolDefaultsOutputReference = ContainerClusterNodePoolDefaultsOutputReference; _a = JSII_RTTI_SYMBOL_1; ContainerClusterNodePoolDefaultsOutputReference[_a] = { fqn: "@cdktf/provider-google.containerCluster.ContainerClusterNodePoolDefaultsOutputReference", version: "14.3.0" }; function containerClusterNotificationConfigPubsubFilterToTerraform(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 { event_type: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.eventType), }; } exports.containerClusterNotificationConfigPubsubFilterToTerraform = containerClusterNotificationConfigPubsubFilterToTerraform; function containerClusterNotificationConfigPubsubFilterToHclTerraform(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 = { event_type: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.eventType), isBlock: false, type: "list", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.containerClusterNotificationConfigPubsubFilterToHclTerraform = containerClusterNotificationConfigPubsubFilterToHclTerraform; class ContainerClusterNotificationConfigPubsubFilterOutputReference extends cdktf.ComplexObject { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource, terraformAttribute) { super(terraformResource, terraformAttribute, false, 0); this.isEmptyObject = false; } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._eventType !== undefined) { hasAnyValues = true; internalValueResult.eventType = this._eventType; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._eventType = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._eventType = value.eventType; } } get eventType() { return this.getListAttribute('event_type'); } set eventType(value) { this._eventType = value; } // Temporarily expose input value. Use with caution. get eventTypeInput() { return this._eventType; } } exports.ContainerClusterNotificationConfigPubsubFilterOutputReference = ContainerClusterNotificationConfigPubsubFilterOutputReference; _b = JSII_RTTI_SYMBOL_1; ContainerClusterNotificationConfigPubsubFilterOutputReference[_b] = { fqn: "@cdktf/provider-google.containerCluster.ContainerClusterNotificationConfigPubsubFilterOutputReference", version: "14.3.0" }; function containerClusterNotificationConfigPubsubToTerraform(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 { enabled: cdktf.booleanToTerraform(struct.enabled), topic: cdktf.stringToTerraform(struct.topic), filter: containerClusterNotificationConfigPubsubFilterToTerraform(struct.filter), }; } exports.containerClusterNotificationConfigPubsubToTerraform = containerClusterNotificationConfigPubsubToTerraform; function containerClusterNotificationConfigPubsubToHclTerraform(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 = { enabled: { value: cdktf.booleanToHclTerraform(struct.enabled), isBlock: false, type: "simple", storageClassType: "boolean", }, topic: { value: cdktf.stringToHclTerraform(struct.topic), isBlock: false, type: "simple", storageClassType: "string", }, filter: { value: containerClusterNotificationConfigPubsubFilterToHclTerraform(struct.filter), isBlock: true, type: "list", storageClassType: "ContainerClusterNotificationConfigPubsubFilterList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.containerClusterNotificationConfigPubsubToHclTerraform = containerClusterNotificationConfigPubsubToHclTerraform; class ContainerClusterNotificationConfigPubsubOutputReference 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; // filter - computed: false, optional: true, required: false this._filter = new ContainerClusterNotificationConfigPubsubFilterOutputReference(this, "filter"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._enabled !== undefined) { hasAnyValues = true; internalValueResult.enabled = this._enabled; } if (this._topic !== undefined) { hasAnyValues = true; internalValueResult.topic = this._topic; } if (this._filter?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.filter = this._filter?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._enabled = undefined; this._topic = undefined; this._filter.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._enabled = value.enabled; this._topic = value.topic; this._filter.internalValue = value.filter; } } get enabled() { return this.getBooleanAttribute('enabled'); } set enabled(value) { this._enabled = value; } // Temporarily expose input value. Use with caution. get enabledInput() { return this._enabled; } get topic() { return this.getStringAttribute('topic'); } set topic(value) { this._topic = value; } resetTopic() { this._topic = undefined; } // Temporarily expose input value. Use with caution. get topicInput() { return this._topic; } get filter() { return this._filter; } putFilter(value) { this._filter.internalValue = value; } resetFilter() { this._filter.internalValue = undefined; } // Temporarily expose input value. Use with caution. get filterInput() { return this._filter.internalValue; } } exports.ContainerClusterNotificationConfigPubsubOutputReference = ContainerClusterNotificationConfigPubsubOutputReference; _c = JSII_RTTI_SYMBOL_1; ContainerClusterNotificationConfigPubsubOutputReference[_c] = { fqn: "@cdktf/provider-google.containerCluster.ContainerClusterNotificationConfigPubsubOutputReference", version: "14.3.0" }; function containerClusterNotificationConfigToTerraform(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 { pubsub: containerClusterNotificationConfigPubsubToTerraform(struct.pubsub), }; } exports.containerClusterNotificationConfigToTerraform = containerClusterNotificationConfigToTerraform; function containerClusterNotificationConfigToHclTerraform(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 = { pubsub: { value: containerClusterNotificationConfigPubsubToHclTerraform(struct.pubsub), isBlock: true, type: "list", storageClassType: "ContainerClusterNotificationConfigPubsubList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.containerClusterNotificationConfigToHclTerraform = containerClusterNotificationConfigToHclTerraform; class ContainerClusterNotificationConfigOutputReference 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; // pubsub - computed: false, optional: false, required: true this._pubsub = new ContainerClusterNotificationConfigPubsubOutputReference(this, "pubsub"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._pubsub?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.pubsub = this._pubsub?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._pubsub.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._pubsub.internalValue = value.pubsub; } } get pubsub() { return this._pubsub; } putPubsub(value) { this._pubsub.internalValue = value; } // Temporarily expose input value. Use with caution. get pubsubInput() { return this._pubsub.internalValue; } } exports.ContainerClusterNotificationConfigOutputReference = ContainerClusterNotificationConfigOutputReference; _d = JSII_RTTI_SYMBOL_1; ContainerClusterNotificationConfigOutputReference[_d] = { fqn: "@cdktf/provider-google.containerCluster.ContainerClusterNotificationConfigOutputReference", version: "14.3.0" }; function containerClusterPrivateClusterConfigMasterGlobalAccessConfigToTerraform(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 { enabled: cdktf.booleanToTerraform(struct.enabled), }; } exports.containerClusterPrivateClusterConfigMasterGlobalAccessConfigToTerraform = containerClusterPrivateClusterConfigMasterGlobalAccessConfigToTerraform; function containerClusterPrivateClusterConfigMasterGlobalAccessConfigToHclTerraform(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 = { enabled: { value: cdktf.booleanToHclTerraform(struct.enabled), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.containerClusterPrivateClusterConfigMasterGlobalAccessConfigToHclTerraform = containerClusterPrivateClusterConfigMasterGlobalAccessConfigToHclTerraform; class ContainerClusterPrivateClusterConfigMasterGlobalAccessConfigOutputReference extends cdktf.ComplexObject { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource, terraformAttribute) { super(terraformResource, terraformAttribute, false, 0); this.isEmptyObject = false; } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._enabled !== undefined) { hasAnyValues = true; internalValueResult.enabled = this._enabled; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._enabled = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._enabled = value.enabled; } } get enabled() { return this.getBooleanAttribute('enabled'); } set enabled(value) { this._enabled = value; } // Temporarily expose input value. Use with caution. get enabledInput() { return this._enabled; } } exports.ContainerClusterPrivateClusterConfigMasterGlobalAccessConfigOutputReference = ContainerClusterPrivateClusterConfigMasterGlobalAccessConfigOutputReference; _e = JSII_RTTI_SYMBOL_1; ContainerClusterPrivateClusterConfigMasterGlobalAccessConfigOutputReference[_e] = { fqn: "@cdktf/provider-google.containerCluster.ContainerClusterPrivateClusterConfigMasterGlobalAccessConfigOutputReference", version: "14.3.0" }; function containerClusterPrivateClusterConfigToTerraform(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 { enable_private_endpoint: cdktf.booleanToTerraform(struct.enablePrivateEndpoint), enable_private_nodes: cdktf.booleanToTerraform(struct.enablePrivateNodes), master_ipv4_cidr_block: cdktf.stringToTerraform(struct.masterIpv4CidrBlock), private_endpoint_subnetwork: cdktf.stringToTerraform(struct.privateEndpointSubnetwork), master_global_access_config: containerClusterPrivateClusterConfigMasterGlobalAccessConfigToTerraform(struct.masterGlobalAccessConfig), }; } exports.containerClusterPrivateClusterConfigToTerraform = containerClusterPrivateClusterConfigToTerraform; function containerClusterPrivateClusterConfigToHclTerraform(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 = { enable_private_endpoint: { value: cdktf.booleanToHclTerraform(struct.enablePrivateEndpoint), isBlock: false, type: "simple", storageClassType: "boolean", }, enable_private_nodes: { value: cdktf.booleanToHclTerraform(struct.enablePrivateNodes), isBlock: false, type: "simple", storageClassType: "boolean", }, master_ipv4_cidr_block: { value: cdktf.stringToHclTerraform(struct.masterIpv4CidrBlock), isBlock: false, type: "simple", storageClassType: "string", }, private_endpoint_subnetwork: { value: cdktf.stringToHclTerraform(struct.privateEndpointSubnetwork), isBlock: false, type: "simple", storageClassType: "string", }, master_global_access_config: { value: containerClusterPrivateClusterConfigMasterGlobalAccessConfigToHclTerraform(struct.masterGlobalAccessConfig), isBlock: true, type: "list", storageClassType: "ContainerClusterPrivateClusterConfigMasterGlobalAccessConfigList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.containerClusterPrivateClusterConfigToHclTerraform = containerClusterPrivateClusterConfigToHclTerraform; class ContainerClusterPrivateClusterConfigOutputReference 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; // master_global_access_config - computed: false, optional: true, required: false this._masterGlobalAccessConfig = new ContainerClusterPrivateClusterConfigMasterGlobalAccessConfigOutputReference(this, "master_global_access_config"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._enablePrivateEndpoint !== undefined) { hasAnyValues = true; internalValueResult.enablePrivateEndpoint = this._enablePrivateEndpoint; } if (this._enablePrivateNodes !== undefined) { hasAnyValues = true; internalValueResult.enablePrivateNodes = this._enablePrivateNodes; } if (this._masterIpv4CidrBlock !== undefined) { hasAnyValues = true; internalValueResult.masterIpv4CidrBlock = this._masterIpv4CidrBlock; } if (this._privateEndpointSubnetwork !== undefined) { hasAnyValues = true; internalValueResult.privateEndpointSubnetwork = this._privateEndpointSubnetwork; } if (this._masterGlobalAccessConfig?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.masterGlobalAccessConfig = this._masterGlobalAccessConfig?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._enablePrivateEndpoint = undefined; this._enablePrivateNodes = undefined; this._masterIpv4CidrBlock = undefined; this._privateEndpointSubnetwork = undefined; this._masterGlobalAccessConfig.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._enablePrivateEndpoint = value.enablePrivateEndpoint; this._enablePrivateNodes = value.enablePrivateNodes; this._masterIpv4CidrBlock = value.masterIpv4CidrBlock; this._privateEndpointSubnetwork = value.privateEndpointSubnetwork; this._masterGlobalAccessConfig.internalValue = value.masterGlobalAccessConfig; } } get enablePrivateEndpoint() { return this.getBooleanAttribute('enable_private_endpoint'); } set enablePrivateEndpoint(value) { this._enablePrivateEndpoint = value; } resetEnablePrivateEndpoint() { this._enablePrivateEndpoint = undefined; } // Temporarily expose input value. Use with caution. get enablePrivateEndpointInput() { return this._enablePrivateEndpoint; } get enablePrivateNodes() { return this.getBooleanAttribute('enable_private_nodes'); } set enablePrivateNodes(value) { this._enablePrivateNodes = value; } resetEnablePrivateNodes() { this._enablePrivateNodes = undefined; } // Temporarily expose input value. Use with caution. get enablePrivateNodesInput() { return this._enablePrivateNodes; } get masterIpv4CidrBlock() { return this.getStringAttribute('master_ipv4_cidr_block'); } set masterIpv4CidrBlock(value) { this._masterIpv4CidrBlock = value; } resetMasterIpv4CidrBlock() { this._masterIpv4CidrBlock = undefined; } // Temporarily expose input value. Use with caution. get masterIpv4CidrBlockInput() { return this._masterIpv4CidrBlock; } // peering_name - computed: true, optional: false, required: false get peeringName() { return this.getStringAttribute('peering_name'); } // private_endpoint - computed: true, optional: false, required: false get privateEndpoint() { return this.getStringAttribute('private_endpoint'); } get privateEndpointSubnetwork() { return this.getStringAttribute('private_endpoint_subnetwork'); } set privateEndpointSubnetwork(value) { this._privateEndpointSubnetwork = value; } resetPrivateEndpointSubnetwork() { this._privateEndpointSubnetwork = undefined; } // Temporarily expose input value. Use with caution. get privateEndpointSubnetworkInput() { return this._privateEndpointSubnetwork; } // public_endpoint - computed: true, optional: false, required: false get publicEndpoint() { return this.getStringAttribute('public_endpoint'); } get masterGlobalAccessConfig() { return this._masterGlobalAccessConfig; } putMasterGlobalAccessConfig(value) { this._masterGlobalAccessConfig.internalValue = value; } resetMasterGlobalAccessConfig() { this._masterGlobalAccessConfig.internalValue = undefined; } // Temporarily expose input value. Use with caution. get masterGlobalAccessConfigInput() { return this._masterGlobalAccessConfig.internalValue; } } exports.ContainerClusterPrivateClusterConfigOutputReference = ContainerClusterPrivateClusterConfigOutputReference; _f = JSII_RTTI_SYMBOL_1; ContainerClusterPrivateClusterConfigOutputReference[_f] = { fqn: "@cdktf/provider-google.containerCluster.ContainerClusterPrivateClusterConfigOutputReference", version: "14.3.0" }; function containerClusterReleaseChannelToTerraform(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 { channel: cdktf.stringToTerraform(struct.channel), }; } exports.containerClusterReleaseChannelToTerraform = containerClusterReleaseChannelToTerraform; function containerClusterReleaseChannelToHclTerraform(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 = { channel: { value: cdktf.stringToHclTerraform(struct.channel), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.containerClusterReleaseChannelToHclTerraform = containerClusterReleaseChannelToHclTerraform; class ContainerClusterReleaseChannelOutputReference extends cdktf.ComplexObject { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource, terraformAttribute) { super(terraformResource, terraformAttribute, false, 0); this.isEmptyObject = false; } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._channel !== undefined) { hasAnyValues = true; internalValueResult.channel = this._channel; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._channel = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._channel = value.channel; } } get channel() { return this.getStringAttribute('channel'); } set channel(value) { this._channel = value; } // Temporarily expose input value. Use with caution. get channelInput() { return this._channel; } } exports.ContainerClusterReleaseChannelOutputReference = ContainerClusterReleaseChannelOutputReference; _g = JSII_RTTI_SYMBOL_1; ContainerClusterReleaseChannelOutputReference[_g] = { fqn: "@cdktf/provider-google.containerCluster.ContainerClusterReleaseChannelOutputReference", version: "14.3.0" }; function containerClusterResourceUsageExportConfigBigqueryDestinationToTerraform(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 { dataset_id: cdktf.stringToTerraform(struct.datasetId), }; } exports.containerClusterResourceUsageExportConfigBigqueryDestinationToTerraform = containerClusterResourceUsageExportConfigBigqueryDestinationToTerraform; function containerClusterResourceUsageExportConfigBigqueryDestinationToHclTerraform(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 = { dataset_id: { value: cdktf.stringToHclTerraform(struct.datasetId), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.containerClusterResourceUsageExportConfigBigqueryDestinationToHclTerraform = containerClusterResourceUsageExportConfigBigqueryDestinationToHclTerraform; class ContainerClusterResourceUsageExportConfigBigqueryDestinationOutputReference extends cdktf.ComplexObject { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource, terraformAttribute) { super(terraformResource, terraformAttribute, false, 0); this.isEmptyObject = false; } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._datasetId !== undefined) { hasAnyValues = true; internalValueResult.datasetId = this._datasetId; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._datasetId = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._datasetId = value.datasetId; } } get datasetId() { return this.getStringAttribute('dataset_id'); } set datasetId(value) { this._datasetId = value; } // Temporarily expose input value. Use with caution. get datasetIdInput() { return this._datasetId; } } exports.ContainerClusterResourceUsageExportConfigBigqueryDestinationOutputReference = ContainerClusterResourceUsageExportConfigBigqueryDestinationOutputReference; _h = JSII_RTTI_SYMBOL_1; ContainerClusterResourceUsageExportConfigBigqueryDestinationOutputReference[_h] = { fqn: "@cdktf/provider-google.containerCluster.ContainerClusterResourceUsageExportConfigBigqueryDestinationOutputReference", version: "14.3.0" }; function containerClusterResourceUsageExportConfigToTerraform(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 { enable_network_egress_metering: cdktf.booleanToTerraform(struct.enableNetworkEgressMetering), enable_resource_consumption_metering: cdktf.booleanToTerraform(struct.enableResourceConsumptionMetering), bigquery_destination: containerClusterResourceUsageExportConfigBigqueryDestinationToTerraform(struct.bigqueryDestination), }; } exports.containerClusterResourceUsageExportConfigToTerraform = containerClusterResourceUsageExportConfigToTerraform; function containerClusterResourceUsageExportConfigToHclTerraform(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 = { enable_network_egress_metering: { value: cdktf.booleanToHclTerraform(struct.enableNetworkEgressMetering), isBlock: false, type: "simple", storageClassType: "boolean", }, enable_resource_consumption_metering: { value: cdktf.booleanToHclTerraform(struct.enableResourceConsumptionMetering), isBlock: false, type: "simple", storageClassType: "boolean", }, bigquery_destination: { value: containerClusterResourceUsageExportConfigBigqueryDestinationToHclTerraform(struct.bigqueryDestination), isBlock: true, type: "list", storageClassType: "ContainerClusterResourceUsageExportConfigBigqueryDestinationList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.containerClusterResourceUsageExportConfigToHclTerraform = containerClusterResourceUsageExportConfigToHclTerraform; class ContainerClusterResourceUsageExportConfigOutputReference 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; // bigquery_destination - computed: false, optional: false, required: true this._bigqueryDestination = new ContainerClusterResourceUsageExportConfigBigqueryDestinationOutputReference(this, "bigquery_destination"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._enableNetworkEgressMetering !== undefined) { hasAnyValues = true; internalValueResult.enableNetworkEgressMetering = this._enableNetworkEgressMetering; } if (this._enableResourceConsumptionMetering !== undefined) { hasAnyValues = true; internalValueResult.enableResourceConsumptionMetering = this._enableResourceConsumptionMetering; } if (this._bigqueryDestination?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.bigqueryDestination = this._bigqueryDestination?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._enableNetworkEgressMetering = undefined; this._enableResourceConsumptionMetering = undefined; this._bigqueryDestination.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._enableNetworkEgressMetering = value.enableNetworkEgressMetering; this._enableResourceConsumptionMetering = value.enableResourceConsumptionMetering; this._bigqueryDestination.internalValue = value.bigqueryDestination; } } get enableNetworkEgressMetering() { return this.getBooleanAttribute('enable_network_egress_metering'); } set enableNetworkEgressMetering(value) { this._enableNetworkEgressMetering = value; } resetEnableNetworkEgressMetering() { this._enableNetworkEgressMetering = undefined; } // Temporarily expose input value. Use with caution. get enableNetworkEgressMeteringInput() { return this._enableNetworkEgressMetering; } get enableResourceConsumptionMetering() { return this.getBooleanAttribute('enable_resource_consumption_metering'); } set enableResourceConsumptionMetering(value) { this._enableResourceConsumptionMetering = value; } resetEnableResourceConsumptionMetering() { this._enableResourceConsumptionMetering = undefined; } // Temporarily expose input value. Use with caution. get enableResourceConsumptionMeteringInput() { return this._enableResourceConsumptionMetering; } get bigqueryDestination() { return this._bigqueryDestination; } putBigqueryDestination(value) { this._bigqueryDestination.internalValue = value; } // Temporarily expose input value. Use with caution. get bigqueryDestinationInput() { return this._bigqueryDestination.internalValue; } } exports.ContainerClusterResourceUsageExportConfigOutputReference = ContainerClusterResourceUsageExportConfigOutputReference; _j = JSII_RTTI_SYMBOL_1; ContainerClusterResourceUsageExportConfigOutputReference[_j] = { fqn: "@cdktf/provider-google.containerCluster.ContainerClusterResourceUsageExportConfigOutputReference", version: "14.3.0" }; function containerClusterSecretManagerConfigToTerraform(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 { enabled: cdktf.booleanToTerraform(struct.enabled), }; } exports.containerClusterSecretManagerConfigToTerraform = containerClusterSecretManagerConfigToTerraform; function containerClusterSecretManagerConfigToHclTerraform(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 = { enabled: { value: cdktf.booleanToHclTerraform(struct.enabled), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.containerClusterSecretManagerConfigToHclTerraform = containerClusterSecretManagerConfigToHclTerraform; class ContainerClusterSecretManagerConfigOutputReference extends cdktf.ComplexObject { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource, terraformAttribute) { super(terraformResource, terraformAttribute, false, 0); this.isEmptyObject = false; } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._enabled !== undefined) { hasAnyValues = true; internalValueResult.enabled = this._enabled; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._enabled = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._enabled = value.enabled; } } get enabled() { return this.getBooleanAttribute('enabled'); } set enabled(value) { this._enabled = value; } // Temporarily expose input value. Use with caution. get enabledInput() { return this._enabled; } } exports.ContainerClusterSecretManagerConfigOutputReference = ContainerClusterSecretManagerConfigOutputReference; _k = JSII_RTTI_SYMBOL_1; ContainerClusterSecretManagerConfigOutputReference[_k] = { fqn: "@cdktf/provider-google.containerCluster.ContainerClusterSecretManagerConfigOutputReference", version: "14.3.0" }; function containerClusterSecurityPostureConfigToTerraform(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 { mode: cdktf.stringToTerraform(struct.mode), vulnerability_mode: cdktf.stringToTerraform(struct.vulnerabilityMode), }; } exports.containerClusterSecurityPostureConfigToTerraform = containerClusterSecurityPostureConfigToTerraform; function containerClusterSecurityPostureConfigToHclTerraform(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 = { mode: { value: cdktf.stringToHclTerraform(struct.mode), isBlock: false, type: "simple", storageClassType: "string", }, vulnerability_mode: { value: cdktf.stringToHclTerraform(struct.vulnerabilityMode), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.containerClusterSecurityPostureConfigToHclTerraform = containerClusterSecurityPostureConfigToHclTerraform; class ContainerClusterSecurityPostureConfigOutputReference extends cdktf.ComplexObject { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource, terraformAttribute) { super(terraformResource, terraformAttribute, false, 0); this.isEmptyObject = false; } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._mode !== undefined) { hasAnyValues = true; internalValueResult.mode = this._mode; } if (this._vulnerabilityMode !== undefined) { hasAnyValues = true; internalValueResult.vulnerabilityMode = this._vulnerabilityMode; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._mode = undefined; this._vulnerabilityMode = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._mode = value.mode; this._vulnerabilityMode = value.vulnerabilityMode; } } get mode() { return this.getStringAttribute('mode'); } set mode(value) { this._mode = value; } resetMode() { this._mode = undefined; } // Temporarily expose input value. Use with caution. get modeInput() { return this._mode; } get vulnerabilityMode() { return this.getStringAttribute('vulnerability_mode'); } set vulnerabilityMode(value) { this._vulnerabilityMode = value; } resetVulnerabilityMode() { this._vulnerabilityMode = undefined; } // Temporarily expose input value. Use with caution. get vulnerabilityModeInput() { return this._vulnerabilityMode; } } exports.ContainerClusterSecurityPostureConfigOutputReference = ContainerClusterSecurityPostureConfigOutputReference; _l = JSII_RTTI_SYMBOL_1; ContainerClusterSecurityPostureConfigOutputReference[_l] = { fqn: "@cdktf/provider-google.containerCluster.ContainerClusterSecurityPostureConfigOutputReference", version: "14.3.0" }; function containerClusterServiceExternalIpsConfigToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexEleme