UNPKG

@cdktf/provider-azurerm

Version:

Prebuilt azurerm Provider for Terraform CDK (cdktf)

914 lines 272 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l; Object.defineProperty(exports, "__esModule", { value: true }); exports.StorageManagementPolicy = exports.StorageManagementPolicyTimeoutsOutputReference = exports.storageManagementPolicyTimeoutsToHclTerraform = exports.storageManagementPolicyTimeoutsToTerraform = exports.StorageManagementPolicyRuleList = exports.StorageManagementPolicyRuleOutputReference = exports.storageManagementPolicyRuleToHclTerraform = exports.storageManagementPolicyRuleToTerraform = exports.StorageManagementPolicyRuleFiltersOutputReference = exports.storageManagementPolicyRuleFiltersToHclTerraform = exports.storageManagementPolicyRuleFiltersToTerraform = exports.StorageManagementPolicyRuleFiltersMatchBlobIndexTagList = exports.StorageManagementPolicyRuleFiltersMatchBlobIndexTagOutputReference = exports.storageManagementPolicyRuleFiltersMatchBlobIndexTagToHclTerraform = exports.storageManagementPolicyRuleFiltersMatchBlobIndexTagToTerraform = exports.StorageManagementPolicyRuleActionsOutputReference = exports.storageManagementPolicyRuleActionsToHclTerraform = exports.storageManagementPolicyRuleActionsToTerraform = exports.StorageManagementPolicyRuleActionsVersionOutputReference = exports.storageManagementPolicyRuleActionsVersionToHclTerraform = exports.storageManagementPolicyRuleActionsVersionToTerraform = exports.StorageManagementPolicyRuleActionsSnapshotOutputReference = exports.storageManagementPolicyRuleActionsSnapshotToHclTerraform = exports.storageManagementPolicyRuleActionsSnapshotToTerraform = exports.StorageManagementPolicyRuleActionsBaseBlobOutputReference = exports.storageManagementPolicyRuleActionsBaseBlobToHclTerraform = exports.storageManagementPolicyRuleActionsBaseBlobToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function storageManagementPolicyRuleActionsBaseBlobToTerraform(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_tier_to_hot_from_cool_enabled: cdktf.booleanToTerraform(struct.autoTierToHotFromCoolEnabled), delete_after_days_since_creation_greater_than: cdktf.numberToTerraform(struct.deleteAfterDaysSinceCreationGreaterThan), delete_after_days_since_last_access_time_greater_than: cdktf.numberToTerraform(struct.deleteAfterDaysSinceLastAccessTimeGreaterThan), delete_after_days_since_modification_greater_than: cdktf.numberToTerraform(struct.deleteAfterDaysSinceModificationGreaterThan), tier_to_archive_after_days_since_creation_greater_than: cdktf.numberToTerraform(struct.tierToArchiveAfterDaysSinceCreationGreaterThan), tier_to_archive_after_days_since_last_access_time_greater_than: cdktf.numberToTerraform(struct.tierToArchiveAfterDaysSinceLastAccessTimeGreaterThan), tier_to_archive_after_days_since_last_tier_change_greater_than: cdktf.numberToTerraform(struct.tierToArchiveAfterDaysSinceLastTierChangeGreaterThan), tier_to_archive_after_days_since_modification_greater_than: cdktf.numberToTerraform(struct.tierToArchiveAfterDaysSinceModificationGreaterThan), tier_to_cold_after_days_since_creation_greater_than: cdktf.numberToTerraform(struct.tierToColdAfterDaysSinceCreationGreaterThan), tier_to_cold_after_days_since_last_access_time_greater_than: cdktf.numberToTerraform(struct.tierToColdAfterDaysSinceLastAccessTimeGreaterThan), tier_to_cold_after_days_since_modification_greater_than: cdktf.numberToTerraform(struct.tierToColdAfterDaysSinceModificationGreaterThan), tier_to_cool_after_days_since_creation_greater_than: cdktf.numberToTerraform(struct.tierToCoolAfterDaysSinceCreationGreaterThan), tier_to_cool_after_days_since_last_access_time_greater_than: cdktf.numberToTerraform(struct.tierToCoolAfterDaysSinceLastAccessTimeGreaterThan), tier_to_cool_after_days_since_modification_greater_than: cdktf.numberToTerraform(struct.tierToCoolAfterDaysSinceModificationGreaterThan), }; } exports.storageManagementPolicyRuleActionsBaseBlobToTerraform = storageManagementPolicyRuleActionsBaseBlobToTerraform; function storageManagementPolicyRuleActionsBaseBlobToHclTerraform(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_tier_to_hot_from_cool_enabled: { value: cdktf.booleanToHclTerraform(struct.autoTierToHotFromCoolEnabled), isBlock: false, type: "simple", storageClassType: "boolean", }, delete_after_days_since_creation_greater_than: { value: cdktf.numberToHclTerraform(struct.deleteAfterDaysSinceCreationGreaterThan), isBlock: false, type: "simple", storageClassType: "number", }, delete_after_days_since_last_access_time_greater_than: { value: cdktf.numberToHclTerraform(struct.deleteAfterDaysSinceLastAccessTimeGreaterThan), isBlock: false, type: "simple", storageClassType: "number", }, delete_after_days_since_modification_greater_than: { value: cdktf.numberToHclTerraform(struct.deleteAfterDaysSinceModificationGreaterThan), isBlock: false, type: "simple", storageClassType: "number", }, tier_to_archive_after_days_since_creation_greater_than: { value: cdktf.numberToHclTerraform(struct.tierToArchiveAfterDaysSinceCreationGreaterThan), isBlock: false, type: "simple", storageClassType: "number", }, tier_to_archive_after_days_since_last_access_time_greater_than: { value: cdktf.numberToHclTerraform(struct.tierToArchiveAfterDaysSinceLastAccessTimeGreaterThan), isBlock: false, type: "simple", storageClassType: "number", }, tier_to_archive_after_days_since_last_tier_change_greater_than: { value: cdktf.numberToHclTerraform(struct.tierToArchiveAfterDaysSinceLastTierChangeGreaterThan), isBlock: false, type: "simple", storageClassType: "number", }, tier_to_archive_after_days_since_modification_greater_than: { value: cdktf.numberToHclTerraform(struct.tierToArchiveAfterDaysSinceModificationGreaterThan), isBlock: false, type: "simple", storageClassType: "number", }, tier_to_cold_after_days_since_creation_greater_than: { value: cdktf.numberToHclTerraform(struct.tierToColdAfterDaysSinceCreationGreaterThan), isBlock: false, type: "simple", storageClassType: "number", }, tier_to_cold_after_days_since_last_access_time_greater_than: { value: cdktf.numberToHclTerraform(struct.tierToColdAfterDaysSinceLastAccessTimeGreaterThan), isBlock: false, type: "simple", storageClassType: "number", }, tier_to_cold_after_days_since_modification_greater_than: { value: cdktf.numberToHclTerraform(struct.tierToColdAfterDaysSinceModificationGreaterThan), isBlock: false, type: "simple", storageClassType: "number", }, tier_to_cool_after_days_since_creation_greater_than: { value: cdktf.numberToHclTerraform(struct.tierToCoolAfterDaysSinceCreationGreaterThan), isBlock: false, type: "simple", storageClassType: "number", }, tier_to_cool_after_days_since_last_access_time_greater_than: { value: cdktf.numberToHclTerraform(struct.tierToCoolAfterDaysSinceLastAccessTimeGreaterThan), isBlock: false, type: "simple", storageClassType: "number", }, tier_to_cool_after_days_since_modification_greater_than: { value: cdktf.numberToHclTerraform(struct.tierToCoolAfterDaysSinceModificationGreaterThan), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.storageManagementPolicyRuleActionsBaseBlobToHclTerraform = storageManagementPolicyRuleActionsBaseBlobToHclTerraform; class StorageManagementPolicyRuleActionsBaseBlobOutputReference 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._autoTierToHotFromCoolEnabled !== undefined) { hasAnyValues = true; internalValueResult.autoTierToHotFromCoolEnabled = this._autoTierToHotFromCoolEnabled; } if (this._deleteAfterDaysSinceCreationGreaterThan !== undefined) { hasAnyValues = true; internalValueResult.deleteAfterDaysSinceCreationGreaterThan = this._deleteAfterDaysSinceCreationGreaterThan; } if (this._deleteAfterDaysSinceLastAccessTimeGreaterThan !== undefined) { hasAnyValues = true; internalValueResult.deleteAfterDaysSinceLastAccessTimeGreaterThan = this._deleteAfterDaysSinceLastAccessTimeGreaterThan; } if (this._deleteAfterDaysSinceModificationGreaterThan !== undefined) { hasAnyValues = true; internalValueResult.deleteAfterDaysSinceModificationGreaterThan = this._deleteAfterDaysSinceModificationGreaterThan; } if (this._tierToArchiveAfterDaysSinceCreationGreaterThan !== undefined) { hasAnyValues = true; internalValueResult.tierToArchiveAfterDaysSinceCreationGreaterThan = this._tierToArchiveAfterDaysSinceCreationGreaterThan; } if (this._tierToArchiveAfterDaysSinceLastAccessTimeGreaterThan !== undefined) { hasAnyValues = true; internalValueResult.tierToArchiveAfterDaysSinceLastAccessTimeGreaterThan = this._tierToArchiveAfterDaysSinceLastAccessTimeGreaterThan; } if (this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan !== undefined) { hasAnyValues = true; internalValueResult.tierToArchiveAfterDaysSinceLastTierChangeGreaterThan = this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan; } if (this._tierToArchiveAfterDaysSinceModificationGreaterThan !== undefined) { hasAnyValues = true; internalValueResult.tierToArchiveAfterDaysSinceModificationGreaterThan = this._tierToArchiveAfterDaysSinceModificationGreaterThan; } if (this._tierToColdAfterDaysSinceCreationGreaterThan !== undefined) { hasAnyValues = true; internalValueResult.tierToColdAfterDaysSinceCreationGreaterThan = this._tierToColdAfterDaysSinceCreationGreaterThan; } if (this._tierToColdAfterDaysSinceLastAccessTimeGreaterThan !== undefined) { hasAnyValues = true; internalValueResult.tierToColdAfterDaysSinceLastAccessTimeGreaterThan = this._tierToColdAfterDaysSinceLastAccessTimeGreaterThan; } if (this._tierToColdAfterDaysSinceModificationGreaterThan !== undefined) { hasAnyValues = true; internalValueResult.tierToColdAfterDaysSinceModificationGreaterThan = this._tierToColdAfterDaysSinceModificationGreaterThan; } if (this._tierToCoolAfterDaysSinceCreationGreaterThan !== undefined) { hasAnyValues = true; internalValueResult.tierToCoolAfterDaysSinceCreationGreaterThan = this._tierToCoolAfterDaysSinceCreationGreaterThan; } if (this._tierToCoolAfterDaysSinceLastAccessTimeGreaterThan !== undefined) { hasAnyValues = true; internalValueResult.tierToCoolAfterDaysSinceLastAccessTimeGreaterThan = this._tierToCoolAfterDaysSinceLastAccessTimeGreaterThan; } if (this._tierToCoolAfterDaysSinceModificationGreaterThan !== undefined) { hasAnyValues = true; internalValueResult.tierToCoolAfterDaysSinceModificationGreaterThan = this._tierToCoolAfterDaysSinceModificationGreaterThan; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._autoTierToHotFromCoolEnabled = undefined; this._deleteAfterDaysSinceCreationGreaterThan = undefined; this._deleteAfterDaysSinceLastAccessTimeGreaterThan = undefined; this._deleteAfterDaysSinceModificationGreaterThan = undefined; this._tierToArchiveAfterDaysSinceCreationGreaterThan = undefined; this._tierToArchiveAfterDaysSinceLastAccessTimeGreaterThan = undefined; this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan = undefined; this._tierToArchiveAfterDaysSinceModificationGreaterThan = undefined; this._tierToColdAfterDaysSinceCreationGreaterThan = undefined; this._tierToColdAfterDaysSinceLastAccessTimeGreaterThan = undefined; this._tierToColdAfterDaysSinceModificationGreaterThan = undefined; this._tierToCoolAfterDaysSinceCreationGreaterThan = undefined; this._tierToCoolAfterDaysSinceLastAccessTimeGreaterThan = undefined; this._tierToCoolAfterDaysSinceModificationGreaterThan = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._autoTierToHotFromCoolEnabled = value.autoTierToHotFromCoolEnabled; this._deleteAfterDaysSinceCreationGreaterThan = value.deleteAfterDaysSinceCreationGreaterThan; this._deleteAfterDaysSinceLastAccessTimeGreaterThan = value.deleteAfterDaysSinceLastAccessTimeGreaterThan; this._deleteAfterDaysSinceModificationGreaterThan = value.deleteAfterDaysSinceModificationGreaterThan; this._tierToArchiveAfterDaysSinceCreationGreaterThan = value.tierToArchiveAfterDaysSinceCreationGreaterThan; this._tierToArchiveAfterDaysSinceLastAccessTimeGreaterThan = value.tierToArchiveAfterDaysSinceLastAccessTimeGreaterThan; this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan = value.tierToArchiveAfterDaysSinceLastTierChangeGreaterThan; this._tierToArchiveAfterDaysSinceModificationGreaterThan = value.tierToArchiveAfterDaysSinceModificationGreaterThan; this._tierToColdAfterDaysSinceCreationGreaterThan = value.tierToColdAfterDaysSinceCreationGreaterThan; this._tierToColdAfterDaysSinceLastAccessTimeGreaterThan = value.tierToColdAfterDaysSinceLastAccessTimeGreaterThan; this._tierToColdAfterDaysSinceModificationGreaterThan = value.tierToColdAfterDaysSinceModificationGreaterThan; this._tierToCoolAfterDaysSinceCreationGreaterThan = value.tierToCoolAfterDaysSinceCreationGreaterThan; this._tierToCoolAfterDaysSinceLastAccessTimeGreaterThan = value.tierToCoolAfterDaysSinceLastAccessTimeGreaterThan; this._tierToCoolAfterDaysSinceModificationGreaterThan = value.tierToCoolAfterDaysSinceModificationGreaterThan; } } get autoTierToHotFromCoolEnabled() { return this.getBooleanAttribute('auto_tier_to_hot_from_cool_enabled'); } set autoTierToHotFromCoolEnabled(value) { this._autoTierToHotFromCoolEnabled = value; } resetAutoTierToHotFromCoolEnabled() { this._autoTierToHotFromCoolEnabled = undefined; } // Temporarily expose input value. Use with caution. get autoTierToHotFromCoolEnabledInput() { return this._autoTierToHotFromCoolEnabled; } get deleteAfterDaysSinceCreationGreaterThan() { return this.getNumberAttribute('delete_after_days_since_creation_greater_than'); } set deleteAfterDaysSinceCreationGreaterThan(value) { this._deleteAfterDaysSinceCreationGreaterThan = value; } resetDeleteAfterDaysSinceCreationGreaterThan() { this._deleteAfterDaysSinceCreationGreaterThan = undefined; } // Temporarily expose input value. Use with caution. get deleteAfterDaysSinceCreationGreaterThanInput() { return this._deleteAfterDaysSinceCreationGreaterThan; } get deleteAfterDaysSinceLastAccessTimeGreaterThan() { return this.getNumberAttribute('delete_after_days_since_last_access_time_greater_than'); } set deleteAfterDaysSinceLastAccessTimeGreaterThan(value) { this._deleteAfterDaysSinceLastAccessTimeGreaterThan = value; } resetDeleteAfterDaysSinceLastAccessTimeGreaterThan() { this._deleteAfterDaysSinceLastAccessTimeGreaterThan = undefined; } // Temporarily expose input value. Use with caution. get deleteAfterDaysSinceLastAccessTimeGreaterThanInput() { return this._deleteAfterDaysSinceLastAccessTimeGreaterThan; } get deleteAfterDaysSinceModificationGreaterThan() { return this.getNumberAttribute('delete_after_days_since_modification_greater_than'); } set deleteAfterDaysSinceModificationGreaterThan(value) { this._deleteAfterDaysSinceModificationGreaterThan = value; } resetDeleteAfterDaysSinceModificationGreaterThan() { this._deleteAfterDaysSinceModificationGreaterThan = undefined; } // Temporarily expose input value. Use with caution. get deleteAfterDaysSinceModificationGreaterThanInput() { return this._deleteAfterDaysSinceModificationGreaterThan; } get tierToArchiveAfterDaysSinceCreationGreaterThan() { return this.getNumberAttribute('tier_to_archive_after_days_since_creation_greater_than'); } set tierToArchiveAfterDaysSinceCreationGreaterThan(value) { this._tierToArchiveAfterDaysSinceCreationGreaterThan = value; } resetTierToArchiveAfterDaysSinceCreationGreaterThan() { this._tierToArchiveAfterDaysSinceCreationGreaterThan = undefined; } // Temporarily expose input value. Use with caution. get tierToArchiveAfterDaysSinceCreationGreaterThanInput() { return this._tierToArchiveAfterDaysSinceCreationGreaterThan; } get tierToArchiveAfterDaysSinceLastAccessTimeGreaterThan() { return this.getNumberAttribute('tier_to_archive_after_days_since_last_access_time_greater_than'); } set tierToArchiveAfterDaysSinceLastAccessTimeGreaterThan(value) { this._tierToArchiveAfterDaysSinceLastAccessTimeGreaterThan = value; } resetTierToArchiveAfterDaysSinceLastAccessTimeGreaterThan() { this._tierToArchiveAfterDaysSinceLastAccessTimeGreaterThan = undefined; } // Temporarily expose input value. Use with caution. get tierToArchiveAfterDaysSinceLastAccessTimeGreaterThanInput() { return this._tierToArchiveAfterDaysSinceLastAccessTimeGreaterThan; } get tierToArchiveAfterDaysSinceLastTierChangeGreaterThan() { return this.getNumberAttribute('tier_to_archive_after_days_since_last_tier_change_greater_than'); } set tierToArchiveAfterDaysSinceLastTierChangeGreaterThan(value) { this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan = value; } resetTierToArchiveAfterDaysSinceLastTierChangeGreaterThan() { this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan = undefined; } // Temporarily expose input value. Use with caution. get tierToArchiveAfterDaysSinceLastTierChangeGreaterThanInput() { return this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan; } get tierToArchiveAfterDaysSinceModificationGreaterThan() { return this.getNumberAttribute('tier_to_archive_after_days_since_modification_greater_than'); } set tierToArchiveAfterDaysSinceModificationGreaterThan(value) { this._tierToArchiveAfterDaysSinceModificationGreaterThan = value; } resetTierToArchiveAfterDaysSinceModificationGreaterThan() { this._tierToArchiveAfterDaysSinceModificationGreaterThan = undefined; } // Temporarily expose input value. Use with caution. get tierToArchiveAfterDaysSinceModificationGreaterThanInput() { return this._tierToArchiveAfterDaysSinceModificationGreaterThan; } get tierToColdAfterDaysSinceCreationGreaterThan() { return this.getNumberAttribute('tier_to_cold_after_days_since_creation_greater_than'); } set tierToColdAfterDaysSinceCreationGreaterThan(value) { this._tierToColdAfterDaysSinceCreationGreaterThan = value; } resetTierToColdAfterDaysSinceCreationGreaterThan() { this._tierToColdAfterDaysSinceCreationGreaterThan = undefined; } // Temporarily expose input value. Use with caution. get tierToColdAfterDaysSinceCreationGreaterThanInput() { return this._tierToColdAfterDaysSinceCreationGreaterThan; } get tierToColdAfterDaysSinceLastAccessTimeGreaterThan() { return this.getNumberAttribute('tier_to_cold_after_days_since_last_access_time_greater_than'); } set tierToColdAfterDaysSinceLastAccessTimeGreaterThan(value) { this._tierToColdAfterDaysSinceLastAccessTimeGreaterThan = value; } resetTierToColdAfterDaysSinceLastAccessTimeGreaterThan() { this._tierToColdAfterDaysSinceLastAccessTimeGreaterThan = undefined; } // Temporarily expose input value. Use with caution. get tierToColdAfterDaysSinceLastAccessTimeGreaterThanInput() { return this._tierToColdAfterDaysSinceLastAccessTimeGreaterThan; } get tierToColdAfterDaysSinceModificationGreaterThan() { return this.getNumberAttribute('tier_to_cold_after_days_since_modification_greater_than'); } set tierToColdAfterDaysSinceModificationGreaterThan(value) { this._tierToColdAfterDaysSinceModificationGreaterThan = value; } resetTierToColdAfterDaysSinceModificationGreaterThan() { this._tierToColdAfterDaysSinceModificationGreaterThan = undefined; } // Temporarily expose input value. Use with caution. get tierToColdAfterDaysSinceModificationGreaterThanInput() { return this._tierToColdAfterDaysSinceModificationGreaterThan; } get tierToCoolAfterDaysSinceCreationGreaterThan() { return this.getNumberAttribute('tier_to_cool_after_days_since_creation_greater_than'); } set tierToCoolAfterDaysSinceCreationGreaterThan(value) { this._tierToCoolAfterDaysSinceCreationGreaterThan = value; } resetTierToCoolAfterDaysSinceCreationGreaterThan() { this._tierToCoolAfterDaysSinceCreationGreaterThan = undefined; } // Temporarily expose input value. Use with caution. get tierToCoolAfterDaysSinceCreationGreaterThanInput() { return this._tierToCoolAfterDaysSinceCreationGreaterThan; } get tierToCoolAfterDaysSinceLastAccessTimeGreaterThan() { return this.getNumberAttribute('tier_to_cool_after_days_since_last_access_time_greater_than'); } set tierToCoolAfterDaysSinceLastAccessTimeGreaterThan(value) { this._tierToCoolAfterDaysSinceLastAccessTimeGreaterThan = value; } resetTierToCoolAfterDaysSinceLastAccessTimeGreaterThan() { this._tierToCoolAfterDaysSinceLastAccessTimeGreaterThan = undefined; } // Temporarily expose input value. Use with caution. get tierToCoolAfterDaysSinceLastAccessTimeGreaterThanInput() { return this._tierToCoolAfterDaysSinceLastAccessTimeGreaterThan; } get tierToCoolAfterDaysSinceModificationGreaterThan() { return this.getNumberAttribute('tier_to_cool_after_days_since_modification_greater_than'); } set tierToCoolAfterDaysSinceModificationGreaterThan(value) { this._tierToCoolAfterDaysSinceModificationGreaterThan = value; } resetTierToCoolAfterDaysSinceModificationGreaterThan() { this._tierToCoolAfterDaysSinceModificationGreaterThan = undefined; } // Temporarily expose input value. Use with caution. get tierToCoolAfterDaysSinceModificationGreaterThanInput() { return this._tierToCoolAfterDaysSinceModificationGreaterThan; } } exports.StorageManagementPolicyRuleActionsBaseBlobOutputReference = StorageManagementPolicyRuleActionsBaseBlobOutputReference; _a = JSII_RTTI_SYMBOL_1; StorageManagementPolicyRuleActionsBaseBlobOutputReference[_a] = { fqn: "@cdktf/provider-azurerm.storageManagementPolicy.StorageManagementPolicyRuleActionsBaseBlobOutputReference", version: "12.27.0" }; function storageManagementPolicyRuleActionsSnapshotToTerraform(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 { change_tier_to_archive_after_days_since_creation: cdktf.numberToTerraform(struct.changeTierToArchiveAfterDaysSinceCreation), change_tier_to_cool_after_days_since_creation: cdktf.numberToTerraform(struct.changeTierToCoolAfterDaysSinceCreation), delete_after_days_since_creation_greater_than: cdktf.numberToTerraform(struct.deleteAfterDaysSinceCreationGreaterThan), tier_to_archive_after_days_since_last_tier_change_greater_than: cdktf.numberToTerraform(struct.tierToArchiveAfterDaysSinceLastTierChangeGreaterThan), tier_to_cold_after_days_since_creation_greater_than: cdktf.numberToTerraform(struct.tierToColdAfterDaysSinceCreationGreaterThan), }; } exports.storageManagementPolicyRuleActionsSnapshotToTerraform = storageManagementPolicyRuleActionsSnapshotToTerraform; function storageManagementPolicyRuleActionsSnapshotToHclTerraform(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 = { change_tier_to_archive_after_days_since_creation: { value: cdktf.numberToHclTerraform(struct.changeTierToArchiveAfterDaysSinceCreation), isBlock: false, type: "simple", storageClassType: "number", }, change_tier_to_cool_after_days_since_creation: { value: cdktf.numberToHclTerraform(struct.changeTierToCoolAfterDaysSinceCreation), isBlock: false, type: "simple", storageClassType: "number", }, delete_after_days_since_creation_greater_than: { value: cdktf.numberToHclTerraform(struct.deleteAfterDaysSinceCreationGreaterThan), isBlock: false, type: "simple", storageClassType: "number", }, tier_to_archive_after_days_since_last_tier_change_greater_than: { value: cdktf.numberToHclTerraform(struct.tierToArchiveAfterDaysSinceLastTierChangeGreaterThan), isBlock: false, type: "simple", storageClassType: "number", }, tier_to_cold_after_days_since_creation_greater_than: { value: cdktf.numberToHclTerraform(struct.tierToColdAfterDaysSinceCreationGreaterThan), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.storageManagementPolicyRuleActionsSnapshotToHclTerraform = storageManagementPolicyRuleActionsSnapshotToHclTerraform; class StorageManagementPolicyRuleActionsSnapshotOutputReference 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._changeTierToArchiveAfterDaysSinceCreation !== undefined) { hasAnyValues = true; internalValueResult.changeTierToArchiveAfterDaysSinceCreation = this._changeTierToArchiveAfterDaysSinceCreation; } if (this._changeTierToCoolAfterDaysSinceCreation !== undefined) { hasAnyValues = true; internalValueResult.changeTierToCoolAfterDaysSinceCreation = this._changeTierToCoolAfterDaysSinceCreation; } if (this._deleteAfterDaysSinceCreationGreaterThan !== undefined) { hasAnyValues = true; internalValueResult.deleteAfterDaysSinceCreationGreaterThan = this._deleteAfterDaysSinceCreationGreaterThan; } if (this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan !== undefined) { hasAnyValues = true; internalValueResult.tierToArchiveAfterDaysSinceLastTierChangeGreaterThan = this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan; } if (this._tierToColdAfterDaysSinceCreationGreaterThan !== undefined) { hasAnyValues = true; internalValueResult.tierToColdAfterDaysSinceCreationGreaterThan = this._tierToColdAfterDaysSinceCreationGreaterThan; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._changeTierToArchiveAfterDaysSinceCreation = undefined; this._changeTierToCoolAfterDaysSinceCreation = undefined; this._deleteAfterDaysSinceCreationGreaterThan = undefined; this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan = undefined; this._tierToColdAfterDaysSinceCreationGreaterThan = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._changeTierToArchiveAfterDaysSinceCreation = value.changeTierToArchiveAfterDaysSinceCreation; this._changeTierToCoolAfterDaysSinceCreation = value.changeTierToCoolAfterDaysSinceCreation; this._deleteAfterDaysSinceCreationGreaterThan = value.deleteAfterDaysSinceCreationGreaterThan; this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan = value.tierToArchiveAfterDaysSinceLastTierChangeGreaterThan; this._tierToColdAfterDaysSinceCreationGreaterThan = value.tierToColdAfterDaysSinceCreationGreaterThan; } } get changeTierToArchiveAfterDaysSinceCreation() { return this.getNumberAttribute('change_tier_to_archive_after_days_since_creation'); } set changeTierToArchiveAfterDaysSinceCreation(value) { this._changeTierToArchiveAfterDaysSinceCreation = value; } resetChangeTierToArchiveAfterDaysSinceCreation() { this._changeTierToArchiveAfterDaysSinceCreation = undefined; } // Temporarily expose input value. Use with caution. get changeTierToArchiveAfterDaysSinceCreationInput() { return this._changeTierToArchiveAfterDaysSinceCreation; } get changeTierToCoolAfterDaysSinceCreation() { return this.getNumberAttribute('change_tier_to_cool_after_days_since_creation'); } set changeTierToCoolAfterDaysSinceCreation(value) { this._changeTierToCoolAfterDaysSinceCreation = value; } resetChangeTierToCoolAfterDaysSinceCreation() { this._changeTierToCoolAfterDaysSinceCreation = undefined; } // Temporarily expose input value. Use with caution. get changeTierToCoolAfterDaysSinceCreationInput() { return this._changeTierToCoolAfterDaysSinceCreation; } get deleteAfterDaysSinceCreationGreaterThan() { return this.getNumberAttribute('delete_after_days_since_creation_greater_than'); } set deleteAfterDaysSinceCreationGreaterThan(value) { this._deleteAfterDaysSinceCreationGreaterThan = value; } resetDeleteAfterDaysSinceCreationGreaterThan() { this._deleteAfterDaysSinceCreationGreaterThan = undefined; } // Temporarily expose input value. Use with caution. get deleteAfterDaysSinceCreationGreaterThanInput() { return this._deleteAfterDaysSinceCreationGreaterThan; } get tierToArchiveAfterDaysSinceLastTierChangeGreaterThan() { return this.getNumberAttribute('tier_to_archive_after_days_since_last_tier_change_greater_than'); } set tierToArchiveAfterDaysSinceLastTierChangeGreaterThan(value) { this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan = value; } resetTierToArchiveAfterDaysSinceLastTierChangeGreaterThan() { this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan = undefined; } // Temporarily expose input value. Use with caution. get tierToArchiveAfterDaysSinceLastTierChangeGreaterThanInput() { return this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan; } get tierToColdAfterDaysSinceCreationGreaterThan() { return this.getNumberAttribute('tier_to_cold_after_days_since_creation_greater_than'); } set tierToColdAfterDaysSinceCreationGreaterThan(value) { this._tierToColdAfterDaysSinceCreationGreaterThan = value; } resetTierToColdAfterDaysSinceCreationGreaterThan() { this._tierToColdAfterDaysSinceCreationGreaterThan = undefined; } // Temporarily expose input value. Use with caution. get tierToColdAfterDaysSinceCreationGreaterThanInput() { return this._tierToColdAfterDaysSinceCreationGreaterThan; } } exports.StorageManagementPolicyRuleActionsSnapshotOutputReference = StorageManagementPolicyRuleActionsSnapshotOutputReference; _b = JSII_RTTI_SYMBOL_1; StorageManagementPolicyRuleActionsSnapshotOutputReference[_b] = { fqn: "@cdktf/provider-azurerm.storageManagementPolicy.StorageManagementPolicyRuleActionsSnapshotOutputReference", version: "12.27.0" }; function storageManagementPolicyRuleActionsVersionToTerraform(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 { change_tier_to_archive_after_days_since_creation: cdktf.numberToTerraform(struct.changeTierToArchiveAfterDaysSinceCreation), change_tier_to_cool_after_days_since_creation: cdktf.numberToTerraform(struct.changeTierToCoolAfterDaysSinceCreation), delete_after_days_since_creation: cdktf.numberToTerraform(struct.deleteAfterDaysSinceCreation), tier_to_archive_after_days_since_last_tier_change_greater_than: cdktf.numberToTerraform(struct.tierToArchiveAfterDaysSinceLastTierChangeGreaterThan), tier_to_cold_after_days_since_creation_greater_than: cdktf.numberToTerraform(struct.tierToColdAfterDaysSinceCreationGreaterThan), }; } exports.storageManagementPolicyRuleActionsVersionToTerraform = storageManagementPolicyRuleActionsVersionToTerraform; function storageManagementPolicyRuleActionsVersionToHclTerraform(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 = { change_tier_to_archive_after_days_since_creation: { value: cdktf.numberToHclTerraform(struct.changeTierToArchiveAfterDaysSinceCreation), isBlock: false, type: "simple", storageClassType: "number", }, change_tier_to_cool_after_days_since_creation: { value: cdktf.numberToHclTerraform(struct.changeTierToCoolAfterDaysSinceCreation), isBlock: false, type: "simple", storageClassType: "number", }, delete_after_days_since_creation: { value: cdktf.numberToHclTerraform(struct.deleteAfterDaysSinceCreation), isBlock: false, type: "simple", storageClassType: "number", }, tier_to_archive_after_days_since_last_tier_change_greater_than: { value: cdktf.numberToHclTerraform(struct.tierToArchiveAfterDaysSinceLastTierChangeGreaterThan), isBlock: false, type: "simple", storageClassType: "number", }, tier_to_cold_after_days_since_creation_greater_than: { value: cdktf.numberToHclTerraform(struct.tierToColdAfterDaysSinceCreationGreaterThan), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.storageManagementPolicyRuleActionsVersionToHclTerraform = storageManagementPolicyRuleActionsVersionToHclTerraform; class StorageManagementPolicyRuleActionsVersionOutputReference 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._changeTierToArchiveAfterDaysSinceCreation !== undefined) { hasAnyValues = true; internalValueResult.changeTierToArchiveAfterDaysSinceCreation = this._changeTierToArchiveAfterDaysSinceCreation; } if (this._changeTierToCoolAfterDaysSinceCreation !== undefined) { hasAnyValues = true; internalValueResult.changeTierToCoolAfterDaysSinceCreation = this._changeTierToCoolAfterDaysSinceCreation; } if (this._deleteAfterDaysSinceCreation !== undefined) { hasAnyValues = true; internalValueResult.deleteAfterDaysSinceCreation = this._deleteAfterDaysSinceCreation; } if (this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan !== undefined) { hasAnyValues = true; internalValueResult.tierToArchiveAfterDaysSinceLastTierChangeGreaterThan = this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan; } if (this._tierToColdAfterDaysSinceCreationGreaterThan !== undefined) { hasAnyValues = true; internalValueResult.tierToColdAfterDaysSinceCreationGreaterThan = this._tierToColdAfterDaysSinceCreationGreaterThan; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._changeTierToArchiveAfterDaysSinceCreation = undefined; this._changeTierToCoolAfterDaysSinceCreation = undefined; this._deleteAfterDaysSinceCreation = undefined; this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan = undefined; this._tierToColdAfterDaysSinceCreationGreaterThan = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._changeTierToArchiveAfterDaysSinceCreation = value.changeTierToArchiveAfterDaysSinceCreation; this._changeTierToCoolAfterDaysSinceCreation = value.changeTierToCoolAfterDaysSinceCreation; this._deleteAfterDaysSinceCreation = value.deleteAfterDaysSinceCreation; this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan = value.tierToArchiveAfterDaysSinceLastTierChangeGreaterThan; this._tierToColdAfterDaysSinceCreationGreaterThan = value.tierToColdAfterDaysSinceCreationGreaterThan; } } get changeTierToArchiveAfterDaysSinceCreation() { return this.getNumberAttribute('change_tier_to_archive_after_days_since_creation'); } set changeTierToArchiveAfterDaysSinceCreation(value) { this._changeTierToArchiveAfterDaysSinceCreation = value; } resetChangeTierToArchiveAfterDaysSinceCreation() { this._changeTierToArchiveAfterDaysSinceCreation = undefined; } // Temporarily expose input value. Use with caution. get changeTierToArchiveAfterDaysSinceCreationInput() { return this._changeTierToArchiveAfterDaysSinceCreation; } get changeTierToCoolAfterDaysSinceCreation() { return this.getNumberAttribute('change_tier_to_cool_after_days_since_creation'); } set changeTierToCoolAfterDaysSinceCreation(value) { this._changeTierToCoolAfterDaysSinceCreation = value; } resetChangeTierToCoolAfterDaysSinceCreation() { this._changeTierToCoolAfterDaysSinceCreation = undefined; } // Temporarily expose input value. Use with caution. get changeTierToCoolAfterDaysSinceCreationInput() { return this._changeTierToCoolAfterDaysSinceCreation; } get deleteAfterDaysSinceCreation() { return this.getNumberAttribute('delete_after_days_since_creation'); } set deleteAfterDaysSinceCreation(value) { this._deleteAfterDaysSinceCreation = value; } resetDeleteAfterDaysSinceCreation() { this._deleteAfterDaysSinceCreation = undefined; } // Temporarily expose input value. Use with caution. get deleteAfterDaysSinceCreationInput() { return this._deleteAfterDaysSinceCreation; } get tierToArchiveAfterDaysSinceLastTierChangeGreaterThan() { return this.getNumberAttribute('tier_to_archive_after_days_since_last_tier_change_greater_than'); } set tierToArchiveAfterDaysSinceLastTierChangeGreaterThan(value) { this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan = value; } resetTierToArchiveAfterDaysSinceLastTierChangeGreaterThan() { this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan = undefined; } // Temporarily expose input value. Use with caution. get tierToArchiveAfterDaysSinceLastTierChangeGreaterThanInput() { return this._tierToArchiveAfterDaysSinceLastTierChangeGreaterThan; } get tierToColdAfterDaysSinceCreationGreaterThan() { return this.getNumberAttribute('tier_to_cold_after_days_since_creation_greater_than'); } set tierToColdAfterDaysSinceCreationGreaterThan(value) { this._tierToColdAfterDaysSinceCreationGreaterThan = value; } resetTierToColdAfterDaysSinceCreationGreaterThan() { this._tierToColdAfterDaysSinceCreationGreaterThan = undefined; } // Temporarily expose input value. Use with caution. get tierToColdAfterDaysSinceCreationGreaterThanInput() { return this._tierToColdAfterDaysSinceCreationGreaterThan; } } exports.StorageManagementPolicyRuleActionsVersionOutputReference = StorageManagementPolicyRuleActionsVersionOutputReference; _c = JSII_RTTI_SYMBOL_1; StorageManagementPolicyRuleActionsVersionOutputReference[_c] = { fqn: "@cdktf/provider-azurerm.storageManagementPolicy.StorageManagementPolicyRuleActionsVersionOutputReference", version: "12.27.0" }; function storageManagementPolicyRuleActionsToTerraform(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 { base_blob: storageManagementPolicyRuleActionsBaseBlobToTerraform(struct.baseBlob), snapshot: storageManagementPolicyRuleActionsSnapshotToTerraform(struct.snapshot), version: storageManagementPolicyRuleActionsVersionToTerraform(struct.version), }; } exports.storageManagementPolicyRuleActionsToTerraform = storageManagementPolicyRuleActionsToTerraform; function storageManagementPolicyRuleActionsToHclTerraform(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 = { base_blob: { value: storageManagementPolicyRuleActionsBaseBlobToHclTerraform(struct.baseBlob), isBlock: true, type: "list", storageClassType: "StorageManagementPolicyRuleActionsBaseBlobList", }, snapshot: { value: storageManagementPolicyRuleActionsSnapshotToHclTerraform(struct.snapshot), isBlock: true, type: "list", storageClassType: "StorageManagementPolicyRuleActionsSnapshotList", }, version: { value: storageManagementPolicyRuleActionsVersionToHclTerraform(struct.version), isBlock: true, type: "list", storageClassType: "StorageManagementPolicyRuleActionsVersionList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.storageManagementPolicyRuleActionsToHclTerraform = storageManagementPolicyRuleActionsToHclTerraform; class StorageManagementPolicyRuleActionsOutputReference 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; // base_blob - computed: false, optional: true, required: false this._baseBlob = new StorageManagementPolicyRuleActionsBaseBlobOutputReference(this, "base_blob"); // snapshot - computed: false, optional: true, required: false this._snapshot = new StorageManagementPolicyRuleActionsSnapshotOutputReference(this, "snapshot"); // version - computed: false, optional: true, required: false this._version = new StorageManagementPolicyRuleActionsVersionOutputReference(this, "version"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._baseBlob?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.baseBlob = this._baseBlob?.internalValue; } if (this._snapshot?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.snapshot = this._snapshot?.internalValue; } if (this._version?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.version = this._version?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._baseBlob.internalValue = undefined; this._snapshot.internalValue = undefined; this._version.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._baseBlob.internalValue = value.baseBlob; this._snapshot.internalValue = value.snapshot; this._version.internalValue = value.version; } } get baseBlob() { return this._baseBlob; } putBaseBlob(value) { this._baseBlob.internalValue = value; } resetBaseBlob() { this._baseBlob.internalValue = undefined; } // Temporarily expose input value. Use with caution. get baseBlobInput() { return this._baseBlob.internalValue; } get snapshot() { return this._snapshot; } putSnapshot(value) { this._snapshot.internalValue = value; } resetSnapshot() { this._snapshot.internalValue = undefined; } // Temporarily expose input value. Use with caution. get snapshotInput() { return this._snapshot.internalValue; } get version() { return this._version; } putVersion(value) { this._version.internalValue = value; } resetVersion() { this._version.internalValue = undefined; } // Temporarily expose input value. Use with caution. get versionInput() { return this._version.internalValue; } } exports.StorageManagementPolicyRuleActionsOutputReference = StorageManagementPolicyRuleActionsOutputReference; _d = JSII_RTTI_SYMBOL_1; StorageManagementPolicyRuleActionsOutputReference[_d] = { fqn: "@cdktf/provider-az