UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

1,217 lines 172 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j; Object.defineProperty(exports, "__esModule", { value: true }); exports.ContainerAzureNodePool = exports.ContainerAzureNodePoolTimeoutsOutputReference = exports.ContainerAzureNodePoolMaxPodsConstraintOutputReference = exports.ContainerAzureNodePoolManagementOutputReference = exports.ContainerAzureNodePoolConfigAOutputReference = exports.ContainerAzureNodePoolConfigSshConfigOutputReference = exports.ContainerAzureNodePoolConfigRootVolumeOutputReference = exports.ContainerAzureNodePoolConfigProxyConfigOutputReference = exports.ContainerAzureNodePoolAutoscalingOutputReference = void 0; exports.containerAzureNodePoolAutoscalingToTerraform = containerAzureNodePoolAutoscalingToTerraform; exports.containerAzureNodePoolAutoscalingToHclTerraform = containerAzureNodePoolAutoscalingToHclTerraform; exports.containerAzureNodePoolConfigProxyConfigToTerraform = containerAzureNodePoolConfigProxyConfigToTerraform; exports.containerAzureNodePoolConfigProxyConfigToHclTerraform = containerAzureNodePoolConfigProxyConfigToHclTerraform; exports.containerAzureNodePoolConfigRootVolumeToTerraform = containerAzureNodePoolConfigRootVolumeToTerraform; exports.containerAzureNodePoolConfigRootVolumeToHclTerraform = containerAzureNodePoolConfigRootVolumeToHclTerraform; exports.containerAzureNodePoolConfigSshConfigToTerraform = containerAzureNodePoolConfigSshConfigToTerraform; exports.containerAzureNodePoolConfigSshConfigToHclTerraform = containerAzureNodePoolConfigSshConfigToHclTerraform; exports.containerAzureNodePoolConfigAToTerraform = containerAzureNodePoolConfigAToTerraform; exports.containerAzureNodePoolConfigAToHclTerraform = containerAzureNodePoolConfigAToHclTerraform; exports.containerAzureNodePoolManagementToTerraform = containerAzureNodePoolManagementToTerraform; exports.containerAzureNodePoolManagementToHclTerraform = containerAzureNodePoolManagementToHclTerraform; exports.containerAzureNodePoolMaxPodsConstraintToTerraform = containerAzureNodePoolMaxPodsConstraintToTerraform; exports.containerAzureNodePoolMaxPodsConstraintToHclTerraform = containerAzureNodePoolMaxPodsConstraintToHclTerraform; exports.containerAzureNodePoolTimeoutsToTerraform = containerAzureNodePoolTimeoutsToTerraform; exports.containerAzureNodePoolTimeoutsToHclTerraform = containerAzureNodePoolTimeoutsToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function containerAzureNodePoolAutoscalingToTerraform(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 { max_node_count: cdktf.numberToTerraform(struct.maxNodeCount), min_node_count: cdktf.numberToTerraform(struct.minNodeCount), }; } function containerAzureNodePoolAutoscalingToHclTerraform(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 = { max_node_count: { value: cdktf.numberToHclTerraform(struct.maxNodeCount), isBlock: false, type: "simple", storageClassType: "number", }, min_node_count: { value: cdktf.numberToHclTerraform(struct.minNodeCount), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ContainerAzureNodePoolAutoscalingOutputReference 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._maxNodeCount !== undefined) { hasAnyValues = true; internalValueResult.maxNodeCount = this._maxNodeCount; } if (this._minNodeCount !== undefined) { hasAnyValues = true; internalValueResult.minNodeCount = this._minNodeCount; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._maxNodeCount = undefined; this._minNodeCount = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._maxNodeCount = value.maxNodeCount; this._minNodeCount = value.minNodeCount; } } get maxNodeCount() { return this.getNumberAttribute('max_node_count'); } set maxNodeCount(value) { this._maxNodeCount = value; } // Temporarily expose input value. Use with caution. get maxNodeCountInput() { return this._maxNodeCount; } get minNodeCount() { return this.getNumberAttribute('min_node_count'); } set minNodeCount(value) { this._minNodeCount = value; } // Temporarily expose input value. Use with caution. get minNodeCountInput() { return this._minNodeCount; } } exports.ContainerAzureNodePoolAutoscalingOutputReference = ContainerAzureNodePoolAutoscalingOutputReference; _a = JSII_RTTI_SYMBOL_1; ContainerAzureNodePoolAutoscalingOutputReference[_a] = { fqn: "@cdktf/provider-google.containerAzureNodePool.ContainerAzureNodePoolAutoscalingOutputReference", version: "14.35.0" }; function containerAzureNodePoolConfigProxyConfigToTerraform(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 { resource_group_id: cdktf.stringToTerraform(struct.resourceGroupId), secret_id: cdktf.stringToTerraform(struct.secretId), }; } function containerAzureNodePoolConfigProxyConfigToHclTerraform(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 = { resource_group_id: { value: cdktf.stringToHclTerraform(struct.resourceGroupId), isBlock: false, type: "simple", storageClassType: "string", }, secret_id: { value: cdktf.stringToHclTerraform(struct.secretId), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ContainerAzureNodePoolConfigProxyConfigOutputReference 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._resourceGroupId !== undefined) { hasAnyValues = true; internalValueResult.resourceGroupId = this._resourceGroupId; } if (this._secretId !== undefined) { hasAnyValues = true; internalValueResult.secretId = this._secretId; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._resourceGroupId = undefined; this._secretId = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._resourceGroupId = value.resourceGroupId; this._secretId = value.secretId; } } get resourceGroupId() { return this.getStringAttribute('resource_group_id'); } set resourceGroupId(value) { this._resourceGroupId = value; } // Temporarily expose input value. Use with caution. get resourceGroupIdInput() { return this._resourceGroupId; } get secretId() { return this.getStringAttribute('secret_id'); } set secretId(value) { this._secretId = value; } // Temporarily expose input value. Use with caution. get secretIdInput() { return this._secretId; } } exports.ContainerAzureNodePoolConfigProxyConfigOutputReference = ContainerAzureNodePoolConfigProxyConfigOutputReference; _b = JSII_RTTI_SYMBOL_1; ContainerAzureNodePoolConfigProxyConfigOutputReference[_b] = { fqn: "@cdktf/provider-google.containerAzureNodePool.ContainerAzureNodePoolConfigProxyConfigOutputReference", version: "14.35.0" }; function containerAzureNodePoolConfigRootVolumeToTerraform(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 { size_gib: cdktf.numberToTerraform(struct.sizeGib), }; } function containerAzureNodePoolConfigRootVolumeToHclTerraform(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 = { size_gib: { value: cdktf.numberToHclTerraform(struct.sizeGib), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ContainerAzureNodePoolConfigRootVolumeOutputReference 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._sizeGib !== undefined) { hasAnyValues = true; internalValueResult.sizeGib = this._sizeGib; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._sizeGib = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._sizeGib = value.sizeGib; } } get sizeGib() { return this.getNumberAttribute('size_gib'); } set sizeGib(value) { this._sizeGib = value; } resetSizeGib() { this._sizeGib = undefined; } // Temporarily expose input value. Use with caution. get sizeGibInput() { return this._sizeGib; } } exports.ContainerAzureNodePoolConfigRootVolumeOutputReference = ContainerAzureNodePoolConfigRootVolumeOutputReference; _c = JSII_RTTI_SYMBOL_1; ContainerAzureNodePoolConfigRootVolumeOutputReference[_c] = { fqn: "@cdktf/provider-google.containerAzureNodePool.ContainerAzureNodePoolConfigRootVolumeOutputReference", version: "14.35.0" }; function containerAzureNodePoolConfigSshConfigToTerraform(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 { authorized_key: cdktf.stringToTerraform(struct.authorizedKey), }; } function containerAzureNodePoolConfigSshConfigToHclTerraform(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 = { authorized_key: { value: cdktf.stringToHclTerraform(struct.authorizedKey), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ContainerAzureNodePoolConfigSshConfigOutputReference 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._authorizedKey !== undefined) { hasAnyValues = true; internalValueResult.authorizedKey = this._authorizedKey; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._authorizedKey = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._authorizedKey = value.authorizedKey; } } get authorizedKey() { return this.getStringAttribute('authorized_key'); } set authorizedKey(value) { this._authorizedKey = value; } // Temporarily expose input value. Use with caution. get authorizedKeyInput() { return this._authorizedKey; } } exports.ContainerAzureNodePoolConfigSshConfigOutputReference = ContainerAzureNodePoolConfigSshConfigOutputReference; _d = JSII_RTTI_SYMBOL_1; ContainerAzureNodePoolConfigSshConfigOutputReference[_d] = { fqn: "@cdktf/provider-google.containerAzureNodePool.ContainerAzureNodePoolConfigSshConfigOutputReference", version: "14.35.0" }; function containerAzureNodePoolConfigAToTerraform(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), tags: cdktf.hashMapper(cdktf.stringToTerraform)(struct.tags), vm_size: cdktf.stringToTerraform(struct.vmSize), proxy_config: containerAzureNodePoolConfigProxyConfigToTerraform(struct.proxyConfig), root_volume: containerAzureNodePoolConfigRootVolumeToTerraform(struct.rootVolume), ssh_config: containerAzureNodePoolConfigSshConfigToTerraform(struct.sshConfig), }; } function containerAzureNodePoolConfigAToHclTerraform(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", }, tags: { value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.tags), isBlock: false, type: "map", storageClassType: "stringMap", }, vm_size: { value: cdktf.stringToHclTerraform(struct.vmSize), isBlock: false, type: "simple", storageClassType: "string", }, proxy_config: { value: containerAzureNodePoolConfigProxyConfigToHclTerraform(struct.proxyConfig), isBlock: true, type: "list", storageClassType: "ContainerAzureNodePoolConfigProxyConfigList", }, root_volume: { value: containerAzureNodePoolConfigRootVolumeToHclTerraform(struct.rootVolume), isBlock: true, type: "list", storageClassType: "ContainerAzureNodePoolConfigRootVolumeList", }, ssh_config: { value: containerAzureNodePoolConfigSshConfigToHclTerraform(struct.sshConfig), isBlock: true, type: "list", storageClassType: "ContainerAzureNodePoolConfigSshConfigList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ContainerAzureNodePoolConfigAOutputReference 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; // proxy_config - computed: false, optional: true, required: false this._proxyConfig = new ContainerAzureNodePoolConfigProxyConfigOutputReference(this, "proxy_config"); // root_volume - computed: false, optional: true, required: false this._rootVolume = new ContainerAzureNodePoolConfigRootVolumeOutputReference(this, "root_volume"); // ssh_config - computed: false, optional: false, required: true this._sshConfig = new ContainerAzureNodePoolConfigSshConfigOutputReference(this, "ssh_config"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._labels !== undefined) { hasAnyValues = true; internalValueResult.labels = this._labels; } if (this._tags !== undefined) { hasAnyValues = true; internalValueResult.tags = this._tags; } if (this._vmSize !== undefined) { hasAnyValues = true; internalValueResult.vmSize = this._vmSize; } if (this._proxyConfig?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.proxyConfig = this._proxyConfig?.internalValue; } if (this._rootVolume?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.rootVolume = this._rootVolume?.internalValue; } if (this._sshConfig?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.sshConfig = this._sshConfig?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._labels = undefined; this._tags = undefined; this._vmSize = undefined; this._proxyConfig.internalValue = undefined; this._rootVolume.internalValue = undefined; this._sshConfig.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._labels = value.labels; this._tags = value.tags; this._vmSize = value.vmSize; this._proxyConfig.internalValue = value.proxyConfig; this._rootVolume.internalValue = value.rootVolume; this._sshConfig.internalValue = value.sshConfig; } } 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 tags() { return this.getStringMapAttribute('tags'); } set tags(value) { this._tags = value; } resetTags() { this._tags = undefined; } // Temporarily expose input value. Use with caution. get tagsInput() { return this._tags; } get vmSize() { return this.getStringAttribute('vm_size'); } set vmSize(value) { this._vmSize = value; } resetVmSize() { this._vmSize = undefined; } // Temporarily expose input value. Use with caution. get vmSizeInput() { return this._vmSize; } get proxyConfig() { return this._proxyConfig; } putProxyConfig(value) { this._proxyConfig.internalValue = value; } resetProxyConfig() { this._proxyConfig.internalValue = undefined; } // Temporarily expose input value. Use with caution. get proxyConfigInput() { return this._proxyConfig.internalValue; } get rootVolume() { return this._rootVolume; } putRootVolume(value) { this._rootVolume.internalValue = value; } resetRootVolume() { this._rootVolume.internalValue = undefined; } // Temporarily expose input value. Use with caution. get rootVolumeInput() { return this._rootVolume.internalValue; } get sshConfig() { return this._sshConfig; } putSshConfig(value) { this._sshConfig.internalValue = value; } // Temporarily expose input value. Use with caution. get sshConfigInput() { return this._sshConfig.internalValue; } } exports.ContainerAzureNodePoolConfigAOutputReference = ContainerAzureNodePoolConfigAOutputReference; _e = JSII_RTTI_SYMBOL_1; ContainerAzureNodePoolConfigAOutputReference[_e] = { fqn: "@cdktf/provider-google.containerAzureNodePool.ContainerAzureNodePoolConfigAOutputReference", version: "14.35.0" }; function containerAzureNodePoolManagementToTerraform(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 { auto_repair: cdktf.booleanToTerraform(struct.autoRepair), }; } function containerAzureNodePoolManagementToHclTerraform(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 = { auto_repair: { value: cdktf.booleanToHclTerraform(struct.autoRepair), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ContainerAzureNodePoolManagementOutputReference 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._autoRepair !== undefined) { hasAnyValues = true; internalValueResult.autoRepair = this._autoRepair; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._autoRepair = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._autoRepair = value.autoRepair; } } get autoRepair() { return this.getBooleanAttribute('auto_repair'); } set autoRepair(value) { this._autoRepair = value; } resetAutoRepair() { this._autoRepair = undefined; } // Temporarily expose input value. Use with caution. get autoRepairInput() { return this._autoRepair; } } exports.ContainerAzureNodePoolManagementOutputReference = ContainerAzureNodePoolManagementOutputReference; _f = JSII_RTTI_SYMBOL_1; ContainerAzureNodePoolManagementOutputReference[_f] = { fqn: "@cdktf/provider-google.containerAzureNodePool.ContainerAzureNodePoolManagementOutputReference", version: "14.35.0" }; function containerAzureNodePoolMaxPodsConstraintToTerraform(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 { max_pods_per_node: cdktf.numberToTerraform(struct.maxPodsPerNode), }; } function containerAzureNodePoolMaxPodsConstraintToHclTerraform(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 = { max_pods_per_node: { value: cdktf.numberToHclTerraform(struct.maxPodsPerNode), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ContainerAzureNodePoolMaxPodsConstraintOutputReference 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._maxPodsPerNode !== undefined) { hasAnyValues = true; internalValueResult.maxPodsPerNode = this._maxPodsPerNode; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._maxPodsPerNode = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._maxPodsPerNode = value.maxPodsPerNode; } } get maxPodsPerNode() { return this.getNumberAttribute('max_pods_per_node'); } set maxPodsPerNode(value) { this._maxPodsPerNode = value; } // Temporarily expose input value. Use with caution. get maxPodsPerNodeInput() { return this._maxPodsPerNode; } } exports.ContainerAzureNodePoolMaxPodsConstraintOutputReference = ContainerAzureNodePoolMaxPodsConstraintOutputReference; _g = JSII_RTTI_SYMBOL_1; ContainerAzureNodePoolMaxPodsConstraintOutputReference[_g] = { fqn: "@cdktf/provider-google.containerAzureNodePool.ContainerAzureNodePoolMaxPodsConstraintOutputReference", version: "14.35.0" }; function containerAzureNodePoolTimeoutsToTerraform(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 { create: cdktf.stringToTerraform(struct.create), delete: cdktf.stringToTerraform(struct.delete), update: cdktf.stringToTerraform(struct.update), }; } function containerAzureNodePoolTimeoutsToHclTerraform(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 = { create: { value: cdktf.stringToHclTerraform(struct.create), isBlock: false, type: "simple", storageClassType: "string", }, delete: { value: cdktf.stringToHclTerraform(struct.delete), isBlock: false, type: "simple", storageClassType: "string", }, update: { value: cdktf.stringToHclTerraform(struct.update), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ContainerAzureNodePoolTimeoutsOutputReference 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); this.isEmptyObject = false; } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._create !== undefined) { hasAnyValues = true; internalValueResult.create = this._create; } if (this._delete !== undefined) { hasAnyValues = true; internalValueResult.delete = this._delete; } if (this._update !== undefined) { hasAnyValues = true; internalValueResult.update = this._update; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._create = undefined; this._delete = undefined; this._update = 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._create = value.create; this._delete = value.delete; this._update = value.update; } } get create() { return this.getStringAttribute('create'); } set create(value) { this._create = value; } resetCreate() { this._create = undefined; } // Temporarily expose input value. Use with caution. get createInput() { return this._create; } get delete() { return this.getStringAttribute('delete'); } set delete(value) { this._delete = value; } resetDelete() { this._delete = undefined; } // Temporarily expose input value. Use with caution. get deleteInput() { return this._delete; } get update() { return this.getStringAttribute('update'); } set update(value) { this._update = value; } resetUpdate() { this._update = undefined; } // Temporarily expose input value. Use with caution. get updateInput() { return this._update; } } exports.ContainerAzureNodePoolTimeoutsOutputReference = ContainerAzureNodePoolTimeoutsOutputReference; _h = JSII_RTTI_SYMBOL_1; ContainerAzureNodePoolTimeoutsOutputReference[_h] = { fqn: "@cdktf/provider-google.containerAzureNodePool.ContainerAzureNodePoolTimeoutsOutputReference", version: "14.35.0" }; /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/container_azure_node_pool google_container_azure_node_pool} */ class ContainerAzureNodePool extends cdktf.TerraformResource { // ============== // STATIC Methods // ============== /** * Generates CDKTF code for importing a ContainerAzureNodePool resource upon running "cdktf plan <stack-name>" * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the ContainerAzureNodePool to import * @param importFromId The id of the existing ContainerAzureNodePool that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/container_azure_node_pool#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the ContainerAzureNodePool to import is found */ static generateConfigForImport(scope, importToId, importFromId, provider) { return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "google_container_azure_node_pool", importId: importFromId, provider }); } // =========== // INITIALIZER // =========== /** * Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/container_azure_node_pool google_container_azure_node_pool} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options ContainerAzureNodePoolConfig */ constructor(scope, id, config) { super(scope, id, { terraformResourceType: 'google_container_azure_node_pool', terraformGeneratorMetadata: { providerName: 'google', providerVersion: '6.36.0', providerVersionConstraint: '~> 6.0' }, provider: config.provider, dependsOn: config.dependsOn, count: config.count, lifecycle: config.lifecycle, provisioners: config.provisioners, connection: config.connection, forEach: config.forEach }); // effective_annotations - computed: true, optional: false, required: false this._effectiveAnnotations = new cdktf.StringMap(this, "effective_annotations"); // autoscaling - computed: false, optional: false, required: true this._autoscaling = new ContainerAzureNodePoolAutoscalingOutputReference(this, "autoscaling"); // config - computed: false, optional: false, required: true this._config = new ContainerAzureNodePoolConfigAOutputReference(this, "config"); // management - computed: false, optional: true, required: false this._management = new ContainerAzureNodePoolManagementOutputReference(this, "management"); // max_pods_constraint - computed: false, optional: false, required: true this._maxPodsConstraint = new ContainerAzureNodePoolMaxPodsConstraintOutputReference(this, "max_pods_constraint"); // timeouts - computed: false, optional: true, required: false this._timeouts = new ContainerAzureNodePoolTimeoutsOutputReference(this, "timeouts"); this._annotations = config.annotations; this._azureAvailabilityZone = config.azureAvailabilityZone; this._cluster = config.cluster; this._id = config.id; this._location = config.location; this._name = config.name; this._project = config.project; this._subnetId = config.subnetId; this._version = config.version; this._autoscaling.internalValue = config.autoscaling; this._config.internalValue = config.config; this._management.internalValue = config.management; this._maxPodsConstraint.internalValue = config.maxPodsConstraint; this._timeouts.internalValue = config.timeouts; } get annotations() { return this.getStringMapAttribute('annotations'); } set annotations(value) { this._annotations = value; } resetAnnotations() { this._annotations = undefined; } // Temporarily expose input value. Use with caution. get annotationsInput() { return this._annotations; } get azureAvailabilityZone() { return this.getStringAttribute('azure_availability_zone'); } set azureAvailabilityZone(value) { this._azureAvailabilityZone = value; } resetAzureAvailabilityZone() { this._azureAvailabilityZone = undefined; } // Temporarily expose input value. Use with caution. get azureAvailabilityZoneInput() { return this._azureAvailabilityZone; } get cluster() { return this.getStringAttribute('cluster'); } set cluster(value) { this._cluster = value; } // Temporarily expose input value. Use with caution. get clusterInput() { return this._cluster; } // create_time - computed: true, optional: false, required: false get createTime() { return this.getStringAttribute('create_time'); } get effectiveAnnotations() { return this._effectiveAnnotations; } // etag - computed: true, optional: false, required: false get etag() { return this.getStringAttribute('etag'); } get id() { return this.getStringAttribute('id'); } set id(value) { this._id = value; } resetId() { this._id = undefined; } // Temporarily expose input value. Use with caution. get idInput() { return this._id; } get location() { return this.getStringAttribute('location'); } set location(value) { this._location = value; } // Temporarily expose input value. Use with caution. get locationInput() { return this._location; } 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 project() { return this.getStringAttribute('project'); } set project(value) { this._project = value; } resetProject() { this._project = undefined; } // Temporarily expose input value. Use with caution. get projectInput() { return this._project; } // reconciling - computed: true, optional: false, required: false get reconciling() { return this.getBooleanAttribute('reconciling'); } // state - computed: true, optional: false, required: false get state() { return this.getStringAttribute('state'); } get subnetId() { return this.getStringAttribute('subnet_id'); } set subnetId(value) { this._subnetId = value; } // Temporarily expose input value. Use with caution. get subnetIdInput() { return this._subnetId; } // uid - computed: true, optional: false, required: false get uid() { return this.getStringAttribute('uid'); } // update_time - computed: true, optional: false, required: false get updateTime() { return this.getStringAttribute('update_time'); } get version() { return this.getStringAttribute('version'); } set version(value) { this._version = value; } // Temporarily expose input value. Use with caution. get versionInput() { return this._version; } get autoscaling() { return this._autoscaling; } putAutoscaling(value) { this._autoscaling.internalValue = value; } // Temporarily expose input value. Use with caution. get autoscalingInput() { return this._autoscaling.internalValue; } get config() { return this._config; } putConfig(value) { this._config.internalValue = value; } // Temporarily expose input value. Use with caution. get configInput() { return this._config.internalValue; } get management() { return this._management; } putManagement(value) { this._management.internalValue = value; } resetManagement() { this._management.internalValue = undefined; } // Temporarily expose input value. Use with caution. get managementInput() { return this._management.internalValue; } get maxPodsConstraint() { return this._maxPodsConstraint; } putMaxPodsConstraint(value) { this._maxPodsConstraint.internalValue = value; } // Temporarily expose input value. Use with caution. get maxPodsConstraintInput() { return this._maxPodsConstraint.internalValue; } get timeouts() { return this._timeouts; } putTimeouts(value) { this._timeouts.internalValue = value; } resetTimeouts() { this._timeouts.internalValue = undefined; } // Temporarily expose input value. Use with caution. get timeoutsInput() { return this._timeouts.internalValue; } // ========= // SYNTHESIS // ========= synthesizeAttributes() { return { annotations: cdktf.hashMapper(cdktf.stringToTerraform)(this._annotations), azure_availability_zone: cdktf.stringToTerraform(this._azureAvailabilityZone), cluster: cdktf.stringToTerraform(this._cluster), id: cdktf.stringToTerraform(this._id), location: cdktf.stringToTerraform(this._location), name: cdktf.stringToTerraform(this._name), project: cdktf.stringToTerraform(this._project), subnet_id: cdktf.stringToTerraform(this._subnetId), version: cdktf.stringToTerraform(this._version), autoscaling: containerAzureNodePoolAutoscalingToTerraform(this._autoscaling.internalValue), config: containerAzureNodePoolConfigAToTerraform(this._config.internalValue), management: containerAzureNodePoolManagementToTerraform(this._management.internalValue), max_pods_constraint: containerAzureNodePoolMaxPodsConstraintToTerraform(this._maxPodsConstraint.internalValue), timeouts: containerAzureNodePoolTimeoutsToTerraform(this._timeouts.internalValue), }; } synthesizeHclAttributes() { const attrs = { annotations: { value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._annotations), isBlock: false, type: "map", storageClassType: "stringMap", }, azure_availability_zone: { value: cdktf.stringToHclTerraform(this._azureAvailabilityZone), isBlock: false, type: "simple", storageClassType: "string", }, cluster: { value: cdktf.stringToHclTerraform(this._cluster), isBlock: false, type: "simple", storageClassType: "string", }, id: { value: cdktf.stringToHclTerraform(this._id), isBlock: false, type: "simple", storageClassType: "string", }, location: { value: cdktf.stringToHclTerraform(this._location), isBlock: false, type: "simple", storageClassType: "string", }, name: { value: cdktf.stringToHclTerraform(this._name), isBlock: false, type: "simple", storageClassType: "string", }, project: { value: cdktf.stringToHclTerraform(this._project), isBlock: false, type: "simple", storageClassType: "string", }, subnet_id: { value: cdktf.stringToHclTerraform(this._subnetId), isBlock: false, type: "simple", storageClassType: "string", }, version: { value: cdktf.stringToHclTerraform(this._version), isBlock: false, type: "simple", storageClassType: "string", }, autoscaling: { value: containerAzureNodePoolAutoscalingToHclTerraform(this._autoscaling.internalValue), isBlock: true, type: "list", storageClassType: "ContainerAzureNodePoolAutoscalingList", }, config: { value: containerAzureNodePoolConfigAToHclTerraform(this._config.internalValue), isBlock: true, type: "list", storageClassType: "ContainerAzureNodePoolConfigAList", }, management: { value: containerAzureNodePoolManagementToHclTerraform(this._management.internalValue), isBlock: true, type: "list", storageClassType: "ContainerAzureNodePoolManagementList", }, max_pods_constraint: { value: containerAzureNodePoolMaxPodsConstraintToHclTerraform(this._maxPodsConstraint.internalValue), isBlock: true, type: "list", storageClassType: "ContainerAzureNodePoolMaxPodsConstraintList", }, timeouts: { value: containerAzureNodePoolTimeoutsToHclTerraform(this._timeouts.internalValue), isBlock: true, type: "struct", storageClassType: "ContainerAzureNodePoolTimeouts", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } } exports.ContainerAzureNodePool = ContainerAzureNodePool; _j = JSII_RTTI_SYMBOL_1; ContainerAzureNodePool[_j] = { fqn: "@cdktf/provider-google.containerAzureNodePool.ContainerAzureNodePool", version: "14.35.0" }; // ================= // STATIC PROPERTIES // ================= ContainerAzureNodePool.tfResourceType = "google_container_azure_node_pool"; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29udGFpbmVyLWF6dXJlLW5vZGUtcG9vbC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBc0hBLG9HQVNDO0FBR0QsMEdBc0JDO0FBaUZELGdIQVNDO0FBR0Qsc0hBc0JDO0FBMkVELDhHQVFDO0FBR0Qsb0hBZ0JDO0FBMkRELDRHQVFDO0FBR0Qsa0hBZ0JDO0FBc0ZELDRGQWFDO0FBR0Qsa0dBOENDO0FBc0tELGtHQVFDO0FBR0Qsd0dBZ0JDO0FBMkRELGdIQVFDO0FBR0Qsc0hBZ0JDO0FBOERELDhGQVVDO0FBR0Qsb0dBNEJDOztBQWg5QkQsK0JBQStCO0FBNkcvQixTQUFnQiw0Q0FBNEMsQ0FBQyxNQUE2RjtJQUN4SixJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQUMsT0FBTyxNQUFNLENBQUM7SUFBQyxDQUFDO0lBQzVGLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvSEFBb0gsQ0FBQyxDQUFDO0lBQ3hJLENBQUM7SUFDRCxPQUFPO1FBQ0wsY0FBYyxFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFPLENBQUMsWUFBWSxDQUFDO1FBQzdELGNBQWMsRUFBRSxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTyxDQUFDLFlBQVksQ0FBQztLQUM5RCxDQUFBO0FBQ0gsQ0FBQztBQUdELFNBQWdCLCtDQUErQyxDQUFDLE1BQTZGO0lBQzNKLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNE