import { ArmResource } from '@yetics/armkit-core' ; import { Construct } from 'constructs' ; schema export class Vaults extends ArmResource { param scope param name param options public constructor ( scope , name , options ) { super ( scope , name , { ... options , armResourceType : 'vaults' , } ) ; } } schema export class VaultsCertificates extends ArmResource { param scope param name param options public constructor ( scope , name , options ) { super ( scope , name , { ... options , armResourceType : 'vaults_certificates' , } ) ; } } schema export class VaultsExtendedInformation extends ArmResource { param scope param name param options public constructor ( scope , name , options ) { super ( scope , name , { ... options , armResourceType : 'vaults_extendedInformation' , } ) ; } } schema export interface VaultsOptions { schema readonly apiVersion ? : MicrosoftRecoveryServicesVaultsApiVersion ; schema readonly etag ? : string ; schema readonly identity ? : IdentityData ; schema readonly location : string ; schema readonly name : string ; schema readonly properties : VaultProperties ; schema readonly resources ? : MicrosoftRecoveryServicesVaultsResources [ ] ; schema readonly sku ? : Sku ; schema readonly systemData ? : SystemData ; schema readonly tags ? : MicrosoftRecoveryServicesVaultsTags ; schema readonly type : MicrosoftRecoveryServicesVaultsType ; } schema export interface VaultsCertificatesOptions { schema readonly apiVersion ? : MicrosoftRecoveryServicesVaultsCertificatesApiVersion ; schema readonly name : string ; schema readonly properties : RawCertificateData ; schema readonly type : MicrosoftRecoveryServicesVaultsCertificatesType ; } schema export interface VaultsExtendedInformationOptions { schema readonly apiVersion ? : MicrosoftRecoveryServicesVaultsExtendedInformationApiVersion ; schema readonly etag ? : string ; schema readonly name : MicrosoftRecoveryServicesVaultsExtendedInformationNamePattern ; schema readonly properties : VaultExtendedInfo ; schema readonly type : MicrosoftRecoveryServicesVaultsExtendedInformationType ; } export enum MicrosoftRecoveryServicesVaultsApiVersion { "MicrosoftRecoveryServicesVaultsApiVersion_2021_03_01" = '2021-03-01' } schema export interface IdentityData { schema readonly type : IdentityDataType ; schema readonly userAssignedIdentities ? : IdentityDataUserAssignedIdentities ; } schema export interface VaultProperties { schema readonly encryption ? : VaultPropertiesEncryption ; schema readonly upgradeDetails ? : UpgradeDetails ; } schema export class MicrosoftRecoveryServicesVaultsResources { public static fromVaultsCertificatesChildResource ( value ) { return new MicrosoftRecoveryServicesVaultsResources ( value ) ; } public static fromVaultsExtendedInformationChildResource ( value ) { return new MicrosoftRecoveryServicesVaultsResources ( value ) ; } private constructor ( value ) { Object . defineProperty ( this , 'resolve' , { value : ( ) => value } ) ; } } schema export interface Sku { schema readonly name : SkuName ; schema readonly tier ? : string ; } schema export interface SystemData { schema readonly createdAt ? : Date ; schema readonly createdBy ? : string ; schema readonly createdByType ? : SystemDataCreatedByType ; schema readonly lastModifiedAt ? : Date ; schema readonly lastModifiedBy ? : string ; schema readonly lastModifiedByType ? : SystemDataLastModifiedByType ; } schema export interface MicrosoftRecoveryServicesVaultsTags { } export enum MicrosoftRecoveryServicesVaultsType { "MicrosoftRecoveryServicesVaultsType_MICROSOFT_RECOVERY_SERVICES_VAULTS" = 'Microsoft.RecoveryServices/vaults' } export enum MicrosoftRecoveryServicesVaultsCertificatesApiVersion { "MicrosoftRecoveryServicesVaultsCertificatesApiVersion_2021_03_01" = '2021-03-01' } schema export interface RawCertificateData { schema readonly authType ? : RawCertificateDataAuthType ; schema readonly certificate ? : RawCertificateDataCertificatePattern ; } export enum MicrosoftRecoveryServicesVaultsCertificatesType { "MicrosoftRecoveryServicesVaultsCertificatesType_MICROSOFT_RECOVERY_SERVICES_VAULTS_CERTIFICATES" = 'Microsoft.RecoveryServices/vaults/certificates' } export enum MicrosoftRecoveryServicesVaultsExtendedInformationApiVersion { "MicrosoftRecoveryServicesVaultsExtendedInformationApiVersion_2021_03_01" = '2021-03-01' } schema export class MicrosoftRecoveryServicesVaultsExtendedInformationNamePattern { public static pattern ( value ) { return value ; } } schema export interface VaultExtendedInfo { schema readonly algorithm ? : string ; schema readonly encryptionKey ? : string ; schema readonly encryptionKeyThumbprint ? : string ; schema readonly integrityKey ? : string ; } export enum MicrosoftRecoveryServicesVaultsExtendedInformationType { "MicrosoftRecoveryServicesVaultsExtendedInformationType_MICROSOFT_RECOVERY_SERVICES_VAULTS_EXTENDED_INFORMATION" = 'Microsoft.RecoveryServices/vaults/extendedInformation' } export enum IdentityDataType { SYSTEM_ASSIGNED = 'SystemAssigned' , NONE = 'None' , USER_ASSIGNED = 'UserAssigned' , "IdentityDataType_SYSTEM_ASSIGNED_USER_ASSIGNED" = 'SystemAssigned, UserAssigned' } schema export interface IdentityDataUserAssignedIdentities { } schema export interface VaultPropertiesEncryption { schema readonly infrastructureEncryption ? : VaultPropertiesEncryptionInfrastructureEncryption ; schema readonly kekIdentity ? : CmkKekIdentity ; schema readonly keyVaultProperties ? : CmkKeyVaultProperties ; } schema export interface UpgradeDetails { } schema export interface VaultsCertificatesChildResource { schema readonly apiVersion : VaultsCertificatesChildResourceApiVersion ; schema readonly name : string ; schema readonly properties : RawCertificateData ; schema readonly type : VaultsCertificatesChildResourceType ; } schema export interface VaultsExtendedInformationChildResource { schema readonly apiVersion : VaultsExtendedInformationChildResourceApiVersion ; schema readonly etag ? : string ; schema readonly name : VaultsExtendedInformationChildResourceName ; schema readonly properties : VaultExtendedInfo ; schema readonly type : VaultsExtendedInformationChildResourceType ; } export enum SkuName { STANDARD = 'Standard' , "SkuName_RS0" = 'RS0' } export enum SystemDataCreatedByType { USER = 'User' , APPLICATION = 'Application' , MANAGED_IDENTITY = 'ManagedIdentity' , KEY = 'Key' } export enum SystemDataLastModifiedByType { USER = 'User' , APPLICATION = 'Application' , MANAGED_IDENTITY = 'ManagedIdentity' , KEY = 'Key' } export enum RawCertificateDataAuthType { INVALID = 'Invalid' , ACS = 'ACS' , AAD = 'AAD' , ACCESS_CONTROL_SERVICE = 'AccessControlService' , AZURE_ACTIVE_DIRECTORY = 'AzureActiveDirectory' } schema export class RawCertificateDataCertificatePattern { public static pattern ( value ) { return value ; } } export enum VaultPropertiesEncryptionInfrastructureEncryption { ENABLED = 'Enabled' , DISABLED = 'Disabled' } schema export interface CmkKekIdentity { schema readonly userAssignedIdentity ? : string ; schema readonly useSystemAssignedIdentity ? : boolean ; } schema export interface CmkKeyVaultProperties { schema readonly keyUri ? : string ; } export enum VaultsCertificatesChildResourceApiVersion { "VaultsCertificatesChildResourceApiVersion_2021_03_01" = '2021-03-01' } export enum VaultsCertificatesChildResourceType { CERTIFICATES = 'certificates' } export enum VaultsExtendedInformationChildResourceApiVersion { "VaultsExtendedInformationChildResourceApiVersion_2021_03_01" = '2021-03-01' } export enum VaultsExtendedInformationChildResourceName { VAULT_EXTENDED_INFO = 'vaultExtendedInfo' } export enum VaultsExtendedInformationChildResourceType { EXTENDED_INFORMATION = 'extendedInformation' }