@cdktf/provider-azurerm
Version:
Prebuilt azurerm Provider for Terraform CDK (cdktf)
1,066 lines • 717 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6;
Object.defineProperty(exports, "__esModule", { value: true });
exports.storageAccountQueuePropertiesLoggingToHclTerraform = exports.storageAccountQueuePropertiesLoggingToTerraform = exports.StorageAccountQueuePropertiesHourMetricsOutputReference = exports.storageAccountQueuePropertiesHourMetricsToHclTerraform = exports.storageAccountQueuePropertiesHourMetricsToTerraform = exports.StorageAccountQueuePropertiesCorsRuleList = exports.StorageAccountQueuePropertiesCorsRuleOutputReference = exports.storageAccountQueuePropertiesCorsRuleToHclTerraform = exports.storageAccountQueuePropertiesCorsRuleToTerraform = exports.StorageAccountNetworkRulesOutputReference = exports.storageAccountNetworkRulesToHclTerraform = exports.storageAccountNetworkRulesToTerraform = exports.StorageAccountNetworkRulesPrivateLinkAccessList = exports.StorageAccountNetworkRulesPrivateLinkAccessOutputReference = exports.storageAccountNetworkRulesPrivateLinkAccessToHclTerraform = exports.storageAccountNetworkRulesPrivateLinkAccessToTerraform = exports.StorageAccountImmutabilityPolicyOutputReference = exports.storageAccountImmutabilityPolicyToHclTerraform = exports.storageAccountImmutabilityPolicyToTerraform = exports.StorageAccountIdentityOutputReference = exports.storageAccountIdentityToHclTerraform = exports.storageAccountIdentityToTerraform = exports.StorageAccountCustomerManagedKeyOutputReference = exports.storageAccountCustomerManagedKeyToHclTerraform = exports.storageAccountCustomerManagedKeyToTerraform = exports.StorageAccountCustomDomainOutputReference = exports.storageAccountCustomDomainToHclTerraform = exports.storageAccountCustomDomainToTerraform = exports.StorageAccountBlobPropertiesOutputReference = exports.storageAccountBlobPropertiesToHclTerraform = exports.storageAccountBlobPropertiesToTerraform = exports.StorageAccountBlobPropertiesRestorePolicyOutputReference = exports.storageAccountBlobPropertiesRestorePolicyToHclTerraform = exports.storageAccountBlobPropertiesRestorePolicyToTerraform = exports.StorageAccountBlobPropertiesDeleteRetentionPolicyOutputReference = exports.storageAccountBlobPropertiesDeleteRetentionPolicyToHclTerraform = exports.storageAccountBlobPropertiesDeleteRetentionPolicyToTerraform = exports.StorageAccountBlobPropertiesCorsRuleList = exports.StorageAccountBlobPropertiesCorsRuleOutputReference = exports.storageAccountBlobPropertiesCorsRuleToHclTerraform = exports.storageAccountBlobPropertiesCorsRuleToTerraform = exports.StorageAccountBlobPropertiesContainerDeleteRetentionPolicyOutputReference = exports.storageAccountBlobPropertiesContainerDeleteRetentionPolicyToHclTerraform = exports.storageAccountBlobPropertiesContainerDeleteRetentionPolicyToTerraform = exports.StorageAccountAzureFilesAuthenticationOutputReference = exports.storageAccountAzureFilesAuthenticationToHclTerraform = exports.storageAccountAzureFilesAuthenticationToTerraform = exports.StorageAccountAzureFilesAuthenticationActiveDirectoryOutputReference = exports.storageAccountAzureFilesAuthenticationActiveDirectoryToHclTerraform = exports.storageAccountAzureFilesAuthenticationActiveDirectoryToTerraform = void 0;
exports.StorageAccount = exports.StorageAccountTimeoutsOutputReference = exports.storageAccountTimeoutsToHclTerraform = exports.storageAccountTimeoutsToTerraform = exports.StorageAccountStaticWebsiteOutputReference = exports.storageAccountStaticWebsiteToHclTerraform = exports.storageAccountStaticWebsiteToTerraform = exports.StorageAccountSharePropertiesOutputReference = exports.storageAccountSharePropertiesToHclTerraform = exports.storageAccountSharePropertiesToTerraform = exports.StorageAccountSharePropertiesSmbOutputReference = exports.storageAccountSharePropertiesSmbToHclTerraform = exports.storageAccountSharePropertiesSmbToTerraform = exports.StorageAccountSharePropertiesRetentionPolicyOutputReference = exports.storageAccountSharePropertiesRetentionPolicyToHclTerraform = exports.storageAccountSharePropertiesRetentionPolicyToTerraform = exports.StorageAccountSharePropertiesCorsRuleList = exports.StorageAccountSharePropertiesCorsRuleOutputReference = exports.storageAccountSharePropertiesCorsRuleToHclTerraform = exports.storageAccountSharePropertiesCorsRuleToTerraform = exports.StorageAccountSasPolicyOutputReference = exports.storageAccountSasPolicyToHclTerraform = exports.storageAccountSasPolicyToTerraform = exports.StorageAccountRoutingOutputReference = exports.storageAccountRoutingToHclTerraform = exports.storageAccountRoutingToTerraform = exports.StorageAccountQueuePropertiesOutputReference = exports.storageAccountQueuePropertiesToHclTerraform = exports.storageAccountQueuePropertiesToTerraform = exports.StorageAccountQueuePropertiesMinuteMetricsOutputReference = exports.storageAccountQueuePropertiesMinuteMetricsToHclTerraform = exports.storageAccountQueuePropertiesMinuteMetricsToTerraform = exports.StorageAccountQueuePropertiesLoggingOutputReference = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function storageAccountAzureFilesAuthenticationActiveDirectoryToTerraform(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 {
domain_guid: cdktf.stringToTerraform(struct.domainGuid),
domain_name: cdktf.stringToTerraform(struct.domainName),
domain_sid: cdktf.stringToTerraform(struct.domainSid),
forest_name: cdktf.stringToTerraform(struct.forestName),
netbios_domain_name: cdktf.stringToTerraform(struct.netbiosDomainName),
storage_sid: cdktf.stringToTerraform(struct.storageSid),
};
}
exports.storageAccountAzureFilesAuthenticationActiveDirectoryToTerraform = storageAccountAzureFilesAuthenticationActiveDirectoryToTerraform;
function storageAccountAzureFilesAuthenticationActiveDirectoryToHclTerraform(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 = {
domain_guid: {
value: cdktf.stringToHclTerraform(struct.domainGuid),
isBlock: false,
type: "simple",
storageClassType: "string",
},
domain_name: {
value: cdktf.stringToHclTerraform(struct.domainName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
domain_sid: {
value: cdktf.stringToHclTerraform(struct.domainSid),
isBlock: false,
type: "simple",
storageClassType: "string",
},
forest_name: {
value: cdktf.stringToHclTerraform(struct.forestName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
netbios_domain_name: {
value: cdktf.stringToHclTerraform(struct.netbiosDomainName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
storage_sid: {
value: cdktf.stringToHclTerraform(struct.storageSid),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.storageAccountAzureFilesAuthenticationActiveDirectoryToHclTerraform = storageAccountAzureFilesAuthenticationActiveDirectoryToHclTerraform;
class StorageAccountAzureFilesAuthenticationActiveDirectoryOutputReference 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._domainGuid !== undefined) {
hasAnyValues = true;
internalValueResult.domainGuid = this._domainGuid;
}
if (this._domainName !== undefined) {
hasAnyValues = true;
internalValueResult.domainName = this._domainName;
}
if (this._domainSid !== undefined) {
hasAnyValues = true;
internalValueResult.domainSid = this._domainSid;
}
if (this._forestName !== undefined) {
hasAnyValues = true;
internalValueResult.forestName = this._forestName;
}
if (this._netbiosDomainName !== undefined) {
hasAnyValues = true;
internalValueResult.netbiosDomainName = this._netbiosDomainName;
}
if (this._storageSid !== undefined) {
hasAnyValues = true;
internalValueResult.storageSid = this._storageSid;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._domainGuid = undefined;
this._domainName = undefined;
this._domainSid = undefined;
this._forestName = undefined;
this._netbiosDomainName = undefined;
this._storageSid = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._domainGuid = value.domainGuid;
this._domainName = value.domainName;
this._domainSid = value.domainSid;
this._forestName = value.forestName;
this._netbiosDomainName = value.netbiosDomainName;
this._storageSid = value.storageSid;
}
}
get domainGuid() {
return this.getStringAttribute('domain_guid');
}
set domainGuid(value) {
this._domainGuid = value;
}
// Temporarily expose input value. Use with caution.
get domainGuidInput() {
return this._domainGuid;
}
get domainName() {
return this.getStringAttribute('domain_name');
}
set domainName(value) {
this._domainName = value;
}
// Temporarily expose input value. Use with caution.
get domainNameInput() {
return this._domainName;
}
get domainSid() {
return this.getStringAttribute('domain_sid');
}
set domainSid(value) {
this._domainSid = value;
}
resetDomainSid() {
this._domainSid = undefined;
}
// Temporarily expose input value. Use with caution.
get domainSidInput() {
return this._domainSid;
}
get forestName() {
return this.getStringAttribute('forest_name');
}
set forestName(value) {
this._forestName = value;
}
resetForestName() {
this._forestName = undefined;
}
// Temporarily expose input value. Use with caution.
get forestNameInput() {
return this._forestName;
}
get netbiosDomainName() {
return this.getStringAttribute('netbios_domain_name');
}
set netbiosDomainName(value) {
this._netbiosDomainName = value;
}
resetNetbiosDomainName() {
this._netbiosDomainName = undefined;
}
// Temporarily expose input value. Use with caution.
get netbiosDomainNameInput() {
return this._netbiosDomainName;
}
get storageSid() {
return this.getStringAttribute('storage_sid');
}
set storageSid(value) {
this._storageSid = value;
}
resetStorageSid() {
this._storageSid = undefined;
}
// Temporarily expose input value. Use with caution.
get storageSidInput() {
return this._storageSid;
}
}
exports.StorageAccountAzureFilesAuthenticationActiveDirectoryOutputReference = StorageAccountAzureFilesAuthenticationActiveDirectoryOutputReference;
_a = JSII_RTTI_SYMBOL_1;
StorageAccountAzureFilesAuthenticationActiveDirectoryOutputReference[_a] = { fqn: "@cdktf/provider-azurerm.storageAccount.StorageAccountAzureFilesAuthenticationActiveDirectoryOutputReference", version: "12.27.0" };
function storageAccountAzureFilesAuthenticationToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
default_share_level_permission: cdktf.stringToTerraform(struct.defaultShareLevelPermission),
directory_type: cdktf.stringToTerraform(struct.directoryType),
active_directory: storageAccountAzureFilesAuthenticationActiveDirectoryToTerraform(struct.activeDirectory),
};
}
exports.storageAccountAzureFilesAuthenticationToTerraform = storageAccountAzureFilesAuthenticationToTerraform;
function storageAccountAzureFilesAuthenticationToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
default_share_level_permission: {
value: cdktf.stringToHclTerraform(struct.defaultShareLevelPermission),
isBlock: false,
type: "simple",
storageClassType: "string",
},
directory_type: {
value: cdktf.stringToHclTerraform(struct.directoryType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
active_directory: {
value: storageAccountAzureFilesAuthenticationActiveDirectoryToHclTerraform(struct.activeDirectory),
isBlock: true,
type: "list",
storageClassType: "StorageAccountAzureFilesAuthenticationActiveDirectoryList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.storageAccountAzureFilesAuthenticationToHclTerraform = storageAccountAzureFilesAuthenticationToHclTerraform;
class StorageAccountAzureFilesAuthenticationOutputReference 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;
// active_directory - computed: false, optional: true, required: false
this._activeDirectory = new StorageAccountAzureFilesAuthenticationActiveDirectoryOutputReference(this, "active_directory");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._defaultShareLevelPermission !== undefined) {
hasAnyValues = true;
internalValueResult.defaultShareLevelPermission = this._defaultShareLevelPermission;
}
if (this._directoryType !== undefined) {
hasAnyValues = true;
internalValueResult.directoryType = this._directoryType;
}
if (this._activeDirectory?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.activeDirectory = this._activeDirectory?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._defaultShareLevelPermission = undefined;
this._directoryType = undefined;
this._activeDirectory.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._defaultShareLevelPermission = value.defaultShareLevelPermission;
this._directoryType = value.directoryType;
this._activeDirectory.internalValue = value.activeDirectory;
}
}
get defaultShareLevelPermission() {
return this.getStringAttribute('default_share_level_permission');
}
set defaultShareLevelPermission(value) {
this._defaultShareLevelPermission = value;
}
resetDefaultShareLevelPermission() {
this._defaultShareLevelPermission = undefined;
}
// Temporarily expose input value. Use with caution.
get defaultShareLevelPermissionInput() {
return this._defaultShareLevelPermission;
}
get directoryType() {
return this.getStringAttribute('directory_type');
}
set directoryType(value) {
this._directoryType = value;
}
// Temporarily expose input value. Use with caution.
get directoryTypeInput() {
return this._directoryType;
}
get activeDirectory() {
return this._activeDirectory;
}
putActiveDirectory(value) {
this._activeDirectory.internalValue = value;
}
resetActiveDirectory() {
this._activeDirectory.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get activeDirectoryInput() {
return this._activeDirectory.internalValue;
}
}
exports.StorageAccountAzureFilesAuthenticationOutputReference = StorageAccountAzureFilesAuthenticationOutputReference;
_b = JSII_RTTI_SYMBOL_1;
StorageAccountAzureFilesAuthenticationOutputReference[_b] = { fqn: "@cdktf/provider-azurerm.storageAccount.StorageAccountAzureFilesAuthenticationOutputReference", version: "12.27.0" };
function storageAccountBlobPropertiesContainerDeleteRetentionPolicyToTerraform(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 {
days: cdktf.numberToTerraform(struct.days),
};
}
exports.storageAccountBlobPropertiesContainerDeleteRetentionPolicyToTerraform = storageAccountBlobPropertiesContainerDeleteRetentionPolicyToTerraform;
function storageAccountBlobPropertiesContainerDeleteRetentionPolicyToHclTerraform(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 = {
days: {
value: cdktf.numberToHclTerraform(struct.days),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.storageAccountBlobPropertiesContainerDeleteRetentionPolicyToHclTerraform = storageAccountBlobPropertiesContainerDeleteRetentionPolicyToHclTerraform;
class StorageAccountBlobPropertiesContainerDeleteRetentionPolicyOutputReference 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._days !== undefined) {
hasAnyValues = true;
internalValueResult.days = this._days;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._days = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._days = value.days;
}
}
get days() {
return this.getNumberAttribute('days');
}
set days(value) {
this._days = value;
}
resetDays() {
this._days = undefined;
}
// Temporarily expose input value. Use with caution.
get daysInput() {
return this._days;
}
}
exports.StorageAccountBlobPropertiesContainerDeleteRetentionPolicyOutputReference = StorageAccountBlobPropertiesContainerDeleteRetentionPolicyOutputReference;
_c = JSII_RTTI_SYMBOL_1;
StorageAccountBlobPropertiesContainerDeleteRetentionPolicyOutputReference[_c] = { fqn: "@cdktf/provider-azurerm.storageAccount.StorageAccountBlobPropertiesContainerDeleteRetentionPolicyOutputReference", version: "12.27.0" };
function storageAccountBlobPropertiesCorsRuleToTerraform(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 {
allowed_headers: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.allowedHeaders),
allowed_methods: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.allowedMethods),
allowed_origins: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.allowedOrigins),
exposed_headers: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.exposedHeaders),
max_age_in_seconds: cdktf.numberToTerraform(struct.maxAgeInSeconds),
};
}
exports.storageAccountBlobPropertiesCorsRuleToTerraform = storageAccountBlobPropertiesCorsRuleToTerraform;
function storageAccountBlobPropertiesCorsRuleToHclTerraform(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 = {
allowed_headers: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.allowedHeaders),
isBlock: false,
type: "list",
storageClassType: "stringList",
},
allowed_methods: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.allowedMethods),
isBlock: false,
type: "list",
storageClassType: "stringList",
},
allowed_origins: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.allowedOrigins),
isBlock: false,
type: "list",
storageClassType: "stringList",
},
exposed_headers: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.exposedHeaders),
isBlock: false,
type: "list",
storageClassType: "stringList",
},
max_age_in_seconds: {
value: cdktf.numberToHclTerraform(struct.maxAgeInSeconds),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.storageAccountBlobPropertiesCorsRuleToHclTerraform = storageAccountBlobPropertiesCorsRuleToHclTerraform;
class StorageAccountBlobPropertiesCorsRuleOutputReference 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._allowedHeaders !== undefined) {
hasAnyValues = true;
internalValueResult.allowedHeaders = this._allowedHeaders;
}
if (this._allowedMethods !== undefined) {
hasAnyValues = true;
internalValueResult.allowedMethods = this._allowedMethods;
}
if (this._allowedOrigins !== undefined) {
hasAnyValues = true;
internalValueResult.allowedOrigins = this._allowedOrigins;
}
if (this._exposedHeaders !== undefined) {
hasAnyValues = true;
internalValueResult.exposedHeaders = this._exposedHeaders;
}
if (this._maxAgeInSeconds !== undefined) {
hasAnyValues = true;
internalValueResult.maxAgeInSeconds = this._maxAgeInSeconds;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._allowedHeaders = undefined;
this._allowedMethods = undefined;
this._allowedOrigins = undefined;
this._exposedHeaders = undefined;
this._maxAgeInSeconds = 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._allowedHeaders = value.allowedHeaders;
this._allowedMethods = value.allowedMethods;
this._allowedOrigins = value.allowedOrigins;
this._exposedHeaders = value.exposedHeaders;
this._maxAgeInSeconds = value.maxAgeInSeconds;
}
}
get allowedHeaders() {
return this.getListAttribute('allowed_headers');
}
set allowedHeaders(value) {
this._allowedHeaders = value;
}
// Temporarily expose input value. Use with caution.
get allowedHeadersInput() {
return this._allowedHeaders;
}
get allowedMethods() {
return this.getListAttribute('allowed_methods');
}
set allowedMethods(value) {
this._allowedMethods = value;
}
// Temporarily expose input value. Use with caution.
get allowedMethodsInput() {
return this._allowedMethods;
}
get allowedOrigins() {
return this.getListAttribute('allowed_origins');
}
set allowedOrigins(value) {
this._allowedOrigins = value;
}
// Temporarily expose input value. Use with caution.
get allowedOriginsInput() {
return this._allowedOrigins;
}
get exposedHeaders() {
return this.getListAttribute('exposed_headers');
}
set exposedHeaders(value) {
this._exposedHeaders = value;
}
// Temporarily expose input value. Use with caution.
get exposedHeadersInput() {
return this._exposedHeaders;
}
get maxAgeInSeconds() {
return this.getNumberAttribute('max_age_in_seconds');
}
set maxAgeInSeconds(value) {
this._maxAgeInSeconds = value;
}
// Temporarily expose input value. Use with caution.
get maxAgeInSecondsInput() {
return this._maxAgeInSeconds;
}
}
exports.StorageAccountBlobPropertiesCorsRuleOutputReference = StorageAccountBlobPropertiesCorsRuleOutputReference;
_d = JSII_RTTI_SYMBOL_1;
StorageAccountBlobPropertiesCorsRuleOutputReference[_d] = { fqn: "@cdktf/provider-azurerm.storageAccount.StorageAccountBlobPropertiesCorsRuleOutputReference", version: "12.27.0" };
class StorageAccountBlobPropertiesCorsRuleList 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 StorageAccountBlobPropertiesCorsRuleOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.StorageAccountBlobPropertiesCorsRuleList = StorageAccountBlobPropertiesCorsRuleList;
_e = JSII_RTTI_SYMBOL_1;
StorageAccountBlobPropertiesCorsRuleList[_e] = { fqn: "@cdktf/provider-azurerm.storageAccount.StorageAccountBlobPropertiesCorsRuleList", version: "12.27.0" };
function storageAccountBlobPropertiesDeleteRetentionPolicyToTerraform(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 {
days: cdktf.numberToTerraform(struct.days),
permanent_delete_enabled: cdktf.booleanToTerraform(struct.permanentDeleteEnabled),
};
}
exports.storageAccountBlobPropertiesDeleteRetentionPolicyToTerraform = storageAccountBlobPropertiesDeleteRetentionPolicyToTerraform;
function storageAccountBlobPropertiesDeleteRetentionPolicyToHclTerraform(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 = {
days: {
value: cdktf.numberToHclTerraform(struct.days),
isBlock: false,
type: "simple",
storageClassType: "number",
},
permanent_delete_enabled: {
value: cdktf.booleanToHclTerraform(struct.permanentDeleteEnabled),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.storageAccountBlobPropertiesDeleteRetentionPolicyToHclTerraform = storageAccountBlobPropertiesDeleteRetentionPolicyToHclTerraform;
class StorageAccountBlobPropertiesDeleteRetentionPolicyOutputReference 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._days !== undefined) {
hasAnyValues = true;
internalValueResult.days = this._days;
}
if (this._permanentDeleteEnabled !== undefined) {
hasAnyValues = true;
internalValueResult.permanentDeleteEnabled = this._permanentDeleteEnabled;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._days = undefined;
this._permanentDeleteEnabled = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._days = value.days;
this._permanentDeleteEnabled = value.permanentDeleteEnabled;
}
}
get days() {
return this.getNumberAttribute('days');
}
set days(value) {
this._days = value;
}
resetDays() {
this._days = undefined;
}
// Temporarily expose input value. Use with caution.
get daysInput() {
return this._days;
}
get permanentDeleteEnabled() {
return this.getBooleanAttribute('permanent_delete_enabled');
}
set permanentDeleteEnabled(value) {
this._permanentDeleteEnabled = value;
}
resetPermanentDeleteEnabled() {
this._permanentDeleteEnabled = undefined;
}
// Temporarily expose input value. Use with caution.
get permanentDeleteEnabledInput() {
return this._permanentDeleteEnabled;
}
}
exports.StorageAccountBlobPropertiesDeleteRetentionPolicyOutputReference = StorageAccountBlobPropertiesDeleteRetentionPolicyOutputReference;
_f = JSII_RTTI_SYMBOL_1;
StorageAccountBlobPropertiesDeleteRetentionPolicyOutputReference[_f] = { fqn: "@cdktf/provider-azurerm.storageAccount.StorageAccountBlobPropertiesDeleteRetentionPolicyOutputReference", version: "12.27.0" };
function storageAccountBlobPropertiesRestorePolicyToTerraform(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 {
days: cdktf.numberToTerraform(struct.days),
};
}
exports.storageAccountBlobPropertiesRestorePolicyToTerraform = storageAccountBlobPropertiesRestorePolicyToTerraform;
function storageAccountBlobPropertiesRestorePolicyToHclTerraform(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 = {
days: {
value: cdktf.numberToHclTerraform(struct.days),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.storageAccountBlobPropertiesRestorePolicyToHclTerraform = storageAccountBlobPropertiesRestorePolicyToHclTerraform;
class StorageAccountBlobPropertiesRestorePolicyOutputReference 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._days !== undefined) {
hasAnyValues = true;
internalValueResult.days = this._days;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._days = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._days = value.days;
}
}
get days() {
return this.getNumberAttribute('days');
}
set days(value) {
this._days = value;
}
// Temporarily expose input value. Use with caution.
get daysInput() {
return this._days;
}
}
exports.StorageAccountBlobPropertiesRestorePolicyOutputReference = StorageAccountBlobPropertiesRestorePolicyOutputReference;
_g = JSII_RTTI_SYMBOL_1;
StorageAccountBlobPropertiesRestorePolicyOutputReference[_g] = { fqn: "@cdktf/provider-azurerm.storageAccount.StorageAccountBlobPropertiesRestorePolicyOutputReference", version: "12.27.0" };
function storageAccountBlobPropertiesToTerraform(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_feed_enabled: cdktf.booleanToTerraform(struct.changeFeedEnabled),
change_feed_retention_in_days: cdktf.numberToTerraform(struct.changeFeedRetentionInDays),
default_service_version: cdktf.stringToTerraform(struct.defaultServiceVersion),
last_access_time_enabled: cdktf.booleanToTerraform(struct.lastAccessTimeEnabled),
versioning_enabled: cdktf.booleanToTerraform(struct.versioningEnabled),
container_delete_retention_policy: storageAccountBlobPropertiesContainerDeleteRetentionPolicyToTerraform(struct.containerDeleteRetentionPolicy),
cors_rule: cdktf.listMapper(storageAccountBlobPropertiesCorsRuleToTerraform, true)(struct.corsRule),
delete_retention_policy: storageAccountBlobPropertiesDeleteRetentionPolicyToTerraform(struct.deleteRetentionPolicy),
restore_policy: storageAccountBlobPropertiesRestorePolicyToTerraform(struct.restorePolicy),
};
}
exports.storageAccountBlobPropertiesToTerraform = storageAccountBlobPropertiesToTerraform;
function storageAccountBlobPropertiesToHclTerraform(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_feed_enabled: {
value: cdktf.booleanToHclTerraform(struct.changeFeedEnabled),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
change_feed_retention_in_days: {
value: cdktf.numberToHclTerraform(struct.changeFeedRetentionInDays),
isBlock: false,
type: "simple",
storageClassType: "number",
},
default_service_version: {
value: cdktf.stringToHclTerraform(struct.defaultServiceVersion),
isBlock: false,
type: "simple",
storageClassType: "string",
},
last_access_time_enabled: {
value: cdktf.booleanToHclTerraform(struct.lastAccessTimeEnabled),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
versioning_enabled: {
value: cdktf.booleanToHclTerraform(struct.versioningEnabled),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
container_delete_retention_policy: {
value: storageAccountBlobPropertiesContainerDeleteRetentionPolicyToHclTerraform(struct.containerDeleteRetentionPolicy),
isBlock: true,
type: "list",
storageClassType: "StorageAccountBlobPropertiesContainerDeleteRetentionPolicyList",
},
cors_rule: {
value: cdktf.listMapperHcl(storageAccountBlobPropertiesCorsRuleToHclTerraform, true)(struct.corsRule),
isBlock: true,
type: "list",
storageClassType: "StorageAccountBlobPropertiesCorsRuleList",
},
delete_retention_policy: {
value: storageAccountBlobPropertiesDeleteRetentionPolicyToHclTerraform(struct.deleteRetentionPolicy),
isBlock: true,
type: "list",
storageClassType: "StorageAccountBlobPropertiesDeleteRetentionPolicyList",
},
restore_policy: {
value: storageAccountBlobPropertiesRestorePolicyToHclTerraform(struct.restorePolicy),
isBlock: true,
type: "list",
storageClassType: "StorageAccountBlobPropertiesRestorePolicyList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.storageAccountBlobPropertiesToHclTerraform = storageAccountBlobPropertiesToHclTerraform;
class StorageAccountBlobPropertiesOutputReference 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;
// container_delete_retention_policy - computed: false, optional: true, required: false
this._containerDeleteRetentionPolicy = new StorageAccountBlobPropertiesContainerDeleteRetentionPolicyOutputReference(this, "container_delete_retention_policy");
// cors_rule - computed: false, optional: true, required: false
this._corsRule = new StorageAccountBlobPropertiesCorsRuleList(this, "cors_rule", false);
// delete_retention_policy - computed: false, optional: true, required: false
this._deleteRetentionPolicy = new StorageAccountBlobPropertiesDeleteRetentionPolicyOutputReference(this, "delete_retention_policy");
// restore_policy - computed: false, optional: true, required: false
this._restorePolicy = new StorageAccountBlobPropertiesRestorePolicyOutputReference(this, "restore_policy");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._changeFeedEnabled !== undefined) {
hasAnyValues = true;
internalValueResult.changeFeedEnabled = this._changeFeedEnabled;
}
if (this._changeFeedRetentionInDays !== undefined) {
hasAnyValues = true;
internalValueResult.changeFeedRetentionInDays = this._changeFeedRetentionInDays;
}
if (this._defaultServiceVersion !== undefined) {
hasAnyValues = true;
internalValueResult.defaultServiceVersion = this._defaultServiceVersion;
}
if (this._lastAccessTimeEnabled !== undefined) {
hasAnyValues = true;
internalValueResult.lastAccessTimeEnabled = this._lastAccessTimeEnabled;
}
if (this._versioningEnabled !== undefined) {
hasAnyValues = true;
internalValueResult.versioningEnabled = this._versioningEnabled;
}
if (this._containerDeleteRetentionPolicy?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.containerDeleteRetentionPolicy = this._containerDeleteRetentionPolicy?.internalValue;
}
if (this._corsRule?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.corsRule = this._corsRule?.internalValue;
}
if (this._deleteRetentionPolicy?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.deleteRetentionPolicy = this._deleteRetentionPolicy?.internalValue;
}
if (this._restorePolicy?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.restorePolicy = this._restorePolicy?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._changeFeedEnabled = undefined;
this._changeFeedRetentionInDays = undefined;
this._defaultServiceVersion = undefined;
this._lastAccessTimeEnabled = undefined;
this._versioningEnabled = undefined;
this._containerDeleteRetentionPolicy.internalValue = undefined;
this._corsRule.internalValue = undefined;
this._deleteRetentionPolicy.internalValue = undefined;
this._restorePolicy.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._changeFeedEnabled = value.changeFeedEnabled;
this._changeFeedRetentionInDays = value.changeFeedRetentionInDays;
this._defaultServiceVersion = value.defaultServiceVersion;
this._lastAccessTimeEnabled = value.lastAccessTimeEnabled;
this._versioningEnabled = value.versioningEnabled;
this._containerDeleteRetentionPolicy.internalValue = value.containerDeleteRetentionPolicy;
this._corsRule.internalValue = value.corsRule;
this._deleteRetentionPolicy.internalValue = value.deleteRetentionPolicy;
this._restorePolicy.internalValue = value.restorePolicy;
}
}
get changeFeedEnabled() {
return this.getBooleanAttribute('change_feed_enabled');
}
set changeFeedEnabled(value) {
this._changeFeedEnabled = value;
}
resetChangeFeedEnabled() {
this._changeFeedEnabled = undefined;
}
// Temporarily expose input value. Use with caution.
get changeFeedEnabledInput() {
return this._changeFeedEnabled;
}
get changeFeedRetentionInDays() {
return this.getNumberAttribute('change_feed_retention_in_days');
}
set changeFeedRetentionInDays(value) {
this._changeFeedRetentionInDays = value;
}
resetChangeFeedRetentionInDays() {
this._changeFeedRetentionInDays = undefined;
}
// Temporarily expose input value. Use with caution.
get changeFeedRetentionInDaysInput() {
return this._changeFeedRetentionInDays;
}
get defaultServiceVersion() {
return this.getStringAttribute('default_service_version');
}
set defaultServiceVersion(value) {
this._defaultServiceVersion = value;
}
resetDefaultServiceVersion() {
this._defaultServiceVersion = undefined;
}
// Temporarily expose input value. Use with caution.
get defaultServiceVersionInput() {
return this._defaultServiceVersion;
}
get lastAccessTimeEnabled() {
return this.getBooleanAttribute('last_access_time_enabled');
}
set lastAccessTimeEnabled(value) {
this._lastAccessTimeEnabled = value;
}
resetLastAccessTimeEnabled() {
this._lastAccessTimeEnabled = undefined;
}
// Temporarily expose input value. Use with caution.
get lastAccessTimeEnabledInput() {
return this._lastAccessTimeEnabled;
}
get versioningEnabled() {
return this.getBooleanAttribute('versioning_enabled');
}
set versioningEnabled(value) {
this._versioningEnabled = value;
}
resetVersioningEnabled() {
this._versioningEnabled = undefined;
}
// Temporarily expose input value. Use with caution.
get versioningEnabledInput() {
return this._versioningEnabled;
}
get containerDeleteRetentionPolicy() {
return this._containerDeleteRetentionPolicy;
}
putContainerDeleteRetentionPolicy(value) {
this._containerDeleteRetentionPolicy.internalValue = value;
}
resetContainerDeleteRetentionPolicy() {
this._containerDeleteRetentionPolicy.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get containerDeleteRetentionPolicyInput() {
return this._containerDeleteRetentionPolicy.internalValue;
}
get corsRule() {
return this._corsRule;
}
putCorsRule(value) {
this._corsRule.internalValue = value;
}
resetCorsRule() {
this._corsRule.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get corsRuleInput() {
return this._corsRule.internalValue;
}
get deleteRetentionPolicy() {
return this._deleteRetentionPolicy;
}
putDeleteRetentionPolicy(value) {
this._deleteRetentionPolicy.internalValue = value;
}
resetDeleteRetentionPolicy() {
this._deleteRetentionPolicy.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get deleteRetentionPolicyInput() {
return this._deleteRetentionPolicy.internalValue;
}
get restorePolicy() {
return this._restorePolicy;
}
putRestorePolicy(value) {
this._restorePolicy.internalValue = value;
}
resetRestorePolicy() {
this._restorePolicy.inter