UNPKG

@cdktf/provider-azurerm

Version:

Prebuilt azurerm Provider for Terraform CDK (cdktf)

1,160 lines 429 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.LinuxVirtualMachine = exports.LinuxVirtualMachineTimeoutsOutputReference = exports.linuxVirtualMachineTimeoutsToHclTerraform = exports.linuxVirtualMachineTimeoutsToTerraform = exports.LinuxVirtualMachineTerminationNotificationOutputReference = exports.linuxVirtualMachineTerminationNotificationToHclTerraform = exports.linuxVirtualMachineTerminationNotificationToTerraform = exports.LinuxVirtualMachineSourceImageReferenceOutputReference = exports.linuxVirtualMachineSourceImageReferenceToHclTerraform = exports.linuxVirtualMachineSourceImageReferenceToTerraform = exports.LinuxVirtualMachineSecretList = exports.LinuxVirtualMachineSecretOutputReference = exports.linuxVirtualMachineSecretToHclTerraform = exports.linuxVirtualMachineSecretToTerraform = exports.LinuxVirtualMachineSecretCertificateList = exports.LinuxVirtualMachineSecretCertificateOutputReference = exports.linuxVirtualMachineSecretCertificateToHclTerraform = exports.linuxVirtualMachineSecretCertificateToTerraform = exports.LinuxVirtualMachinePlanOutputReference = exports.linuxVirtualMachinePlanToHclTerraform = exports.linuxVirtualMachinePlanToTerraform = exports.LinuxVirtualMachineOsImageNotificationOutputReference = exports.linuxVirtualMachineOsImageNotificationToHclTerraform = exports.linuxVirtualMachineOsImageNotificationToTerraform = exports.LinuxVirtualMachineOsDiskOutputReference = exports.linuxVirtualMachineOsDiskToHclTerraform = exports.linuxVirtualMachineOsDiskToTerraform = exports.LinuxVirtualMachineOsDiskDiffDiskSettingsOutputReference = exports.linuxVirtualMachineOsDiskDiffDiskSettingsToHclTerraform = exports.linuxVirtualMachineOsDiskDiffDiskSettingsToTerraform = exports.LinuxVirtualMachineIdentityOutputReference = exports.linuxVirtualMachineIdentityToHclTerraform = exports.linuxVirtualMachineIdentityToTerraform = exports.LinuxVirtualMachineGalleryApplicationList = exports.LinuxVirtualMachineGalleryApplicationOutputReference = exports.linuxVirtualMachineGalleryApplicationToHclTerraform = exports.linuxVirtualMachineGalleryApplicationToTerraform = exports.LinuxVirtualMachineBootDiagnosticsOutputReference = exports.linuxVirtualMachineBootDiagnosticsToHclTerraform = exports.linuxVirtualMachineBootDiagnosticsToTerraform = exports.LinuxVirtualMachineAdminSshKeyList = exports.LinuxVirtualMachineAdminSshKeyOutputReference = exports.linuxVirtualMachineAdminSshKeyToHclTerraform = exports.linuxVirtualMachineAdminSshKeyToTerraform = exports.LinuxVirtualMachineAdditionalCapabilitiesOutputReference = exports.linuxVirtualMachineAdditionalCapabilitiesToHclTerraform = exports.linuxVirtualMachineAdditionalCapabilitiesToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function linuxVirtualMachineAdditionalCapabilitiesToTerraform(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 { hibernation_enabled: cdktf.booleanToTerraform(struct.hibernationEnabled), ultra_ssd_enabled: cdktf.booleanToTerraform(struct.ultraSsdEnabled), }; } exports.linuxVirtualMachineAdditionalCapabilitiesToTerraform = linuxVirtualMachineAdditionalCapabilitiesToTerraform; function linuxVirtualMachineAdditionalCapabilitiesToHclTerraform(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 = { hibernation_enabled: { value: cdktf.booleanToHclTerraform(struct.hibernationEnabled), isBlock: false, type: "simple", storageClassType: "boolean", }, ultra_ssd_enabled: { value: cdktf.booleanToHclTerraform(struct.ultraSsdEnabled), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.linuxVirtualMachineAdditionalCapabilitiesToHclTerraform = linuxVirtualMachineAdditionalCapabilitiesToHclTerraform; class LinuxVirtualMachineAdditionalCapabilitiesOutputReference 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._hibernationEnabled !== undefined) { hasAnyValues = true; internalValueResult.hibernationEnabled = this._hibernationEnabled; } if (this._ultraSsdEnabled !== undefined) { hasAnyValues = true; internalValueResult.ultraSsdEnabled = this._ultraSsdEnabled; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._hibernationEnabled = undefined; this._ultraSsdEnabled = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._hibernationEnabled = value.hibernationEnabled; this._ultraSsdEnabled = value.ultraSsdEnabled; } } get hibernationEnabled() { return this.getBooleanAttribute('hibernation_enabled'); } set hibernationEnabled(value) { this._hibernationEnabled = value; } resetHibernationEnabled() { this._hibernationEnabled = undefined; } // Temporarily expose input value. Use with caution. get hibernationEnabledInput() { return this._hibernationEnabled; } get ultraSsdEnabled() { return this.getBooleanAttribute('ultra_ssd_enabled'); } set ultraSsdEnabled(value) { this._ultraSsdEnabled = value; } resetUltraSsdEnabled() { this._ultraSsdEnabled = undefined; } // Temporarily expose input value. Use with caution. get ultraSsdEnabledInput() { return this._ultraSsdEnabled; } } exports.LinuxVirtualMachineAdditionalCapabilitiesOutputReference = LinuxVirtualMachineAdditionalCapabilitiesOutputReference; _a = JSII_RTTI_SYMBOL_1; LinuxVirtualMachineAdditionalCapabilitiesOutputReference[_a] = { fqn: "@cdktf/provider-azurerm.linuxVirtualMachine.LinuxVirtualMachineAdditionalCapabilitiesOutputReference", version: "12.27.0" }; function linuxVirtualMachineAdminSshKeyToTerraform(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 { public_key: cdktf.stringToTerraform(struct.publicKey), username: cdktf.stringToTerraform(struct.username), }; } exports.linuxVirtualMachineAdminSshKeyToTerraform = linuxVirtualMachineAdminSshKeyToTerraform; function linuxVirtualMachineAdminSshKeyToHclTerraform(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 = { public_key: { value: cdktf.stringToHclTerraform(struct.publicKey), isBlock: false, type: "simple", storageClassType: "string", }, username: { value: cdktf.stringToHclTerraform(struct.username), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.linuxVirtualMachineAdminSshKeyToHclTerraform = linuxVirtualMachineAdminSshKeyToHclTerraform; class LinuxVirtualMachineAdminSshKeyOutputReference 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._publicKey !== undefined) { hasAnyValues = true; internalValueResult.publicKey = this._publicKey; } if (this._username !== undefined) { hasAnyValues = true; internalValueResult.username = this._username; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._publicKey = undefined; this._username = 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._publicKey = value.publicKey; this._username = value.username; } } get publicKey() { return this.getStringAttribute('public_key'); } set publicKey(value) { this._publicKey = value; } // Temporarily expose input value. Use with caution. get publicKeyInput() { return this._publicKey; } get username() { return this.getStringAttribute('username'); } set username(value) { this._username = value; } // Temporarily expose input value. Use with caution. get usernameInput() { return this._username; } } exports.LinuxVirtualMachineAdminSshKeyOutputReference = LinuxVirtualMachineAdminSshKeyOutputReference; _b = JSII_RTTI_SYMBOL_1; LinuxVirtualMachineAdminSshKeyOutputReference[_b] = { fqn: "@cdktf/provider-azurerm.linuxVirtualMachine.LinuxVirtualMachineAdminSshKeyOutputReference", version: "12.27.0" }; class LinuxVirtualMachineAdminSshKeyList 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 LinuxVirtualMachineAdminSshKeyOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.LinuxVirtualMachineAdminSshKeyList = LinuxVirtualMachineAdminSshKeyList; _c = JSII_RTTI_SYMBOL_1; LinuxVirtualMachineAdminSshKeyList[_c] = { fqn: "@cdktf/provider-azurerm.linuxVirtualMachine.LinuxVirtualMachineAdminSshKeyList", version: "12.27.0" }; function linuxVirtualMachineBootDiagnosticsToTerraform(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 { storage_account_uri: cdktf.stringToTerraform(struct.storageAccountUri), }; } exports.linuxVirtualMachineBootDiagnosticsToTerraform = linuxVirtualMachineBootDiagnosticsToTerraform; function linuxVirtualMachineBootDiagnosticsToHclTerraform(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 = { storage_account_uri: { value: cdktf.stringToHclTerraform(struct.storageAccountUri), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.linuxVirtualMachineBootDiagnosticsToHclTerraform = linuxVirtualMachineBootDiagnosticsToHclTerraform; class LinuxVirtualMachineBootDiagnosticsOutputReference 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._storageAccountUri !== undefined) { hasAnyValues = true; internalValueResult.storageAccountUri = this._storageAccountUri; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._storageAccountUri = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._storageAccountUri = value.storageAccountUri; } } get storageAccountUri() { return this.getStringAttribute('storage_account_uri'); } set storageAccountUri(value) { this._storageAccountUri = value; } resetStorageAccountUri() { this._storageAccountUri = undefined; } // Temporarily expose input value. Use with caution. get storageAccountUriInput() { return this._storageAccountUri; } } exports.LinuxVirtualMachineBootDiagnosticsOutputReference = LinuxVirtualMachineBootDiagnosticsOutputReference; _d = JSII_RTTI_SYMBOL_1; LinuxVirtualMachineBootDiagnosticsOutputReference[_d] = { fqn: "@cdktf/provider-azurerm.linuxVirtualMachine.LinuxVirtualMachineBootDiagnosticsOutputReference", version: "12.27.0" }; function linuxVirtualMachineGalleryApplicationToTerraform(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 { automatic_upgrade_enabled: cdktf.booleanToTerraform(struct.automaticUpgradeEnabled), configuration_blob_uri: cdktf.stringToTerraform(struct.configurationBlobUri), order: cdktf.numberToTerraform(struct.order), tag: cdktf.stringToTerraform(struct.tag), treat_failure_as_deployment_failure_enabled: cdktf.booleanToTerraform(struct.treatFailureAsDeploymentFailureEnabled), version_id: cdktf.stringToTerraform(struct.versionId), }; } exports.linuxVirtualMachineGalleryApplicationToTerraform = linuxVirtualMachineGalleryApplicationToTerraform; function linuxVirtualMachineGalleryApplicationToHclTerraform(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 = { automatic_upgrade_enabled: { value: cdktf.booleanToHclTerraform(struct.automaticUpgradeEnabled), isBlock: false, type: "simple", storageClassType: "boolean", }, configuration_blob_uri: { value: cdktf.stringToHclTerraform(struct.configurationBlobUri), isBlock: false, type: "simple", storageClassType: "string", }, order: { value: cdktf.numberToHclTerraform(struct.order), isBlock: false, type: "simple", storageClassType: "number", }, tag: { value: cdktf.stringToHclTerraform(struct.tag), isBlock: false, type: "simple", storageClassType: "string", }, treat_failure_as_deployment_failure_enabled: { value: cdktf.booleanToHclTerraform(struct.treatFailureAsDeploymentFailureEnabled), isBlock: false, type: "simple", storageClassType: "boolean", }, version_id: { value: cdktf.stringToHclTerraform(struct.versionId), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.linuxVirtualMachineGalleryApplicationToHclTerraform = linuxVirtualMachineGalleryApplicationToHclTerraform; class LinuxVirtualMachineGalleryApplicationOutputReference 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._automaticUpgradeEnabled !== undefined) { hasAnyValues = true; internalValueResult.automaticUpgradeEnabled = this._automaticUpgradeEnabled; } if (this._configurationBlobUri !== undefined) { hasAnyValues = true; internalValueResult.configurationBlobUri = this._configurationBlobUri; } if (this._order !== undefined) { hasAnyValues = true; internalValueResult.order = this._order; } if (this._tag !== undefined) { hasAnyValues = true; internalValueResult.tag = this._tag; } if (this._treatFailureAsDeploymentFailureEnabled !== undefined) { hasAnyValues = true; internalValueResult.treatFailureAsDeploymentFailureEnabled = this._treatFailureAsDeploymentFailureEnabled; } if (this._versionId !== undefined) { hasAnyValues = true; internalValueResult.versionId = this._versionId; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._automaticUpgradeEnabled = undefined; this._configurationBlobUri = undefined; this._order = undefined; this._tag = undefined; this._treatFailureAsDeploymentFailureEnabled = undefined; this._versionId = 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._automaticUpgradeEnabled = value.automaticUpgradeEnabled; this._configurationBlobUri = value.configurationBlobUri; this._order = value.order; this._tag = value.tag; this._treatFailureAsDeploymentFailureEnabled = value.treatFailureAsDeploymentFailureEnabled; this._versionId = value.versionId; } } get automaticUpgradeEnabled() { return this.getBooleanAttribute('automatic_upgrade_enabled'); } set automaticUpgradeEnabled(value) { this._automaticUpgradeEnabled = value; } resetAutomaticUpgradeEnabled() { this._automaticUpgradeEnabled = undefined; } // Temporarily expose input value. Use with caution. get automaticUpgradeEnabledInput() { return this._automaticUpgradeEnabled; } get configurationBlobUri() { return this.getStringAttribute('configuration_blob_uri'); } set configurationBlobUri(value) { this._configurationBlobUri = value; } resetConfigurationBlobUri() { this._configurationBlobUri = undefined; } // Temporarily expose input value. Use with caution. get configurationBlobUriInput() { return this._configurationBlobUri; } get order() { return this.getNumberAttribute('order'); } set order(value) { this._order = value; } resetOrder() { this._order = undefined; } // Temporarily expose input value. Use with caution. get orderInput() { return this._order; } get tag() { return this.getStringAttribute('tag'); } set tag(value) { this._tag = value; } resetTag() { this._tag = undefined; } // Temporarily expose input value. Use with caution. get tagInput() { return this._tag; } get treatFailureAsDeploymentFailureEnabled() { return this.getBooleanAttribute('treat_failure_as_deployment_failure_enabled'); } set treatFailureAsDeploymentFailureEnabled(value) { this._treatFailureAsDeploymentFailureEnabled = value; } resetTreatFailureAsDeploymentFailureEnabled() { this._treatFailureAsDeploymentFailureEnabled = undefined; } // Temporarily expose input value. Use with caution. get treatFailureAsDeploymentFailureEnabledInput() { return this._treatFailureAsDeploymentFailureEnabled; } get versionId() { return this.getStringAttribute('version_id'); } set versionId(value) { this._versionId = value; } // Temporarily expose input value. Use with caution. get versionIdInput() { return this._versionId; } } exports.LinuxVirtualMachineGalleryApplicationOutputReference = LinuxVirtualMachineGalleryApplicationOutputReference; _e = JSII_RTTI_SYMBOL_1; LinuxVirtualMachineGalleryApplicationOutputReference[_e] = { fqn: "@cdktf/provider-azurerm.linuxVirtualMachine.LinuxVirtualMachineGalleryApplicationOutputReference", version: "12.27.0" }; class LinuxVirtualMachineGalleryApplicationList 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 LinuxVirtualMachineGalleryApplicationOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.LinuxVirtualMachineGalleryApplicationList = LinuxVirtualMachineGalleryApplicationList; _f = JSII_RTTI_SYMBOL_1; LinuxVirtualMachineGalleryApplicationList[_f] = { fqn: "@cdktf/provider-azurerm.linuxVirtualMachine.LinuxVirtualMachineGalleryApplicationList", version: "12.27.0" }; function linuxVirtualMachineIdentityToTerraform(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 { identity_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.identityIds), type: cdktf.stringToTerraform(struct.type), }; } exports.linuxVirtualMachineIdentityToTerraform = linuxVirtualMachineIdentityToTerraform; function linuxVirtualMachineIdentityToHclTerraform(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 = { identity_ids: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.identityIds), isBlock: false, type: "set", storageClassType: "stringList", }, type: { value: cdktf.stringToHclTerraform(struct.type), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.linuxVirtualMachineIdentityToHclTerraform = linuxVirtualMachineIdentityToHclTerraform; class LinuxVirtualMachineIdentityOutputReference 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._identityIds !== undefined) { hasAnyValues = true; internalValueResult.identityIds = this._identityIds; } if (this._type !== undefined) { hasAnyValues = true; internalValueResult.type = this._type; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._identityIds = undefined; this._type = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._identityIds = value.identityIds; this._type = value.type; } } get identityIds() { return cdktf.Fn.tolist(this.getListAttribute('identity_ids')); } set identityIds(value) { this._identityIds = value; } resetIdentityIds() { this._identityIds = undefined; } // Temporarily expose input value. Use with caution. get identityIdsInput() { return this._identityIds; } // principal_id - computed: true, optional: false, required: false get principalId() { return this.getStringAttribute('principal_id'); } // tenant_id - computed: true, optional: false, required: false get tenantId() { return this.getStringAttribute('tenant_id'); } get type() { return this.getStringAttribute('type'); } set type(value) { this._type = value; } // Temporarily expose input value. Use with caution. get typeInput() { return this._type; } } exports.LinuxVirtualMachineIdentityOutputReference = LinuxVirtualMachineIdentityOutputReference; _g = JSII_RTTI_SYMBOL_1; LinuxVirtualMachineIdentityOutputReference[_g] = { fqn: "@cdktf/provider-azurerm.linuxVirtualMachine.LinuxVirtualMachineIdentityOutputReference", version: "12.27.0" }; function linuxVirtualMachineOsDiskDiffDiskSettingsToTerraform(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 { option: cdktf.stringToTerraform(struct.option), placement: cdktf.stringToTerraform(struct.placement), }; } exports.linuxVirtualMachineOsDiskDiffDiskSettingsToTerraform = linuxVirtualMachineOsDiskDiffDiskSettingsToTerraform; function linuxVirtualMachineOsDiskDiffDiskSettingsToHclTerraform(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 = { option: { value: cdktf.stringToHclTerraform(struct.option), isBlock: false, type: "simple", storageClassType: "string", }, placement: { value: cdktf.stringToHclTerraform(struct.placement), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.linuxVirtualMachineOsDiskDiffDiskSettingsToHclTerraform = linuxVirtualMachineOsDiskDiffDiskSettingsToHclTerraform; class LinuxVirtualMachineOsDiskDiffDiskSettingsOutputReference 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._option !== undefined) { hasAnyValues = true; internalValueResult.option = this._option; } if (this._placement !== undefined) { hasAnyValues = true; internalValueResult.placement = this._placement; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._option = undefined; this._placement = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._option = value.option; this._placement = value.placement; } } get option() { return this.getStringAttribute('option'); } set option(value) { this._option = value; } // Temporarily expose input value. Use with caution. get optionInput() { return this._option; } get placement() { return this.getStringAttribute('placement'); } set placement(value) { this._placement = value; } resetPlacement() { this._placement = undefined; } // Temporarily expose input value. Use with caution. get placementInput() { return this._placement; } } exports.LinuxVirtualMachineOsDiskDiffDiskSettingsOutputReference = LinuxVirtualMachineOsDiskDiffDiskSettingsOutputReference; _h = JSII_RTTI_SYMBOL_1; LinuxVirtualMachineOsDiskDiffDiskSettingsOutputReference[_h] = { fqn: "@cdktf/provider-azurerm.linuxVirtualMachine.LinuxVirtualMachineOsDiskDiffDiskSettingsOutputReference", version: "12.27.0" }; function linuxVirtualMachineOsDiskToTerraform(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 { caching: cdktf.stringToTerraform(struct.caching), disk_encryption_set_id: cdktf.stringToTerraform(struct.diskEncryptionSetId), disk_size_gb: cdktf.numberToTerraform(struct.diskSizeGb), name: cdktf.stringToTerraform(struct.name), secure_vm_disk_encryption_set_id: cdktf.stringToTerraform(struct.secureVmDiskEncryptionSetId), security_encryption_type: cdktf.stringToTerraform(struct.securityEncryptionType), storage_account_type: cdktf.stringToTerraform(struct.storageAccountType), write_accelerator_enabled: cdktf.booleanToTerraform(struct.writeAcceleratorEnabled), diff_disk_settings: linuxVirtualMachineOsDiskDiffDiskSettingsToTerraform(struct.diffDiskSettings), }; } exports.linuxVirtualMachineOsDiskToTerraform = linuxVirtualMachineOsDiskToTerraform; function linuxVirtualMachineOsDiskToHclTerraform(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 = { caching: { value: cdktf.stringToHclTerraform(struct.caching), isBlock: false, type: "simple", storageClassType: "string", }, disk_encryption_set_id: { value: cdktf.stringToHclTerraform(struct.diskEncryptionSetId), isBlock: false, type: "simple", storageClassType: "string", }, disk_size_gb: { value: cdktf.numberToHclTerraform(struct.diskSizeGb), isBlock: false, type: "simple", storageClassType: "number", }, name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, secure_vm_disk_encryption_set_id: { value: cdktf.stringToHclTerraform(struct.secureVmDiskEncryptionSetId), isBlock: false, type: "simple", storageClassType: "string", }, security_encryption_type: { value: cdktf.stringToHclTerraform(struct.securityEncryptionType), isBlock: false, type: "simple", storageClassType: "string", }, storage_account_type: { value: cdktf.stringToHclTerraform(struct.storageAccountType), isBlock: false, type: "simple", storageClassType: "string", }, write_accelerator_enabled: { value: cdktf.booleanToHclTerraform(struct.writeAcceleratorEnabled), isBlock: false, type: "simple", storageClassType: "boolean", }, diff_disk_settings: { value: linuxVirtualMachineOsDiskDiffDiskSettingsToHclTerraform(struct.diffDiskSettings), isBlock: true, type: "list", storageClassType: "LinuxVirtualMachineOsDiskDiffDiskSettingsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.linuxVirtualMachineOsDiskToHclTerraform = linuxVirtualMachineOsDiskToHclTerraform; class LinuxVirtualMachineOsDiskOutputReference 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; // diff_disk_settings - computed: false, optional: true, required: false this._diffDiskSettings = new LinuxVirtualMachineOsDiskDiffDiskSettingsOutputReference(this, "diff_disk_settings"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._caching !== undefined) { hasAnyValues = true; internalValueResult.caching = this._caching; } if (this._diskEncryptionSetId !== undefined) { hasAnyValues = true; internalValueResult.diskEncryptionSetId = this._diskEncryptionSetId; } if (this._diskSizeGb !== undefined) { hasAnyValues = true; internalValueResult.diskSizeGb = this._diskSizeGb; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } if (this._secureVmDiskEncryptionSetId !== undefined) { hasAnyValues = true; internalValueResult.secureVmDiskEncryptionSetId = this._secureVmDiskEncryptionSetId; } if (this._securityEncryptionType !== undefined) { hasAnyValues = true; internalValueResult.securityEncryptionType = this._securityEncryptionType; } if (this._storageAccountType !== undefined) { hasAnyValues = true; internalValueResult.storageAccountType = this._storageAccountType; } if (this._writeAcceleratorEnabled !== undefined) { hasAnyValues = true; internalValueResult.writeAcceleratorEnabled = this._writeAcceleratorEnabled; } if (this._diffDiskSettings?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.diffDiskSettings = this._diffDiskSettings?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._caching = undefined; this._diskEncryptionSetId = undefined; this._diskSizeGb = undefined; this._name = undefined; this._secureVmDiskEncryptionSetId = undefined; this._securityEncryptionType = undefined; this._storageAccountType = undefined; this._writeAcceleratorEnabled = undefined; this._diffDiskSettings.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._caching = value.caching; this._diskEncryptionSetId = value.diskEncryptionSetId; this._diskSizeGb = value.diskSizeGb; this._name = value.name; this._secureVmDiskEncryptionSetId = value.secureVmDiskEncryptionSetId; this._securityEncryptionType = value.securityEncryptionType; this._storageAccountType = value.storageAccountType; this._writeAcceleratorEnabled = value.writeAcceleratorEnabled; this._diffDiskSettings.internalValue = value.diffDiskSettings; } } get caching() { return this.getStringAttribute('caching'); } set caching(value) { this._caching = value; } // Temporarily expose input value. Use with caution. get cachingInput() { return this._caching; } get diskEncryptionSetId() { return this.getStringAttribute('disk_encryption_set_id'); } set diskEncryptionSetId(value) { this._diskEncryptionSetId = value; } resetDiskEncryptionSetId() { this._diskEncryptionSetId = undefined; } // Temporarily expose input value. Use with caution. get diskEncryptionSetIdInput() { return this._diskEncryptionSetId; } get diskSizeGb() { return this.getNumberAttribute('disk_size_gb'); } set diskSizeGb(value) { this._diskSizeGb = value; } resetDiskSizeGb() { this._diskSizeGb = undefined; } // Temporarily expose input value. Use with caution. get diskSizeGbInput() { return this._diskSizeGb; } get name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } resetName() { this._name = undefined; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } get secureVmDiskEncryptionSetId() { return this.getStringAttribute('secure_vm_disk_encryption_set_id'); } set secureVmDiskEncryptionSetId(value) { this._secureVmDiskEncryptionSetId = value; } resetSecureVmDiskEncryptionSetId() { this._secureVmDiskEncryptionSetId = undefined; } // Temporarily expose input value. Use with caution. get secureVmDiskEncryptionSetIdInput() { return this._secureVmDiskEncryptionSetId; } get securityEncryptionType() { return this.getStringAttribute('security_encryption_type'); } set securityEncryptionType(value) { this._securityEncryptionType = value; } resetSecurityEncryptionType() { this._securityEncryptionType = undefined; } // Temporarily expose input value. Use with caution. get securityEncryptionTypeInput() { return this._securityEncryptionType; } get storageAccountType() { return this.getStringAttribute('storage_account_type'); } set storageAccountType(value) { this._storageAccountType = value; } // Temporarily expose input value. Use with caution. get storageAccountTypeInput() { return this._storageAccountType; } get writeAcceleratorEnabled() { return this.getBooleanAttribute('write_accelerator_enabled'); } set writeAcceleratorEnabled(value) { this._writeAcceleratorEnabled = value; } resetWriteAcceleratorEnabled() { this._writeAcceleratorEnabled = undefined; } // Temporarily expose input value. Use with caution. get writeAcceleratorEnabledInput() { return this._writeAcceleratorEnabled; } get diffDiskSettings() { return this._diffDiskSettings; } putDiffDiskSettings(value) { this._diffDiskSettings.internalValue = value; } resetDiffDiskSettings() { this._diffDiskSettings.internalValue = undefined; } // Temporarily expose input value. Use with caution. get diffDiskSettingsInput() { return this._diffDiskSettings.internalValue; } } exports.LinuxVirtualMachineOsDiskOutputReference = LinuxVirtualMachineOsDiskOutputReference; _j = JSII_RTTI_SYMBOL_1; LinuxVirtualMachineOsDiskOutputReference[_j] = { fqn: "@cdktf/provider-azurerm.linuxVirtualMachine.LinuxVirtualMachineOsDiskOutputReference", version: "12.27.0" }; function linuxVirtualMachineOsImageNotificationToTerraform(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 { timeout: cdktf.stringToTerraform(struct.timeout), }; } exports.linuxVirtualMachineOsImageNotificationToTerraform = linuxVirtualMachineOsImageNotificationToTerraform; function linuxVirtualMachineOsImageNotificationToHclTerraform(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 = { timeout: { value: cdktf.stringToHclTerraform(struct.timeout), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.linuxVirtualMachineOsImageNotificationToHclTerraform = linuxVirtualMachineOsImageNotificationToHclTerraform; class LinuxVirtualMachineOsImageNotificationOutputReference 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._timeout !== undefined) { hasAnyValues = true; internalValueResult.timeout = this._timeout; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._timeout = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._timeout = value.timeout; } } get timeout() { return this.getStringAttribute('timeout'); } set timeout(value) { this._timeout = value; } resetTimeout() { this._timeout = undefined; } // Temporarily expose input value. Use with caution. get timeoutInput() { return this._timeout; } } exports.LinuxVirtualMachineOsImageNotificationOutputReference = LinuxVirtualMachineOsImageNotificationOutputReference; _k = JSII_RTTI_SYMBOL_1; LinuxVirtualMachineOsImageNotificationOutputReference[_k] = { fqn: "@cdktf/provider-azurerm.linuxVirtualMachine.LinuxVirtualMachineOsImageNotificationOutputReference", version: "12.27.0" }; function linuxVirtualMachinePlanToTerraform(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), product: cdktf.stringToTerraform(struct.product), publisher: cdktf.stringToTerraform(struct.publisher), }; } exports.linuxVirtualMachinePlanToTerraform = linuxVirtualMachinePlanToTerraform; function linuxVirtualMachinePlanToHclTerraform(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", }, product: { value: cdktf.stringToHclTerraform(struct.product), isBlock: false, type: "simple", storageClassType: "string", }, publisher: { value: cdktf.stringToHclTerraform(struct.publisher), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.linuxVirtualMachinePlanToHclTerraform = linuxVirtualMachinePlanToHclTerraform; class LinuxVirtualMachinePlanOutputReference extends cdktf.ComplexObject { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referenci