@cdktf/provider-azurerm
Version:
Prebuilt azurerm Provider for Terraform CDK (cdktf)
450 lines (449 loc) • 25.1 kB
TypeScript
/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: MPL-2.0
*/
import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface MediaServicesAccountConfig extends cdktf.TerraformMetaArguments {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#id MediaServicesAccount#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/media_services_account#location MediaServicesAccount#location}
*/
readonly location: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#name MediaServicesAccount#name}
*/
readonly name: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#public_network_access_enabled MediaServicesAccount#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/media_services_account#resource_group_name MediaServicesAccount#resource_group_name}
*/
readonly resourceGroupName: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#storage_authentication_type MediaServicesAccount#storage_authentication_type}
*/
readonly storageAuthenticationType?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#tags MediaServicesAccount#tags}
*/
readonly tags?: {
[key: string]: string;
};
/**
* encryption block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#encryption MediaServicesAccount#encryption}
*/
readonly encryption?: MediaServicesAccountEncryption;
/**
* identity block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#identity MediaServicesAccount#identity}
*/
readonly identity?: MediaServicesAccountIdentity;
/**
* key_delivery_access_control block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#key_delivery_access_control MediaServicesAccount#key_delivery_access_control}
*/
readonly keyDeliveryAccessControl?: MediaServicesAccountKeyDeliveryAccessControl;
/**
* storage_account block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#storage_account MediaServicesAccount#storage_account}
*/
readonly storageAccount: MediaServicesAccountStorageAccount[] | cdktf.IResolvable;
/**
* timeouts block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#timeouts MediaServicesAccount#timeouts}
*/
readonly timeouts?: MediaServicesAccountTimeouts;
}
export interface MediaServicesAccountEncryptionManagedIdentity {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#use_system_assigned_identity MediaServicesAccount#use_system_assigned_identity}
*/
readonly useSystemAssignedIdentity?: boolean | cdktf.IResolvable;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#user_assigned_identity_id MediaServicesAccount#user_assigned_identity_id}
*/
readonly userAssignedIdentityId?: string;
}
export declare function mediaServicesAccountEncryptionManagedIdentityToTerraform(struct?: MediaServicesAccountEncryptionManagedIdentityOutputReference | MediaServicesAccountEncryptionManagedIdentity): any;
export declare function mediaServicesAccountEncryptionManagedIdentityToHclTerraform(struct?: MediaServicesAccountEncryptionManagedIdentityOutputReference | MediaServicesAccountEncryptionManagedIdentity): any;
export declare class MediaServicesAccountEncryptionManagedIdentityOutputReference 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(): MediaServicesAccountEncryptionManagedIdentity | undefined;
set internalValue(value: MediaServicesAccountEncryptionManagedIdentity | undefined);
private _useSystemAssignedIdentity?;
get useSystemAssignedIdentity(): boolean | cdktf.IResolvable;
set useSystemAssignedIdentity(value: boolean | cdktf.IResolvable);
resetUseSystemAssignedIdentity(): void;
get useSystemAssignedIdentityInput(): boolean | cdktf.IResolvable | undefined;
private _userAssignedIdentityId?;
get userAssignedIdentityId(): string;
set userAssignedIdentityId(value: string);
resetUserAssignedIdentityId(): void;
get userAssignedIdentityIdInput(): string | undefined;
}
export interface MediaServicesAccountEncryption {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#key_vault_key_identifier MediaServicesAccount#key_vault_key_identifier}
*/
readonly keyVaultKeyIdentifier?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#type MediaServicesAccount#type}
*/
readonly type?: string;
/**
* managed_identity block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#managed_identity MediaServicesAccount#managed_identity}
*/
readonly managedIdentity?: MediaServicesAccountEncryptionManagedIdentity;
}
export declare function mediaServicesAccountEncryptionToTerraform(struct?: MediaServicesAccountEncryptionOutputReference | MediaServicesAccountEncryption): any;
export declare function mediaServicesAccountEncryptionToHclTerraform(struct?: MediaServicesAccountEncryptionOutputReference | MediaServicesAccountEncryption): any;
export declare class MediaServicesAccountEncryptionOutputReference 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(): MediaServicesAccountEncryption | undefined;
set internalValue(value: MediaServicesAccountEncryption | undefined);
get currentKeyIdentifier(): string;
private _keyVaultKeyIdentifier?;
get keyVaultKeyIdentifier(): string;
set keyVaultKeyIdentifier(value: string);
resetKeyVaultKeyIdentifier(): void;
get keyVaultKeyIdentifierInput(): string | undefined;
private _type?;
get type(): string;
set type(value: string);
resetType(): void;
get typeInput(): string | undefined;
private _managedIdentity;
get managedIdentity(): MediaServicesAccountEncryptionManagedIdentityOutputReference;
putManagedIdentity(value: MediaServicesAccountEncryptionManagedIdentity): void;
resetManagedIdentity(): void;
get managedIdentityInput(): MediaServicesAccountEncryptionManagedIdentity | undefined;
}
export interface MediaServicesAccountIdentity {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#identity_ids MediaServicesAccount#identity_ids}
*/
readonly identityIds?: string[];
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#type MediaServicesAccount#type}
*/
readonly type: string;
}
export declare function mediaServicesAccountIdentityToTerraform(struct?: MediaServicesAccountIdentityOutputReference | MediaServicesAccountIdentity): any;
export declare function mediaServicesAccountIdentityToHclTerraform(struct?: MediaServicesAccountIdentityOutputReference | MediaServicesAccountIdentity): any;
export declare class MediaServicesAccountIdentityOutputReference 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(): MediaServicesAccountIdentity | undefined;
set internalValue(value: MediaServicesAccountIdentity | 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 MediaServicesAccountKeyDeliveryAccessControl {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#default_action MediaServicesAccount#default_action}
*/
readonly defaultAction?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#ip_allow_list MediaServicesAccount#ip_allow_list}
*/
readonly ipAllowList?: string[];
}
export declare function mediaServicesAccountKeyDeliveryAccessControlToTerraform(struct?: MediaServicesAccountKeyDeliveryAccessControlOutputReference | MediaServicesAccountKeyDeliveryAccessControl): any;
export declare function mediaServicesAccountKeyDeliveryAccessControlToHclTerraform(struct?: MediaServicesAccountKeyDeliveryAccessControlOutputReference | MediaServicesAccountKeyDeliveryAccessControl): any;
export declare class MediaServicesAccountKeyDeliveryAccessControlOutputReference 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(): MediaServicesAccountKeyDeliveryAccessControl | undefined;
set internalValue(value: MediaServicesAccountKeyDeliveryAccessControl | undefined);
private _defaultAction?;
get defaultAction(): string;
set defaultAction(value: string);
resetDefaultAction(): void;
get defaultActionInput(): string | undefined;
private _ipAllowList?;
get ipAllowList(): string[];
set ipAllowList(value: string[]);
resetIpAllowList(): void;
get ipAllowListInput(): string[] | undefined;
}
export interface MediaServicesAccountStorageAccountManagedIdentity {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#use_system_assigned_identity MediaServicesAccount#use_system_assigned_identity}
*/
readonly useSystemAssignedIdentity?: boolean | cdktf.IResolvable;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#user_assigned_identity_id MediaServicesAccount#user_assigned_identity_id}
*/
readonly userAssignedIdentityId?: string;
}
export declare function mediaServicesAccountStorageAccountManagedIdentityToTerraform(struct?: MediaServicesAccountStorageAccountManagedIdentityOutputReference | MediaServicesAccountStorageAccountManagedIdentity): any;
export declare function mediaServicesAccountStorageAccountManagedIdentityToHclTerraform(struct?: MediaServicesAccountStorageAccountManagedIdentityOutputReference | MediaServicesAccountStorageAccountManagedIdentity): any;
export declare class MediaServicesAccountStorageAccountManagedIdentityOutputReference 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(): MediaServicesAccountStorageAccountManagedIdentity | undefined;
set internalValue(value: MediaServicesAccountStorageAccountManagedIdentity | undefined);
private _useSystemAssignedIdentity?;
get useSystemAssignedIdentity(): boolean | cdktf.IResolvable;
set useSystemAssignedIdentity(value: boolean | cdktf.IResolvable);
resetUseSystemAssignedIdentity(): void;
get useSystemAssignedIdentityInput(): boolean | cdktf.IResolvable | undefined;
private _userAssignedIdentityId?;
get userAssignedIdentityId(): string;
set userAssignedIdentityId(value: string);
resetUserAssignedIdentityId(): void;
get userAssignedIdentityIdInput(): string | undefined;
}
export interface MediaServicesAccountStorageAccount {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#id MediaServicesAccount#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/media_services_account#is_primary MediaServicesAccount#is_primary}
*/
readonly isPrimary?: boolean | cdktf.IResolvable;
/**
* managed_identity block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#managed_identity MediaServicesAccount#managed_identity}
*/
readonly managedIdentity?: MediaServicesAccountStorageAccountManagedIdentity;
}
export declare function mediaServicesAccountStorageAccountToTerraform(struct?: MediaServicesAccountStorageAccount | cdktf.IResolvable): any;
export declare function mediaServicesAccountStorageAccountToHclTerraform(struct?: MediaServicesAccountStorageAccount | cdktf.IResolvable): any;
export declare class MediaServicesAccountStorageAccountOutputReference 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(): MediaServicesAccountStorageAccount | cdktf.IResolvable | undefined;
set internalValue(value: MediaServicesAccountStorageAccount | cdktf.IResolvable | undefined);
private _id?;
get id(): string;
set id(value: string);
get idInput(): string | undefined;
private _isPrimary?;
get isPrimary(): boolean | cdktf.IResolvable;
set isPrimary(value: boolean | cdktf.IResolvable);
resetIsPrimary(): void;
get isPrimaryInput(): boolean | cdktf.IResolvable | undefined;
private _managedIdentity;
get managedIdentity(): MediaServicesAccountStorageAccountManagedIdentityOutputReference;
putManagedIdentity(value: MediaServicesAccountStorageAccountManagedIdentity): void;
resetManagedIdentity(): void;
get managedIdentityInput(): MediaServicesAccountStorageAccountManagedIdentity | undefined;
}
export declare class MediaServicesAccountStorageAccountList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: MediaServicesAccountStorageAccount[] | 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): MediaServicesAccountStorageAccountOutputReference;
}
export interface MediaServicesAccountTimeouts {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#create MediaServicesAccount#create}
*/
readonly create?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#delete MediaServicesAccount#delete}
*/
readonly delete?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#read MediaServicesAccount#read}
*/
readonly read?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#update MediaServicesAccount#update}
*/
readonly update?: string;
}
export declare function mediaServicesAccountTimeoutsToTerraform(struct?: MediaServicesAccountTimeouts | cdktf.IResolvable): any;
export declare function mediaServicesAccountTimeoutsToHclTerraform(struct?: MediaServicesAccountTimeouts | cdktf.IResolvable): any;
export declare class MediaServicesAccountTimeoutsOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
private resolvableValue?;
/**
* @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(): MediaServicesAccountTimeouts | cdktf.IResolvable | undefined;
set internalValue(value: MediaServicesAccountTimeouts | cdktf.IResolvable | undefined);
private _create?;
get create(): string;
set create(value: string);
resetCreate(): void;
get createInput(): string | undefined;
private _delete?;
get delete(): string;
set delete(value: string);
resetDelete(): void;
get deleteInput(): string | undefined;
private _read?;
get read(): string;
set read(value: string);
resetRead(): void;
get readInput(): string | undefined;
private _update?;
get update(): string;
set update(value: string);
resetUpdate(): void;
get updateInput(): string | undefined;
}
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account azurerm_media_services_account}
*/
export declare class MediaServicesAccount extends cdktf.TerraformResource {
static readonly tfResourceType = "azurerm_media_services_account";
/**
* Generates CDKTF code for importing a MediaServicesAccount resource upon running "cdktf plan <stack-name>"
* @param scope The scope in which to define this construct
* @param importToId The construct id used in the generated config for the MediaServicesAccount to import
* @param importFromId The id of the existing MediaServicesAccount that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the MediaServicesAccount to import is found
*/
static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): cdktf.ImportableResource;
/**
* Create a new {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/media_services_account azurerm_media_services_account} Resource
*
* @param scope The scope in which to define this construct
* @param id The scoped construct ID. Must be unique amongst siblings in the same scope
* @param options MediaServicesAccountConfig
*/
constructor(scope: Construct, id: string, config: MediaServicesAccountConfig);
private _id?;
get id(): string;
set id(value: string);
resetId(): void;
get idInput(): string | undefined;
private _location?;
get location(): string;
set location(value: string);
get locationInput(): string | undefined;
private _name?;
get name(): string;
set name(value: string);
get nameInput(): string | undefined;
private _publicNetworkAccessEnabled?;
get publicNetworkAccessEnabled(): boolean | cdktf.IResolvable;
set publicNetworkAccessEnabled(value: boolean | cdktf.IResolvable);
resetPublicNetworkAccessEnabled(): void;
get publicNetworkAccessEnabledInput(): boolean | cdktf.IResolvable | undefined;
private _resourceGroupName?;
get resourceGroupName(): string;
set resourceGroupName(value: string);
get resourceGroupNameInput(): string | undefined;
private _storageAuthenticationType?;
get storageAuthenticationType(): string;
set storageAuthenticationType(value: string);
resetStorageAuthenticationType(): void;
get storageAuthenticationTypeInput(): string | undefined;
private _tags?;
get tags(): {
[key: string]: string;
};
set tags(value: {
[key: string]: string;
});
resetTags(): void;
get tagsInput(): {
[key: string]: string;
} | undefined;
private _encryption;
get encryption(): MediaServicesAccountEncryptionOutputReference;
putEncryption(value: MediaServicesAccountEncryption): void;
resetEncryption(): void;
get encryptionInput(): MediaServicesAccountEncryption | undefined;
private _identity;
get identity(): MediaServicesAccountIdentityOutputReference;
putIdentity(value: MediaServicesAccountIdentity): void;
resetIdentity(): void;
get identityInput(): MediaServicesAccountIdentity | undefined;
private _keyDeliveryAccessControl;
get keyDeliveryAccessControl(): MediaServicesAccountKeyDeliveryAccessControlOutputReference;
putKeyDeliveryAccessControl(value: MediaServicesAccountKeyDeliveryAccessControl): void;
resetKeyDeliveryAccessControl(): void;
get keyDeliveryAccessControlInput(): MediaServicesAccountKeyDeliveryAccessControl | undefined;
private _storageAccount;
get storageAccount(): MediaServicesAccountStorageAccountList;
putStorageAccount(value: MediaServicesAccountStorageAccount[] | cdktf.IResolvable): void;
get storageAccountInput(): cdktf.IResolvable | MediaServicesAccountStorageAccount[] | undefined;
private _timeouts;
get timeouts(): MediaServicesAccountTimeoutsOutputReference;
putTimeouts(value: MediaServicesAccountTimeouts): void;
resetTimeouts(): void;
get timeoutsInput(): cdktf.IResolvable | MediaServicesAccountTimeouts | undefined;
protected synthesizeAttributes(): {
[name: string]: any;
};
protected synthesizeHclAttributes(): {
[name: string]: any;
};
}