UNPKG

@cdktf/provider-azurerm

Version:

Prebuilt azurerm Provider for Terraform CDK (cdktf)

870 lines 96.8 kB
/** * Copyright (c) HashiCorp, Inc. * SPDX-License-Identifier: MPL-2.0 */ import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface StorageAccountConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#access_tier StorageAccount#access_tier} */ readonly accessTier?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#account_kind StorageAccount#account_kind} */ readonly accountKind?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#account_replication_type StorageAccount#account_replication_type} */ readonly accountReplicationType: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#account_tier StorageAccount#account_tier} */ readonly accountTier: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#allow_nested_items_to_be_public StorageAccount#allow_nested_items_to_be_public} */ readonly allowNestedItemsToBePublic?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#allowed_copy_scope StorageAccount#allowed_copy_scope} */ readonly allowedCopyScope?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#cross_tenant_replication_enabled StorageAccount#cross_tenant_replication_enabled} */ readonly crossTenantReplicationEnabled?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#default_to_oauth_authentication StorageAccount#default_to_oauth_authentication} */ readonly defaultToOauthAuthentication?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#dns_endpoint_type StorageAccount#dns_endpoint_type} */ readonly dnsEndpointType?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#edge_zone StorageAccount#edge_zone} */ readonly edgeZone?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#enable_https_traffic_only StorageAccount#enable_https_traffic_only} */ readonly enableHttpsTrafficOnly?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#https_traffic_only_enabled StorageAccount#https_traffic_only_enabled} */ readonly httpsTrafficOnlyEnabled?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#id StorageAccount#id} * * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. */ readonly id?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#infrastructure_encryption_enabled StorageAccount#infrastructure_encryption_enabled} */ readonly infrastructureEncryptionEnabled?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#is_hns_enabled StorageAccount#is_hns_enabled} */ readonly isHnsEnabled?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#large_file_share_enabled StorageAccount#large_file_share_enabled} */ readonly largeFileShareEnabled?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#local_user_enabled StorageAccount#local_user_enabled} */ readonly localUserEnabled?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#location StorageAccount#location} */ readonly location: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#min_tls_version StorageAccount#min_tls_version} */ readonly minTlsVersion?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#name StorageAccount#name} */ readonly name: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#nfsv3_enabled StorageAccount#nfsv3_enabled} */ readonly nfsv3Enabled?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#public_network_access_enabled StorageAccount#public_network_access_enabled} */ readonly publicNetworkAccessEnabled?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#queue_encryption_key_type StorageAccount#queue_encryption_key_type} */ readonly queueEncryptionKeyType?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#resource_group_name StorageAccount#resource_group_name} */ readonly resourceGroupName: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#sftp_enabled StorageAccount#sftp_enabled} */ readonly sftpEnabled?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#shared_access_key_enabled StorageAccount#shared_access_key_enabled} */ readonly sharedAccessKeyEnabled?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#table_encryption_key_type StorageAccount#table_encryption_key_type} */ readonly tableEncryptionKeyType?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#tags StorageAccount#tags} */ readonly tags?: { [key: string]: string; }; /** * azure_files_authentication block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#azure_files_authentication StorageAccount#azure_files_authentication} */ readonly azureFilesAuthentication?: StorageAccountAzureFilesAuthentication; /** * blob_properties block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#blob_properties StorageAccount#blob_properties} */ readonly blobProperties?: StorageAccountBlobProperties; /** * custom_domain block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#custom_domain StorageAccount#custom_domain} */ readonly customDomain?: StorageAccountCustomDomain; /** * customer_managed_key block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#customer_managed_key StorageAccount#customer_managed_key} */ readonly customerManagedKey?: StorageAccountCustomerManagedKey; /** * identity block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#identity StorageAccount#identity} */ readonly identity?: StorageAccountIdentity; /** * immutability_policy block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#immutability_policy StorageAccount#immutability_policy} */ readonly immutabilityPolicy?: StorageAccountImmutabilityPolicy; /** * network_rules block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#network_rules StorageAccount#network_rules} */ readonly networkRules?: StorageAccountNetworkRules; /** * queue_properties block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#queue_properties StorageAccount#queue_properties} */ readonly queueProperties?: StorageAccountQueueProperties; /** * routing block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#routing StorageAccount#routing} */ readonly routing?: StorageAccountRouting; /** * sas_policy block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#sas_policy StorageAccount#sas_policy} */ readonly sasPolicy?: StorageAccountSasPolicy; /** * share_properties block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#share_properties StorageAccount#share_properties} */ readonly shareProperties?: StorageAccountShareProperties; /** * static_website block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#static_website StorageAccount#static_website} */ readonly staticWebsite?: StorageAccountStaticWebsite; /** * timeouts block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#timeouts StorageAccount#timeouts} */ readonly timeouts?: StorageAccountTimeouts; } export interface StorageAccountAzureFilesAuthenticationActiveDirectory { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#domain_guid StorageAccount#domain_guid} */ readonly domainGuid: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#domain_name StorageAccount#domain_name} */ readonly domainName: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#domain_sid StorageAccount#domain_sid} */ readonly domainSid?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#forest_name StorageAccount#forest_name} */ readonly forestName?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#netbios_domain_name StorageAccount#netbios_domain_name} */ readonly netbiosDomainName?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#storage_sid StorageAccount#storage_sid} */ readonly storageSid?: string; } export declare function storageAccountAzureFilesAuthenticationActiveDirectoryToTerraform(struct?: StorageAccountAzureFilesAuthenticationActiveDirectoryOutputReference | StorageAccountAzureFilesAuthenticationActiveDirectory): any; export declare function storageAccountAzureFilesAuthenticationActiveDirectoryToHclTerraform(struct?: StorageAccountAzureFilesAuthenticationActiveDirectoryOutputReference | StorageAccountAzureFilesAuthenticationActiveDirectory): any; export declare class StorageAccountAzureFilesAuthenticationActiveDirectoryOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): StorageAccountAzureFilesAuthenticationActiveDirectory | undefined; set internalValue(value: StorageAccountAzureFilesAuthenticationActiveDirectory | undefined); private _domainGuid?; get domainGuid(): string; set domainGuid(value: string); get domainGuidInput(): string | undefined; private _domainName?; get domainName(): string; set domainName(value: string); get domainNameInput(): string | undefined; private _domainSid?; get domainSid(): string; set domainSid(value: string); resetDomainSid(): void; get domainSidInput(): string | undefined; private _forestName?; get forestName(): string; set forestName(value: string); resetForestName(): void; get forestNameInput(): string | undefined; private _netbiosDomainName?; get netbiosDomainName(): string; set netbiosDomainName(value: string); resetNetbiosDomainName(): void; get netbiosDomainNameInput(): string | undefined; private _storageSid?; get storageSid(): string; set storageSid(value: string); resetStorageSid(): void; get storageSidInput(): string | undefined; } export interface StorageAccountAzureFilesAuthentication { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#default_share_level_permission StorageAccount#default_share_level_permission} */ readonly defaultShareLevelPermission?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#directory_type StorageAccount#directory_type} */ readonly directoryType: string; /** * active_directory block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#active_directory StorageAccount#active_directory} */ readonly activeDirectory?: StorageAccountAzureFilesAuthenticationActiveDirectory; } export declare function storageAccountAzureFilesAuthenticationToTerraform(struct?: StorageAccountAzureFilesAuthenticationOutputReference | StorageAccountAzureFilesAuthentication): any; export declare function storageAccountAzureFilesAuthenticationToHclTerraform(struct?: StorageAccountAzureFilesAuthenticationOutputReference | StorageAccountAzureFilesAuthentication): any; export declare class StorageAccountAzureFilesAuthenticationOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): StorageAccountAzureFilesAuthentication | undefined; set internalValue(value: StorageAccountAzureFilesAuthentication | undefined); private _defaultShareLevelPermission?; get defaultShareLevelPermission(): string; set defaultShareLevelPermission(value: string); resetDefaultShareLevelPermission(): void; get defaultShareLevelPermissionInput(): string | undefined; private _directoryType?; get directoryType(): string; set directoryType(value: string); get directoryTypeInput(): string | undefined; private _activeDirectory; get activeDirectory(): StorageAccountAzureFilesAuthenticationActiveDirectoryOutputReference; putActiveDirectory(value: StorageAccountAzureFilesAuthenticationActiveDirectory): void; resetActiveDirectory(): void; get activeDirectoryInput(): StorageAccountAzureFilesAuthenticationActiveDirectory | undefined; } export interface StorageAccountBlobPropertiesContainerDeleteRetentionPolicy { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#days StorageAccount#days} */ readonly days?: number; } export declare function storageAccountBlobPropertiesContainerDeleteRetentionPolicyToTerraform(struct?: StorageAccountBlobPropertiesContainerDeleteRetentionPolicyOutputReference | StorageAccountBlobPropertiesContainerDeleteRetentionPolicy): any; export declare function storageAccountBlobPropertiesContainerDeleteRetentionPolicyToHclTerraform(struct?: StorageAccountBlobPropertiesContainerDeleteRetentionPolicyOutputReference | StorageAccountBlobPropertiesContainerDeleteRetentionPolicy): any; export declare class StorageAccountBlobPropertiesContainerDeleteRetentionPolicyOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): StorageAccountBlobPropertiesContainerDeleteRetentionPolicy | undefined; set internalValue(value: StorageAccountBlobPropertiesContainerDeleteRetentionPolicy | undefined); private _days?; get days(): number; set days(value: number); resetDays(): void; get daysInput(): number | undefined; } export interface StorageAccountBlobPropertiesCorsRule { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#allowed_headers StorageAccount#allowed_headers} */ readonly allowedHeaders: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#allowed_methods StorageAccount#allowed_methods} */ readonly allowedMethods: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#allowed_origins StorageAccount#allowed_origins} */ readonly allowedOrigins: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#exposed_headers StorageAccount#exposed_headers} */ readonly exposedHeaders: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#max_age_in_seconds StorageAccount#max_age_in_seconds} */ readonly maxAgeInSeconds: number; } export declare function storageAccountBlobPropertiesCorsRuleToTerraform(struct?: StorageAccountBlobPropertiesCorsRule | cdktf.IResolvable): any; export declare function storageAccountBlobPropertiesCorsRuleToHclTerraform(struct?: StorageAccountBlobPropertiesCorsRule | cdktf.IResolvable): any; export declare class StorageAccountBlobPropertiesCorsRuleOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @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: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): StorageAccountBlobPropertiesCorsRule | cdktf.IResolvable | undefined; set internalValue(value: StorageAccountBlobPropertiesCorsRule | cdktf.IResolvable | undefined); private _allowedHeaders?; get allowedHeaders(): string[]; set allowedHeaders(value: string[]); get allowedHeadersInput(): string[] | undefined; private _allowedMethods?; get allowedMethods(): string[]; set allowedMethods(value: string[]); get allowedMethodsInput(): string[] | undefined; private _allowedOrigins?; get allowedOrigins(): string[]; set allowedOrigins(value: string[]); get allowedOriginsInput(): string[] | undefined; private _exposedHeaders?; get exposedHeaders(): string[]; set exposedHeaders(value: string[]); get exposedHeadersInput(): string[] | undefined; private _maxAgeInSeconds?; get maxAgeInSeconds(): number; set maxAgeInSeconds(value: number); get maxAgeInSecondsInput(): number | undefined; } export declare class StorageAccountBlobPropertiesCorsRuleList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: StorageAccountBlobPropertiesCorsRule[] | cdktf.IResolvable; /** * @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: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): StorageAccountBlobPropertiesCorsRuleOutputReference; } export interface StorageAccountBlobPropertiesDeleteRetentionPolicy { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#days StorageAccount#days} */ readonly days?: number; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#permanent_delete_enabled StorageAccount#permanent_delete_enabled} */ readonly permanentDeleteEnabled?: boolean | cdktf.IResolvable; } export declare function storageAccountBlobPropertiesDeleteRetentionPolicyToTerraform(struct?: StorageAccountBlobPropertiesDeleteRetentionPolicyOutputReference | StorageAccountBlobPropertiesDeleteRetentionPolicy): any; export declare function storageAccountBlobPropertiesDeleteRetentionPolicyToHclTerraform(struct?: StorageAccountBlobPropertiesDeleteRetentionPolicyOutputReference | StorageAccountBlobPropertiesDeleteRetentionPolicy): any; export declare class StorageAccountBlobPropertiesDeleteRetentionPolicyOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): StorageAccountBlobPropertiesDeleteRetentionPolicy | undefined; set internalValue(value: StorageAccountBlobPropertiesDeleteRetentionPolicy | undefined); private _days?; get days(): number; set days(value: number); resetDays(): void; get daysInput(): number | undefined; private _permanentDeleteEnabled?; get permanentDeleteEnabled(): boolean | cdktf.IResolvable; set permanentDeleteEnabled(value: boolean | cdktf.IResolvable); resetPermanentDeleteEnabled(): void; get permanentDeleteEnabledInput(): boolean | cdktf.IResolvable | undefined; } export interface StorageAccountBlobPropertiesRestorePolicy { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#days StorageAccount#days} */ readonly days: number; } export declare function storageAccountBlobPropertiesRestorePolicyToTerraform(struct?: StorageAccountBlobPropertiesRestorePolicyOutputReference | StorageAccountBlobPropertiesRestorePolicy): any; export declare function storageAccountBlobPropertiesRestorePolicyToHclTerraform(struct?: StorageAccountBlobPropertiesRestorePolicyOutputReference | StorageAccountBlobPropertiesRestorePolicy): any; export declare class StorageAccountBlobPropertiesRestorePolicyOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): StorageAccountBlobPropertiesRestorePolicy | undefined; set internalValue(value: StorageAccountBlobPropertiesRestorePolicy | undefined); private _days?; get days(): number; set days(value: number); get daysInput(): number | undefined; } export interface StorageAccountBlobProperties { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#change_feed_enabled StorageAccount#change_feed_enabled} */ readonly changeFeedEnabled?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#change_feed_retention_in_days StorageAccount#change_feed_retention_in_days} */ readonly changeFeedRetentionInDays?: number; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#default_service_version StorageAccount#default_service_version} */ readonly defaultServiceVersion?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#last_access_time_enabled StorageAccount#last_access_time_enabled} */ readonly lastAccessTimeEnabled?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#versioning_enabled StorageAccount#versioning_enabled} */ readonly versioningEnabled?: boolean | cdktf.IResolvable; /** * container_delete_retention_policy block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#container_delete_retention_policy StorageAccount#container_delete_retention_policy} */ readonly containerDeleteRetentionPolicy?: StorageAccountBlobPropertiesContainerDeleteRetentionPolicy; /** * cors_rule block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#cors_rule StorageAccount#cors_rule} */ readonly corsRule?: StorageAccountBlobPropertiesCorsRule[] | cdktf.IResolvable; /** * delete_retention_policy block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#delete_retention_policy StorageAccount#delete_retention_policy} */ readonly deleteRetentionPolicy?: StorageAccountBlobPropertiesDeleteRetentionPolicy; /** * restore_policy block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#restore_policy StorageAccount#restore_policy} */ readonly restorePolicy?: StorageAccountBlobPropertiesRestorePolicy; } export declare function storageAccountBlobPropertiesToTerraform(struct?: StorageAccountBlobPropertiesOutputReference | StorageAccountBlobProperties): any; export declare function storageAccountBlobPropertiesToHclTerraform(struct?: StorageAccountBlobPropertiesOutputReference | StorageAccountBlobProperties): any; export declare class StorageAccountBlobPropertiesOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): StorageAccountBlobProperties | undefined; set internalValue(value: StorageAccountBlobProperties | undefined); private _changeFeedEnabled?; get changeFeedEnabled(): boolean | cdktf.IResolvable; set changeFeedEnabled(value: boolean | cdktf.IResolvable); resetChangeFeedEnabled(): void; get changeFeedEnabledInput(): boolean | cdktf.IResolvable | undefined; private _changeFeedRetentionInDays?; get changeFeedRetentionInDays(): number; set changeFeedRetentionInDays(value: number); resetChangeFeedRetentionInDays(): void; get changeFeedRetentionInDaysInput(): number | undefined; private _defaultServiceVersion?; get defaultServiceVersion(): string; set defaultServiceVersion(value: string); resetDefaultServiceVersion(): void; get defaultServiceVersionInput(): string | undefined; private _lastAccessTimeEnabled?; get lastAccessTimeEnabled(): boolean | cdktf.IResolvable; set lastAccessTimeEnabled(value: boolean | cdktf.IResolvable); resetLastAccessTimeEnabled(): void; get lastAccessTimeEnabledInput(): boolean | cdktf.IResolvable | undefined; private _versioningEnabled?; get versioningEnabled(): boolean | cdktf.IResolvable; set versioningEnabled(value: boolean | cdktf.IResolvable); resetVersioningEnabled(): void; get versioningEnabledInput(): boolean | cdktf.IResolvable | undefined; private _containerDeleteRetentionPolicy; get containerDeleteRetentionPolicy(): StorageAccountBlobPropertiesContainerDeleteRetentionPolicyOutputReference; putContainerDeleteRetentionPolicy(value: StorageAccountBlobPropertiesContainerDeleteRetentionPolicy): void; resetContainerDeleteRetentionPolicy(): void; get containerDeleteRetentionPolicyInput(): StorageAccountBlobPropertiesContainerDeleteRetentionPolicy | undefined; private _corsRule; get corsRule(): StorageAccountBlobPropertiesCorsRuleList; putCorsRule(value: StorageAccountBlobPropertiesCorsRule[] | cdktf.IResolvable): void; resetCorsRule(): void; get corsRuleInput(): cdktf.IResolvable | StorageAccountBlobPropertiesCorsRule[] | undefined; private _deleteRetentionPolicy; get deleteRetentionPolicy(): StorageAccountBlobPropertiesDeleteRetentionPolicyOutputReference; putDeleteRetentionPolicy(value: StorageAccountBlobPropertiesDeleteRetentionPolicy): void; resetDeleteRetentionPolicy(): void; get deleteRetentionPolicyInput(): StorageAccountBlobPropertiesDeleteRetentionPolicy | undefined; private _restorePolicy; get restorePolicy(): StorageAccountBlobPropertiesRestorePolicyOutputReference; putRestorePolicy(value: StorageAccountBlobPropertiesRestorePolicy): void; resetRestorePolicy(): void; get restorePolicyInput(): StorageAccountBlobPropertiesRestorePolicy | undefined; } export interface StorageAccountCustomDomain { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#name StorageAccount#name} */ readonly name: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#use_subdomain StorageAccount#use_subdomain} */ readonly useSubdomain?: boolean | cdktf.IResolvable; } export declare function storageAccountCustomDomainToTerraform(struct?: StorageAccountCustomDomainOutputReference | StorageAccountCustomDomain): any; export declare function storageAccountCustomDomainToHclTerraform(struct?: StorageAccountCustomDomainOutputReference | StorageAccountCustomDomain): any; export declare class StorageAccountCustomDomainOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): StorageAccountCustomDomain | undefined; set internalValue(value: StorageAccountCustomDomain | undefined); private _name?; get name(): string; set name(value: string); get nameInput(): string | undefined; private _useSubdomain?; get useSubdomain(): boolean | cdktf.IResolvable; set useSubdomain(value: boolean | cdktf.IResolvable); resetUseSubdomain(): void; get useSubdomainInput(): boolean | cdktf.IResolvable | undefined; } export interface StorageAccountCustomerManagedKey { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#key_vault_key_id StorageAccount#key_vault_key_id} */ readonly keyVaultKeyId?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#managed_hsm_key_id StorageAccount#managed_hsm_key_id} */ readonly managedHsmKeyId?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#user_assigned_identity_id StorageAccount#user_assigned_identity_id} */ readonly userAssignedIdentityId: string; } export declare function storageAccountCustomerManagedKeyToTerraform(struct?: StorageAccountCustomerManagedKeyOutputReference | StorageAccountCustomerManagedKey): any; export declare function storageAccountCustomerManagedKeyToHclTerraform(struct?: StorageAccountCustomerManagedKeyOutputReference | StorageAccountCustomerManagedKey): any; export declare class StorageAccountCustomerManagedKeyOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): StorageAccountCustomerManagedKey | undefined; set internalValue(value: StorageAccountCustomerManagedKey | undefined); private _keyVaultKeyId?; get keyVaultKeyId(): string; set keyVaultKeyId(value: string); resetKeyVaultKeyId(): void; get keyVaultKeyIdInput(): string | undefined; private _managedHsmKeyId?; get managedHsmKeyId(): string; set managedHsmKeyId(value: string); resetManagedHsmKeyId(): void; get managedHsmKeyIdInput(): string | undefined; private _userAssignedIdentityId?; get userAssignedIdentityId(): string; set userAssignedIdentityId(value: string); get userAssignedIdentityIdInput(): string | undefined; } export interface StorageAccountIdentity { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#identity_ids StorageAccount#identity_ids} */ readonly identityIds?: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#type StorageAccount#type} */ readonly type: string; } export declare function storageAccountIdentityToTerraform(struct?: StorageAccountIdentityOutputReference | StorageAccountIdentity): any; export declare function storageAccountIdentityToHclTerraform(struct?: StorageAccountIdentityOutputReference | StorageAccountIdentity): any; export declare class StorageAccountIdentityOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): StorageAccountIdentity | undefined; set internalValue(value: StorageAccountIdentity | undefined); private _identityIds?; get identityIds(): string[]; set identityIds(value: string[]); resetIdentityIds(): void; get identityIdsInput(): string[] | undefined; get principalId(): string; get tenantId(): string; private _type?; get type(): string; set type(value: string); get typeInput(): string | undefined; } export interface StorageAccountImmutabilityPolicy { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#allow_protected_append_writes StorageAccount#allow_protected_append_writes} */ readonly allowProtectedAppendWrites: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#period_since_creation_in_days StorageAccount#period_since_creation_in_days} */ readonly periodSinceCreationInDays: number; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#state StorageAccount#state} */ readonly state: string; } export declare function storageAccountImmutabilityPolicyToTerraform(struct?: StorageAccountImmutabilityPolicyOutputReference | StorageAccountImmutabilityPolicy): any; export declare function storageAccountImmutabilityPolicyToHclTerraform(struct?: StorageAccountImmutabilityPolicyOutputReference | StorageAccountImmutabilityPolicy): any; export declare class StorageAccountImmutabilityPolicyOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): StorageAccountImmutabilityPolicy | undefined; set internalValue(value: StorageAccountImmutabilityPolicy | undefined); private _allowProtectedAppendWrites?; get allowProtectedAppendWrites(): boolean | cdktf.IResolvable; set allowProtectedAppendWrites(value: boolean | cdktf.IResolvable); get allowProtectedAppendWritesInput(): boolean | cdktf.IResolvable | undefined; private _periodSinceCreationInDays?; get periodSinceCreationInDays(): number; set periodSinceCreationInDays(value: number); get periodSinceCreationInDaysInput(): number | undefined; private _state?; get state(): string; set state(value: string); get stateInput(): string | undefined; } export interface StorageAccountNetworkRulesPrivateLinkAccess { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#endpoint_resource_id StorageAccount#endpoint_resource_id} */ readonly endpointResourceId: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#endpoint_tenant_id StorageAccount#endpoint_tenant_id} */ readonly endpointTenantId?: string; } export declare function storageAccountNetworkRulesPrivateLinkAccessToTerraform(struct?: StorageAccountNetworkRulesPrivateLinkAccess | cdktf.IResolvable): any; export declare function storageAccountNetworkRulesPrivateLinkAccessToHclTerraform(struct?: StorageAccountNetworkRulesPrivateLinkAccess | cdktf.IResolvable): any; export declare class StorageAccountNetworkRulesPrivateLinkAccessOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @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: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): StorageAccountNetworkRulesPrivateLinkAccess | cdktf.IResolvable | undefined; set internalValue(value: StorageAccountNetworkRulesPrivateLinkAccess | cdktf.IResolvable | undefined); private _endpointResourceId?; get endpointResourceId(): string; set endpointResourceId(value: string); get endpointResourceIdInput(): string | undefined; private _endpointTenantId?; get endpointTenantId(): string; set endpointTenantId(value: string); resetEndpointTenantId(): void; get endpointTenantIdInput(): string | undefined; } export declare class StorageAccountNetworkRulesPrivateLinkAccessList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: StorageAccountNetworkRulesPrivateLinkAccess[] | cdktf.IResolvable; /** * @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: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): StorageAccountNetworkRulesPrivateLinkAccessOutputReference; } export interface StorageAccountNetworkRules { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#bypass StorageAccount#bypass} */ readonly bypass?: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#default_action StorageAccount#default_action} */ readonly defaultAction: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#ip_rules StorageAccount#ip_rules} */ readonly ipRules?: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#virtual_network_subnet_ids StorageAccount#virtual_network_subnet_ids} */ readonly virtualNetworkSubnetIds?: string[]; /** * private_link_access block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#private_link_access StorageAccount#private_link_access} */ readonly privateLinkAccess?: StorageAccountNetworkRulesPrivateLinkAccess[] | cdktf.IResolvable; } export declare function storageAccountNetworkRulesToTerraform(struct?: StorageAccountNetworkRulesOutputReference | StorageAccountNetworkRules): any; export declare function storageAccountNetworkRulesToHclTerraform(struct?: StorageAccountNetworkRulesOutputReference | StorageAccountNetworkRules): any; export declare class StorageAccountNetworkRulesOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): StorageAccountNetworkRules | undefined; set internalValue(value: StorageAccountNetworkRules | undefined); private _bypass?; get bypass(): string[]; set bypass(value: string[]); resetBypass(): void; get bypassInput(): string[] | undefined; private _defaultAction?; get defaultAction(): string; set defaultAction(value: string); get defaultActionInput(): string | undefined; private _ipRules?; get ipRules(): string[]; set ipRules(value: string[]); resetIpRules(): void; get ipRulesInput(): string[] | undefined; private _virtualNetworkSubnetIds?; get virtualNetworkSubnetIds(): string[]; set virtualNetworkSubnetIds(value: string[]); resetVirtualNetworkSubnetIds(): void; get virtualNetworkSubnetIdsInput(): string[] | undefined; private _privateLinkAccess; get privateLinkAccess(): StorageAccountNetworkRulesPrivateLinkAccessList; putPrivateLinkAccess(value: StorageAccountNetworkRulesPrivateLinkAccess[] | cdktf.IResolvable): void; resetPrivateLinkAccess(): void; get privateLinkAccessInput(): cdktf.IResolvable | StorageAccountNetworkRulesPrivateLinkAccess[] | undefined; } export interface StorageAccountQueuePropertiesCorsRule { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#allowed_headers StorageAccount#allowed_headers} */ readonly allowedHeaders: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#allowed_methods StorageAccount#allowed_methods} */ readonly allowedMethods: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#allowed_origins StorageAccount#allowed_origins} */ readonly allowedOrigins: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#exposed_headers StorageAccount#exposed_headers} */ readonly exposedHeaders: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/storage_account#max_age_in_seconds StorageAccount#max_age_in_seconds} */ readonly maxAgeInSeconds: number; } export declare function storageAccountQueuePropertiesCorsRuleToTerraform(struct?: StorageAccountQueuePropertiesCorsRule | cdktf.IResolvable): any; export declare function storageAccountQueuePropertiesCorsRuleToHclTerraform(struct?: StorageAccountQueuePropertiesCorsRule | cdktf.IResolvable): any; export declare class StorageAccountQueuePropertiesCorsRuleOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @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: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): StorageAccountQueuePropertiesCorsRule | cdktf.IResolvable | undefined; set internalValue(value: StorageAccountQueuePropertiesCorsRule | cdktf.IResolvable | undefined); private _allowedHeaders?; get allowedHeaders(): string[]; set allowedHeaders(value: string[]); get allowedHeadersInput(): string[] | undefined; private _allowedMethods?; get allowedMethods(): string[]; set allowedMethods(value: string[]); get allowedMethodsInput(): string[] | undefined; private _allowedOrigins?; get allowedOrigins(): string[]; set allowedOrigins(value: string[]); get allowedOriginsInput(): string[] | undefined; private _exposedHeaders?; get exposedHeaders(): string[]; set exposedHeaders(value: string[]); get exposedHeadersInput(): string[] | undefined; private _maxAgeInSeconds?; get maxAgeIn