UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

1,009 lines 288 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u; Object.defineProperty(exports, "__esModule", { value: true }); exports.VmwareenginePrivateCloud = exports.VmwareenginePrivateCloudTimeoutsOutputReference = exports.VmwareenginePrivateCloudNetworkConfigOutputReference = exports.VmwareenginePrivateCloudManagementClusterOutputReference = exports.VmwareenginePrivateCloudManagementClusterStretchedClusterConfigOutputReference = exports.VmwareenginePrivateCloudManagementClusterNodeTypeConfigsList = exports.VmwareenginePrivateCloudManagementClusterNodeTypeConfigsOutputReference = exports.VmwareenginePrivateCloudManagementClusterAutoscalingSettingsOutputReference = exports.VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesList = exports.VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesOutputReference = exports.VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesStorageThresholdsOutputReference = exports.VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesCpuThresholdsOutputReference = exports.VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesConsumedMemoryThresholdsOutputReference = exports.VmwareenginePrivateCloudVcenterList = exports.VmwareenginePrivateCloudVcenterOutputReference = exports.VmwareenginePrivateCloudNsxList = exports.VmwareenginePrivateCloudNsxOutputReference = exports.VmwareenginePrivateCloudHcxList = exports.VmwareenginePrivateCloudHcxOutputReference = void 0; exports.vmwareenginePrivateCloudHcxToTerraform = vmwareenginePrivateCloudHcxToTerraform; exports.vmwareenginePrivateCloudHcxToHclTerraform = vmwareenginePrivateCloudHcxToHclTerraform; exports.vmwareenginePrivateCloudNsxToTerraform = vmwareenginePrivateCloudNsxToTerraform; exports.vmwareenginePrivateCloudNsxToHclTerraform = vmwareenginePrivateCloudNsxToHclTerraform; exports.vmwareenginePrivateCloudVcenterToTerraform = vmwareenginePrivateCloudVcenterToTerraform; exports.vmwareenginePrivateCloudVcenterToHclTerraform = vmwareenginePrivateCloudVcenterToHclTerraform; exports.vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesConsumedMemoryThresholdsToTerraform = vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesConsumedMemoryThresholdsToTerraform; exports.vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesConsumedMemoryThresholdsToHclTerraform = vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesConsumedMemoryThresholdsToHclTerraform; exports.vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesCpuThresholdsToTerraform = vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesCpuThresholdsToTerraform; exports.vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesCpuThresholdsToHclTerraform = vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesCpuThresholdsToHclTerraform; exports.vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesStorageThresholdsToTerraform = vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesStorageThresholdsToTerraform; exports.vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesStorageThresholdsToHclTerraform = vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesStorageThresholdsToHclTerraform; exports.vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesToTerraform = vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesToTerraform; exports.vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesToHclTerraform = vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesToHclTerraform; exports.vmwareenginePrivateCloudManagementClusterAutoscalingSettingsToTerraform = vmwareenginePrivateCloudManagementClusterAutoscalingSettingsToTerraform; exports.vmwareenginePrivateCloudManagementClusterAutoscalingSettingsToHclTerraform = vmwareenginePrivateCloudManagementClusterAutoscalingSettingsToHclTerraform; exports.vmwareenginePrivateCloudManagementClusterNodeTypeConfigsToTerraform = vmwareenginePrivateCloudManagementClusterNodeTypeConfigsToTerraform; exports.vmwareenginePrivateCloudManagementClusterNodeTypeConfigsToHclTerraform = vmwareenginePrivateCloudManagementClusterNodeTypeConfigsToHclTerraform; exports.vmwareenginePrivateCloudManagementClusterStretchedClusterConfigToTerraform = vmwareenginePrivateCloudManagementClusterStretchedClusterConfigToTerraform; exports.vmwareenginePrivateCloudManagementClusterStretchedClusterConfigToHclTerraform = vmwareenginePrivateCloudManagementClusterStretchedClusterConfigToHclTerraform; exports.vmwareenginePrivateCloudManagementClusterToTerraform = vmwareenginePrivateCloudManagementClusterToTerraform; exports.vmwareenginePrivateCloudManagementClusterToHclTerraform = vmwareenginePrivateCloudManagementClusterToHclTerraform; exports.vmwareenginePrivateCloudNetworkConfigToTerraform = vmwareenginePrivateCloudNetworkConfigToTerraform; exports.vmwareenginePrivateCloudNetworkConfigToHclTerraform = vmwareenginePrivateCloudNetworkConfigToHclTerraform; exports.vmwareenginePrivateCloudTimeoutsToTerraform = vmwareenginePrivateCloudTimeoutsToTerraform; exports.vmwareenginePrivateCloudTimeoutsToHclTerraform = vmwareenginePrivateCloudTimeoutsToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function vmwareenginePrivateCloudHcxToTerraform(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 vmwareenginePrivateCloudHcxToHclTerraform(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 VmwareenginePrivateCloudHcxOutputReference 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; } } // fqdn - computed: true, optional: false, required: false get fqdn() { return this.getStringAttribute('fqdn'); } // internal_ip - computed: true, optional: false, required: false get internalIp() { return this.getStringAttribute('internal_ip'); } // state - computed: true, optional: false, required: false get state() { return this.getStringAttribute('state'); } // version - computed: true, optional: false, required: false get version() { return this.getStringAttribute('version'); } } exports.VmwareenginePrivateCloudHcxOutputReference = VmwareenginePrivateCloudHcxOutputReference; _a = JSII_RTTI_SYMBOL_1; VmwareenginePrivateCloudHcxOutputReference[_a] = { fqn: "@cdktf/provider-google.vmwareenginePrivateCloud.VmwareenginePrivateCloudHcxOutputReference", version: "16.3.0" }; class VmwareenginePrivateCloudHcxList 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 VmwareenginePrivateCloudHcxOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.VmwareenginePrivateCloudHcxList = VmwareenginePrivateCloudHcxList; _b = JSII_RTTI_SYMBOL_1; VmwareenginePrivateCloudHcxList[_b] = { fqn: "@cdktf/provider-google.vmwareenginePrivateCloud.VmwareenginePrivateCloudHcxList", version: "16.3.0" }; function vmwareenginePrivateCloudNsxToTerraform(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 vmwareenginePrivateCloudNsxToHclTerraform(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 VmwareenginePrivateCloudNsxOutputReference 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; } } // fqdn - computed: true, optional: false, required: false get fqdn() { return this.getStringAttribute('fqdn'); } // internal_ip - computed: true, optional: false, required: false get internalIp() { return this.getStringAttribute('internal_ip'); } // state - computed: true, optional: false, required: false get state() { return this.getStringAttribute('state'); } // version - computed: true, optional: false, required: false get version() { return this.getStringAttribute('version'); } } exports.VmwareenginePrivateCloudNsxOutputReference = VmwareenginePrivateCloudNsxOutputReference; _c = JSII_RTTI_SYMBOL_1; VmwareenginePrivateCloudNsxOutputReference[_c] = { fqn: "@cdktf/provider-google.vmwareenginePrivateCloud.VmwareenginePrivateCloudNsxOutputReference", version: "16.3.0" }; class VmwareenginePrivateCloudNsxList 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 VmwareenginePrivateCloudNsxOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.VmwareenginePrivateCloudNsxList = VmwareenginePrivateCloudNsxList; _d = JSII_RTTI_SYMBOL_1; VmwareenginePrivateCloudNsxList[_d] = { fqn: "@cdktf/provider-google.vmwareenginePrivateCloud.VmwareenginePrivateCloudNsxList", version: "16.3.0" }; function vmwareenginePrivateCloudVcenterToTerraform(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 vmwareenginePrivateCloudVcenterToHclTerraform(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 VmwareenginePrivateCloudVcenterOutputReference 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; } } // fqdn - computed: true, optional: false, required: false get fqdn() { return this.getStringAttribute('fqdn'); } // internal_ip - computed: true, optional: false, required: false get internalIp() { return this.getStringAttribute('internal_ip'); } // state - computed: true, optional: false, required: false get state() { return this.getStringAttribute('state'); } // version - computed: true, optional: false, required: false get version() { return this.getStringAttribute('version'); } } exports.VmwareenginePrivateCloudVcenterOutputReference = VmwareenginePrivateCloudVcenterOutputReference; _e = JSII_RTTI_SYMBOL_1; VmwareenginePrivateCloudVcenterOutputReference[_e] = { fqn: "@cdktf/provider-google.vmwareenginePrivateCloud.VmwareenginePrivateCloudVcenterOutputReference", version: "16.3.0" }; class VmwareenginePrivateCloudVcenterList 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 VmwareenginePrivateCloudVcenterOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.VmwareenginePrivateCloudVcenterList = VmwareenginePrivateCloudVcenterList; _f = JSII_RTTI_SYMBOL_1; VmwareenginePrivateCloudVcenterList[_f] = { fqn: "@cdktf/provider-google.vmwareenginePrivateCloud.VmwareenginePrivateCloudVcenterList", version: "16.3.0" }; function vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesConsumedMemoryThresholdsToTerraform(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 { scale_in: cdktf.numberToTerraform(struct.scaleIn), scale_out: cdktf.numberToTerraform(struct.scaleOut), }; } function vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesConsumedMemoryThresholdsToHclTerraform(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 = { scale_in: { value: cdktf.numberToHclTerraform(struct.scaleIn), isBlock: false, type: "simple", storageClassType: "number", }, scale_out: { value: cdktf.numberToHclTerraform(struct.scaleOut), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesConsumedMemoryThresholdsOutputReference 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._scaleIn !== undefined) { hasAnyValues = true; internalValueResult.scaleIn = this._scaleIn; } if (this._scaleOut !== undefined) { hasAnyValues = true; internalValueResult.scaleOut = this._scaleOut; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._scaleIn = undefined; this._scaleOut = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._scaleIn = value.scaleIn; this._scaleOut = value.scaleOut; } } get scaleIn() { return this.getNumberAttribute('scale_in'); } set scaleIn(value) { this._scaleIn = value; } // Temporarily expose input value. Use with caution. get scaleInInput() { return this._scaleIn; } get scaleOut() { return this.getNumberAttribute('scale_out'); } set scaleOut(value) { this._scaleOut = value; } // Temporarily expose input value. Use with caution. get scaleOutInput() { return this._scaleOut; } } exports.VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesConsumedMemoryThresholdsOutputReference = VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesConsumedMemoryThresholdsOutputReference; _g = JSII_RTTI_SYMBOL_1; VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesConsumedMemoryThresholdsOutputReference[_g] = { fqn: "@cdktf/provider-google.vmwareenginePrivateCloud.VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesConsumedMemoryThresholdsOutputReference", version: "16.3.0" }; function vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesCpuThresholdsToTerraform(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 { scale_in: cdktf.numberToTerraform(struct.scaleIn), scale_out: cdktf.numberToTerraform(struct.scaleOut), }; } function vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesCpuThresholdsToHclTerraform(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 = { scale_in: { value: cdktf.numberToHclTerraform(struct.scaleIn), isBlock: false, type: "simple", storageClassType: "number", }, scale_out: { value: cdktf.numberToHclTerraform(struct.scaleOut), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesCpuThresholdsOutputReference 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._scaleIn !== undefined) { hasAnyValues = true; internalValueResult.scaleIn = this._scaleIn; } if (this._scaleOut !== undefined) { hasAnyValues = true; internalValueResult.scaleOut = this._scaleOut; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._scaleIn = undefined; this._scaleOut = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._scaleIn = value.scaleIn; this._scaleOut = value.scaleOut; } } get scaleIn() { return this.getNumberAttribute('scale_in'); } set scaleIn(value) { this._scaleIn = value; } // Temporarily expose input value. Use with caution. get scaleInInput() { return this._scaleIn; } get scaleOut() { return this.getNumberAttribute('scale_out'); } set scaleOut(value) { this._scaleOut = value; } // Temporarily expose input value. Use with caution. get scaleOutInput() { return this._scaleOut; } } exports.VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesCpuThresholdsOutputReference = VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesCpuThresholdsOutputReference; _h = JSII_RTTI_SYMBOL_1; VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesCpuThresholdsOutputReference[_h] = { fqn: "@cdktf/provider-google.vmwareenginePrivateCloud.VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesCpuThresholdsOutputReference", version: "16.3.0" }; function vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesStorageThresholdsToTerraform(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 { scale_in: cdktf.numberToTerraform(struct.scaleIn), scale_out: cdktf.numberToTerraform(struct.scaleOut), }; } function vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesStorageThresholdsToHclTerraform(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 = { scale_in: { value: cdktf.numberToHclTerraform(struct.scaleIn), isBlock: false, type: "simple", storageClassType: "number", }, scale_out: { value: cdktf.numberToHclTerraform(struct.scaleOut), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesStorageThresholdsOutputReference 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._scaleIn !== undefined) { hasAnyValues = true; internalValueResult.scaleIn = this._scaleIn; } if (this._scaleOut !== undefined) { hasAnyValues = true; internalValueResult.scaleOut = this._scaleOut; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._scaleIn = undefined; this._scaleOut = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._scaleIn = value.scaleIn; this._scaleOut = value.scaleOut; } } get scaleIn() { return this.getNumberAttribute('scale_in'); } set scaleIn(value) { this._scaleIn = value; } // Temporarily expose input value. Use with caution. get scaleInInput() { return this._scaleIn; } get scaleOut() { return this.getNumberAttribute('scale_out'); } set scaleOut(value) { this._scaleOut = value; } // Temporarily expose input value. Use with caution. get scaleOutInput() { return this._scaleOut; } } exports.VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesStorageThresholdsOutputReference = VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesStorageThresholdsOutputReference; _j = JSII_RTTI_SYMBOL_1; VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesStorageThresholdsOutputReference[_j] = { fqn: "@cdktf/provider-google.vmwareenginePrivateCloud.VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesStorageThresholdsOutputReference", version: "16.3.0" }; function vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesToTerraform(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 { autoscale_policy_id: cdktf.stringToTerraform(struct.autoscalePolicyId), node_type_id: cdktf.stringToTerraform(struct.nodeTypeId), scale_out_size: cdktf.numberToTerraform(struct.scaleOutSize), consumed_memory_thresholds: vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesConsumedMemoryThresholdsToTerraform(struct.consumedMemoryThresholds), cpu_thresholds: vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesCpuThresholdsToTerraform(struct.cpuThresholds), storage_thresholds: vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesStorageThresholdsToTerraform(struct.storageThresholds), }; } function vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesToHclTerraform(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 = { autoscale_policy_id: { value: cdktf.stringToHclTerraform(struct.autoscalePolicyId), isBlock: false, type: "simple", storageClassType: "string", }, node_type_id: { value: cdktf.stringToHclTerraform(struct.nodeTypeId), isBlock: false, type: "simple", storageClassType: "string", }, scale_out_size: { value: cdktf.numberToHclTerraform(struct.scaleOutSize), isBlock: false, type: "simple", storageClassType: "number", }, consumed_memory_thresholds: { value: vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesConsumedMemoryThresholdsToHclTerraform(struct.consumedMemoryThresholds), isBlock: true, type: "list", storageClassType: "VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesConsumedMemoryThresholdsList", }, cpu_thresholds: { value: vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesCpuThresholdsToHclTerraform(struct.cpuThresholds), isBlock: true, type: "list", storageClassType: "VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesCpuThresholdsList", }, storage_thresholds: { value: vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesStorageThresholdsToHclTerraform(struct.storageThresholds), isBlock: true, type: "list", storageClassType: "VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesStorageThresholdsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesOutputReference 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; // consumed_memory_thresholds - computed: false, optional: true, required: false this._consumedMemoryThresholds = new VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesConsumedMemoryThresholdsOutputReference(this, "consumed_memory_thresholds"); // cpu_thresholds - computed: false, optional: true, required: false this._cpuThresholds = new VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesCpuThresholdsOutputReference(this, "cpu_thresholds"); // storage_thresholds - computed: false, optional: true, required: false this._storageThresholds = new VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesStorageThresholdsOutputReference(this, "storage_thresholds"); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._autoscalePolicyId !== undefined) { hasAnyValues = true; internalValueResult.autoscalePolicyId = this._autoscalePolicyId; } if (this._nodeTypeId !== undefined) { hasAnyValues = true; internalValueResult.nodeTypeId = this._nodeTypeId; } if (this._scaleOutSize !== undefined) { hasAnyValues = true; internalValueResult.scaleOutSize = this._scaleOutSize; } if (this._consumedMemoryThresholds?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.consumedMemoryThresholds = this._consumedMemoryThresholds?.internalValue; } if (this._cpuThresholds?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.cpuThresholds = this._cpuThresholds?.internalValue; } if (this._storageThresholds?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.storageThresholds = this._storageThresholds?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._autoscalePolicyId = undefined; this._nodeTypeId = undefined; this._scaleOutSize = undefined; this._consumedMemoryThresholds.internalValue = undefined; this._cpuThresholds.internalValue = undefined; this._storageThresholds.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; this._autoscalePolicyId = value.autoscalePolicyId; this._nodeTypeId = value.nodeTypeId; this._scaleOutSize = value.scaleOutSize; this._consumedMemoryThresholds.internalValue = value.consumedMemoryThresholds; this._cpuThresholds.internalValue = value.cpuThresholds; this._storageThresholds.internalValue = value.storageThresholds; } } get autoscalePolicyId() { return this.getStringAttribute('autoscale_policy_id'); } set autoscalePolicyId(value) { this._autoscalePolicyId = value; } // Temporarily expose input value. Use with caution. get autoscalePolicyIdInput() { return this._autoscalePolicyId; } get nodeTypeId() { return this.getStringAttribute('node_type_id'); } set nodeTypeId(value) { this._nodeTypeId = value; } // Temporarily expose input value. Use with caution. get nodeTypeIdInput() { return this._nodeTypeId; } get scaleOutSize() { return this.getNumberAttribute('scale_out_size'); } set scaleOutSize(value) { this._scaleOutSize = value; } // Temporarily expose input value. Use with caution. get scaleOutSizeInput() { return this._scaleOutSize; } get consumedMemoryThresholds() { return this._consumedMemoryThresholds; } putConsumedMemoryThresholds(value) { this._consumedMemoryThresholds.internalValue = value; } resetConsumedMemoryThresholds() { this._consumedMemoryThresholds.internalValue = undefined; } // Temporarily expose input value. Use with caution. get consumedMemoryThresholdsInput() { return this._consumedMemoryThresholds.internalValue; } get cpuThresholds() { return this._cpuThresholds; } putCpuThresholds(value) { this._cpuThresholds.internalValue = value; } resetCpuThresholds() { this._cpuThresholds.internalValue = undefined; } // Temporarily expose input value. Use with caution. get cpuThresholdsInput() { return this._cpuThresholds.internalValue; } get storageThresholds() { return this._storageThresholds; } putStorageThresholds(value) { this._storageThresholds.internalValue = value; } resetStorageThresholds() { this._storageThresholds.internalValue = undefined; } // Temporarily expose input value. Use with caution. get storageThresholdsInput() { return this._storageThresholds.internalValue; } } exports.VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesOutputReference = VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesOutputReference; _k = JSII_RTTI_SYMBOL_1; VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesOutputReference[_k] = { fqn: "@cdktf/provider-google.vmwareenginePrivateCloud.VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesOutputReference", version: "16.3.0" }; class VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesList 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 VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesList = VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesList; _l = JSII_RTTI_SYMBOL_1; VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesList[_l] = { fqn: "@cdktf/provider-google.vmwareenginePrivateCloud.VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesList", version: "16.3.0" }; function vmwareenginePrivateCloudManagementClusterAutoscalingSettingsToTerraform(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 { cool_down_period: cdktf.stringToTerraform(struct.coolDownPeriod), max_cluster_node_count: cdktf.numberToTerraform(struct.maxClusterNodeCount), min_cluster_node_count: cdktf.numberToTerraform(struct.minClusterNodeCount), autoscaling_policies: cdktf.listMapper(vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesToTerraform, true)(struct.autoscalingPolicies), }; } function vmwareenginePrivateCloudManagementClusterAutoscalingSettingsToHclTerraform(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 = { cool_down_period: { value: cdktf.stringToHclTerraform(struct.coolDownPeriod), isBlock: false, type: "simple", storageClassType: "string", }, max_cluster_node_count: { value: cdktf.numberToHclTerraform(struct.maxClusterNodeCount), isBlock: false, type: "simple", storageClassType: "number", }, min_cluster_node_count: { value: cdktf.numberToHclTerraform(struct.minClusterNodeCount), isBlock: false, type: "simple", storageClassType: "number", }, autoscaling_policies: { value: cdktf.listMapperHcl(vmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesToHclTerraform, true)(struct.autoscalingPolicies), isBlock: true, type: "set", storageClassType: "VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class VmwareenginePrivateCloudManagementClusterAutoscalingSettingsOutputReference 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; // autoscaling_policies - computed: false, optional: false, required: true this._autoscalingPolicies = new VmwareenginePrivateCloudManagementClusterAutoscalingSettingsAutoscalingPoliciesList(this, "autoscaling_policies", true); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._coolDownPeriod !== undefined) { hasAnyValues = true; internalValueResult.coolDownPeriod = this._coolDownPeriod; } if (this._maxClusterNodeCount !== undefined) { hasAnyValues = true; internalValueResult.maxClusterNodeCount = this._maxClusterNodeCount; } if (this._minClusterNodeCount !== undefined) { hasAnyValues = true; internalValueResult.minClusterNodeCount = this._minClusterNodeCount; } if (this._autoscalingPolicies?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.autoscalingPolicies = this._autoscalingPolicies?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._coolDownPeriod = undefined; this._maxClusterNodeCount = undefined; this._minClusterNodeCount = undefined; this._autoscalingPolicies.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._coolDownPeriod = value.coolDownPeriod; this._maxClusterNodeCount = value.maxClusterNodeCount; this._minClusterNodeCount = value.minClusterNodeCount; this._autoscalingPolicies.internalValue = value.autoscalingPolicies; } } get coolDownPeriod() { return this.getStringAttribute('cool_down_period'); } set coolDownPeriod(value) { this._coolDownPeriod = value; } resetCoolDownPeriod() { this._coolDownPeriod = undefined; } // Temporarily expose input value. Use with caution. get coolDownPeriodInput() { return this._coolDownPeriod; } get maxClusterNodeCount() { return this.getNumberAttribute('max_cluster_node_count'); } set maxClusterNodeCount(value) { this._maxClusterNodeCount = value; } resetMaxClusterNodeCount() { this._maxClusterNodeCount = undefined; } // Temporarily expose input value. Use with caution. get maxClusterNodeCountInput() { return this._maxClusterNodeCount; } get minClusterNodeCount() { return this.getNumberAttribute('min_cluster_node_count'); } set minClusterNodeCount(value) { this._minClusterNodeCount = value; } resetMinClusterNodeCount() { this._minClusterNodeCount = undefined; } // Temporarily expose input value. Use with caution. get minClusterNodeCountInput() { return this._minClusterNodeCount; } get autoscalingPolicies() { return this._autoscalingPolicies; } putAutoscalingPolicies(value) { this._autoscalingPolicies.internalValue = value; } // Temporarily expose input value. Use with caution. get autoscalingPoliciesInput() { return this._autoscalingPolicies.internalValue; } } exports.VmwareenginePrivateCloudManagementClusterAutoscalingSettingsOutputReference = VmwareenginePrivateCloudManagementClusterAutoscalingSettingsOutputReference; _m = JSII_RTTI_SYMBOL_1; VmwareenginePrivateCloudManagementClusterAutoscalingSettingsOutputReference[_m] = { fqn: "@cdktf/provider-google.vmwareenginePrivateCloud.VmwareenginePrivateCloudManagementClusterAutoscalingSettingsOutputReference", version: "16.3.0" }; function vmwareenginePrivateCloudManagementClusterNodeTypeConfigsToTerraform(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 { custom_core_count: cdktf.numberToTerraform(struct.customCoreCount), node_count: cdktf.numberToTerraform(struct.nodeCount), node_type_id: cdktf.stringToTerraform(struct.nodeTypeId), }; } function vmwareenginePrivateCloudManagementClusterNodeTypeConfigsToHclTerraform(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 = { custom_core_count: { value: cdktf.numberToHclTerraform(struct.customCoreCount), isBlock: false, type: "simple", storageClassType: "number", }, node_count: { value: cdktf.numberToHclTerraform(struct.nodeCount), isBlock: false, type: "simple", storageClassType: "number", }, node_type_id: { value: cdktf.stringToHclTerraform(struct.nodeTypeId), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class VmwareenginePrivateCloudManagementClusterNodeTypeConfigsOutputReference 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; } g