UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

1,027 lines 383 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; Object.defineProperty(exports, "__esModule", { value: true }); exports.ComputeInstanceGroupManager = exports.ComputeInstanceGroupManagerVersionList = exports.ComputeInstanceGroupManagerVersionOutputReference = exports.ComputeInstanceGroupManagerVersionTargetSizeOutputReference = exports.ComputeInstanceGroupManagerUpdatePolicyOutputReference = exports.ComputeInstanceGroupManagerTimeoutsOutputReference = exports.ComputeInstanceGroupManagerStatefulInternalIpList = exports.ComputeInstanceGroupManagerStatefulInternalIpOutputReference = exports.ComputeInstanceGroupManagerStatefulExternalIpList = exports.ComputeInstanceGroupManagerStatefulExternalIpOutputReference = exports.ComputeInstanceGroupManagerStatefulDiskList = exports.ComputeInstanceGroupManagerStatefulDiskOutputReference = exports.ComputeInstanceGroupManagerStandbyPolicyOutputReference = exports.ComputeInstanceGroupManagerNamedPortList = exports.ComputeInstanceGroupManagerNamedPortOutputReference = exports.ComputeInstanceGroupManagerInstanceLifecyclePolicyOutputReference = exports.ComputeInstanceGroupManagerAutoHealingPoliciesOutputReference = exports.ComputeInstanceGroupManagerAllInstancesConfigOutputReference = exports.ComputeInstanceGroupManagerStatusList = exports.ComputeInstanceGroupManagerStatusOutputReference = exports.ComputeInstanceGroupManagerStatusVersionTargetList = exports.ComputeInstanceGroupManagerStatusVersionTargetOutputReference = exports.ComputeInstanceGroupManagerStatusStatefulList = exports.ComputeInstanceGroupManagerStatusStatefulOutputReference = exports.ComputeInstanceGroupManagerStatusStatefulPerInstanceConfigsList = exports.ComputeInstanceGroupManagerStatusStatefulPerInstanceConfigsOutputReference = exports.ComputeInstanceGroupManagerStatusAllInstancesConfigList = exports.ComputeInstanceGroupManagerStatusAllInstancesConfigOutputReference = void 0; exports.computeInstanceGroupManagerStatusAllInstancesConfigToTerraform = computeInstanceGroupManagerStatusAllInstancesConfigToTerraform; exports.computeInstanceGroupManagerStatusAllInstancesConfigToHclTerraform = computeInstanceGroupManagerStatusAllInstancesConfigToHclTerraform; exports.computeInstanceGroupManagerStatusStatefulPerInstanceConfigsToTerraform = computeInstanceGroupManagerStatusStatefulPerInstanceConfigsToTerraform; exports.computeInstanceGroupManagerStatusStatefulPerInstanceConfigsToHclTerraform = computeInstanceGroupManagerStatusStatefulPerInstanceConfigsToHclTerraform; exports.computeInstanceGroupManagerStatusStatefulToTerraform = computeInstanceGroupManagerStatusStatefulToTerraform; exports.computeInstanceGroupManagerStatusStatefulToHclTerraform = computeInstanceGroupManagerStatusStatefulToHclTerraform; exports.computeInstanceGroupManagerStatusVersionTargetToTerraform = computeInstanceGroupManagerStatusVersionTargetToTerraform; exports.computeInstanceGroupManagerStatusVersionTargetToHclTerraform = computeInstanceGroupManagerStatusVersionTargetToHclTerraform; exports.computeInstanceGroupManagerStatusToTerraform = computeInstanceGroupManagerStatusToTerraform; exports.computeInstanceGroupManagerStatusToHclTerraform = computeInstanceGroupManagerStatusToHclTerraform; exports.computeInstanceGroupManagerAllInstancesConfigToTerraform = computeInstanceGroupManagerAllInstancesConfigToTerraform; exports.computeInstanceGroupManagerAllInstancesConfigToHclTerraform = computeInstanceGroupManagerAllInstancesConfigToHclTerraform; exports.computeInstanceGroupManagerAutoHealingPoliciesToTerraform = computeInstanceGroupManagerAutoHealingPoliciesToTerraform; exports.computeInstanceGroupManagerAutoHealingPoliciesToHclTerraform = computeInstanceGroupManagerAutoHealingPoliciesToHclTerraform; exports.computeInstanceGroupManagerInstanceLifecyclePolicyToTerraform = computeInstanceGroupManagerInstanceLifecyclePolicyToTerraform; exports.computeInstanceGroupManagerInstanceLifecyclePolicyToHclTerraform = computeInstanceGroupManagerInstanceLifecyclePolicyToHclTerraform; exports.computeInstanceGroupManagerNamedPortToTerraform = computeInstanceGroupManagerNamedPortToTerraform; exports.computeInstanceGroupManagerNamedPortToHclTerraform = computeInstanceGroupManagerNamedPortToHclTerraform; exports.computeInstanceGroupManagerStandbyPolicyToTerraform = computeInstanceGroupManagerStandbyPolicyToTerraform; exports.computeInstanceGroupManagerStandbyPolicyToHclTerraform = computeInstanceGroupManagerStandbyPolicyToHclTerraform; exports.computeInstanceGroupManagerStatefulDiskToTerraform = computeInstanceGroupManagerStatefulDiskToTerraform; exports.computeInstanceGroupManagerStatefulDiskToHclTerraform = computeInstanceGroupManagerStatefulDiskToHclTerraform; exports.computeInstanceGroupManagerStatefulExternalIpToTerraform = computeInstanceGroupManagerStatefulExternalIpToTerraform; exports.computeInstanceGroupManagerStatefulExternalIpToHclTerraform = computeInstanceGroupManagerStatefulExternalIpToHclTerraform; exports.computeInstanceGroupManagerStatefulInternalIpToTerraform = computeInstanceGroupManagerStatefulInternalIpToTerraform; exports.computeInstanceGroupManagerStatefulInternalIpToHclTerraform = computeInstanceGroupManagerStatefulInternalIpToHclTerraform; exports.computeInstanceGroupManagerTimeoutsToTerraform = computeInstanceGroupManagerTimeoutsToTerraform; exports.computeInstanceGroupManagerTimeoutsToHclTerraform = computeInstanceGroupManagerTimeoutsToHclTerraform; exports.computeInstanceGroupManagerUpdatePolicyToTerraform = computeInstanceGroupManagerUpdatePolicyToTerraform; exports.computeInstanceGroupManagerUpdatePolicyToHclTerraform = computeInstanceGroupManagerUpdatePolicyToHclTerraform; exports.computeInstanceGroupManagerVersionTargetSizeToTerraform = computeInstanceGroupManagerVersionTargetSizeToTerraform; exports.computeInstanceGroupManagerVersionTargetSizeToHclTerraform = computeInstanceGroupManagerVersionTargetSizeToHclTerraform; exports.computeInstanceGroupManagerVersionToTerraform = computeInstanceGroupManagerVersionToTerraform; exports.computeInstanceGroupManagerVersionToHclTerraform = computeInstanceGroupManagerVersionToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function computeInstanceGroupManagerStatusAllInstancesConfigToTerraform(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 computeInstanceGroupManagerStatusAllInstancesConfigToHclTerraform(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 ComputeInstanceGroupManagerStatusAllInstancesConfigOutputReference 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; } } // current_revision - computed: true, optional: false, required: false get currentRevision() { return this.getStringAttribute('current_revision'); } // effective - computed: true, optional: false, required: false get effective() { return this.getBooleanAttribute('effective'); } } exports.ComputeInstanceGroupManagerStatusAllInstancesConfigOutputReference = ComputeInstanceGroupManagerStatusAllInstancesConfigOutputReference; _a = JSII_RTTI_SYMBOL_1; ComputeInstanceGroupManagerStatusAllInstancesConfigOutputReference[_a] = { fqn: "@cdktf/provider-google.computeInstanceGroupManager.ComputeInstanceGroupManagerStatusAllInstancesConfigOutputReference", version: "16.3.0" }; class ComputeInstanceGroupManagerStatusAllInstancesConfigList 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 ComputeInstanceGroupManagerStatusAllInstancesConfigOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ComputeInstanceGroupManagerStatusAllInstancesConfigList = ComputeInstanceGroupManagerStatusAllInstancesConfigList; _b = JSII_RTTI_SYMBOL_1; ComputeInstanceGroupManagerStatusAllInstancesConfigList[_b] = { fqn: "@cdktf/provider-google.computeInstanceGroupManager.ComputeInstanceGroupManagerStatusAllInstancesConfigList", version: "16.3.0" }; function computeInstanceGroupManagerStatusStatefulPerInstanceConfigsToTerraform(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 computeInstanceGroupManagerStatusStatefulPerInstanceConfigsToHclTerraform(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 ComputeInstanceGroupManagerStatusStatefulPerInstanceConfigsOutputReference 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; } } // all_effective - computed: true, optional: false, required: false get allEffective() { return this.getBooleanAttribute('all_effective'); } } exports.ComputeInstanceGroupManagerStatusStatefulPerInstanceConfigsOutputReference = ComputeInstanceGroupManagerStatusStatefulPerInstanceConfigsOutputReference; _c = JSII_RTTI_SYMBOL_1; ComputeInstanceGroupManagerStatusStatefulPerInstanceConfigsOutputReference[_c] = { fqn: "@cdktf/provider-google.computeInstanceGroupManager.ComputeInstanceGroupManagerStatusStatefulPerInstanceConfigsOutputReference", version: "16.3.0" }; class ComputeInstanceGroupManagerStatusStatefulPerInstanceConfigsList 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 ComputeInstanceGroupManagerStatusStatefulPerInstanceConfigsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ComputeInstanceGroupManagerStatusStatefulPerInstanceConfigsList = ComputeInstanceGroupManagerStatusStatefulPerInstanceConfigsList; _d = JSII_RTTI_SYMBOL_1; ComputeInstanceGroupManagerStatusStatefulPerInstanceConfigsList[_d] = { fqn: "@cdktf/provider-google.computeInstanceGroupManager.ComputeInstanceGroupManagerStatusStatefulPerInstanceConfigsList", version: "16.3.0" }; function computeInstanceGroupManagerStatusStatefulToTerraform(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 computeInstanceGroupManagerStatusStatefulToHclTerraform(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 ComputeInstanceGroupManagerStatusStatefulOutputReference 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; // per_instance_configs - computed: true, optional: false, required: false this._perInstanceConfigs = new ComputeInstanceGroupManagerStatusStatefulPerInstanceConfigsList(this, "per_instance_configs", 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; } } // has_stateful_config - computed: true, optional: false, required: false get hasStatefulConfig() { return this.getBooleanAttribute('has_stateful_config'); } get perInstanceConfigs() { return this._perInstanceConfigs; } } exports.ComputeInstanceGroupManagerStatusStatefulOutputReference = ComputeInstanceGroupManagerStatusStatefulOutputReference; _e = JSII_RTTI_SYMBOL_1; ComputeInstanceGroupManagerStatusStatefulOutputReference[_e] = { fqn: "@cdktf/provider-google.computeInstanceGroupManager.ComputeInstanceGroupManagerStatusStatefulOutputReference", version: "16.3.0" }; class ComputeInstanceGroupManagerStatusStatefulList 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 ComputeInstanceGroupManagerStatusStatefulOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ComputeInstanceGroupManagerStatusStatefulList = ComputeInstanceGroupManagerStatusStatefulList; _f = JSII_RTTI_SYMBOL_1; ComputeInstanceGroupManagerStatusStatefulList[_f] = { fqn: "@cdktf/provider-google.computeInstanceGroupManager.ComputeInstanceGroupManagerStatusStatefulList", version: "16.3.0" }; function computeInstanceGroupManagerStatusVersionTargetToTerraform(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 computeInstanceGroupManagerStatusVersionTargetToHclTerraform(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 ComputeInstanceGroupManagerStatusVersionTargetOutputReference 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; } } // is_reached - computed: true, optional: false, required: false get isReached() { return this.getBooleanAttribute('is_reached'); } } exports.ComputeInstanceGroupManagerStatusVersionTargetOutputReference = ComputeInstanceGroupManagerStatusVersionTargetOutputReference; _g = JSII_RTTI_SYMBOL_1; ComputeInstanceGroupManagerStatusVersionTargetOutputReference[_g] = { fqn: "@cdktf/provider-google.computeInstanceGroupManager.ComputeInstanceGroupManagerStatusVersionTargetOutputReference", version: "16.3.0" }; class ComputeInstanceGroupManagerStatusVersionTargetList 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 ComputeInstanceGroupManagerStatusVersionTargetOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ComputeInstanceGroupManagerStatusVersionTargetList = ComputeInstanceGroupManagerStatusVersionTargetList; _h = JSII_RTTI_SYMBOL_1; ComputeInstanceGroupManagerStatusVersionTargetList[_h] = { fqn: "@cdktf/provider-google.computeInstanceGroupManager.ComputeInstanceGroupManagerStatusVersionTargetList", version: "16.3.0" }; function computeInstanceGroupManagerStatusToTerraform(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 computeInstanceGroupManagerStatusToHclTerraform(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 ComputeInstanceGroupManagerStatusOutputReference 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; // all_instances_config - computed: true, optional: false, required: false this._allInstancesConfig = new ComputeInstanceGroupManagerStatusAllInstancesConfigList(this, "all_instances_config", false); // stateful - computed: true, optional: false, required: false this._stateful = new ComputeInstanceGroupManagerStatusStatefulList(this, "stateful", false); // version_target - computed: true, optional: false, required: false this._versionTarget = new ComputeInstanceGroupManagerStatusVersionTargetList(this, "version_target", 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; } } get allInstancesConfig() { return this._allInstancesConfig; } // is_stable - computed: true, optional: false, required: false get isStable() { return this.getBooleanAttribute('is_stable'); } get stateful() { return this._stateful; } get versionTarget() { return this._versionTarget; } } exports.ComputeInstanceGroupManagerStatusOutputReference = ComputeInstanceGroupManagerStatusOutputReference; _j = JSII_RTTI_SYMBOL_1; ComputeInstanceGroupManagerStatusOutputReference[_j] = { fqn: "@cdktf/provider-google.computeInstanceGroupManager.ComputeInstanceGroupManagerStatusOutputReference", version: "16.3.0" }; class ComputeInstanceGroupManagerStatusList 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 ComputeInstanceGroupManagerStatusOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ComputeInstanceGroupManagerStatusList = ComputeInstanceGroupManagerStatusList; _k = JSII_RTTI_SYMBOL_1; ComputeInstanceGroupManagerStatusList[_k] = { fqn: "@cdktf/provider-google.computeInstanceGroupManager.ComputeInstanceGroupManagerStatusList", version: "16.3.0" }; function computeInstanceGroupManagerAllInstancesConfigToTerraform(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 { labels: cdktf.hashMapper(cdktf.stringToTerraform)(struct.labels), metadata: cdktf.hashMapper(cdktf.stringToTerraform)(struct.metadata), }; } function computeInstanceGroupManagerAllInstancesConfigToHclTerraform(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 = { labels: { value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.labels), isBlock: false, type: "map", storageClassType: "stringMap", }, metadata: { value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.metadata), isBlock: false, type: "map", storageClassType: "stringMap", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ComputeInstanceGroupManagerAllInstancesConfigOutputReference 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._labels !== undefined) { hasAnyValues = true; internalValueResult.labels = this._labels; } if (this._metadata !== undefined) { hasAnyValues = true; internalValueResult.metadata = this._metadata; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._labels = undefined; this._metadata = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._labels = value.labels; this._metadata = value.metadata; } } get labels() { return this.getStringMapAttribute('labels'); } set labels(value) { this._labels = value; } resetLabels() { this._labels = undefined; } // Temporarily expose input value. Use with caution. get labelsInput() { return this._labels; } get metadata() { return this.getStringMapAttribute('metadata'); } set metadata(value) { this._metadata = value; } resetMetadata() { this._metadata = undefined; } // Temporarily expose input value. Use with caution. get metadataInput() { return this._metadata; } } exports.ComputeInstanceGroupManagerAllInstancesConfigOutputReference = ComputeInstanceGroupManagerAllInstancesConfigOutputReference; _l = JSII_RTTI_SYMBOL_1; ComputeInstanceGroupManagerAllInstancesConfigOutputReference[_l] = { fqn: "@cdktf/provider-google.computeInstanceGroupManager.ComputeInstanceGroupManagerAllInstancesConfigOutputReference", version: "16.3.0" }; function computeInstanceGroupManagerAutoHealingPoliciesToTerraform(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 { health_check: cdktf.stringToTerraform(struct.healthCheck), initial_delay_sec: cdktf.numberToTerraform(struct.initialDelaySec), }; } function computeInstanceGroupManagerAutoHealingPoliciesToHclTerraform(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 = { health_check: { value: cdktf.stringToHclTerraform(struct.healthCheck), isBlock: false, type: "simple", storageClassType: "string", }, initial_delay_sec: { value: cdktf.numberToHclTerraform(struct.initialDelaySec), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ComputeInstanceGroupManagerAutoHealingPoliciesOutputReference 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._healthCheck !== undefined) { hasAnyValues = true; internalValueResult.healthCheck = this._healthCheck; } if (this._initialDelaySec !== undefined) { hasAnyValues = true; internalValueResult.initialDelaySec = this._initialDelaySec; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._healthCheck = undefined; this._initialDelaySec = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._healthCheck = value.healthCheck; this._initialDelaySec = value.initialDelaySec; } } get healthCheck() { return this.getStringAttribute('health_check'); } set healthCheck(value) { this._healthCheck = value; } // Temporarily expose input value. Use with caution. get healthCheckInput() { return this._healthCheck; } get initialDelaySec() { return this.getNumberAttribute('initial_delay_sec'); } set initialDelaySec(value) { this._initialDelaySec = value; } // Temporarily expose input value. Use with caution. get initialDelaySecInput() { return this._initialDelaySec; } } exports.ComputeInstanceGroupManagerAutoHealingPoliciesOutputReference = ComputeInstanceGroupManagerAutoHealingPoliciesOutputReference; _m = JSII_RTTI_SYMBOL_1; ComputeInstanceGroupManagerAutoHealingPoliciesOutputReference[_m] = { fqn: "@cdktf/provider-google.computeInstanceGroupManager.ComputeInstanceGroupManagerAutoHealingPoliciesOutputReference", version: "16.3.0" }; function computeInstanceGroupManagerInstanceLifecyclePolicyToTerraform(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 { default_action_on_failure: cdktf.stringToTerraform(struct.defaultActionOnFailure), force_update_on_repair: cdktf.stringToTerraform(struct.forceUpdateOnRepair), }; } function computeInstanceGroupManagerInstanceLifecyclePolicyToHclTerraform(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 = { default_action_on_failure: { value: cdktf.stringToHclTerraform(struct.defaultActionOnFailure), isBlock: false, type: "simple", storageClassType: "string", }, force_update_on_repair: { value: cdktf.stringToHclTerraform(struct.forceUpdateOnRepair), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ComputeInstanceGroupManagerInstanceLifecyclePolicyOutputReference 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._defaultActionOnFailure !== undefined) { hasAnyValues = true; internalValueResult.defaultActionOnFailure = this._defaultActionOnFailure; } if (this._forceUpdateOnRepair !== undefined) { hasAnyValues = true; internalValueResult.forceUpdateOnRepair = this._forceUpdateOnRepair; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._defaultActionOnFailure = undefined; this._forceUpdateOnRepair = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._defaultActionOnFailure = value.defaultActionOnFailure; this._forceUpdateOnRepair = value.forceUpdateOnRepair; } } get defaultActionOnFailure() { return this.getStringAttribute('default_action_on_failure'); } set defaultActionOnFailure(value) { this._defaultActionOnFailure = value; } resetDefaultActionOnFailure() { this._defaultActionOnFailure = undefined; } // Temporarily expose input value. Use with caution. get defaultActionOnFailureInput() { return this._defaultActionOnFailure; } get forceUpdateOnRepair() { return this.getStringAttribute('force_update_on_repair'); } set forceUpdateOnRepair(value) { this._forceUpdateOnRepair = value; } resetForceUpdateOnRepair() { this._forceUpdateOnRepair = undefined; } // Temporarily expose input value. Use with caution. get forceUpdateOnRepairInput() { return this._forceUpdateOnRepair; } } exports.ComputeInstanceGroupManagerInstanceLifecyclePolicyOutputReference = ComputeInstanceGroupManagerInstanceLifecyclePolicyOutputReference; _o = JSII_RTTI_SYMBOL_1; ComputeInstanceGroupManagerInstanceLifecyclePolicyOutputReference[_o] = { fqn: "@cdktf/provider-google.computeInstanceGroupManager.ComputeInstanceGroupManagerInstanceLifecyclePolicyOutputReference", version: "16.3.0" }; function computeInstanceGroupManagerNamedPortToTerraform(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), port: cdktf.numberToTerraform(struct.port), }; } function computeInstanceGroupManagerNamedPortToHclTerraform(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", }, port: { value: cdktf.numberToHclTerraform(struct.port), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ComputeInstanceGroupManagerNamedPortOutputReference 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; } if (this._port !== undefined) { hasAnyValues = true; internalValueResult.port = this._port; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._name = undefined; this._port = 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; this._port = value.port; } } get name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } get port() { return this.getNumberAttribute('port'); } set port(value) { this._port = value; } // Temporarily expose input value. Use with caution. get portInput() { return this._port; } } exports.ComputeInstanceGroupManagerNamedPortOutputReference = ComputeInstanceGroupManagerNamedPortOutputReference; _p = JSII_RTTI_SYMBOL_1; ComputeInstanceGroupManagerNamedPortOutputReference[_p] = { fqn: "@cdktf/provider-google.computeInstanceGroupManager.ComputeInstanceGroupManagerNamedPortOutputReference", version: "16.3.0" }; class ComputeInstanceGroupManagerNamedPortList 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 ComputeInstanceGroupManagerNamedPortOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ComputeInstanceGroupManagerNamedPortList = ComputeInstanceGroupManagerNamedPortList; _q = JSII_RTTI_SYMBOL_1; ComputeInstanceGroupManagerNamedPortList[_q] = { fqn: "@cdktf/provider-google.computeInstanceGroupManager.ComputeInstanceGroupManagerNamedPortList", version: "16.3.0" }; function computeInstanceGroupManagerStandbyPolicyToTerraform(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 { initial_delay_sec: cdktf.numberToTerraform(struct.initialDelaySec), mode: cdktf.stringToTerraform(struct.mode), }; } function computeInstanceGroupManagerStandbyPolicyToHclTerraform(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 = { initial_delay_sec: { value: cdktf.numberToHclTerraform(struct.initialDelaySec), isBlock: false, type: "simple", storageClassType: "number", }, mode: { value: cdktf.stringToHclTerraform(struct.mode), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ComputeInstanceGroupManagerStandbyPolicyOutputReference 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._initialDelaySec !== undefined) { hasAnyValues = true; internalValueResult.initialDelaySec = this._initialDelaySec; } if (this._mode !== undefined) { hasAnyValues = true; internalValueResult.mode = this._mode; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._initialDelaySec = undefined; this._mode = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._initialDelaySec = value.initialDelaySec; this._mode = value.mode; } } get initialDelaySec() { return this.getNumberAttribute('initial_delay_sec'); } set initialDelaySec(value) { this._initialDelaySec = value; } resetInitialDelaySec() { this._initialDelaySec = undefined; } // Temporarily expose input value. Use with caution. get initialDelaySecInput() { return this._initialDelaySec; } 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; } } exports.ComputeInstanceGroupManagerStandbyPolicyOutputReference = ComputeInstanceGroupManagerStandbyPolicyOutputReference; _r = JSII_RTTI_SYMBOL_1; ComputeInstanceGroupManagerStandbyPolicyOutputReference[_r] = { fqn: "@cdktf/provider-google.computeInstanceGroupManager.ComputeInstanceGroupManagerStandbyPolicyOutputReference", version: "16.3.0" }; function computeInstanceGroupManagerStatefulDiskToTerraform(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 { delete_rule: cdktf.stringToTerraform(struct.deleteRule), device_name: cdktf.stringToTerraform(struct.deviceName), }; } function computeInstanceGroupManagerStatefulDiskToHclTerraform(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 = { delete_rule: { value: cdktf.stringToHclTerraform(struct.deleteRule), isBlock: false, type: "simple", storageClassType: "string", }, device_name: { value: cdktf.stringToHclTerraform(struct.deviceName), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ComputeInstanceGroupManagerStatefulDiskOutputReference 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._deleteRule !== undefined) { hasAnyValues = true; internalValueResult.deleteRule = this._deleteRule; } if (this._deviceName !== undefined) { hasAnyValues = true; internalValueResult.deviceName = this._deviceName; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._deleteRule = undefined; this._deviceName = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue