From fdf975d75777957ab36609ae1446a3a4cf1d473e Mon Sep 17 00:00:00 2001 From: SDKAuto Date: Sun, 4 Dec 2022 09:39:17 +0000 Subject: [PATCH] CodeGen from PR 21450 in Azure/azure-rest-api-specs Merge 0980c975e967d39c4783b9ff6c20af6914f34a8d into 99329717fcc0231dec9fdfd4a8551b8bafced1c5 --- common/config/rush/pnpm-lock.yaml | 16 +- .../arm-recoveryservicesbackup/CHANGELOG.md | 195 ++- .../arm-recoveryservicesbackup/_meta.json | 8 +- .../arm-recoveryservicesbackup/package.json | 29 +- .../review/arm-recoveryservicesbackup.api.md | 1326 +++++++--------- .../src/models/index.ts | 1342 ++++++++++++----- .../src/models/mappers.ts | 437 ++++-- .../src/models/parameters.ts | 8 +- .../operations/deletedProtectionContainers.ts | 181 +++ .../src/operations/index.ts | 1 + .../src/operations/resourceGuardProxy.ts | 17 +- .../deletedProtectionContainers.ts | 30 + .../src/operationsInterfaces/index.ts | 1 + .../resourceGuardProxy.ts | 3 + .../src/recoveryServicesBackupClient.ts | 81 +- .../test/sampleTest.ts | 39 +- .../arm-recoveryservicesbackup/tsconfig.json | 10 +- 17 files changed, 2353 insertions(+), 1371 deletions(-) create mode 100644 sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operations/deletedProtectionContainers.ts create mode 100644 sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operationsInterfaces/deletedProtectionContainers.ts diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index cd9e66d0ecb8..0e73cd026f32 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -3934,7 +3934,7 @@ packages: dependencies: semver: 7.3.8 shelljs: 0.8.5 - typescript: 5.0.0-dev.20221202 + typescript: 5.0.0-dev.20221204 dev: false /downlevel-dts/0.8.0: @@ -8257,6 +8257,7 @@ packages: /sourcemap-codec/1.4.8: resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==} + deprecated: Please use @jridgewell/sourcemap-codec instead dev: false /spawn-command/0.0.2-1: @@ -8978,8 +8979,8 @@ packages: hasBin: true dev: false - /typescript/5.0.0-dev.20221202: - resolution: {integrity: sha512-HuvktBN/shznXMoHbebznvAGTuWSGOqyqIddiXcgn0SV7e004lIuLZXRqEdoqlX87nFZp/pkicSsN+y5vuNPNQ==} + /typescript/5.0.0-dev.20221204: + resolution: {integrity: sha512-6luaUPpnzzwTjG+UrdMsftnvyxkj2nhPR/LrZlZInnuMNuNyhz3TVH7SpxampW990Xw6usgYdhpf/cWBO1MOQw==} engines: {node: '>=4.2.0'} hasBin: true dev: false @@ -14223,7 +14224,7 @@ packages: dev: false file:projects/arm-recoveryservicesbackup.tgz: - resolution: {integrity: sha512-Br/EMKkYjg3hbuG1RqOijOQKmN6nhf2c8cfm8kcAbFeLhNuKrxsftTksiCmN+fzAKjfXyh2UBVpR84wDarbhBA==, tarball: file:projects/arm-recoveryservicesbackup.tgz} + resolution: {integrity: sha512-5m1xMRsDctSLUBdWFhXRfZW1pNVf1KBvgcewiX2oDfivbALgpMUY7OjNwZIK34ZYeGhTPaELdtSx/QBjWM+OgQ==, tarball: file:projects/arm-recoveryservicesbackup.tgz} name: '@rush-temp/arm-recoveryservicesbackup' version: 0.0.0 dependencies: @@ -14234,6 +14235,8 @@ packages: '@rollup/plugin-json': 4.1.0_rollup@2.79.1 '@rollup/plugin-multi-entry': 4.1.0_rollup@2.79.1 '@rollup/plugin-node-resolve': 13.3.0_rollup@2.79.1 + '@types/chai': 4.3.4 + chai: 4.3.7 cross-env: 7.0.3 mkdirp: 1.0.4 mocha: 7.2.0 @@ -14241,11 +14244,10 @@ packages: rollup: 2.79.1 rollup-plugin-sourcemaps: 0.6.3_rollup@2.79.1 tslib: 2.4.1 - typescript: 4.2.4 + typescript: 4.6.4 uglify-js: 3.17.4 transitivePeerDependencies: - '@types/node' - - encoding - supports-color dev: false @@ -18242,7 +18244,7 @@ packages: dev: false file:projects/monitor-query.tgz: - resolution: {integrity: sha512-O7xmA6qROKn02JhcZEhjWuP0qL82OIlQBBOgPWbTrY15zuQQfe1l/g7k85f2AHCPLmFlIbT0jmuFIObgbC838g==, tarball: file:projects/monitor-query.tgz} + resolution: {integrity: sha512-pzIYN5W18g+Fzy7BqDgaFeJcdMhnYDy4PnZ8a4X7QhwdE+6sXloLvtN+ovmqXWaflkK7uAHxG/5B1Ih6SoTK3Q==, tarball: file:projects/monitor-query.tgz} name: '@rush-temp/monitor-query' version: 0.0.0 dependencies: diff --git a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/CHANGELOG.md b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/CHANGELOG.md index 7922b6b8c751..727548932471 100644 --- a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/CHANGELOG.md +++ b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/CHANGELOG.md @@ -1,15 +1,194 @@ # Release History + +## 10.0.0 (2022-12-04) + +**Features** -## 9.0.1 (Unreleased) - -### Features Added - -### Breaking Changes - -### Bugs Fixed + - Added operation group DeletedProtectionContainers + - Added Interface AzureBackupGoalFeatureSupportRequest + - Added Interface AzureBackupServerContainer + - Added Interface AzureBackupServerEngine + - Added Interface AzureFileShareBackupRequest + - Added Interface AzureFileShareProtectableItem + - Added Interface AzureFileshareProtectedItem + - Added Interface AzureFileShareProtectionPolicy + - Added Interface AzureFileShareProvisionILRRequest + - Added Interface AzureFileShareRecoveryPoint + - Added Interface AzureFileShareRestoreRequest + - Added Interface AzureIaaSClassicComputeVMContainer + - Added Interface AzureIaaSClassicComputeVMProtectableItem + - Added Interface AzureIaaSClassicComputeVMProtectedItem + - Added Interface AzureIaaSComputeVMContainer + - Added Interface AzureIaaSComputeVMProtectableItem + - Added Interface AzureIaaSComputeVMProtectedItem + - Added Interface AzureIaaSVMHealthDetails + - Added Interface AzureIaaSVMJob + - Added Interface AzureIaaSVMJobV2 + - Added Interface AzureIaaSVMProtectedItem + - Added Interface AzureIaaSVMProtectionPolicy + - Added Interface AzureRecoveryServiceVaultProtectionIntent + - Added Interface AzureResourceProtectionIntent + - Added Interface AzureSqlagWorkloadContainerProtectionContainer + - Added Interface AzureSqlContainer + - Added Interface AzureSqlProtectedItem + - Added Interface AzureSqlProtectionPolicy + - Added Interface AzureStorageContainer + - Added Interface AzureStorageJob + - Added Interface AzureStorageProtectableContainer + - Added Interface AzureVMAppContainerProtectableContainer + - Added Interface AzureVMAppContainerProtectionContainer + - Added Interface AzureVMResourceFeatureSupportRequest + - Added Interface AzureVmWorkloadItem + - Added Interface AzureVmWorkloadProtectableItem + - Added Interface AzureVmWorkloadProtectedItem + - Added Interface AzureVmWorkloadProtectionPolicy + - Added Interface AzureVmWorkloadSAPAseDatabaseProtectedItem + - Added Interface AzureVmWorkloadSAPAseDatabaseWorkloadItem + - Added Interface AzureVmWorkloadSAPAseSystemProtectableItem + - Added Interface AzureVmWorkloadSAPAseSystemWorkloadItem + - Added Interface AzureVmWorkloadSAPHanaDatabaseProtectableItem + - Added Interface AzureVmWorkloadSAPHanaDatabaseProtectedItem + - Added Interface AzureVmWorkloadSAPHanaDatabaseWorkloadItem + - Added Interface AzureVmWorkloadSAPHanaDBInstance + - Added Interface AzureVmWorkloadSAPHanaDBInstanceProtectedItem + - Added Interface AzureVmWorkloadSAPHanaHSR + - Added Interface AzureVmWorkloadSAPHanaSystemProtectableItem + - Added Interface AzureVmWorkloadSAPHanaSystemWorkloadItem + - Added Interface AzureVmWorkloadSQLAvailabilityGroupProtectableItem + - Added Interface AzureVmWorkloadSQLDatabaseProtectableItem + - Added Interface AzureVmWorkloadSQLDatabaseProtectedItem + - Added Interface AzureVmWorkloadSQLDatabaseWorkloadItem + - Added Interface AzureVmWorkloadSQLInstanceProtectableItem + - Added Interface AzureVmWorkloadSQLInstanceWorkloadItem + - Added Interface AzureWorkloadAutoProtectionIntent + - Added Interface AzureWorkloadBackupRequest + - Added Interface AzureWorkloadContainer + - Added Interface AzureWorkloadContainerAutoProtectionIntent + - Added Interface AzureWorkloadJob + - Added Interface AzureWorkloadPointInTimeRecoveryPoint + - Added Interface AzureWorkloadPointInTimeRestoreRequest + - Added Interface AzureWorkloadRecoveryPoint + - Added Interface AzureWorkloadRestoreRequest + - Added Interface AzureWorkloadSAPHanaPointInTimeRecoveryPoint + - Added Interface AzureWorkloadSAPHanaPointInTimeRestoreRequest + - Added Interface AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest + - Added Interface AzureWorkloadSAPHanaRecoveryPoint + - Added Interface AzureWorkloadSAPHanaRestoreRequest + - Added Interface AzureWorkloadSAPHanaRestoreWithRehydrateRequest + - Added Interface AzureWorkloadSQLAutoProtectionIntent + - Added Interface AzureWorkloadSQLPointInTimeRecoveryPoint + - Added Interface AzureWorkloadSQLPointInTimeRestoreRequest + - Added Interface AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest + - Added Interface AzureWorkloadSQLRecoveryPoint + - Added Interface AzureWorkloadSQLRestoreRequest + - Added Interface AzureWorkloadSQLRestoreWithRehydrateRequest + - Added Interface BackupEngineBaseResource + - Added Interface BackupEngineBaseResourceList + - Added Interface BackupRequestResource + - Added Interface BackupResourceConfigResource + - Added Interface BackupResourceEncryptionConfigExtended + - Added Interface BackupResourceEncryptionConfigExtendedResource + - Added Interface BackupResourceEncryptionConfigResource + - Added Interface BackupResourceVaultConfigResource + - Added Interface DeletedProtectionContainersListNextOptionalParams + - Added Interface DeletedProtectionContainersListOptionalParams + - Added Interface DpmBackupEngine + - Added Interface DpmContainer + - Added Interface DpmJob + - Added Interface DPMProtectedItem + - Added Interface ExportJobsOperationResultInfo + - Added Interface GenericContainer + - Added Interface GenericProtectedItem + - Added Interface GenericProtectionPolicy + - Added Interface GenericRecoveryPoint + - Added Interface IaasVMBackupRequest + - Added Interface IaaSVMContainer + - Added Interface IaasVmilrRegistrationRequest + - Added Interface IaaSVMProtectableItem + - Added Interface IaasVMRecoveryPoint + - Added Interface IaasVMRestoreRequest + - Added Interface IaasVMRestoreWithRehydrationRequest + - Added Interface ILRRequestResource + - Added Interface JobResource + - Added Interface JobResourceList + - Added Interface LogSchedulePolicy + - Added Interface LongTermRetentionPolicy + - Added Interface LongTermSchedulePolicy + - Added Interface MabContainer + - Added Interface MabFileFolderProtectedItem + - Added Interface MabJob + - Added Interface MabProtectionPolicy + - Added Interface OperationResultInfo + - Added Interface OperationResultInfoBaseResource + - Added Interface OperationStatusJobExtendedInfo + - Added Interface OperationStatusJobsExtendedInfo + - Added Interface OperationStatusProvisionILRExtendedInfo + - Added Interface OperationStatusValidateOperationExtendedInfo + - Added Interface PrepareDataMoveResponse + - Added Interface PrivateEndpointConnectionResource + - Added Interface ProtectableContainerResource + - Added Interface ProtectableContainerResourceList + - Added Interface ProtectedItemResource + - Added Interface ProtectedItemResourceList + - Added Interface ProtectionContainerResource + - Added Interface ProtectionContainerResourceList + - Added Interface ProtectionIntentResource + - Added Interface ProtectionIntentResourceList + - Added Interface ProtectionPolicyResource + - Added Interface ProtectionPolicyResourceList + - Added Interface RecoveryPointResource + - Added Interface RecoveryPointResourceList + - Added Interface RecoveryPointTierInformationV2 + - Added Interface ResourceGuardProxyBaseResource + - Added Interface ResourceGuardProxyBaseResourceList + - Added Interface RestoreRequestResource + - Added Interface SimpleRetentionPolicy + - Added Interface SimpleSchedulePolicy + - Added Interface SimpleSchedulePolicyV2 + - Added Interface TieringPolicy + - Added Interface ValidateIaasVMRestoreOperationRequest + - Added Interface ValidateRestoreOperationRequest + - Added Interface VaultJob + - Added Interface WorkloadItemResource + - Added Interface WorkloadItemResourceList + - Added Interface WorkloadProtectableItemResource + - Added Interface WorkloadProtectableItemResourceList + - Added Type Alias DeletedProtectionContainersListNextResponse + - Added Type Alias DeletedProtectionContainersListResponse + - Added Type Alias ProtectableContainerType + - Added Type Alias TieringMode + - Interface AzureIaaSVMProtectedItemExtendedInfo has a new optional parameter newestRecoveryPointInArchive + - Interface AzureIaaSVMProtectedItemExtendedInfo has a new optional parameter oldestRecoveryPointInArchive + - Interface AzureIaaSVMProtectedItemExtendedInfo has a new optional parameter oldestRecoveryPointInVault + - Interface AzureVmWorkloadProtectedItemExtendedInfo has a new optional parameter newestRecoveryPointInArchive + - Interface AzureVmWorkloadProtectedItemExtendedInfo has a new optional parameter oldestRecoveryPointInArchive + - Interface AzureVmWorkloadProtectedItemExtendedInfo has a new optional parameter oldestRecoveryPointInVault + - Interface ProtectedItem has a new optional parameter softDeleteRetentionPeriod + - Interface SubProtectionPolicy has a new optional parameter tieringPolicy + - Class RecoveryServicesBackupClient has a new parameter deletedProtectionContainers + - Added Enum KnownTieringMode + - Enum KnownBackupItemType has a new value SAPHanaDBInstance + - Enum KnownBackupType has a new value SnapshotCopyOnlyFull + - Enum KnownBackupType has a new value SnapshotFull + - Enum KnownContainerType has a new value HanaHSRContainer + - Enum KnownDataSourceType has a new value SAPHanaDBInstance + - Enum KnownPolicyType has a new value SnapshotCopyOnlyFull + - Enum KnownPolicyType has a new value SnapshotFull + - Enum KnownRestorePointQueryType has a new value SnapshotCopyOnlyFull + - Enum KnownRestorePointQueryType has a new value SnapshotFull + - Enum KnownRestorePointType has a new value SnapshotCopyOnlyFull + - Enum KnownRestorePointType has a new value SnapshotFull + - Enum KnownWorkloadItemType has a new value SAPHanaDBInstance + - Enum KnownWorkloadType has a new value SAPHanaDBInstance -### Other Changes +**Breaking Changes** + - Operation ResourceGuardProxy.put has a new signature + - Enum KnownContainerType no longer has value AzureWorkloadContainer + - Enum KnownContainerType no longer has value MicrosoftClassicComputeVirtualMachines + - Enum KnownContainerType no longer has value MicrosoftComputeVirtualMachines + + ## 9.0.0 (2022-05-16) **Breaking Changes** diff --git a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/_meta.json b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/_meta.json index b1dd105a1b86..e82784695405 100644 --- a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/_meta.json +++ b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/_meta.json @@ -1,8 +1,8 @@ { - "commit": "3f456dba8358994af8251bfae2f911a127092e54", + "commit": "e6255e7ac100b87a85a9a98adcd4e6250c1a1e76", "readme": "specification/recoveryservicesbackup/resource-manager/readme.md", - "autorest_command": "autorest --version=3.7.3 --typescript --modelerfour.lenient-model-deduplication --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=D:\\work\\azure-sdk-for-js ..\\azure-rest-api-specs\\specification\\recoveryservicesbackup\\resource-manager\\readme.md --use=@autorest/typescript@6.0.0-alpha.19.20220408.1 --generate-sample=true", + "autorest_command": "autorest --version=3.8.4 --typescript --modelerfour.lenient-model-deduplication --azure-arm --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=/mnt/vss/_work/1/s/azure-sdk-for-js ../azure-rest-api-specs/specification/recoveryservicesbackup/resource-manager/readme.md --use=@autorest/typescript@6.0.0-rc.2", "repository_url": "https://github.com/Azure/azure-rest-api-specs.git", - "release_tool": "@azure-tools/js-sdk-release-tools@2.3.0", - "use": "@autorest/typescript@6.0.0-alpha.19.20220408.1" + "release_tool": "@azure-tools/js-sdk-release-tools@2.5.1", + "use": "@autorest/typescript@6.0.0-rc.2" } \ No newline at end of file diff --git a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/package.json b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/package.json index 7f9d44f39400..d3735ec1b92c 100644 --- a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/package.json +++ b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/package.json @@ -3,7 +3,7 @@ "sdk-type": "mgmt", "author": "Microsoft Corporation", "description": "A generated SDK for RecoveryServicesBackupClient.", - "version": "9.0.1", + "version": "10.0.0", "engines": { "node": ">=14.0.0" }, @@ -36,13 +36,17 @@ "mkdirp": "^1.0.4", "rollup": "^2.66.1", "rollup-plugin-sourcemaps": "^0.6.3", - "typescript": "~4.2.0", + "typescript": "~4.6.0", "uglify-js": "^3.4.9", "rimraf": "^3.0.0", "@azure/identity": "^2.0.1", - "@azure-tools/test-recorder": "^1.0.0", + "@azure-tools/test-recorder": "^2.0.0", + "@azure-tools/test-credential": "^1.0.0", "mocha": "^7.1.1", - "cross-env": "^7.0.2" + "@types/chai": "^4.2.8", + "chai": "^4.2.0", + "cross-env": "^7.0.2", + "@azure/dev-tool": "^1.0.0" }, "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/recoveryservicesbackup/arm-recoveryservicesbackup", "repository": { @@ -93,9 +97,8 @@ "unit-test:node": "cross-env TEST_MODE=playback npm run integration-test:node", "unit-test:browser": "echo skipped", "integration-test": "npm run integration-test:node && npm run integration-test:browser", - "integration-test:node": "mocha -r esm --require ts-node/register --timeout 1200000 --full-trace test/*.ts --reporter ../../../common/tools/mocha-multi-reporter.js", - "integration-test:browser": "echo skipped", - "docs": "echo skipped" + "integration-test:node": "dev-tool run test:node-ts-input -- --timeout 1200000 'test/*.ts'", + "integration-test:browser": "echo skipped" }, "sideEffects": false, "//metadata": { @@ -106,13 +109,5 @@ } ] }, - "autoPublish": true, - "//sampleConfiguration": { - "productName": "", - "productSlugs": [ - "azure" - ], - "disableDocsMs": true, - "apiRefLink": "https://docs.microsoft.com/javascript/api/@azure/arm-recoveryservicesbackup?view=azure-node-preview" - } -} + "autoPublish": true +} \ No newline at end of file diff --git a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/review/arm-recoveryservicesbackup.api.md b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/review/arm-recoveryservicesbackup.api.md index d2e7c63dfe2e..2bbdf3b1a108 100644 --- a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/review/arm-recoveryservicesbackup.api.md +++ b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/review/arm-recoveryservicesbackup.api.md @@ -14,47 +14,47 @@ import { PollOperationState } from '@azure/core-lro'; export type AcquireStorageAccountLock = string; // @public -export type AzureBackupGoalFeatureSupportRequest = FeatureSupportRequest & { +export interface AzureBackupGoalFeatureSupportRequest extends FeatureSupportRequest { featureType: "AzureBackupGoals"; -}; +} // @public -export type AzureBackupServerContainer = DpmContainer & { +export interface AzureBackupServerContainer extends DpmContainer { containerType: "AzureBackupServerContainer"; -}; +} // @public -export type AzureBackupServerEngine = BackupEngineBase & { +export interface AzureBackupServerEngine extends BackupEngineBase { backupEngineType: "AzureBackupServerEngine"; -}; +} // @public -export type AzureFileShareBackupRequest = BackupRequest & { +export interface AzureFileShareBackupRequest extends BackupRequest { objectType: "AzureFileShareBackupRequest"; recoveryPointExpiryTimeInUTC?: Date; -}; +} // @public -export type AzureFileShareProtectableItem = WorkloadProtectableItem & { - protectableItemType: "AzureFileShare"; +export interface AzureFileShareProtectableItem extends WorkloadProtectableItem { + azureFileShareType?: AzureFileShareType; parentContainerFabricId?: string; parentContainerFriendlyName?: string; - azureFileShareType?: AzureFileShareType; -}; + protectableItemType: "AzureFileShare"; +} // @public -export type AzureFileshareProtectedItem = ProtectedItem & { - protectedItemType: "AzureFileShareProtectedItem"; +export interface AzureFileshareProtectedItem extends ProtectedItem { + extendedInfo?: AzureFileshareProtectedItemExtendedInfo; friendlyName?: string; - protectionStatus?: string; - protectionState?: ProtectionState; - lastBackupStatus?: string; - lastBackupTime?: Date; kpisHealths?: { [propertyName: string]: KPIResourceHealthDetails; }; - extendedInfo?: AzureFileshareProtectedItemExtendedInfo; -}; + lastBackupStatus?: string; + lastBackupTime?: Date; + protectedItemType: "AzureFileShareProtectedItem"; + protectionState?: ProtectionState; + protectionStatus?: string; +} // @public export interface AzureFileshareProtectedItemExtendedInfo { @@ -66,73 +66,73 @@ export interface AzureFileshareProtectedItemExtendedInfo { } // @public -export type AzureFileShareProtectionPolicy = ProtectionPolicy & { +export interface AzureFileShareProtectionPolicy extends ProtectionPolicy { backupManagementType: "AzureStorage"; - workLoadType?: WorkloadType; - schedulePolicy?: SchedulePolicyUnion; retentionPolicy?: RetentionPolicyUnion; + schedulePolicy?: SchedulePolicyUnion; timeZone?: string; -}; + workLoadType?: WorkloadType; +} // @public -export type AzureFileShareProvisionILRRequest = ILRRequest & { +export interface AzureFileShareProvisionILRRequest extends ILRRequest { objectType: "AzureFileShareProvisionILRRequest"; recoveryPointId?: string; sourceResourceId?: string; -}; +} // @public -export type AzureFileShareRecoveryPoint = RecoveryPoint & { - objectType: "AzureFileShareRecoveryPoint"; - recoveryPointType?: string; - recoveryPointTime?: Date; +export interface AzureFileShareRecoveryPoint extends RecoveryPoint { fileShareSnapshotUri?: string; + objectType: "AzureFileShareRecoveryPoint"; recoveryPointSizeInGB?: number; -}; + recoveryPointTime?: Date; + recoveryPointType?: string; +} // @public -export type AzureFileShareRestoreRequest = RestoreRequest & { +export interface AzureFileShareRestoreRequest extends RestoreRequest { + copyOptions?: CopyOptions; objectType: "AzureFileShareRestoreRequest"; recoveryType?: RecoveryType; - sourceResourceId?: string; - copyOptions?: CopyOptions; - restoreRequestType?: RestoreRequestType; restoreFileSpecs?: RestoreFileSpecs[]; + restoreRequestType?: RestoreRequestType; + sourceResourceId?: string; targetDetails?: TargetAFSRestoreInfo; -}; +} // @public export type AzureFileShareType = string; // @public -export type AzureIaaSClassicComputeVMContainer = IaaSVMContainer & { +export interface AzureIaaSClassicComputeVMContainer extends IaaSVMContainer { containerType: "Microsoft.ClassicCompute/virtualMachines"; -}; +} // @public -export type AzureIaaSClassicComputeVMProtectableItem = IaaSVMProtectableItem & { +export interface AzureIaaSClassicComputeVMProtectableItem extends IaaSVMProtectableItem { protectableItemType: "Microsoft.ClassicCompute/virtualMachines"; -}; +} // @public -export type AzureIaaSClassicComputeVMProtectedItem = AzureIaaSVMProtectedItem & { +export interface AzureIaaSClassicComputeVMProtectedItem extends AzureIaaSVMProtectedItem { protectedItemType: "Microsoft.ClassicCompute/virtualMachines"; -}; +} // @public -export type AzureIaaSComputeVMContainer = IaaSVMContainer & { +export interface AzureIaaSComputeVMContainer extends IaaSVMContainer { containerType: "Microsoft.Compute/virtualMachines"; -}; +} // @public -export type AzureIaaSComputeVMProtectableItem = IaaSVMProtectableItem & { +export interface AzureIaaSComputeVMProtectableItem extends IaaSVMProtectableItem { protectableItemType: "Microsoft.Compute/virtualMachines"; -}; +} // @public -export type AzureIaaSComputeVMProtectedItem = AzureIaaSVMProtectedItem & { +export interface AzureIaaSComputeVMProtectedItem extends AzureIaaSVMProtectedItem { protectedItemType: "Microsoft.Compute/virtualMachines"; -}; +} // @public export interface AzureIaaSVMErrorInfo { @@ -143,19 +143,20 @@ export interface AzureIaaSVMErrorInfo { } // @public -export type AzureIaaSVMHealthDetails = ResourceHealthDetails & {}; +export interface AzureIaaSVMHealthDetails extends ResourceHealthDetails { +} // @public -export type AzureIaaSVMJob = Job & { - jobType: "AzureIaaSVMJob"; - duration?: string; +export interface AzureIaaSVMJob extends Job { actionsInfo?: JobSupportedAction[]; + containerName?: string; + duration?: string; errorDetails?: AzureIaaSVMErrorInfo[]; - virtualMachineVersion?: string; extendedInfo?: AzureIaaSVMJobExtendedInfo; - containerName?: string; isUserTriggered?: boolean; -}; + jobType: "AzureIaaSVMJob"; + virtualMachineVersion?: string; +} // @public export interface AzureIaaSVMJobExtendedInfo { @@ -184,38 +185,41 @@ export interface AzureIaaSVMJobTaskDetails { } // @public -export type AzureIaaSVMJobV2 = Job & { - jobType: "AzureIaaSVMJobV2"; +export interface AzureIaaSVMJobV2 extends Job { actionsInfo?: JobSupportedAction[]; containerName?: string; duration?: string; errorDetails?: AzureIaaSVMErrorInfo[]; - virtualMachineVersion?: string; extendedInfo?: AzureIaaSVMJobExtendedInfo; -}; + jobType: "AzureIaaSVMJobV2"; + virtualMachineVersion?: string; +} // @public -export type AzureIaaSVMProtectedItem = ProtectedItem & { - protectedItemType: "AzureIaaSVMProtectedItem" | "Microsoft.ClassicCompute/virtualMachines" | "Microsoft.Compute/virtualMachines"; - friendlyName?: string; - virtualMachineId?: string; - protectionStatus?: string; - protectionState?: ProtectionState; - healthStatus?: HealthStatus; +export interface AzureIaaSVMProtectedItem extends ProtectedItem { + extendedInfo?: AzureIaaSVMProtectedItemExtendedInfo; + extendedProperties?: ExtendedProperties; + readonly friendlyName?: string; healthDetails?: AzureIaaSVMHealthDetails[]; + readonly healthStatus?: HealthStatus; kpisHealths?: { [propertyName: string]: KPIResourceHealthDetails; }; lastBackupStatus?: string; - lastBackupTime?: Date; - protectedItemDataId?: string; - extendedInfo?: AzureIaaSVMProtectedItemExtendedInfo; - extendedProperties?: ExtendedProperties; -}; + readonly lastBackupTime?: Date; + readonly protectedItemDataId?: string; + protectedItemType: "AzureIaaSVMProtectedItem" | "Microsoft.ClassicCompute/virtualMachines" | "Microsoft.Compute/virtualMachines"; + protectionState?: ProtectionState; + protectionStatus?: string; + readonly virtualMachineId?: string; +} // @public export interface AzureIaaSVMProtectedItemExtendedInfo { + newestRecoveryPointInArchive?: Date; oldestRecoveryPoint?: Date; + oldestRecoveryPointInArchive?: Date; + oldestRecoveryPointInVault?: Date; policyInconsistent?: boolean; recoveryPointCount?: number; } @@ -224,47 +228,52 @@ export interface AzureIaaSVMProtectedItemExtendedInfo { export type AzureIaaSVMProtectedItemUnion = AzureIaaSVMProtectedItem | AzureIaaSClassicComputeVMProtectedItem | AzureIaaSComputeVMProtectedItem; // @public -export type AzureIaaSVMProtectionPolicy = ProtectionPolicy & { +export interface AzureIaaSVMProtectionPolicy extends ProtectionPolicy { backupManagementType: "AzureIaasVM"; + // (undocumented) instantRPDetails?: InstantRPAdditionalDetails; - schedulePolicy?: SchedulePolicyUnion; - retentionPolicy?: RetentionPolicyUnion; instantRpRetentionRangeInDays?: number; - timeZone?: string; + // (undocumented) policyType?: IaasvmPolicyType; -}; + retentionPolicy?: RetentionPolicyUnion; + schedulePolicy?: SchedulePolicyUnion; + tieringPolicy?: { + [propertyName: string]: TieringPolicy; + }; + timeZone?: string; +} // @public -export type AzureRecoveryServiceVaultProtectionIntent = ProtectionIntent & { +export interface AzureRecoveryServiceVaultProtectionIntent extends ProtectionIntent { protectionIntentItemType: "RecoveryServiceVaultItem" | "AzureWorkloadAutoProtectionIntent" | "AzureWorkloadSQLAutoProtectionIntent"; -}; +} // @public (undocumented) export type AzureRecoveryServiceVaultProtectionIntentUnion = AzureRecoveryServiceVaultProtectionIntent | AzureWorkloadAutoProtectionIntentUnion; // @public -export type AzureResourceProtectionIntent = ProtectionIntent & { - protectionIntentItemType: "AzureResourceItem"; +export interface AzureResourceProtectionIntent extends ProtectionIntent { friendlyName?: string; -}; + protectionIntentItemType: "AzureResourceItem"; +} // @public -export type AzureSqlagWorkloadContainerProtectionContainer = AzureWorkloadContainer & { +export interface AzureSqlagWorkloadContainerProtectionContainer extends AzureWorkloadContainer { containerType: "SQLAGWorkLoadContainer"; -}; +} // @public -export type AzureSqlContainer = ProtectionContainer & { +export interface AzureSqlContainer extends ProtectionContainer { containerType: "AzureSqlContainer"; -}; +} // @public -export type AzureSqlProtectedItem = ProtectedItem & { - protectedItemType: "Microsoft.Sql/servers/databases"; +export interface AzureSqlProtectedItem extends ProtectedItem { + extendedInfo?: AzureSqlProtectedItemExtendedInfo; protectedItemDataId?: string; + protectedItemType: "Microsoft.Sql/servers/databases"; protectionState?: ProtectedItemState; - extendedInfo?: AzureSqlProtectedItemExtendedInfo; -}; +} // @public export interface AzureSqlProtectedItemExtendedInfo { @@ -274,20 +283,20 @@ export interface AzureSqlProtectedItemExtendedInfo { } // @public -export type AzureSqlProtectionPolicy = ProtectionPolicy & { +export interface AzureSqlProtectionPolicy extends ProtectionPolicy { backupManagementType: "AzureSql"; retentionPolicy?: RetentionPolicyUnion; -}; +} // @public -export type AzureStorageContainer = ProtectionContainer & { +export interface AzureStorageContainer extends ProtectionContainer { + acquireStorageAccountLock?: AcquireStorageAccountLock; containerType: "StorageContainer"; + protectedItemCount?: number; + resourceGroup?: string; sourceResourceId?: string; storageAccountVersion?: string; - resourceGroup?: string; - protectedItemCount?: number; - acquireStorageAccountLock?: AcquireStorageAccountLock; -}; +} // @public export interface AzureStorageErrorInfo { @@ -297,16 +306,16 @@ export interface AzureStorageErrorInfo { } // @public -export type AzureStorageJob = Job & { - jobType: "AzureStorageJob"; - duration?: string; +export interface AzureStorageJob extends Job { actionsInfo?: JobSupportedAction[]; + duration?: string; errorDetails?: AzureStorageErrorInfo[]; - storageAccountName?: string; - storageAccountVersion?: string; extendedInfo?: AzureStorageJobExtendedInfo; isUserTriggered?: boolean; -}; + jobType: "AzureStorageJob"; + storageAccountName?: string; + storageAccountVersion?: string; +} // @public export interface AzureStorageJobExtendedInfo { @@ -324,26 +333,26 @@ export interface AzureStorageJobTaskDetails { } // @public -export type AzureStorageProtectableContainer = ProtectableContainer & { +export interface AzureStorageProtectableContainer extends ProtectableContainer { protectableContainerType: "StorageContainer"; -}; +} // @public -export type AzureVMAppContainerProtectableContainer = ProtectableContainer & { +export interface AzureVMAppContainerProtectableContainer extends ProtectableContainer { protectableContainerType: "VMAppContainer"; -}; +} // @public -export type AzureVMAppContainerProtectionContainer = AzureWorkloadContainer & { +export interface AzureVMAppContainerProtectionContainer extends AzureWorkloadContainer { containerType: "VMAppContainer"; -}; +} // @public -export type AzureVMResourceFeatureSupportRequest = FeatureSupportRequest & { +export interface AzureVMResourceFeatureSupportRequest extends FeatureSupportRequest { featureType: "AzureVMResourceBackup"; vmSize?: string; vmSku?: string; -}; +} // @public export interface AzureVMResourceFeatureSupportResponse { @@ -351,180 +360,198 @@ export interface AzureVMResourceFeatureSupportResponse { } // @public -export type AzureVmWorkloadItem = WorkloadItem & { - workloadItemType: "AzureVmWorkloadItem" | "SAPAseDatabase" | "SAPAseSystem" | "SAPHanaDatabase" | "SAPHanaSystem" | "SQLDataBase" | "SQLInstance"; +export interface AzureVmWorkloadItem extends WorkloadItem { + isAutoProtectable?: boolean; parentName?: string; serverName?: string; - isAutoProtectable?: boolean; subinquireditemcount?: number; subWorkloadItemCount?: number; -}; + workloadItemType: "AzureVmWorkloadItem" | "SAPAseDatabase" | "SAPAseSystem" | "SAPHanaDatabase" | "SAPHanaSystem" | "SQLDataBase" | "SQLInstance"; +} // @public (undocumented) export type AzureVmWorkloadItemUnion = AzureVmWorkloadItem | AzureVmWorkloadSAPAseDatabaseWorkloadItem | AzureVmWorkloadSAPAseSystemWorkloadItem | AzureVmWorkloadSAPHanaDatabaseWorkloadItem | AzureVmWorkloadSAPHanaSystemWorkloadItem | AzureVmWorkloadSQLDatabaseWorkloadItem | AzureVmWorkloadSQLInstanceWorkloadItem; // @public -export type AzureVmWorkloadProtectableItem = WorkloadProtectableItem & { - protectableItemType: "AzureVmWorkloadProtectableItem" | "SAPAseSystem" | "SAPHanaDatabase" | "SAPHanaSystem" | "SQLAvailabilityGroupContainer" | "SQLDataBase" | "SQLInstance"; +export interface AzureVmWorkloadProtectableItem extends WorkloadProtectableItem { + isAutoProtectable?: boolean; + isAutoProtected?: boolean; parentName?: string; parentUniqueName?: string; + prebackupvalidation?: PreBackupValidation; + protectableItemType: "AzureVmWorkloadProtectableItem" | "SAPAseSystem" | "SAPHanaDatabase" | "SAPHanaSystem" | "SAPHanaDBInstance" | "SAPHanaHSR" | "SQLAvailabilityGroupContainer" | "SQLDataBase" | "SQLInstance"; serverName?: string; - isAutoProtectable?: boolean; - isAutoProtected?: boolean; subinquireditemcount?: number; subprotectableitemcount?: number; - prebackupvalidation?: PreBackupValidation; -}; +} // @public (undocumented) -export type AzureVmWorkloadProtectableItemUnion = AzureVmWorkloadProtectableItem | AzureVmWorkloadSAPAseSystemProtectableItem | AzureVmWorkloadSAPHanaDatabaseProtectableItem | AzureVmWorkloadSAPHanaSystemProtectableItem | AzureVmWorkloadSQLAvailabilityGroupProtectableItem | AzureVmWorkloadSQLDatabaseProtectableItem | AzureVmWorkloadSQLInstanceProtectableItem; +export type AzureVmWorkloadProtectableItemUnion = AzureVmWorkloadProtectableItem | AzureVmWorkloadSAPAseSystemProtectableItem | AzureVmWorkloadSAPHanaDatabaseProtectableItem | AzureVmWorkloadSAPHanaSystemProtectableItem | AzureVmWorkloadSAPHanaDBInstance | AzureVmWorkloadSAPHanaHSR | AzureVmWorkloadSQLAvailabilityGroupProtectableItem | AzureVmWorkloadSQLDatabaseProtectableItem | AzureVmWorkloadSQLInstanceProtectableItem; // @public -export type AzureVmWorkloadProtectedItem = ProtectedItem & { - protectedItemType: "AzureVmWorkloadProtectedItem" | "AzureVmWorkloadSAPAseDatabase" | "AzureVmWorkloadSAPHanaDatabase" | "AzureVmWorkloadSQLDatabase"; - friendlyName?: string; - serverName?: string; - parentName?: string; - parentType?: string; - protectionStatus?: string; - protectionState?: ProtectionState; - lastBackupStatus?: LastBackupStatus; - lastBackupTime?: Date; - lastBackupErrorDetail?: ErrorDetail; - protectedItemDataSourceId?: string; - protectedItemHealthStatus?: ProtectedItemHealthStatus; +export interface AzureVmWorkloadProtectedItem extends ProtectedItem { extendedInfo?: AzureVmWorkloadProtectedItemExtendedInfo; + readonly friendlyName?: string; kpisHealths?: { [propertyName: string]: KPIResourceHealthDetails; }; -}; + lastBackupErrorDetail?: ErrorDetail; + lastBackupStatus?: LastBackupStatus; + lastBackupTime?: Date; + parentName?: string; + parentType?: string; + protectedItemDataSourceId?: string; + protectedItemHealthStatus?: ProtectedItemHealthStatus; + protectedItemType: "AzureVmWorkloadProtectedItem" | "AzureVmWorkloadSAPAseDatabase" | "AzureVmWorkloadSAPHanaDatabase" | "AzureVmWorkloadSAPHanaDBInstance" | "AzureVmWorkloadSQLDatabase"; + protectionState?: ProtectionState; + readonly protectionStatus?: string; + serverName?: string; +} // @public export interface AzureVmWorkloadProtectedItemExtendedInfo { + newestRecoveryPointInArchive?: Date; oldestRecoveryPoint?: Date; + oldestRecoveryPointInArchive?: Date; + oldestRecoveryPointInVault?: Date; policyState?: string; recoveryModel?: string; recoveryPointCount?: number; } // @public (undocumented) -export type AzureVmWorkloadProtectedItemUnion = AzureVmWorkloadProtectedItem | AzureVmWorkloadSAPAseDatabaseProtectedItem | AzureVmWorkloadSAPHanaDatabaseProtectedItem | AzureVmWorkloadSQLDatabaseProtectedItem; +export type AzureVmWorkloadProtectedItemUnion = AzureVmWorkloadProtectedItem | AzureVmWorkloadSAPAseDatabaseProtectedItem | AzureVmWorkloadSAPHanaDatabaseProtectedItem | AzureVmWorkloadSAPHanaDBInstanceProtectedItem | AzureVmWorkloadSQLDatabaseProtectedItem; // @public -export type AzureVmWorkloadProtectionPolicy = ProtectionPolicy & { +export interface AzureVmWorkloadProtectionPolicy extends ProtectionPolicy { backupManagementType: "AzureWorkload"; - workLoadType?: WorkloadType; + makePolicyConsistent?: boolean; settings?: Settings; subProtectionPolicy?: SubProtectionPolicy[]; - makePolicyConsistent?: boolean; -}; + workLoadType?: WorkloadType; +} // @public -export type AzureVmWorkloadSAPAseDatabaseProtectedItem = AzureVmWorkloadProtectedItem & { +export interface AzureVmWorkloadSAPAseDatabaseProtectedItem extends AzureVmWorkloadProtectedItem { protectedItemType: "AzureVmWorkloadSAPAseDatabase"; -}; +} // @public -export type AzureVmWorkloadSAPAseDatabaseWorkloadItem = AzureVmWorkloadItem & { +export interface AzureVmWorkloadSAPAseDatabaseWorkloadItem extends AzureVmWorkloadItem { workloadItemType: "SAPAseDatabase"; -}; +} // @public -export type AzureVmWorkloadSAPAseSystemProtectableItem = AzureVmWorkloadProtectableItem & { +export interface AzureVmWorkloadSAPAseSystemProtectableItem extends AzureVmWorkloadProtectableItem { protectableItemType: "SAPAseSystem"; -}; +} // @public -export type AzureVmWorkloadSAPAseSystemWorkloadItem = AzureVmWorkloadItem & { +export interface AzureVmWorkloadSAPAseSystemWorkloadItem extends AzureVmWorkloadItem { workloadItemType: "SAPAseSystem"; -}; +} // @public -export type AzureVmWorkloadSAPHanaDatabaseProtectableItem = AzureVmWorkloadProtectableItem & { +export interface AzureVmWorkloadSAPHanaDatabaseProtectableItem extends AzureVmWorkloadProtectableItem { protectableItemType: "SAPHanaDatabase"; -}; +} // @public -export type AzureVmWorkloadSAPHanaDatabaseProtectedItem = AzureVmWorkloadProtectedItem & { +export interface AzureVmWorkloadSAPHanaDatabaseProtectedItem extends AzureVmWorkloadProtectedItem { protectedItemType: "AzureVmWorkloadSAPHanaDatabase"; -}; +} // @public -export type AzureVmWorkloadSAPHanaDatabaseWorkloadItem = AzureVmWorkloadItem & { +export interface AzureVmWorkloadSAPHanaDatabaseWorkloadItem extends AzureVmWorkloadItem { workloadItemType: "SAPHanaDatabase"; -}; +} + +// @public +export interface AzureVmWorkloadSAPHanaDBInstance extends AzureVmWorkloadProtectableItem { + protectableItemType: "SAPHanaDBInstance"; +} // @public -export type AzureVmWorkloadSAPHanaSystemProtectableItem = AzureVmWorkloadProtectableItem & { +export interface AzureVmWorkloadSAPHanaDBInstanceProtectedItem extends AzureVmWorkloadProtectedItem { + protectedItemType: "AzureVmWorkloadSAPHanaDBInstance"; +} + +// @public +export interface AzureVmWorkloadSAPHanaHSR extends AzureVmWorkloadProtectableItem { + protectableItemType: "SAPHanaHSR"; +} + +// @public +export interface AzureVmWorkloadSAPHanaSystemProtectableItem extends AzureVmWorkloadProtectableItem { protectableItemType: "SAPHanaSystem"; -}; +} // @public -export type AzureVmWorkloadSAPHanaSystemWorkloadItem = AzureVmWorkloadItem & { +export interface AzureVmWorkloadSAPHanaSystemWorkloadItem extends AzureVmWorkloadItem { workloadItemType: "SAPHanaSystem"; -}; +} // @public -export type AzureVmWorkloadSQLAvailabilityGroupProtectableItem = AzureVmWorkloadProtectableItem & { +export interface AzureVmWorkloadSQLAvailabilityGroupProtectableItem extends AzureVmWorkloadProtectableItem { protectableItemType: "SQLAvailabilityGroupContainer"; -}; +} // @public -export type AzureVmWorkloadSQLDatabaseProtectableItem = AzureVmWorkloadProtectableItem & { +export interface AzureVmWorkloadSQLDatabaseProtectableItem extends AzureVmWorkloadProtectableItem { protectableItemType: "SQLDataBase"; -}; +} // @public -export type AzureVmWorkloadSQLDatabaseProtectedItem = AzureVmWorkloadProtectedItem & { +export interface AzureVmWorkloadSQLDatabaseProtectedItem extends AzureVmWorkloadProtectedItem { protectedItemType: "AzureVmWorkloadSQLDatabase"; -}; +} // @public -export type AzureVmWorkloadSQLDatabaseWorkloadItem = AzureVmWorkloadItem & { +export interface AzureVmWorkloadSQLDatabaseWorkloadItem extends AzureVmWorkloadItem { workloadItemType: "SQLDataBase"; -}; +} // @public -export type AzureVmWorkloadSQLInstanceProtectableItem = AzureVmWorkloadProtectableItem & { +export interface AzureVmWorkloadSQLInstanceProtectableItem extends AzureVmWorkloadProtectableItem { protectableItemType: "SQLInstance"; -}; +} // @public -export type AzureVmWorkloadSQLInstanceWorkloadItem = AzureVmWorkloadItem & { - workloadItemType: "SQLInstance"; +export interface AzureVmWorkloadSQLInstanceWorkloadItem extends AzureVmWorkloadItem { dataDirectoryPaths?: SQLDataDirectory[]; -}; + workloadItemType: "SQLInstance"; +} // @public -export type AzureWorkloadAutoProtectionIntent = AzureRecoveryServiceVaultProtectionIntent & { +export interface AzureWorkloadAutoProtectionIntent extends AzureRecoveryServiceVaultProtectionIntent { protectionIntentItemType: "AzureWorkloadAutoProtectionIntent" | "AzureWorkloadSQLAutoProtectionIntent"; -}; +} // @public (undocumented) export type AzureWorkloadAutoProtectionIntentUnion = AzureWorkloadAutoProtectionIntent | AzureWorkloadSQLAutoProtectionIntent; // @public -export type AzureWorkloadBackupRequest = BackupRequest & { - objectType: "AzureWorkloadBackupRequest"; +export interface AzureWorkloadBackupRequest extends BackupRequest { backupType?: BackupType; enableCompression?: boolean; + objectType: "AzureWorkloadBackupRequest"; recoveryPointExpiryTimeInUTC?: Date; -}; +} // @public -export type AzureWorkloadContainer = ProtectionContainer & { +export interface AzureWorkloadContainer extends ProtectionContainer { containerType: "AzureWorkloadContainer" | "SQLAGWorkLoadContainer" | "VMAppContainer"; - sourceResourceId?: string; - lastUpdatedTime?: Date; extendedInfo?: AzureWorkloadContainerExtendedInfo; - workloadType?: WorkloadType; + lastUpdatedTime?: Date; operationType?: OperationType; -}; + sourceResourceId?: string; + workloadType?: WorkloadType; +} // @public -export type AzureWorkloadContainerAutoProtectionIntent = ProtectionIntent & { +export interface AzureWorkloadContainerAutoProtectionIntent extends ProtectionIntent { protectionIntentItemType: "AzureWorkloadContainerAutoProtectionIntent"; -}; +} // @public export interface AzureWorkloadContainerExtendedInfo { @@ -546,14 +573,14 @@ export interface AzureWorkloadErrorInfo { } // @public -export type AzureWorkloadJob = Job & { - jobType: "AzureWorkloadJob"; - workloadType?: string; - duration?: string; +export interface AzureWorkloadJob extends Job { actionsInfo?: JobSupportedAction[]; + duration?: string; errorDetails?: AzureWorkloadErrorInfo[]; extendedInfo?: AzureWorkloadJobExtendedInfo; -}; + jobType: "AzureWorkloadJob"; + workloadType?: string; +} // @public export interface AzureWorkloadJobExtendedInfo { @@ -571,121 +598,121 @@ export interface AzureWorkloadJobTaskDetails { } // @public -export type AzureWorkloadPointInTimeRecoveryPoint = AzureWorkloadRecoveryPoint & { +export interface AzureWorkloadPointInTimeRecoveryPoint extends AzureWorkloadRecoveryPoint { objectType: "AzureWorkloadPointInTimeRecoveryPoint" | "AzureWorkloadSAPHanaPointInTimeRecoveryPoint"; timeRanges?: PointInTimeRange[]; -}; +} // @public (undocumented) export type AzureWorkloadPointInTimeRecoveryPointUnion = AzureWorkloadPointInTimeRecoveryPoint | AzureWorkloadSAPHanaPointInTimeRecoveryPoint; // @public -export type AzureWorkloadPointInTimeRestoreRequest = AzureWorkloadRestoreRequest & { +export interface AzureWorkloadPointInTimeRestoreRequest extends AzureWorkloadRestoreRequest { objectType: "AzureWorkloadPointInTimeRestoreRequest"; pointInTime?: Date; -}; +} // @public -export type AzureWorkloadRecoveryPoint = RecoveryPoint & { +export interface AzureWorkloadRecoveryPoint extends RecoveryPoint { objectType: "AzureWorkloadRecoveryPoint" | "AzureWorkloadPointInTimeRecoveryPoint" | "AzureWorkloadSAPHanaPointInTimeRecoveryPoint" | "AzureWorkloadSAPHanaRecoveryPoint" | "AzureWorkloadSQLRecoveryPoint" | "AzureWorkloadSQLPointInTimeRecoveryPoint"; - recoveryPointTimeInUTC?: Date; - type?: RestorePointType; - recoveryPointTierDetails?: RecoveryPointTierInformationV2[]; recoveryPointMoveReadinessInfo?: { [propertyName: string]: RecoveryPointMoveReadinessInfo; }; -}; + recoveryPointTierDetails?: RecoveryPointTierInformationV2[]; + recoveryPointTimeInUTC?: Date; + type?: RestorePointType; +} // @public (undocumented) export type AzureWorkloadRecoveryPointUnion = AzureWorkloadRecoveryPoint | AzureWorkloadPointInTimeRecoveryPointUnion | AzureWorkloadSAPHanaRecoveryPoint | AzureWorkloadSQLRecoveryPointUnion; // @public -export type AzureWorkloadRestoreRequest = RestoreRequest & { +export interface AzureWorkloadRestoreRequest extends RestoreRequest { objectType: "AzureWorkloadRestoreRequest" | "AzureWorkloadPointInTimeRestoreRequest" | "AzureWorkloadSAPHanaRestoreRequest" | "AzureWorkloadSAPHanaPointInTimeRestoreRequest" | "AzureWorkloadSQLRestoreRequest" | "AzureWorkloadSQLPointInTimeRestoreRequest" | "AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest" | "AzureWorkloadSAPHanaRestoreWithRehydrateRequest" | "AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest" | "AzureWorkloadSQLRestoreWithRehydrateRequest"; - recoveryType?: RecoveryType; - sourceResourceId?: string; propertyBag?: { [propertyName: string]: string; }; - targetInfo?: TargetRestoreInfo; recoveryMode?: RecoveryMode; + recoveryType?: RecoveryType; + sourceResourceId?: string; + targetInfo?: TargetRestoreInfo; targetVirtualMachineId?: string; -}; +} // @public (undocumented) export type AzureWorkloadRestoreRequestUnion = AzureWorkloadRestoreRequest | AzureWorkloadPointInTimeRestoreRequest | AzureWorkloadSAPHanaRestoreRequestUnion | AzureWorkloadSQLRestoreRequestUnion; // @public -export type AzureWorkloadSAPHanaPointInTimeRecoveryPoint = AzureWorkloadPointInTimeRecoveryPoint & { +export interface AzureWorkloadSAPHanaPointInTimeRecoveryPoint extends AzureWorkloadPointInTimeRecoveryPoint { objectType: "AzureWorkloadSAPHanaPointInTimeRecoveryPoint"; -}; +} // @public -export type AzureWorkloadSAPHanaPointInTimeRestoreRequest = AzureWorkloadSAPHanaRestoreRequest & { +export interface AzureWorkloadSAPHanaPointInTimeRestoreRequest extends AzureWorkloadSAPHanaRestoreRequest { objectType: "AzureWorkloadSAPHanaPointInTimeRestoreRequest" | "AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest"; pointInTime?: Date; -}; +} // @public (undocumented) export type AzureWorkloadSAPHanaPointInTimeRestoreRequestUnion = AzureWorkloadSAPHanaPointInTimeRestoreRequest | AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest; // @public -export type AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest = AzureWorkloadSAPHanaPointInTimeRestoreRequest & { +export interface AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest extends AzureWorkloadSAPHanaPointInTimeRestoreRequest { objectType: "AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest"; recoveryPointRehydrationInfo?: RecoveryPointRehydrationInfo; -}; +} // @public -export type AzureWorkloadSAPHanaRecoveryPoint = AzureWorkloadRecoveryPoint & { +export interface AzureWorkloadSAPHanaRecoveryPoint extends AzureWorkloadRecoveryPoint { objectType: "AzureWorkloadSAPHanaRecoveryPoint"; -}; +} // @public -export type AzureWorkloadSAPHanaRestoreRequest = AzureWorkloadRestoreRequest & { +export interface AzureWorkloadSAPHanaRestoreRequest extends AzureWorkloadRestoreRequest { objectType: "AzureWorkloadSAPHanaRestoreRequest" | "AzureWorkloadSAPHanaPointInTimeRestoreRequest" | "AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest" | "AzureWorkloadSAPHanaRestoreWithRehydrateRequest"; -}; +} // @public (undocumented) export type AzureWorkloadSAPHanaRestoreRequestUnion = AzureWorkloadSAPHanaRestoreRequest | AzureWorkloadSAPHanaPointInTimeRestoreRequestUnion | AzureWorkloadSAPHanaRestoreWithRehydrateRequest; // @public -export type AzureWorkloadSAPHanaRestoreWithRehydrateRequest = AzureWorkloadSAPHanaRestoreRequest & { +export interface AzureWorkloadSAPHanaRestoreWithRehydrateRequest extends AzureWorkloadSAPHanaRestoreRequest { objectType: "AzureWorkloadSAPHanaRestoreWithRehydrateRequest"; recoveryPointRehydrationInfo?: RecoveryPointRehydrationInfo; -}; +} // @public -export type AzureWorkloadSQLAutoProtectionIntent = AzureWorkloadAutoProtectionIntent & { +export interface AzureWorkloadSQLAutoProtectionIntent extends AzureWorkloadAutoProtectionIntent { protectionIntentItemType: "AzureWorkloadSQLAutoProtectionIntent"; workloadItemType?: WorkloadItemType; -}; +} // @public -export type AzureWorkloadSQLPointInTimeRecoveryPoint = AzureWorkloadSQLRecoveryPoint & { +export interface AzureWorkloadSQLPointInTimeRecoveryPoint extends AzureWorkloadSQLRecoveryPoint { objectType: "AzureWorkloadSQLPointInTimeRecoveryPoint"; timeRanges?: PointInTimeRange[]; -}; +} // @public -export type AzureWorkloadSQLPointInTimeRestoreRequest = AzureWorkloadSQLRestoreRequest & { +export interface AzureWorkloadSQLPointInTimeRestoreRequest extends AzureWorkloadSQLRestoreRequest { objectType: "AzureWorkloadSQLPointInTimeRestoreRequest" | "AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest"; pointInTime?: Date; -}; +} // @public (undocumented) export type AzureWorkloadSQLPointInTimeRestoreRequestUnion = AzureWorkloadSQLPointInTimeRestoreRequest | AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest; // @public -export type AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest = AzureWorkloadSQLPointInTimeRestoreRequest & { +export interface AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest extends AzureWorkloadSQLPointInTimeRestoreRequest { objectType: "AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest"; recoveryPointRehydrationInfo?: RecoveryPointRehydrationInfo; -}; +} // @public -export type AzureWorkloadSQLRecoveryPoint = AzureWorkloadRecoveryPoint & { - objectType: "AzureWorkloadSQLRecoveryPoint" | "AzureWorkloadSQLPointInTimeRecoveryPoint"; +export interface AzureWorkloadSQLRecoveryPoint extends AzureWorkloadRecoveryPoint { extendedInfo?: AzureWorkloadSQLRecoveryPointExtendedInfo; -}; + objectType: "AzureWorkloadSQLRecoveryPoint" | "AzureWorkloadSQLPointInTimeRecoveryPoint"; +} // @public export interface AzureWorkloadSQLRecoveryPointExtendedInfo { @@ -697,21 +724,21 @@ export interface AzureWorkloadSQLRecoveryPointExtendedInfo { export type AzureWorkloadSQLRecoveryPointUnion = AzureWorkloadSQLRecoveryPoint | AzureWorkloadSQLPointInTimeRecoveryPoint; // @public -export type AzureWorkloadSQLRestoreRequest = AzureWorkloadRestoreRequest & { +export interface AzureWorkloadSQLRestoreRequest extends AzureWorkloadRestoreRequest { + alternateDirectoryPaths?: SQLDataDirectoryMapping[]; + isNonRecoverable?: boolean; objectType: "AzureWorkloadSQLRestoreRequest" | "AzureWorkloadSQLPointInTimeRestoreRequest" | "AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest" | "AzureWorkloadSQLRestoreWithRehydrateRequest"; shouldUseAlternateTargetLocation?: boolean; - isNonRecoverable?: boolean; - alternateDirectoryPaths?: SQLDataDirectoryMapping[]; -}; +} // @public (undocumented) export type AzureWorkloadSQLRestoreRequestUnion = AzureWorkloadSQLRestoreRequest | AzureWorkloadSQLPointInTimeRestoreRequestUnion | AzureWorkloadSQLRestoreWithRehydrateRequest; // @public -export type AzureWorkloadSQLRestoreWithRehydrateRequest = AzureWorkloadSQLRestoreRequest & { +export interface AzureWorkloadSQLRestoreWithRehydrateRequest extends AzureWorkloadSQLRestoreRequest { objectType: "AzureWorkloadSQLRestoreWithRehydrateRequest"; recoveryPointRehydrationInfo?: RecoveryPointRehydrationInfo; -}; +} // @public export interface BackupEngineBase { @@ -731,14 +758,14 @@ export interface BackupEngineBase { } // @public -export type BackupEngineBaseResource = Resource & { +export interface BackupEngineBaseResource extends Resource { properties?: BackupEngineBaseUnion; -}; +} // @public -export type BackupEngineBaseResourceList = ResourceList & { +export interface BackupEngineBaseResourceList extends ResourceList { value?: BackupEngineBaseResource[]; -}; +} // @public (undocumented) export type BackupEngineBaseUnion = BackupEngineBase | AzureBackupServerEngine | DpmBackupEngine; @@ -973,9 +1000,9 @@ export interface BackupRequest { } // @public -export type BackupRequestResource = Resource & { +export interface BackupRequestResource extends Resource { properties?: BackupRequestUnion; -}; +} // @public (undocumented) export type BackupRequestUnion = BackupRequest | AzureFileShareBackupRequest | AzureWorkloadBackupRequest | IaasVMBackupRequest; @@ -991,9 +1018,9 @@ export interface BackupResourceConfig { } // @public -export type BackupResourceConfigResource = Resource & { +export interface BackupResourceConfigResource extends Resource { properties?: BackupResourceConfig; -}; +} // @public (undocumented) export interface BackupResourceEncryptionConfig { @@ -1007,20 +1034,20 @@ export interface BackupResourceEncryptionConfig { } // @public (undocumented) -export type BackupResourceEncryptionConfigExtended = BackupResourceEncryptionConfig & { +export interface BackupResourceEncryptionConfigExtended extends BackupResourceEncryptionConfig { userAssignedIdentity?: string; useSystemAssignedIdentity?: boolean; -}; +} // @public (undocumented) -export type BackupResourceEncryptionConfigExtendedResource = Resource & { +export interface BackupResourceEncryptionConfigExtendedResource extends Resource { properties?: BackupResourceEncryptionConfigExtended; -}; +} // @public (undocumented) -export type BackupResourceEncryptionConfigResource = Resource & { +export interface BackupResourceEncryptionConfigResource extends Resource { properties?: BackupResourceEncryptionConfig; -}; +} // @public export interface BackupResourceEncryptionConfigs { @@ -1076,9 +1103,9 @@ export interface BackupResourceVaultConfig { } // @public -export type BackupResourceVaultConfigResource = Resource & { +export interface BackupResourceVaultConfigResource extends Resource { properties?: BackupResourceVaultConfig; -}; +} // @public export interface BackupResourceVaultConfigs { @@ -1397,18 +1424,39 @@ export type DayOfWeek = "Sunday" | "Monday" | "Tuesday" | "Wednesday" | "Thursda // @public export type DedupState = string; -// @public (undocumented) -export interface DiskExclusionProperties { - diskLunList?: number[]; - isInclusionList?: boolean; +// @public +export interface DeletedProtectionContainers { + list(resourceGroupName: string, vaultName: string, options?: DeletedProtectionContainersListOptionalParams): PagedAsyncIterableIterator; } // @public -export interface DiskInformation { - // (undocumented) - lun?: number; - // (undocumented) - name?: string; +export interface DeletedProtectionContainersListNextOptionalParams extends coreClient.OperationOptions { + filter?: string; +} + +// @public +export type DeletedProtectionContainersListNextResponse = ProtectionContainerResourceList; + +// @public +export interface DeletedProtectionContainersListOptionalParams extends coreClient.OperationOptions { + filter?: string; +} + +// @public +export type DeletedProtectionContainersListResponse = ProtectionContainerResourceList; + +// @public (undocumented) +export interface DiskExclusionProperties { + diskLunList?: number[]; + isInclusionList?: boolean; +} + +// @public +export interface DiskInformation { + // (undocumented) + lun?: number; + // (undocumented) + name?: string; } // @public @@ -1419,22 +1467,22 @@ export interface DistributedNodesInfo { } // @public -export type DpmBackupEngine = BackupEngineBase & { +export interface DpmBackupEngine extends BackupEngineBase { backupEngineType: "DpmBackupEngine"; -}; +} // @public -export type DpmContainer = ProtectionContainer & { - containerType: "DPMContainer" | "AzureBackupServerContainer"; +export interface DpmContainer extends ProtectionContainer { canReRegister?: boolean; containerId?: string; - protectedItemCount?: number; + containerType: "DPMContainer" | "AzureBackupServerContainer"; dpmAgentVersion?: string; dpmServers?: string[]; - upgradeAvailable?: boolean; - protectionStatus?: string; extendedInfo?: DPMContainerExtendedInfo; -}; + protectedItemCount?: number; + protectionStatus?: string; + upgradeAvailable?: boolean; +} // @public export interface DPMContainerExtendedInfo { @@ -1451,17 +1499,17 @@ export interface DpmErrorInfo { } // @public -export type DpmJob = Job & { - jobType: "DpmJob"; - duration?: string; - dpmServerName?: string; +export interface DpmJob extends Job { + actionsInfo?: JobSupportedAction[]; containerName?: string; containerType?: string; - workloadType?: string; - actionsInfo?: JobSupportedAction[]; + dpmServerName?: string; + duration?: string; errorDetails?: DpmErrorInfo[]; extendedInfo?: DpmJobExtendedInfo; -}; + jobType: "DpmJob"; + workloadType?: string; +} // @public export interface DpmJobExtendedInfo { @@ -1482,13 +1530,13 @@ export interface DpmJobTaskDetails { } // @public -export type DPMProtectedItem = ProtectedItem & { - protectedItemType: "DPMProtectedItem"; - friendlyName?: string; +export interface DPMProtectedItem extends ProtectedItem { backupEngineName?: string; - protectionState?: ProtectedItemState; extendedInfo?: DPMProtectedItemExtendedInfo; -}; + friendlyName?: string; + protectedItemType: "DPMProtectedItem"; + protectionState?: ProtectedItemState; +} // @public export interface DPMProtectedItemExtendedInfo { @@ -1539,13 +1587,13 @@ export interface ErrorDetail { } // @public -export type ExportJobsOperationResultInfo = OperationResultInfoBase & { - objectType: "ExportJobsOperationResultInfo"; - blobUrl?: string; +export interface ExportJobsOperationResultInfo extends OperationResultInfoBase { blobSasKey?: string; - excelFileBlobUrl?: string; + blobUrl?: string; excelFileBlobSasKey?: string; -}; + excelFileBlobUrl?: string; + objectType: "ExportJobsOperationResultInfo"; +} // @public export interface ExportJobsOperationResults { @@ -1589,11 +1637,11 @@ export interface FeatureSupportValidateOptionalParams extends coreClient.Operati export type FeatureSupportValidateResponse = AzureVMResourceFeatureSupportResponse; // @public -export type GenericContainer = ProtectionContainer & { +export interface GenericContainer extends ProtectionContainer { containerType: "GenericContainer"; - fabricName?: string; extendedInformation?: GenericContainerExtendedInfo; -}; + fabricName?: string; +} // @public export interface GenericContainerExtendedInfo { @@ -1605,34 +1653,34 @@ export interface GenericContainerExtendedInfo { } // @public -export type GenericProtectedItem = ProtectedItem & { - protectedItemType: "GenericProtectedItem"; +export interface GenericProtectedItem extends ProtectedItem { + fabricName?: string; friendlyName?: string; policyState?: string; - protectionState?: ProtectionState; protectedItemId?: number; + protectedItemType: "GenericProtectedItem"; + protectionState?: ProtectionState; sourceAssociations?: { [propertyName: string]: string; }; - fabricName?: string; -}; +} // @public -export type GenericProtectionPolicy = ProtectionPolicy & { +export interface GenericProtectionPolicy extends ProtectionPolicy { backupManagementType: "GenericProtectionPolicy"; + fabricName?: string; subProtectionPolicy?: SubProtectionPolicy[]; timeZone?: string; - fabricName?: string; -}; +} // @public -export type GenericRecoveryPoint = RecoveryPoint & { - objectType: "GenericRecoveryPoint"; +export interface GenericRecoveryPoint extends RecoveryPoint { friendlyName?: string; - recoveryPointType?: string; - recoveryPointTime?: Date; + objectType: "GenericRecoveryPoint"; recoveryPointAdditionalInfo?: string; -}; + recoveryPointTime?: Date; + recoveryPointType?: string; +} // @public export interface GetOperationStatusOptionalParams extends coreClient.OperationOptions { @@ -1663,100 +1711,100 @@ export interface HourlySchedule { export type HttpStatusCode = "Continue" | "SwitchingProtocols" | "OK" | "Created" | "Accepted" | "NonAuthoritativeInformation" | "NoContent" | "ResetContent" | "PartialContent" | "MultipleChoices" | "Ambiguous" | "MovedPermanently" | "Moved" | "Found" | "Redirect" | "SeeOther" | "RedirectMethod" | "NotModified" | "UseProxy" | "Unused" | "TemporaryRedirect" | "RedirectKeepVerb" | "BadRequest" | "Unauthorized" | "PaymentRequired" | "Forbidden" | "NotFound" | "MethodNotAllowed" | "NotAcceptable" | "ProxyAuthenticationRequired" | "RequestTimeout" | "Conflict" | "Gone" | "LengthRequired" | "PreconditionFailed" | "RequestEntityTooLarge" | "RequestUriTooLong" | "UnsupportedMediaType" | "RequestedRangeNotSatisfiable" | "ExpectationFailed" | "UpgradeRequired" | "InternalServerError" | "NotImplemented" | "BadGateway" | "ServiceUnavailable" | "GatewayTimeout" | "HttpVersionNotSupported"; // @public -export type IaasVMBackupRequest = BackupRequest & { +export interface IaasVMBackupRequest extends BackupRequest { objectType: "IaasVMBackupRequest"; recoveryPointExpiryTimeInUTC?: Date; -}; +} // @public -export type IaaSVMContainer = ProtectionContainer & { +export interface IaaSVMContainer extends ProtectionContainer { containerType: "IaasVMContainer" | "Microsoft.ClassicCompute/virtualMachines" | "Microsoft.Compute/virtualMachines"; + resourceGroup?: string; virtualMachineId?: string; virtualMachineVersion?: string; - resourceGroup?: string; -}; +} // @public (undocumented) export type IaaSVMContainerUnion = IaaSVMContainer | AzureIaaSClassicComputeVMContainer | AzureIaaSComputeVMContainer; // @public -export type IaasVmilrRegistrationRequest = ILRRequest & { +export interface IaasVmilrRegistrationRequest extends ILRRequest { + initiatorName?: string; objectType: "IaasVMILRRegistrationRequest"; recoveryPointId?: string; - virtualMachineId?: string; - initiatorName?: string; renewExistingRegistration?: boolean; -}; + virtualMachineId?: string; +} // @public export type IaasvmPolicyType = string; // @public -export type IaaSVMProtectableItem = WorkloadProtectableItem & { +export interface IaaSVMProtectableItem extends WorkloadProtectableItem { protectableItemType: "IaaSVMProtectableItem" | "Microsoft.ClassicCompute/virtualMachines" | "Microsoft.Compute/virtualMachines"; + resourceGroup?: string; virtualMachineId?: string; virtualMachineVersion?: string; - resourceGroup?: string; -}; +} // @public (undocumented) export type IaaSVMProtectableItemUnion = IaaSVMProtectableItem | AzureIaaSClassicComputeVMProtectableItem | AzureIaaSComputeVMProtectableItem; // @public -export type IaasVMRecoveryPoint = RecoveryPoint & { - objectType: "IaasVMRecoveryPoint"; - recoveryPointType?: string; - recoveryPointTime?: Date; - recoveryPointAdditionalInfo?: string; - sourceVMStorageType?: string; - isSourceVMEncrypted?: boolean; - keyAndSecret?: KeyAndSecretDetails; +export interface IaasVMRecoveryPoint extends RecoveryPoint { isInstantIlrSessionActive?: boolean; - recoveryPointTierDetails?: RecoveryPointTierInformationV2[]; isManagedVirtualMachine?: boolean; - virtualMachineSize?: string; + isSourceVMEncrypted?: boolean; + keyAndSecret?: KeyAndSecretDetails; + objectType: "IaasVMRecoveryPoint"; originalStorageAccountOption?: boolean; osType?: string; + recoveryPointAdditionalInfo?: string; recoveryPointDiskConfiguration?: RecoveryPointDiskConfiguration; - zones?: string[]; recoveryPointMoveReadinessInfo?: { [propertyName: string]: RecoveryPointMoveReadinessInfo; }; -}; + recoveryPointTierDetails?: RecoveryPointTierInformationV2[]; + recoveryPointTime?: Date; + recoveryPointType?: string; + sourceVMStorageType?: string; + virtualMachineSize?: string; + zones?: string[]; +} // @public -export type IaasVMRestoreRequest = RestoreRequest & { +export interface IaasVMRestoreRequest extends RestoreRequest { + affinityGroup?: string; + createNewCloudService?: boolean; + diskEncryptionSetId?: string; + encryptionDetails?: EncryptionDetails; + identityBasedRestoreDetails?: IdentityBasedRestoreDetails; + identityInfo?: IdentityInfo; objectType: "IaasVMRestoreRequest" | "IaasVMRestoreWithRehydrationRequest"; + originalStorageAccountOption?: boolean; recoveryPointId?: string; recoveryType?: RecoveryType; + region?: string; + restoreDiskLunList?: number[]; + restoreWithManagedDisks?: boolean; sourceResourceId?: string; - targetVirtualMachineId?: string; - targetResourceGroupId?: string; storageAccountId?: string; - virtualNetworkId?: string; subnetId?: string; targetDomainNameId?: string; - region?: string; - affinityGroup?: string; - createNewCloudService?: boolean; - originalStorageAccountOption?: boolean; - encryptionDetails?: EncryptionDetails; - restoreDiskLunList?: number[]; - restoreWithManagedDisks?: boolean; - diskEncryptionSetId?: string; + targetResourceGroupId?: string; + targetVirtualMachineId?: string; + virtualNetworkId?: string; zones?: string[]; - identityInfo?: IdentityInfo; - identityBasedRestoreDetails?: IdentityBasedRestoreDetails; -}; +} // @public (undocumented) export type IaasVMRestoreRequestUnion = IaasVMRestoreRequest | IaasVMRestoreWithRehydrationRequest; // @public -export type IaasVMRestoreWithRehydrationRequest = IaasVMRestoreRequest & { +export interface IaasVMRestoreWithRehydrationRequest extends IaasVMRestoreRequest { objectType: "IaasVMRestoreWithRehydrationRequest"; recoveryPointRehydrationInfo?: RecoveryPointRehydrationInfo; -}; +} // @public export interface IdentityBasedRestoreDetails { @@ -1776,9 +1824,9 @@ export interface ILRRequest { } // @public -export type ILRRequestResource = Resource & { +export interface ILRRequestResource extends Resource { properties?: ILRRequestUnion; -}; +} // @public (undocumented) export type ILRRequestUnion = ILRRequest | AzureFileShareProvisionILRRequest | IaasVmilrRegistrationRequest; @@ -1889,14 +1937,14 @@ export interface JobQueryObject { } // @public -export type JobResource = Resource & { +export interface JobResource extends Resource { properties?: JobUnion; -}; +} // @public -export type JobResourceList = ResourceList & { +export interface JobResourceList extends ResourceList { value?: JobResource[]; -}; +} // @public export interface Jobs { @@ -1933,853 +1981,561 @@ export interface KeyAndSecretDetails { // @public export enum KnownAcquireStorageAccountLock { - // (undocumented) Acquire = "Acquire", - // (undocumented) NotAcquire = "NotAcquire" } // @public export enum KnownAzureFileShareType { - // (undocumented) Invalid = "Invalid", - // (undocumented) Xsmb = "XSMB", - // (undocumented) XSync = "XSync" } // @public export enum KnownBackupEngineType { - // (undocumented) AzureBackupServerEngine = "AzureBackupServerEngine", - // (undocumented) DpmBackupEngine = "DpmBackupEngine", - // (undocumented) Invalid = "Invalid" } // @public export enum KnownBackupItemType { - // (undocumented) AzureFileShare = "AzureFileShare", - // (undocumented) AzureSqlDb = "AzureSqlDb", - // (undocumented) Client = "Client", - // (undocumented) Exchange = "Exchange", - // (undocumented) FileFolder = "FileFolder", - // (undocumented) GenericDataSource = "GenericDataSource", - // (undocumented) Invalid = "Invalid", - // (undocumented) SAPAseDatabase = "SAPAseDatabase", - // (undocumented) SAPHanaDatabase = "SAPHanaDatabase", - // (undocumented) + SAPHanaDBInstance = "SAPHanaDBInstance", Sharepoint = "Sharepoint", - // (undocumented) SQLDataBase = "SQLDataBase", - // (undocumented) Sqldb = "SQLDB", - // (undocumented) SystemState = "SystemState", - // (undocumented) VM = "VM", - // (undocumented) VMwareVM = "VMwareVM" } // @public export enum KnownBackupManagementType { - // (undocumented) AzureBackupServer = "AzureBackupServer", - // (undocumented) AzureIaasVM = "AzureIaasVM", - // (undocumented) AzureSql = "AzureSql", - // (undocumented) AzureStorage = "AzureStorage", - // (undocumented) AzureWorkload = "AzureWorkload", - // (undocumented) DefaultBackup = "DefaultBackup", - // (undocumented) DPM = "DPM", - // (undocumented) Invalid = "Invalid", - // (undocumented) MAB = "MAB" } // @public export enum KnownBackupType { - // (undocumented) CopyOnlyFull = "CopyOnlyFull", - // (undocumented) Differential = "Differential", - // (undocumented) Full = "Full", - // (undocumented) Incremental = "Incremental", - // (undocumented) Invalid = "Invalid", - // (undocumented) - Log = "Log" + Log = "Log", + SnapshotCopyOnlyFull = "SnapshotCopyOnlyFull", + SnapshotFull = "SnapshotFull" } // @public export enum KnownContainerType { - // (undocumented) AzureBackupServerContainer = "AzureBackupServerContainer", - // (undocumented) AzureSqlContainer = "AzureSqlContainer", - // (undocumented) - AzureWorkloadContainer = "AzureWorkloadContainer", - // (undocumented) Cluster = "Cluster", - // (undocumented) DPMContainer = "DPMContainer", - // (undocumented) GenericContainer = "GenericContainer", - // (undocumented) + HanaHSRContainer = "HanaHSRContainer", IaasVMContainer = "IaasVMContainer", - // (undocumented) IaasVMServiceContainer = "IaasVMServiceContainer", - // (undocumented) Invalid = "Invalid", - // (undocumented) MABContainer = "MABContainer", - // (undocumented) - MicrosoftClassicComputeVirtualMachines = "Microsoft.ClassicCompute/virtualMachines", - // (undocumented) - MicrosoftComputeVirtualMachines = "Microsoft.Compute/virtualMachines", - // (undocumented) SqlagWorkLoadContainer = "SQLAGWorkLoadContainer", - // (undocumented) StorageContainer = "StorageContainer", - // (undocumented) Unknown = "Unknown", - // (undocumented) VCenter = "VCenter", - // (undocumented) VMAppContainer = "VMAppContainer", - // (undocumented) Windows = "Windows" } // @public export enum KnownCopyOptions { - // (undocumented) CreateCopy = "CreateCopy", - // (undocumented) FailOnConflict = "FailOnConflict", - // (undocumented) Invalid = "Invalid", - // (undocumented) Overwrite = "Overwrite", - // (undocumented) Skip = "Skip" } // @public export enum KnownCreateMode { - // (undocumented) Default = "Default", - // (undocumented) Invalid = "Invalid", - // (undocumented) Recover = "Recover" } // @public export enum KnownDataMoveLevel { - // (undocumented) Container = "Container", - // (undocumented) Invalid = "Invalid", - // (undocumented) Vault = "Vault" } // @public export enum KnownDataSourceType { - // (undocumented) AzureFileShare = "AzureFileShare", - // (undocumented) AzureSqlDb = "AzureSqlDb", - // (undocumented) Client = "Client", - // (undocumented) Exchange = "Exchange", - // (undocumented) FileFolder = "FileFolder", - // (undocumented) GenericDataSource = "GenericDataSource", - // (undocumented) Invalid = "Invalid", - // (undocumented) SAPAseDatabase = "SAPAseDatabase", - // (undocumented) SAPHanaDatabase = "SAPHanaDatabase", - // (undocumented) + SAPHanaDBInstance = "SAPHanaDBInstance", Sharepoint = "Sharepoint", - // (undocumented) SQLDataBase = "SQLDataBase", - // (undocumented) Sqldb = "SQLDB", - // (undocumented) SystemState = "SystemState", - // (undocumented) VM = "VM", - // (undocumented) VMwareVM = "VMwareVM" } // @public export enum KnownDedupState { - // (undocumented) Disabled = "Disabled", - // (undocumented) Enabled = "Enabled", - // (undocumented) Invalid = "Invalid" } // @public export enum KnownEncryptionAtRestType { - // (undocumented) CustomerManaged = "CustomerManaged", - // (undocumented) Invalid = "Invalid", - // (undocumented) MicrosoftManaged = "MicrosoftManaged" } // @public export enum KnownEnhancedSecurityState { - // (undocumented) Disabled = "Disabled", - // (undocumented) Enabled = "Enabled", - // (undocumented) Invalid = "Invalid" } // @public export enum KnownFabricName { - // (undocumented) Azure = "Azure", - // (undocumented) Invalid = "Invalid" } // @public export enum KnownHealthState { - // (undocumented) ActionRequired = "ActionRequired", - // (undocumented) ActionSuggested = "ActionSuggested", - // (undocumented) Invalid = "Invalid", - // (undocumented) Passed = "Passed" } // @public export enum KnownHealthStatus { - // (undocumented) ActionRequired = "ActionRequired", - // (undocumented) ActionSuggested = "ActionSuggested", - // (undocumented) Invalid = "Invalid", - // (undocumented) Passed = "Passed" } // @public export enum KnownIaasvmPolicyType { - // (undocumented) Invalid = "Invalid", - // (undocumented) V1 = "V1", - // (undocumented) V2 = "V2" } // @public export enum KnownInfrastructureEncryptionState { - // (undocumented) Disabled = "Disabled", - // (undocumented) Enabled = "Enabled", - // (undocumented) Invalid = "Invalid" } // @public export enum KnownInquiryStatus { - // (undocumented) Failed = "Failed", - // (undocumented) Invalid = "Invalid", - // (undocumented) Success = "Success" } // @public export enum KnownIntentItemType { - // (undocumented) Invalid = "Invalid", - // (undocumented) SQLAvailabilityGroupContainer = "SQLAvailabilityGroupContainer", - // (undocumented) SQLInstance = "SQLInstance" } // @public export enum KnownJobOperationType { - // (undocumented) Backup = "Backup", - // (undocumented) ConfigureBackup = "ConfigureBackup", - // (undocumented) CrossRegionRestore = "CrossRegionRestore", - // (undocumented) DeleteBackupData = "DeleteBackupData", - // (undocumented) DisableBackup = "DisableBackup", - // (undocumented) Invalid = "Invalid", - // (undocumented) Register = "Register", - // (undocumented) Restore = "Restore", - // (undocumented) Undelete = "Undelete", - // (undocumented) UnRegister = "UnRegister", - // (undocumented) UpdateCustomerManagedKey = "UpdateCustomerManagedKey" } // @public export enum KnownJobStatus { - // (undocumented) Cancelled = "Cancelled", - // (undocumented) Cancelling = "Cancelling", - // (undocumented) Completed = "Completed", - // (undocumented) CompletedWithWarnings = "CompletedWithWarnings", - // (undocumented) Failed = "Failed", - // (undocumented) InProgress = "InProgress", - // (undocumented) Invalid = "Invalid" } // @public export enum KnownLastBackupStatus { - // (undocumented) Healthy = "Healthy", - // (undocumented) Invalid = "Invalid", - // (undocumented) IRPending = "IRPending", - // (undocumented) Unhealthy = "Unhealthy" } // @public export enum KnownLastUpdateStatus { - // (undocumented) Failed = "Failed", - // (undocumented) FirstInitialization = "FirstInitialization", - // (undocumented) Initialized = "Initialized", - // (undocumented) Invalid = "Invalid", - // (undocumented) NotEnabled = "NotEnabled", - // (undocumented) PartiallyFailed = "PartiallyFailed", - // (undocumented) PartiallySucceeded = "PartiallySucceeded", - // (undocumented) Succeeded = "Succeeded" } // @public export enum KnownMabServerType { - // (undocumented) AzureBackupServerContainer = "AzureBackupServerContainer", - // (undocumented) AzureSqlContainer = "AzureSqlContainer", - // (undocumented) Cluster = "Cluster", - // (undocumented) DPMContainer = "DPMContainer", - // (undocumented) GenericContainer = "GenericContainer", - // (undocumented) IaasVMContainer = "IaasVMContainer", - // (undocumented) IaasVMServiceContainer = "IaasVMServiceContainer", - // (undocumented) Invalid = "Invalid", - // (undocumented) MABContainer = "MABContainer", - // (undocumented) SqlagWorkLoadContainer = "SQLAGWorkLoadContainer", - // (undocumented) StorageContainer = "StorageContainer", - // (undocumented) Unknown = "Unknown", - // (undocumented) VCenter = "VCenter", - // (undocumented) VMAppContainer = "VMAppContainer", - // (undocumented) Windows = "Windows" } // @public export enum KnownOperationStatusValues { - // (undocumented) Canceled = "Canceled", - // (undocumented) Failed = "Failed", - // (undocumented) InProgress = "InProgress", - // (undocumented) Invalid = "Invalid", - // (undocumented) Succeeded = "Succeeded" } // @public export enum KnownOperationType { - // (undocumented) Invalid = "Invalid", - // (undocumented) Register = "Register", - // (undocumented) Reregister = "Reregister" } // @public export enum KnownOverwriteOptions { - // (undocumented) FailOnConflict = "FailOnConflict", - // (undocumented) Invalid = "Invalid", - // (undocumented) Overwrite = "Overwrite" } // @public export enum KnownPolicyType { - // (undocumented) CopyOnlyFull = "CopyOnlyFull", - // (undocumented) Differential = "Differential", - // (undocumented) Full = "Full", - // (undocumented) Incremental = "Incremental", - // (undocumented) Invalid = "Invalid", - // (undocumented) - Log = "Log" + Log = "Log", + SnapshotCopyOnlyFull = "SnapshotCopyOnlyFull", + SnapshotFull = "SnapshotFull" } // @public export enum KnownPrivateEndpointConnectionStatus { - // (undocumented) Approved = "Approved", - // (undocumented) Disconnected = "Disconnected", - // (undocumented) Pending = "Pending", - // (undocumented) Rejected = "Rejected" } // @public export enum KnownProtectedItemHealthStatus { - // (undocumented) Healthy = "Healthy", - // (undocumented) Invalid = "Invalid", - // (undocumented) IRPending = "IRPending", - // (undocumented) NotReachable = "NotReachable", - // (undocumented) Unhealthy = "Unhealthy" } // @public export enum KnownProtectedItemState { - // (undocumented) Invalid = "Invalid", - // (undocumented) IRPending = "IRPending", - // (undocumented) Protected = "Protected", - // (undocumented) ProtectionError = "ProtectionError", - // (undocumented) ProtectionPaused = "ProtectionPaused", - // (undocumented) ProtectionStopped = "ProtectionStopped" } // @public export enum KnownProtectionIntentItemType { - // (undocumented) AzureResourceItem = "AzureResourceItem", - // (undocumented) AzureWorkloadAutoProtectionIntent = "AzureWorkloadAutoProtectionIntent", - // (undocumented) AzureWorkloadContainerAutoProtectionIntent = "AzureWorkloadContainerAutoProtectionIntent", - // (undocumented) AzureWorkloadSQLAutoProtectionIntent = "AzureWorkloadSQLAutoProtectionIntent", - // (undocumented) Invalid = "Invalid", - // (undocumented) RecoveryServiceVaultItem = "RecoveryServiceVaultItem" } // @public export enum KnownProtectionState { - // (undocumented) Invalid = "Invalid", - // (undocumented) IRPending = "IRPending", - // (undocumented) Protected = "Protected", - // (undocumented) ProtectionError = "ProtectionError", - // (undocumented) ProtectionPaused = "ProtectionPaused", - // (undocumented) ProtectionStopped = "ProtectionStopped" } // @public export enum KnownProtectionStatus { - // (undocumented) Invalid = "Invalid", - // (undocumented) NotProtected = "NotProtected", - // (undocumented) Protected = "Protected", - // (undocumented) Protecting = "Protecting", - // (undocumented) ProtectionFailed = "ProtectionFailed" } // @public export enum KnownProvisioningState { - // (undocumented) Deleting = "Deleting", - // (undocumented) Failed = "Failed", - // (undocumented) Pending = "Pending", - // (undocumented) Succeeded = "Succeeded" } // @public export enum KnownRecoveryMode { - // (undocumented) FileRecovery = "FileRecovery", - // (undocumented) Invalid = "Invalid", - // (undocumented) WorkloadRecovery = "WorkloadRecovery" } // @public export enum KnownRecoveryType { - // (undocumented) AlternateLocation = "AlternateLocation", - // (undocumented) Invalid = "Invalid", - // (undocumented) Offline = "Offline", - // (undocumented) OriginalLocation = "OriginalLocation", - // (undocumented) RestoreDisks = "RestoreDisks" } // @public export enum KnownRehydrationPriority { - // (undocumented) High = "High", - // (undocumented) Standard = "Standard" } // @public export enum KnownResourceHealthStatus { - // (undocumented) Healthy = "Healthy", - // (undocumented) Invalid = "Invalid", - // (undocumented) PersistentDegraded = "PersistentDegraded", - // (undocumented) PersistentUnhealthy = "PersistentUnhealthy", - // (undocumented) TransientDegraded = "TransientDegraded", - // (undocumented) TransientUnhealthy = "TransientUnhealthy" } // @public export enum KnownRestorePointQueryType { - // (undocumented) All = "All", - // (undocumented) Differential = "Differential", - // (undocumented) Full = "Full", - // (undocumented) FullAndDifferential = "FullAndDifferential", - // (undocumented) Incremental = "Incremental", - // (undocumented) Invalid = "Invalid", - // (undocumented) - Log = "Log" + Log = "Log", + SnapshotCopyOnlyFull = "SnapshotCopyOnlyFull", + SnapshotFull = "SnapshotFull" } // @public export enum KnownRestorePointType { - // (undocumented) Differential = "Differential", - // (undocumented) Full = "Full", - // (undocumented) Incremental = "Incremental", - // (undocumented) Invalid = "Invalid", - // (undocumented) - Log = "Log" + Log = "Log", + SnapshotCopyOnlyFull = "SnapshotCopyOnlyFull", + SnapshotFull = "SnapshotFull" } // @public export enum KnownRestoreRequestType { - // (undocumented) FullShareRestore = "FullShareRestore", - // (undocumented) Invalid = "Invalid", - // (undocumented) ItemLevelRestore = "ItemLevelRestore" } // @public export enum KnownRetentionDurationType { - // (undocumented) Days = "Days", - // (undocumented) Invalid = "Invalid", - // (undocumented) Months = "Months", - // (undocumented) Weeks = "Weeks", - // (undocumented) Years = "Years" } // @public export enum KnownRetentionScheduleFormat { - // (undocumented) Daily = "Daily", - // (undocumented) Invalid = "Invalid", - // (undocumented) Weekly = "Weekly" } // @public export enum KnownScheduleRunType { - // (undocumented) Daily = "Daily", - // (undocumented) Hourly = "Hourly", - // (undocumented) Invalid = "Invalid", - // (undocumented) Weekly = "Weekly" } // @public export enum KnownSoftDeleteFeatureState { - // (undocumented) Disabled = "Disabled", - // (undocumented) Enabled = "Enabled", - // (undocumented) Invalid = "Invalid" } // @public export enum KnownSQLDataDirectoryType { - // (undocumented) Data = "Data", - // (undocumented) Invalid = "Invalid", - // (undocumented) Log = "Log" } // @public export enum KnownStorageType { - // (undocumented) GeoRedundant = "GeoRedundant", - // (undocumented) Invalid = "Invalid", - // (undocumented) LocallyRedundant = "LocallyRedundant", - // (undocumented) ReadAccessGeoZoneRedundant = "ReadAccessGeoZoneRedundant", - // (undocumented) ZoneRedundant = "ZoneRedundant" } // @public export enum KnownStorageTypeState { - // (undocumented) Invalid = "Invalid", - // (undocumented) Locked = "Locked", - // (undocumented) Unlocked = "Unlocked" } // @public export enum KnownSupportStatus { - // (undocumented) DefaultOFF = "DefaultOFF", - // (undocumented) DefaultON = "DefaultON", - // (undocumented) Invalid = "Invalid", - // (undocumented) NotSupported = "NotSupported", - // (undocumented) Supported = "Supported" } +// @public +export enum KnownTieringMode { + DoNotTier = "DoNotTier", + Invalid = "Invalid", + TierAfter = "TierAfter", + TierRecommended = "TierRecommended" +} + // @public export enum KnownType { - // (undocumented) BackupProtectedItemCountSummary = "BackupProtectedItemCountSummary", - // (undocumented) BackupProtectionContainerCountSummary = "BackupProtectionContainerCountSummary", - // (undocumented) Invalid = "Invalid" } // @public export enum KnownUsagesUnit { - // (undocumented) Bytes = "Bytes", - // (undocumented) BytesPerSecond = "BytesPerSecond", - // (undocumented) Count = "Count", - // (undocumented) CountPerSecond = "CountPerSecond", - // (undocumented) Percent = "Percent", - // (undocumented) Seconds = "Seconds" } // @public export enum KnownValidationStatus { - // (undocumented) Failed = "Failed", - // (undocumented) Invalid = "Invalid", - // (undocumented) Succeeded = "Succeeded" } // @public export enum KnownWorkloadItemType { - // (undocumented) Invalid = "Invalid", - // (undocumented) SAPAseDatabase = "SAPAseDatabase", - // (undocumented) SAPAseSystem = "SAPAseSystem", - // (undocumented) SAPHanaDatabase = "SAPHanaDatabase", - // (undocumented) + SAPHanaDBInstance = "SAPHanaDBInstance", SAPHanaSystem = "SAPHanaSystem", - // (undocumented) SQLDataBase = "SQLDataBase", - // (undocumented) SQLInstance = "SQLInstance" } // @public export enum KnownWorkloadType { - // (undocumented) AzureFileShare = "AzureFileShare", - // (undocumented) AzureSqlDb = "AzureSqlDb", - // (undocumented) Client = "Client", - // (undocumented) Exchange = "Exchange", - // (undocumented) FileFolder = "FileFolder", - // (undocumented) GenericDataSource = "GenericDataSource", - // (undocumented) Invalid = "Invalid", - // (undocumented) SAPAseDatabase = "SAPAseDatabase", - // (undocumented) SAPHanaDatabase = "SAPHanaDatabase", - // (undocumented) + SAPHanaDBInstance = "SAPHanaDBInstance", Sharepoint = "Sharepoint", - // (undocumented) SQLDataBase = "SQLDataBase", - // (undocumented) Sqldb = "SQLDB", - // (undocumented) SystemState = "SystemState", - // (undocumented) VM = "VM", - // (undocumented) VMwareVM = "VMwareVM" } // @public export enum KnownXcoolState { - // (undocumented) Disabled = "Disabled", - // (undocumented) Enabled = "Enabled", - // (undocumented) Invalid = "Invalid" } @@ -2802,36 +2558,36 @@ export interface ListRecoveryPointsRecommendedForMoveRequest { } // @public -export type LogSchedulePolicy = SchedulePolicy & { - schedulePolicyType: "LogSchedulePolicy"; +export interface LogSchedulePolicy extends SchedulePolicy { scheduleFrequencyInMins?: number; -}; + schedulePolicyType: "LogSchedulePolicy"; +} // @public -export type LongTermRetentionPolicy = RetentionPolicy & { - retentionPolicyType: "LongTermRetentionPolicy"; +export interface LongTermRetentionPolicy extends RetentionPolicy { dailySchedule?: DailyRetentionSchedule; - weeklySchedule?: WeeklyRetentionSchedule; monthlySchedule?: MonthlyRetentionSchedule; + retentionPolicyType: "LongTermRetentionPolicy"; + weeklySchedule?: WeeklyRetentionSchedule; yearlySchedule?: YearlyRetentionSchedule; -}; +} // @public -export type LongTermSchedulePolicy = SchedulePolicy & { +export interface LongTermSchedulePolicy extends SchedulePolicy { schedulePolicyType: "LongTermSchedulePolicy"; -}; +} // @public -export type MabContainer = ProtectionContainer & { - containerType: "Windows"; +export interface MabContainer extends ProtectionContainer { + agentVersion?: string; canReRegister?: boolean; + containerHealthState?: string; containerId?: number; - protectedItemCount?: number; - agentVersion?: string; + containerType: "Windows"; extendedInfo?: MabContainerExtendedInfo; mabContainerHealthDetails?: MABContainerHealthDetails[]; - containerHealthState?: string; -}; + protectedItemCount?: number; +} // @public export interface MabContainerExtendedInfo { @@ -2857,16 +2613,16 @@ export interface MabErrorInfo { } // @public -export type MabFileFolderProtectedItem = ProtectedItem & { - protectedItemType: "MabFileFolderProtectedItem"; - friendlyName?: string; +export interface MabFileFolderProtectedItem extends ProtectedItem { computerName?: string; + deferredDeleteSyncTimeInUTC?: number; + extendedInfo?: MabFileFolderProtectedItemExtendedInfo; + friendlyName?: string; lastBackupStatus?: string; lastBackupTime?: Date; + protectedItemType: "MabFileFolderProtectedItem"; protectionState?: string; - deferredDeleteSyncTimeInUTC?: number; - extendedInfo?: MabFileFolderProtectedItemExtendedInfo; -}; +} // @public export interface MabFileFolderProtectedItemExtendedInfo { @@ -2876,16 +2632,16 @@ export interface MabFileFolderProtectedItemExtendedInfo { } // @public -export type MabJob = Job & { - jobType: "MabJob"; - duration?: string; +export interface MabJob extends Job { actionsInfo?: JobSupportedAction[]; + duration?: string; + errorDetails?: MabErrorInfo[]; + extendedInfo?: MabJobExtendedInfo; + jobType: "MabJob"; mabServerName?: string; mabServerType?: MabServerType; workloadType?: WorkloadType; - errorDetails?: MabErrorInfo[]; - extendedInfo?: MabJobExtendedInfo; -}; +} // @public export interface MabJobExtendedInfo { @@ -2906,11 +2662,11 @@ export interface MabJobTaskDetails { } // @public -export type MabProtectionPolicy = ProtectionPolicy & { +export interface MabProtectionPolicy extends ProtectionPolicy { backupManagementType: "MAB"; - schedulePolicy?: SchedulePolicyUnion; retentionPolicy?: RetentionPolicyUnion; -}; + schedulePolicy?: SchedulePolicyUnion; +} // @public export type MabServerType = string; @@ -2966,10 +2722,10 @@ export interface Operation { } // @public -export type OperationResultInfo = OperationResultInfoBase & { - objectType: "OperationResultInfo"; +export interface OperationResultInfo extends OperationResultInfoBase { jobList?: string[]; -}; + objectType: "OperationResultInfo"; +} // @public export interface OperationResultInfoBase { @@ -2977,9 +2733,9 @@ export interface OperationResultInfoBase { } // @public -export type OperationResultInfoBaseResource = OperationWorkerResponse & { +export interface OperationResultInfoBaseResource extends OperationWorkerResponse { operation?: OperationResultInfoBaseUnion; -}; +} // @public (undocumented) export type OperationResultInfoBaseUnion = OperationResultInfoBase | ExportJobsOperationResultInfo | OperationResultInfo; @@ -3029,31 +2785,31 @@ export interface OperationStatusExtendedInfo { export type OperationStatusExtendedInfoUnion = OperationStatusExtendedInfo | OperationStatusJobExtendedInfo | OperationStatusJobsExtendedInfo | OperationStatusProvisionILRExtendedInfo | OperationStatusValidateOperationExtendedInfo; // @public -export type OperationStatusJobExtendedInfo = OperationStatusExtendedInfo & { - objectType: "OperationStatusJobExtendedInfo"; +export interface OperationStatusJobExtendedInfo extends OperationStatusExtendedInfo { jobId?: string; -}; + objectType: "OperationStatusJobExtendedInfo"; +} // @public -export type OperationStatusJobsExtendedInfo = OperationStatusExtendedInfo & { - objectType: "OperationStatusJobsExtendedInfo"; - jobIds?: string[]; +export interface OperationStatusJobsExtendedInfo extends OperationStatusExtendedInfo { failedJobsError?: { [propertyName: string]: string; }; -}; + jobIds?: string[]; + objectType: "OperationStatusJobsExtendedInfo"; +} // @public -export type OperationStatusProvisionILRExtendedInfo = OperationStatusExtendedInfo & { +export interface OperationStatusProvisionILRExtendedInfo extends OperationStatusExtendedInfo { objectType: "OperationStatusProvisionILRExtendedInfo"; recoveryTarget?: InstantItemRecoveryTarget; -}; +} // @public -export type OperationStatusValidateOperationExtendedInfo = OperationStatusExtendedInfo & { +export interface OperationStatusValidateOperationExtendedInfo extends OperationStatusExtendedInfo { objectType: "OperationStatusValidateOperationExtendedInfo"; validateOperationResponse?: ValidateOperationResponse; -}; +} // @public export type OperationStatusValues = string; @@ -3105,13 +2861,13 @@ export interface PrepareDataMoveRequest { } // @public -export type PrepareDataMoveResponse = VaultStorageConfigOperationResultResponse & { - objectType: "PrepareDataMoveResponse"; +export interface PrepareDataMoveResponse extends VaultStorageConfigOperationResultResponse { correlationId?: string; + objectType: "PrepareDataMoveResponse"; sourceVaultProperties?: { [propertyName: string]: string; }; -}; +} // @public export interface PreValidateEnableBackupRequest { @@ -3175,9 +2931,9 @@ export interface PrivateEndpointConnectionPutOptionalParams extends coreClient.O export type PrivateEndpointConnectionPutResponse = PrivateEndpointConnectionResource; // @public -export type PrivateEndpointConnectionResource = Resource & { +export interface PrivateEndpointConnectionResource extends Resource { properties?: PrivateEndpointConnection; -}; +} // @public export type PrivateEndpointConnectionStatus = string; @@ -3211,14 +2967,14 @@ export interface ProtectableContainer { } // @public -export type ProtectableContainerResource = Resource & { +export interface ProtectableContainerResource extends Resource { properties?: ProtectableContainerUnion; -}; +} // @public -export type ProtectableContainerResourceList = ResourceList & { +export interface ProtectableContainerResourceList extends ResourceList { value?: ProtectableContainerResource[]; -}; +} // @public export interface ProtectableContainers { @@ -3241,12 +2997,15 @@ export interface ProtectableContainersListOptionalParams extends coreClient.Oper // @public export type ProtectableContainersListResponse = ProtectableContainerResourceList; +// @public +export type ProtectableContainerType = "Invalid" | "Unknown" | "IaasVMContainer" | "IaasVMServiceContainer" | "DPMContainer" | "AzureBackupServerContainer" | "MABContainer" | "Cluster" | "AzureSqlContainer" | "Windows" | "VCenter" | "VMAppContainer" | "SQLAGWorkLoadContainer" | "StorageContainer" | "GenericContainer" | "Microsoft.ClassicCompute/virtualMachines" | "Microsoft.Compute/virtualMachines" | "AzureWorkloadContainer"; + // @public (undocumented) export type ProtectableContainerUnion = ProtectableContainer | AzureStorageProtectableContainer | AzureVMAppContainerProtectableContainer; // @public export interface ProtectedItem { - backupManagementType?: BackupManagementType; + readonly backupManagementType?: BackupManagementType; backupSetName?: string; containerName?: string; createMode?: CreateMode; @@ -3259,10 +3018,11 @@ export interface ProtectedItem { lastRecoveryPoint?: Date; policyId?: string; policyName?: string; - protectedItemType: "AzureFileShareProtectedItem" | "AzureIaaSVMProtectedItem" | "Microsoft.ClassicCompute/virtualMachines" | "Microsoft.Compute/virtualMachines" | "Microsoft.Sql/servers/databases" | "AzureVmWorkloadProtectedItem" | "AzureVmWorkloadSAPAseDatabase" | "AzureVmWorkloadSAPHanaDatabase" | "AzureVmWorkloadSQLDatabase" | "DPMProtectedItem" | "GenericProtectedItem" | "MabFileFolderProtectedItem"; + protectedItemType: "AzureFileShareProtectedItem" | "AzureIaaSVMProtectedItem" | "Microsoft.ClassicCompute/virtualMachines" | "Microsoft.Compute/virtualMachines" | "Microsoft.Sql/servers/databases" | "AzureVmWorkloadProtectedItem" | "AzureVmWorkloadSAPAseDatabase" | "AzureVmWorkloadSAPHanaDatabase" | "AzureVmWorkloadSAPHanaDBInstance" | "AzureVmWorkloadSQLDatabase" | "DPMProtectedItem" | "GenericProtectedItem" | "MabFileFolderProtectedItem"; resourceGuardOperationRequests?: string[]; + softDeleteRetentionPeriod?: number; sourceResourceId?: string; - workloadType?: DataSourceType; + readonly workloadType?: DataSourceType; } // @public @@ -3306,14 +3066,14 @@ export interface ProtectedItemQueryObject { } // @public -export type ProtectedItemResource = Resource & { +export interface ProtectedItemResource extends Resource { properties?: ProtectedItemUnion; -}; +} // @public -export type ProtectedItemResourceList = ResourceList & { +export interface ProtectedItemResourceList extends ResourceList { value?: ProtectedItemResource[]; -}; +} // @public export interface ProtectedItems { @@ -3379,14 +3139,14 @@ export interface ProtectionContainerRefreshOperationResultsGetOptionalParams ext } // @public -export type ProtectionContainerResource = Resource & { +export interface ProtectionContainerResource extends Resource { properties?: ProtectionContainerUnion; -}; +} // @public -export type ProtectionContainerResourceList = ResourceList & { +export interface ProtectionContainerResourceList extends ResourceList { value?: ProtectionContainerResource[]; -}; +} // @public export interface ProtectionContainers { @@ -3476,14 +3236,14 @@ export interface ProtectionIntentQueryObject { } // @public -export type ProtectionIntentResource = Resource & { +export interface ProtectionIntentResource extends Resource { properties?: ProtectionIntentUnion; -}; +} // @public -export type ProtectionIntentResourceList = ResourceList & { +export interface ProtectionIntentResourceList extends ResourceList { value?: ProtectionIntentResource[]; -}; +} // @public (undocumented) export type ProtectionIntentUnion = ProtectionIntent | AzureRecoveryServiceVaultProtectionIntentUnion | AzureResourceProtectionIntent | AzureWorkloadContainerAutoProtectionIntent; @@ -3562,14 +3322,14 @@ export interface ProtectionPolicyQueryObject { } // @public -export type ProtectionPolicyResource = Resource & { +export interface ProtectionPolicyResource extends Resource { properties?: ProtectionPolicyUnion; -}; +} // @public -export type ProtectionPolicyResourceList = ResourceList & { +export interface ProtectionPolicyResourceList extends ResourceList { value?: ProtectionPolicyResource[]; -}; +} // @public (undocumented) export type ProtectionPolicyUnion = ProtectionPolicy | AzureVmWorkloadProtectionPolicy | AzureFileShareProtectionPolicy | AzureIaaSVMProtectionPolicy | AzureSqlProtectionPolicy | GenericProtectionPolicy | MabProtectionPolicy; @@ -3614,14 +3374,14 @@ export interface RecoveryPointRehydrationInfo { } // @public -export type RecoveryPointResource = Resource & { +export interface RecoveryPointResource extends Resource { properties?: RecoveryPointUnion; -}; +} // @public -export type RecoveryPointResourceList = ResourceList & { +export interface RecoveryPointResourceList extends ResourceList { value?: RecoveryPointResource[]; -}; +} // @public export interface RecoveryPoints { @@ -3681,7 +3441,8 @@ export interface RecoveryPointTierInformation { } // @public -export type RecoveryPointTierInformationV2 = RecoveryPointTierInformation & {}; +export interface RecoveryPointTierInformationV2 extends RecoveryPointTierInformation { +} // @public export type RecoveryPointTierStatus = "Invalid" | "Valid" | "Disabled" | "Deleted" | "Rehydrated"; @@ -3740,6 +3501,8 @@ export class RecoveryServicesBackupClient extends coreClient.ServiceClient { // (undocumented) bMSPrepareDataMoveOperationResult: BMSPrepareDataMoveOperationResult; // (undocumented) + deletedProtectionContainers: DeletedProtectionContainers; + // (undocumented) exportJobsOperationResults: ExportJobsOperationResults; // (undocumented) featureSupport: FeatureSupport; @@ -3862,7 +3625,7 @@ export type ResourceGuardProxiesGetResponse = ResourceGuardProxyBaseResourceList export interface ResourceGuardProxy { delete(vaultName: string, resourceGroupName: string, resourceGuardProxyName: string, options?: ResourceGuardProxyDeleteOptionalParams): Promise; get(vaultName: string, resourceGroupName: string, resourceGuardProxyName: string, options?: ResourceGuardProxyGetOptionalParams): Promise; - put(vaultName: string, resourceGroupName: string, resourceGuardProxyName: string, options?: ResourceGuardProxyPutOptionalParams): Promise; + put(vaultName: string, resourceGroupName: string, resourceGuardProxyName: string, parameters: ResourceGuardProxyBaseResource, options?: ResourceGuardProxyPutOptionalParams): Promise; unlockDelete(vaultName: string, resourceGroupName: string, resourceGuardProxyName: string, parameters: UnlockDeleteRequest, options?: ResourceGuardProxyUnlockDeleteOptionalParams): Promise; } @@ -3879,14 +3642,14 @@ export interface ResourceGuardProxyBase { } // @public (undocumented) -export type ResourceGuardProxyBaseResource = Resource & { +export interface ResourceGuardProxyBaseResource extends Resource { properties?: ResourceGuardProxyBase; -}; +} // @public -export type ResourceGuardProxyBaseResourceList = ResourceList & { +export interface ResourceGuardProxyBaseResourceList extends ResourceList { value?: ResourceGuardProxyBaseResource[]; -}; +} // @public export interface ResourceGuardProxyDeleteOptionalParams extends coreClient.OperationOptions { @@ -3948,9 +3711,9 @@ export interface RestoreRequest { } // @public -export type RestoreRequestResource = Resource & { +export interface RestoreRequestResource extends Resource { properties?: RestoreRequestUnion; -}; +} // @public export type RestoreRequestType = string; @@ -4027,29 +3790,29 @@ export interface Settings { } // @public -export type SimpleRetentionPolicy = RetentionPolicy & { - retentionPolicyType: "SimpleRetentionPolicy"; +export interface SimpleRetentionPolicy extends RetentionPolicy { retentionDuration?: RetentionDuration; -}; + retentionPolicyType: "SimpleRetentionPolicy"; +} // @public -export type SimpleSchedulePolicy = SchedulePolicy & { +export interface SimpleSchedulePolicy extends SchedulePolicy { + hourlySchedule?: HourlySchedule; schedulePolicyType: "SimpleSchedulePolicy"; - scheduleRunFrequency?: ScheduleRunType; scheduleRunDays?: DayOfWeek[]; + scheduleRunFrequency?: ScheduleRunType; scheduleRunTimes?: Date[]; - hourlySchedule?: HourlySchedule; scheduleWeeklyFrequency?: number; -}; +} // @public -export type SimpleSchedulePolicyV2 = SchedulePolicy & { +export interface SimpleSchedulePolicyV2 extends SchedulePolicy { + dailySchedule?: DailySchedule; + hourlySchedule?: HourlySchedule; schedulePolicyType: "SimpleSchedulePolicyV2"; scheduleRunFrequency?: ScheduleRunType; - hourlySchedule?: HourlySchedule; - dailySchedule?: DailySchedule; weeklySchedule?: WeeklySchedule; -}; +} // @public export type SoftDeleteFeatureState = string; @@ -4083,6 +3846,9 @@ export interface SubProtectionPolicy { policyType?: PolicyType; retentionPolicy?: RetentionPolicyUnion; schedulePolicy?: SchedulePolicyUnion; + tieringPolicy?: { + [propertyName: string]: TieringPolicy; + }; } // @public @@ -4102,6 +3868,16 @@ export interface TargetRestoreInfo { targetDirectoryForFileRestore?: string; } +// @public +export type TieringMode = string; + +// @public +export interface TieringPolicy { + duration?: number; + durationType?: RetentionDurationType; + tieringMode?: TieringMode; +} + // @public export interface TokenInformation { expiryTimeInUtcTicks?: number; @@ -4139,9 +3915,9 @@ export interface UnlockDeleteResponse { export type UsagesUnit = string; // @public -export type ValidateIaasVMRestoreOperationRequest = ValidateRestoreOperationRequest & { +export interface ValidateIaasVMRestoreOperationRequest extends ValidateRestoreOperationRequest { objectType: "ValidateIaasVMRestoreOperationRequest"; -}; +} // @public export interface ValidateOperation { @@ -4198,10 +3974,10 @@ export interface ValidateOperationTriggerOptionalParams extends coreClient.Opera } // @public -export type ValidateRestoreOperationRequest = ValidateOperationRequest & { +export interface ValidateRestoreOperationRequest extends ValidateOperationRequest { objectType: "ValidateRestoreOperationRequest" | "ValidateIaasVMRestoreOperationRequest"; restoreRequest?: RestoreRequestUnion; -}; +} // @public (undocumented) export type ValidateRestoreOperationRequestUnion = ValidateRestoreOperationRequest | ValidateIaasVMRestoreOperationRequest; @@ -4210,13 +3986,13 @@ export type ValidateRestoreOperationRequestUnion = ValidateRestoreOperationReque export type ValidationStatus = string; // @public -export type VaultJob = Job & { - jobType: "VaultJob"; - duration?: string; +export interface VaultJob extends Job { actionsInfo?: JobSupportedAction[]; + duration?: string; errorDetails?: VaultJobErrorInfo[]; extendedInfo?: VaultJobExtendedInfo; -}; + jobType: "VaultJob"; +} // @public export interface VaultJobErrorInfo { @@ -4280,14 +4056,14 @@ export interface WorkloadItem { } // @public -export type WorkloadItemResource = Resource & { +export interface WorkloadItemResource extends Resource { properties?: WorkloadItemUnion; -}; +} // @public -export type WorkloadItemResourceList = ResourceList & { +export interface WorkloadItemResourceList extends ResourceList { value?: WorkloadItemResource[]; -}; +} // @public export type WorkloadItemType = string; @@ -4299,20 +4075,20 @@ export type WorkloadItemUnion = WorkloadItem | AzureVmWorkloadItemUnion; export interface WorkloadProtectableItem { backupManagementType?: string; friendlyName?: string; - protectableItemType: "AzureFileShare" | "IaaSVMProtectableItem" | "Microsoft.ClassicCompute/virtualMachines" | "Microsoft.Compute/virtualMachines" | "AzureVmWorkloadProtectableItem" | "SAPAseSystem" | "SAPHanaDatabase" | "SAPHanaSystem" | "SQLAvailabilityGroupContainer" | "SQLDataBase" | "SQLInstance"; + protectableItemType: "AzureFileShare" | "IaaSVMProtectableItem" | "Microsoft.ClassicCompute/virtualMachines" | "Microsoft.Compute/virtualMachines" | "AzureVmWorkloadProtectableItem" | "SAPAseSystem" | "SAPHanaDatabase" | "SAPHanaSystem" | "SAPHanaDBInstance" | "SAPHanaHSR" | "SQLAvailabilityGroupContainer" | "SQLDataBase" | "SQLInstance"; protectionState?: ProtectionStatus; workloadType?: string; } // @public -export type WorkloadProtectableItemResource = Resource & { +export interface WorkloadProtectableItemResource extends Resource { properties?: WorkloadProtectableItemUnion; -}; +} // @public -export type WorkloadProtectableItemResourceList = ResourceList & { +export interface WorkloadProtectableItemResourceList extends ResourceList { value?: WorkloadProtectableItemResource[]; -}; +} // @public (undocumented) export type WorkloadProtectableItemUnion = WorkloadProtectableItem | AzureFileShareProtectableItem | IaaSVMProtectableItemUnion | AzureVmWorkloadProtectableItemUnion; diff --git a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/models/index.ts b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/models/index.ts index bee48345e1e9..9cd8501be8ce 100644 --- a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/models/index.ts +++ b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/models/index.ts @@ -123,6 +123,7 @@ export type AzureVmWorkloadProtectedItemUnion = | AzureVmWorkloadProtectedItem | AzureVmWorkloadSAPAseDatabaseProtectedItem | AzureVmWorkloadSAPHanaDatabaseProtectedItem + | AzureVmWorkloadSAPHanaDBInstanceProtectedItem | AzureVmWorkloadSQLDatabaseProtectedItem; export type AzureWorkloadRecoveryPointUnion = | AzureWorkloadRecoveryPoint @@ -166,6 +167,8 @@ export type AzureVmWorkloadProtectableItemUnion = | AzureVmWorkloadSAPAseSystemProtectableItem | AzureVmWorkloadSAPHanaDatabaseProtectableItem | AzureVmWorkloadSAPHanaSystemProtectableItem + | AzureVmWorkloadSAPHanaDBInstance + | AzureVmWorkloadSAPHanaHSR | AzureVmWorkloadSQLAvailabilityGroupProtectableItem | AzureVmWorkloadSQLDatabaseProtectableItem | AzureVmWorkloadSQLInstanceProtectableItem; @@ -652,14 +655,21 @@ export interface ProtectedItem { | "AzureVmWorkloadProtectedItem" | "AzureVmWorkloadSAPAseDatabase" | "AzureVmWorkloadSAPHanaDatabase" + | "AzureVmWorkloadSAPHanaDBInstance" | "AzureVmWorkloadSQLDatabase" | "DPMProtectedItem" | "GenericProtectedItem" | "MabFileFolderProtectedItem"; - /** Type of backup management for the backed up item. */ - backupManagementType?: BackupManagementType; - /** Type of workload this item represents. */ - workloadType?: DataSourceType; + /** + * Type of backup management for the backed up item. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly backupManagementType?: BackupManagementType; + /** + * Type of workload this item represents. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly workloadType?: DataSourceType; /** Unique name of container */ containerName?: string; /** ARM ID of the resource to be backed up. */ @@ -688,6 +698,8 @@ export interface ProtectedItem { isArchiveEnabled?: boolean; /** Name of the policy used for protection */ policyName?: string; + /** Soft delete retention period in days */ + softDeleteRetentionPeriod?: number; } /** Base class for backup copies. Workload-specific backup copies are derived from this class. */ @@ -961,6 +973,8 @@ export interface WorkloadProtectableItem { | "SAPAseSystem" | "SAPHanaDatabase" | "SAPHanaSystem" + | "SAPHanaDBInstance" + | "SAPHanaHSR" | "SQLAvailabilityGroupContainer" | "SQLDataBase" | "SQLInstance"; @@ -1122,6 +1136,12 @@ export interface SubProtectionPolicy { schedulePolicy?: SchedulePolicyUnion; /** Retention policy with the details on backup copy retention ranges. */ retentionPolicy?: RetentionPolicyUnion; + /** + * Tiering policy to automatically move RPs to another tier. + * Key is Target Tier, defined in RecoveryPointTierType enum. + * Tiering policy specifies the criteria to move RP to the target tier. + */ + tieringPolicy?: { [propertyName: string]: TieringPolicy }; } /** Base class for backup schedule. */ @@ -1140,10 +1160,40 @@ export interface RetentionPolicy { retentionPolicyType: "LongTermRetentionPolicy" | "SimpleRetentionPolicy"; } +/** + * Tiering Policy for a target tier. + * If the policy is not specified for a given target tier, service retains the existing configured tiering policy for that tier + */ +export interface TieringPolicy { + /** + * Tiering Mode to control automatic tiering of recovery points. Supported values are: + * 1. TierRecommended: Tier all recovery points recommended to be tiered + * 2. TierAfter: Tier all recovery points after a fixed period, as specified in duration + durationType below. + * 3. DoNotTier: Do not tier any recovery points + */ + tieringMode?: TieringMode; + /** + * Number of days/weeks/months/years to retain backups in current tier before tiering. + * Used only if TieringMode is set to TierAfter + */ + duration?: number; + /** + * Retention duration type: days/weeks/months/years + * Used only if TieringMode is set to TierAfter + */ + durationType?: RetentionDurationType; +} + /** Additional information on Azure IaaS VM specific backup item. */ export interface AzureIaaSVMProtectedItemExtendedInfo { - /** The oldest backup copy available for this backup item. */ + /** The oldest backup copy available for this backup item across all tiers. */ oldestRecoveryPoint?: Date; + /** The oldest backup copy available for this backup item in vault tier */ + oldestRecoveryPointInVault?: Date; + /** The oldest backup copy available for this backup item in archive tier */ + oldestRecoveryPointInArchive?: Date; + /** The latest backup copy available for this backup item in archive tier */ + newestRecoveryPointInArchive?: Date; /** Number of backup copies available for this backup item. */ recoveryPointCount?: number; /** Specifies if backup policy associated with the backup item is inconsistent. */ @@ -1273,8 +1323,14 @@ export interface AzureStorageJobTaskDetails { /** Additional information on Azure Workload for SQL specific backup item. */ export interface AzureVmWorkloadProtectedItemExtendedInfo { - /** The oldest backup copy available for this backup item. */ + /** The oldest backup copy available for this backup item across all tiers. */ oldestRecoveryPoint?: Date; + /** The oldest backup copy available for this backup item in vault tier */ + oldestRecoveryPointInVault?: Date; + /** The oldest backup copy available for this backup item in archive tier */ + oldestRecoveryPointInArchive?: Date; + /** The latest backup copy available for this backup item in archive tier */ + newestRecoveryPointInArchive?: Date; /** Number of backup copies available for this backup item. */ recoveryPointCount?: number; /** Indicates consistency of policy object and policy applied to this backup item. */ @@ -2020,274 +2076,285 @@ export interface RecoveryPointRehydrationInfo { } /** The resource storage details. */ -export type BackupResourceConfigResource = Resource & { +export interface BackupResourceConfigResource extends Resource { /** BackupResourceConfigResource properties */ properties?: BackupResourceConfig; -}; +} /** Base class for backup ProtectionIntent. */ -export type ProtectionIntentResource = Resource & { +export interface ProtectionIntentResource extends Resource { /** ProtectionIntentResource properties */ properties?: ProtectionIntentUnion; -}; +} /** Backup resource vault config details. */ -export type BackupResourceVaultConfigResource = Resource & { +export interface BackupResourceVaultConfigResource extends Resource { /** BackupResourceVaultConfigResource properties */ properties?: BackupResourceVaultConfig; -}; +} -export type BackupResourceEncryptionConfigExtendedResource = Resource & { +export interface BackupResourceEncryptionConfigExtendedResource + extends Resource { /** BackupResourceEncryptionConfigExtendedResource properties */ properties?: BackupResourceEncryptionConfigExtended; -}; +} -export type BackupResourceEncryptionConfigResource = Resource & { +export interface BackupResourceEncryptionConfigResource extends Resource { /** BackupResourceEncryptionConfigResource properties */ properties?: BackupResourceEncryptionConfig; -}; +} /** Private Endpoint Connection Response Properties */ -export type PrivateEndpointConnectionResource = Resource & { +export interface PrivateEndpointConnectionResource extends Resource { /** PrivateEndpointConnectionResource properties */ properties?: PrivateEndpointConnection; -}; +} /** Base class for backup items. */ -export type ProtectedItemResource = Resource & { +export interface ProtectedItemResource extends Resource { /** ProtectedItemResource properties */ properties?: ProtectedItemUnion; -}; +} /** Base class for backup copies. Workload-specific backup copies are derived from this class. */ -export type RecoveryPointResource = Resource & { +export interface RecoveryPointResource extends Resource { /** RecoveryPointResource properties */ properties?: RecoveryPointUnion; -}; +} /** Base class for restore request. Workload-specific restore requests are derived from this class. */ -export type RestoreRequestResource = Resource & { +export interface RestoreRequestResource extends Resource { /** RestoreRequestResource properties */ properties?: RestoreRequestUnion; -}; +} /** Base class for backup policy. Workload-specific backup policies are derived from this class. */ -export type ProtectionPolicyResource = Resource & { +export interface ProtectionPolicyResource extends Resource { /** ProtectionPolicyResource properties */ properties?: ProtectionPolicyUnion; -}; +} /** Defines workload agnostic properties for a job. */ -export type JobResource = Resource & { +export interface JobResource extends Resource { /** JobResource properties */ properties?: JobUnion; -}; +} /** The base backup engine class. All workload specific backup engines derive from this class. */ -export type BackupEngineBaseResource = Resource & { +export interface BackupEngineBaseResource extends Resource { /** BackupEngineBaseResource properties */ properties?: BackupEngineBaseUnion; -}; +} /** Protectable Container Class. */ -export type ProtectableContainerResource = Resource & { +export interface ProtectableContainerResource extends Resource { /** ProtectableContainerResource properties */ properties?: ProtectableContainerUnion; -}; +} /** Base class for container with backup items. Containers with specific workloads are derived from this class. */ -export type ProtectionContainerResource = Resource & { +export interface ProtectionContainerResource extends Resource { /** ProtectionContainerResource properties */ properties?: ProtectionContainerUnion; -}; +} /** Base class for backup item. Workload-specific backup items are derived from this class. */ -export type WorkloadItemResource = Resource & { +export interface WorkloadItemResource extends Resource { /** WorkloadItemResource properties */ properties?: WorkloadItemUnion; -}; +} /** Base class for backup request. Workload-specific backup requests are derived from this class. */ -export type BackupRequestResource = Resource & { +export interface BackupRequestResource extends Resource { /** BackupRequestResource properties */ properties?: BackupRequestUnion; -}; +} /** Parameters to Provision ILR API. */ -export type ILRRequestResource = Resource & { +export interface ILRRequestResource extends Resource { /** ILRRequestResource properties */ properties?: ILRRequestUnion; -}; +} /** Base class for backup item. Workload-specific backup items are derived from this class. */ -export type WorkloadProtectableItemResource = Resource & { +export interface WorkloadProtectableItemResource extends Resource { /** WorkloadProtectableItemResource properties */ properties?: WorkloadProtectableItemUnion; -}; +} -export type ResourceGuardProxyBaseResource = Resource & { +export interface ResourceGuardProxyBaseResource extends Resource { /** ResourceGuardProxyBaseResource properties */ properties?: ResourceGuardProxyBase; -}; +} /** Azure backup goal feature specific request. */ -export type AzureBackupGoalFeatureSupportRequest = FeatureSupportRequest & { +export interface AzureBackupGoalFeatureSupportRequest + extends FeatureSupportRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ featureType: "AzureBackupGoals"; -}; +} /** AzureResource(IaaS VM) Specific feature support request */ -export type AzureVMResourceFeatureSupportRequest = FeatureSupportRequest & { +export interface AzureVMResourceFeatureSupportRequest + extends FeatureSupportRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ featureType: "AzureVMResourceBackup"; /** Size of the resource: VM size(A/D series etc) in case of IaasVM */ vmSize?: string; /** SKUs (Premium/Managed etc) in case of IaasVM */ vmSku?: string; -}; +} /** Azure Recovery Services Vault specific protection intent item. */ -export type AzureRecoveryServiceVaultProtectionIntent = ProtectionIntent & { +export interface AzureRecoveryServiceVaultProtectionIntent + extends ProtectionIntent { /** Polymorphic discriminator, which specifies the different types this object can be */ protectionIntentItemType: | "RecoveryServiceVaultItem" | "AzureWorkloadAutoProtectionIntent" | "AzureWorkloadSQLAutoProtectionIntent"; -}; +} /** IaaS VM specific backup protection intent item. */ -export type AzureResourceProtectionIntent = ProtectionIntent & { +export interface AzureResourceProtectionIntent extends ProtectionIntent { /** Polymorphic discriminator, which specifies the different types this object can be */ protectionIntentItemType: "AzureResourceItem"; /** Friendly name of the VM represented by this backup item. */ friendlyName?: string; -}; +} /** Azure workload specific protection intent item. */ -export type AzureWorkloadContainerAutoProtectionIntent = ProtectionIntent & { +export interface AzureWorkloadContainerAutoProtectionIntent + extends ProtectionIntent { /** Polymorphic discriminator, which specifies the different types this object can be */ protectionIntentItemType: "AzureWorkloadContainerAutoProtectionIntent"; -}; +} /** List of ProtectionIntent resources */ -export type ProtectionIntentResourceList = ResourceList & { +export interface ProtectionIntentResourceList extends ResourceList { /** List of resources. */ value?: ProtectionIntentResource[]; -}; +} /** List of RecoveryPoint resources */ -export type RecoveryPointResourceList = ResourceList & { +export interface RecoveryPointResourceList extends ResourceList { /** List of resources. */ value?: RecoveryPointResource[]; -}; +} /** List of ProtectionPolicy resources */ -export type ProtectionPolicyResourceList = ResourceList & { +export interface ProtectionPolicyResourceList extends ResourceList { /** List of resources. */ value?: ProtectionPolicyResource[]; -}; +} /** List of Job resources */ -export type JobResourceList = ResourceList & { +export interface JobResourceList extends ResourceList { /** List of resources. */ value?: JobResource[]; -}; +} /** List of ProtectedItem resources */ -export type ProtectedItemResourceList = ResourceList & { +export interface ProtectedItemResourceList extends ResourceList { /** List of resources. */ value?: ProtectedItemResource[]; -}; +} /** List of BackupEngineBase resources */ -export type BackupEngineBaseResourceList = ResourceList & { +export interface BackupEngineBaseResourceList extends ResourceList { /** List of resources. */ value?: BackupEngineBaseResource[]; -}; +} /** List of ProtectableContainer resources */ -export type ProtectableContainerResourceList = ResourceList & { +export interface ProtectableContainerResourceList extends ResourceList { /** List of resources. */ value?: ProtectableContainerResource[]; -}; +} /** List of WorkloadItem resources */ -export type WorkloadItemResourceList = ResourceList & { +export interface WorkloadItemResourceList extends ResourceList { /** List of resources. */ value?: WorkloadItemResource[]; -}; +} /** List of WorkloadProtectableItem resources */ -export type WorkloadProtectableItemResourceList = ResourceList & { +export interface WorkloadProtectableItemResourceList extends ResourceList { /** List of resources. */ value?: WorkloadProtectableItemResource[]; -}; +} /** List of ProtectionContainer resources */ -export type ProtectionContainerResourceList = ResourceList & { +export interface ProtectionContainerResourceList extends ResourceList { /** List of resources. */ value?: ProtectionContainerResource[]; -}; +} /** List of ResourceGuardProxyBase resources */ -export type ResourceGuardProxyBaseResourceList = ResourceList & { +export interface ResourceGuardProxyBaseResourceList extends ResourceList { /** List of resources. */ value?: ResourceGuardProxyBaseResource[]; -}; +} -export type BackupResourceEncryptionConfigExtended = BackupResourceEncryptionConfig & { +export interface BackupResourceEncryptionConfigExtended + extends BackupResourceEncryptionConfig { /** User Assigned Identity Id */ userAssignedIdentity?: string; /** bool to indicate whether to use system Assigned Identity or not */ useSystemAssignedIdentity?: boolean; -}; +} /** Operation status job extended info. */ -export type OperationStatusJobExtendedInfo = OperationStatusExtendedInfo & { +export interface OperationStatusJobExtendedInfo + extends OperationStatusExtendedInfo { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "OperationStatusJobExtendedInfo"; /** ID of the job created for this protected item. */ jobId?: string; -}; +} /** Operation status extended info for list of jobs. */ -export type OperationStatusJobsExtendedInfo = OperationStatusExtendedInfo & { +export interface OperationStatusJobsExtendedInfo + extends OperationStatusExtendedInfo { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "OperationStatusJobsExtendedInfo"; /** IDs of the jobs created for the protected item. */ jobIds?: string[]; /** Stores all the failed jobs along with the corresponding error codes. */ failedJobsError?: { [propertyName: string]: string }; -}; +} /** Operation status extended info for ILR provision action. */ -export type OperationStatusProvisionILRExtendedInfo = OperationStatusExtendedInfo & { +export interface OperationStatusProvisionILRExtendedInfo + extends OperationStatusExtendedInfo { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "OperationStatusProvisionILRExtendedInfo"; /** Target details for file / folder restore. */ recoveryTarget?: InstantItemRecoveryTarget; -}; +} /** Operation status extended info for ValidateOperation action. */ -export type OperationStatusValidateOperationExtendedInfo = OperationStatusExtendedInfo & { +export interface OperationStatusValidateOperationExtendedInfo + extends OperationStatusExtendedInfo { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "OperationStatusValidateOperationExtendedInfo"; /** Gets the validation operation response */ validateOperationResponse?: ValidateOperationResponse; -}; +} /** Prepare DataMove Response */ -export type PrepareDataMoveResponse = VaultStorageConfigOperationResultResponse & { +export interface PrepareDataMoveResponse + extends VaultStorageConfigOperationResultResponse { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "PrepareDataMoveResponse"; /** Co-relationId for move operation */ correlationId?: string; /** Source Vault Properties */ sourceVaultProperties?: { [propertyName: string]: string }; -}; +} /** Azure File Share workload-specific backup item. */ -export type AzureFileshareProtectedItem = ProtectedItem & { +export interface AzureFileshareProtectedItem extends ProtectedItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectedItemType: "AzureFileShareProtectedItem"; /** Friendly name of the fileshare represented by this backup item. */ @@ -2304,43 +2371,58 @@ export type AzureFileshareProtectedItem = ProtectedItem & { kpisHealths?: { [propertyName: string]: KPIResourceHealthDetails }; /** Additional information with this backup item. */ extendedInfo?: AzureFileshareProtectedItemExtendedInfo; -}; +} /** IaaS VM workload-specific backup item. */ -export type AzureIaaSVMProtectedItem = ProtectedItem & { +export interface AzureIaaSVMProtectedItem extends ProtectedItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectedItemType: | "AzureIaaSVMProtectedItem" | "Microsoft.ClassicCompute/virtualMachines" | "Microsoft.Compute/virtualMachines"; - /** Friendly name of the VM represented by this backup item. */ - friendlyName?: string; - /** Fully qualified ARM ID of the virtual machine represented by this item. */ - virtualMachineId?: string; + /** + * Friendly name of the VM represented by this backup item. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly friendlyName?: string; + /** + * Fully qualified ARM ID of the virtual machine represented by this item. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly virtualMachineId?: string; /** Backup status of this backup item. */ protectionStatus?: string; /** Backup state of this backup item. */ protectionState?: ProtectionState; - /** Health status of protected item. */ - healthStatus?: HealthStatus; + /** + * Health status of protected item. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly healthStatus?: HealthStatus; /** Health details on this backup item. */ healthDetails?: AzureIaaSVMHealthDetails[]; /** Health details of different KPIs */ kpisHealths?: { [propertyName: string]: KPIResourceHealthDetails }; /** Last backup operation status. */ lastBackupStatus?: string; - /** Timestamp of the last backup operation on this backup item. */ - lastBackupTime?: Date; - /** Data ID of the protected item. */ - protectedItemDataId?: string; + /** + * Timestamp of the last backup operation on this backup item. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly lastBackupTime?: Date; + /** + * Data ID of the protected item. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly protectedItemDataId?: string; /** Additional information for this backup item. */ extendedInfo?: AzureIaaSVMProtectedItemExtendedInfo; /** Extended Properties for Azure IaasVM Backup. */ extendedProperties?: ExtendedProperties; -}; +} /** Azure SQL workload-specific backup item. */ -export type AzureSqlProtectedItem = ProtectedItem & { +export interface AzureSqlProtectedItem extends ProtectedItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectedItemType: "Microsoft.Sql/servers/databases"; /** Internal ID of a backup item. Used by Azure SQL Backup engine to contact Recovery Services. */ @@ -2349,26 +2431,33 @@ export type AzureSqlProtectedItem = ProtectedItem & { protectionState?: ProtectedItemState; /** Additional information for this backup item. */ extendedInfo?: AzureSqlProtectedItemExtendedInfo; -}; +} /** Azure VM workload-specific protected item. */ -export type AzureVmWorkloadProtectedItem = ProtectedItem & { +export interface AzureVmWorkloadProtectedItem extends ProtectedItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectedItemType: | "AzureVmWorkloadProtectedItem" | "AzureVmWorkloadSAPAseDatabase" | "AzureVmWorkloadSAPHanaDatabase" + | "AzureVmWorkloadSAPHanaDBInstance" | "AzureVmWorkloadSQLDatabase"; - /** Friendly name of the DB represented by this backup item. */ - friendlyName?: string; + /** + * Friendly name of the DB represented by this backup item. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly friendlyName?: string; /** Host/Cluster Name for instance or AG */ serverName?: string; /** Parent name of the DB such as Instance or Availability Group. */ parentName?: string; /** Parent type of protected item, example: for a DB, standalone server or distributed */ parentType?: string; - /** Backup status of this backup item. */ - protectionStatus?: string; + /** + * Backup status of this backup item. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly protectionStatus?: string; /** Backup state of this backup item. */ protectionState?: ProtectionState; /** Last backup operation status. Possible values: Healthy, Unhealthy. */ @@ -2385,10 +2474,10 @@ export type AzureVmWorkloadProtectedItem = ProtectedItem & { extendedInfo?: AzureVmWorkloadProtectedItemExtendedInfo; /** Health details of different KPIs */ kpisHealths?: { [propertyName: string]: KPIResourceHealthDetails }; -}; +} /** Additional information on Backup engine specific backup item. */ -export type DPMProtectedItem = ProtectedItem & { +export interface DPMProtectedItem extends ProtectedItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectedItemType: "DPMProtectedItem"; /** Friendly name of the managed item */ @@ -2399,10 +2488,10 @@ export type DPMProtectedItem = ProtectedItem & { protectionState?: ProtectedItemState; /** Extended info of the backup item. */ extendedInfo?: DPMProtectedItemExtendedInfo; -}; +} /** Base class for backup items. */ -export type GenericProtectedItem = ProtectedItem & { +export interface GenericProtectedItem extends ProtectedItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectedItemType: "GenericProtectedItem"; /** Friendly name of the container. */ @@ -2417,10 +2506,10 @@ export type GenericProtectedItem = ProtectedItem & { sourceAssociations?: { [propertyName: string]: string }; /** Name of this backup item's fabric. */ fabricName?: string; -}; +} /** MAB workload-specific backup item. */ -export type MabFileFolderProtectedItem = ProtectedItem & { +export interface MabFileFolderProtectedItem extends ProtectedItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectedItemType: "MabFileFolderProtectedItem"; /** Friendly name of this backup item. */ @@ -2437,10 +2526,10 @@ export type MabFileFolderProtectedItem = ProtectedItem & { deferredDeleteSyncTimeInUTC?: number; /** Additional information with this backup item. */ extendedInfo?: MabFileFolderProtectedItemExtendedInfo; -}; +} /** Azure File Share workload specific backup copy. */ -export type AzureFileShareRecoveryPoint = RecoveryPoint & { +export interface AzureFileShareRecoveryPoint extends RecoveryPoint { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "AzureFileShareRecoveryPoint"; /** Type of the backup copy. Specifies whether it is a crash consistent backup or app consistent. */ @@ -2451,10 +2540,10 @@ export type AzureFileShareRecoveryPoint = RecoveryPoint & { fileShareSnapshotUri?: string; /** Contains recovery point size */ recoveryPointSizeInGB?: number; -}; +} /** Workload specific recovery point, specifically encapsulates full/diff recovery point */ -export type AzureWorkloadRecoveryPoint = RecoveryPoint & { +export interface AzureWorkloadRecoveryPoint extends RecoveryPoint { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: | "AzureWorkloadRecoveryPoint" @@ -2473,10 +2562,10 @@ export type AzureWorkloadRecoveryPoint = RecoveryPoint & { recoveryPointMoveReadinessInfo?: { [propertyName: string]: RecoveryPointMoveReadinessInfo; }; -}; +} /** Generic backup copy. */ -export type GenericRecoveryPoint = RecoveryPoint & { +export interface GenericRecoveryPoint extends RecoveryPoint { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "GenericRecoveryPoint"; /** Friendly name of the backup copy. */ @@ -2487,10 +2576,10 @@ export type GenericRecoveryPoint = RecoveryPoint & { recoveryPointTime?: Date; /** Additional information associated with this backup copy. */ recoveryPointAdditionalInfo?: string; -}; +} /** IaaS VM workload specific backup copy. */ -export type IaasVMRecoveryPoint = RecoveryPoint & { +export interface IaasVMRecoveryPoint extends RecoveryPoint { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "IaasVMRecoveryPoint"; /** Type of the backup copy. */ @@ -2525,10 +2614,10 @@ export type IaasVMRecoveryPoint = RecoveryPoint & { recoveryPointMoveReadinessInfo?: { [propertyName: string]: RecoveryPointMoveReadinessInfo; }; -}; +} /** AzureFileShare Restore Request */ -export type AzureFileShareRestoreRequest = RestoreRequest & { +export interface AzureFileShareRestoreRequest extends RestoreRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "AzureFileShareRestoreRequest"; /** Type of this recovery. */ @@ -2543,10 +2632,10 @@ export type AzureFileShareRestoreRequest = RestoreRequest & { restoreFileSpecs?: RestoreFileSpecs[]; /** Target File Share Details */ targetDetails?: TargetAFSRestoreInfo; -}; +} /** AzureWorkload-specific restore. */ -export type AzureWorkloadRestoreRequest = RestoreRequest & { +export interface AzureWorkloadRestoreRequest extends RestoreRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: | "AzureWorkloadRestoreRequest" @@ -2574,10 +2663,10 @@ export type AzureWorkloadRestoreRequest = RestoreRequest & { * For e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm} */ targetVirtualMachineId?: string; -}; +} /** IaaS VM workload-specific restore. */ -export type IaasVMRestoreRequest = RestoreRequest & { +export interface IaasVMRestoreRequest extends RestoreRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "IaasVMRestoreRequest" | "IaasVMRestoreWithRehydrationRequest"; /** ID of the backup copy to be recovered. */ @@ -2639,10 +2728,10 @@ export type IaasVMRestoreRequest = RestoreRequest & { identityInfo?: IdentityInfo; /** IaaS VM workload specific restore details for restores using managed identity. */ identityBasedRestoreDetails?: IdentityBasedRestoreDetails; -}; +} /** Azure VM (Mercury) workload-specific backup policy. */ -export type AzureVmWorkloadProtectionPolicy = ProtectionPolicy & { +export interface AzureVmWorkloadProtectionPolicy extends ProtectionPolicy { /** Polymorphic discriminator, which specifies the different types this object can be */ backupManagementType: "AzureWorkload"; /** Type of workload for the backup management */ @@ -2653,10 +2742,10 @@ export type AzureVmWorkloadProtectionPolicy = ProtectionPolicy & { subProtectionPolicy?: SubProtectionPolicy[]; /** Fix the policy inconsistency */ makePolicyConsistent?: boolean; -}; +} /** AzureStorage backup policy. */ -export type AzureFileShareProtectionPolicy = ProtectionPolicy & { +export interface AzureFileShareProtectionPolicy extends ProtectionPolicy { /** Polymorphic discriminator, which specifies the different types this object can be */ backupManagementType: "AzureStorage"; /** Type of workload for the backup management */ @@ -2667,10 +2756,10 @@ export type AzureFileShareProtectionPolicy = ProtectionPolicy & { retentionPolicy?: RetentionPolicyUnion; /** TimeZone optional input as string. For example: TimeZone = "Pacific Standard Time". */ timeZone?: string; -}; +} /** IaaS VM workload-specific backup policy. */ -export type AzureIaaSVMProtectionPolicy = ProtectionPolicy & { +export interface AzureIaaSVMProtectionPolicy extends ProtectionPolicy { /** Polymorphic discriminator, which specifies the different types this object can be */ backupManagementType: "AzureIaasVM"; instantRPDetails?: InstantRPAdditionalDetails; @@ -2678,23 +2767,29 @@ export type AzureIaaSVMProtectionPolicy = ProtectionPolicy & { schedulePolicy?: SchedulePolicyUnion; /** Retention policy with the details on backup copy retention ranges. */ retentionPolicy?: RetentionPolicyUnion; + /** + * Tiering policy to automatically move RPs to another tier + * Key is Target Tier, defined in RecoveryPointTierType enum. + * Tiering policy specifies the criteria to move RP to the target tier. + */ + tieringPolicy?: { [propertyName: string]: TieringPolicy }; /** Instant RP retention policy range in days */ instantRpRetentionRangeInDays?: number; /** TimeZone optional input as string. For example: TimeZone = "Pacific Standard Time". */ timeZone?: string; policyType?: IaasvmPolicyType; -}; +} /** Azure SQL workload-specific backup policy. */ -export type AzureSqlProtectionPolicy = ProtectionPolicy & { +export interface AzureSqlProtectionPolicy extends ProtectionPolicy { /** Polymorphic discriminator, which specifies the different types this object can be */ backupManagementType: "AzureSql"; /** Retention policy details. */ retentionPolicy?: RetentionPolicyUnion; -}; +} /** Azure VM (Mercury) workload-specific backup policy. */ -export type GenericProtectionPolicy = ProtectionPolicy & { +export interface GenericProtectionPolicy extends ProtectionPolicy { /** Polymorphic discriminator, which specifies the different types this object can be */ backupManagementType: "GenericProtectionPolicy"; /** List of sub-protection policies which includes schedule and retention */ @@ -2703,20 +2798,20 @@ export type GenericProtectionPolicy = ProtectionPolicy & { timeZone?: string; /** Name of this policy's fabric. */ fabricName?: string; -}; +} /** Mab container-specific backup policy. */ -export type MabProtectionPolicy = ProtectionPolicy & { +export interface MabProtectionPolicy extends ProtectionPolicy { /** Polymorphic discriminator, which specifies the different types this object can be */ backupManagementType: "MAB"; /** Backup schedule of backup policy. */ schedulePolicy?: SchedulePolicyUnion; /** Retention policy details. */ retentionPolicy?: RetentionPolicyUnion; -}; +} /** Azure IaaS VM workload-specific job object. */ -export type AzureIaaSVMJob = Job & { +export interface AzureIaaSVMJob extends Job { /** Polymorphic discriminator, which specifies the different types this object can be */ jobType: "AzureIaaSVMJob"; /** Time elapsed during the execution of this job. */ @@ -2733,10 +2828,10 @@ export type AzureIaaSVMJob = Job & { containerName?: string; /** Indicated that whether the job is adhoc(true) or scheduled(false) */ isUserTriggered?: boolean; -}; +} /** Azure IaaS VM workload-specific job object. */ -export type AzureIaaSVMJobV2 = Job & { +export interface AzureIaaSVMJobV2 extends Job { /** Polymorphic discriminator, which specifies the different types this object can be */ jobType: "AzureIaaSVMJobV2"; /** Gets or sets the state/actions applicable on this job like cancel/retry. */ @@ -2751,10 +2846,10 @@ export type AzureIaaSVMJobV2 = Job & { virtualMachineVersion?: string; /** Additional information for this job. */ extendedInfo?: AzureIaaSVMJobExtendedInfo; -}; +} /** Azure storage specific job. */ -export type AzureStorageJob = Job & { +export interface AzureStorageJob extends Job { /** Polymorphic discriminator, which specifies the different types this object can be */ jobType: "AzureStorageJob"; /** Time elapsed during the execution of this job. */ @@ -2771,10 +2866,10 @@ export type AzureStorageJob = Job & { extendedInfo?: AzureStorageJobExtendedInfo; /** Indicated that whether the job is adhoc(true) or scheduled(false) */ isUserTriggered?: boolean; -}; +} /** Azure storage specific job. */ -export type AzureWorkloadJob = Job & { +export interface AzureWorkloadJob extends Job { /** Polymorphic discriminator, which specifies the different types this object can be */ jobType: "AzureWorkloadJob"; /** Workload type of the job */ @@ -2787,10 +2882,10 @@ export type AzureWorkloadJob = Job & { errorDetails?: AzureWorkloadErrorInfo[]; /** Additional information about the job. */ extendedInfo?: AzureWorkloadJobExtendedInfo; -}; +} /** DPM workload-specific job object. */ -export type DpmJob = Job & { +export interface DpmJob extends Job { /** Polymorphic discriminator, which specifies the different types this object can be */ jobType: "DpmJob"; /** Time elapsed for job. */ @@ -2809,10 +2904,10 @@ export type DpmJob = Job & { errorDetails?: DpmErrorInfo[]; /** Additional information for this job. */ extendedInfo?: DpmJobExtendedInfo; -}; +} /** MAB workload-specific job. */ -export type MabJob = Job & { +export interface MabJob extends Job { /** Polymorphic discriminator, which specifies the different types this object can be */ jobType: "MabJob"; /** Time taken by job to run. */ @@ -2829,10 +2924,10 @@ export type MabJob = Job & { errorDetails?: MabErrorInfo[]; /** Additional information on the job. */ extendedInfo?: MabJobExtendedInfo; -}; +} /** Vault level Job */ -export type VaultJob = Job & { +export interface VaultJob extends Job { /** Polymorphic discriminator, which specifies the different types this object can be */ jobType: "VaultJob"; /** Time elapsed during the execution of this job. */ @@ -2843,10 +2938,10 @@ export type VaultJob = Job & { errorDetails?: VaultJobErrorInfo[]; /** Additional information about the job. */ extendedInfo?: VaultJobExtendedInfo; -}; +} /** This class is used to send blob details after exporting jobs. */ -export type ExportJobsOperationResultInfo = OperationResultInfoBase & { +export interface ExportJobsOperationResultInfo extends OperationResultInfoBase { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "ExportJobsOperationResultInfo"; /** URL of the blob into which the serialized string of list of jobs is exported. */ @@ -2857,58 +2952,61 @@ export type ExportJobsOperationResultInfo = OperationResultInfoBase & { excelFileBlobUrl?: string; /** SAS key to access the blob. It expires in 15 mins. */ excelFileBlobSasKey?: string; -}; +} /** Operation result info. */ -export type OperationResultInfo = OperationResultInfoBase & { +export interface OperationResultInfo extends OperationResultInfoBase { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "OperationResultInfo"; /** List of jobs created by this operation. */ jobList?: string[]; -}; +} /** Base class for operation result info. */ -export type OperationResultInfoBaseResource = OperationWorkerResponse & { +export interface OperationResultInfoBaseResource + extends OperationWorkerResponse { /** OperationResultInfoBaseResource operation */ operation?: OperationResultInfoBaseUnion; -}; +} /** AzureRestoreValidation request. */ -export type ValidateRestoreOperationRequest = ValidateOperationRequest & { +export interface ValidateRestoreOperationRequest + extends ValidateOperationRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: | "ValidateRestoreOperationRequest" | "ValidateIaasVMRestoreOperationRequest"; /** Sets restore request to be validated */ restoreRequest?: RestoreRequestUnion; -}; +} /** Backup engine type when Azure Backup Server is used to manage the backups. */ -export type AzureBackupServerEngine = BackupEngineBase & { +export interface AzureBackupServerEngine extends BackupEngineBase { /** Polymorphic discriminator, which specifies the different types this object can be */ backupEngineType: "AzureBackupServerEngine"; -}; +} /** Data Protection Manager (DPM) specific backup engine. */ -export type DpmBackupEngine = BackupEngineBase & { +export interface DpmBackupEngine extends BackupEngineBase { /** Polymorphic discriminator, which specifies the different types this object can be */ backupEngineType: "DpmBackupEngine"; -}; +} /** Azure Storage-specific protectable containers */ -export type AzureStorageProtectableContainer = ProtectableContainer & { +export interface AzureStorageProtectableContainer extends ProtectableContainer { /** Polymorphic discriminator, which specifies the different types this object can be */ protectableContainerType: "StorageContainer"; -}; +} /** Azure workload-specific container */ -export type AzureVMAppContainerProtectableContainer = ProtectableContainer & { +export interface AzureVMAppContainerProtectableContainer + extends ProtectableContainer { /** Polymorphic discriminator, which specifies the different types this object can be */ protectableContainerType: "VMAppContainer"; -}; +} /** DPM workload-specific protection container. */ -export type DpmContainer = ProtectionContainer & { +export interface DpmContainer extends ProtectionContainer { /** Polymorphic discriminator, which specifies the different types this object can be */ containerType: "DPMContainer" | "AzureBackupServerContainer"; /** Specifies whether the container is re-registrable. */ @@ -2927,10 +3025,10 @@ export type DpmContainer = ProtectionContainer & { protectionStatus?: string; /** Extended Info of the container. */ extendedInfo?: DPMContainerExtendedInfo; -}; +} /** IaaS VM workload-specific container. */ -export type IaaSVMContainer = ProtectionContainer & { +export interface IaaSVMContainer extends ProtectionContainer { /** Polymorphic discriminator, which specifies the different types this object can be */ containerType: | "IaasVMContainer" @@ -2942,10 +3040,10 @@ export type IaaSVMContainer = ProtectionContainer & { virtualMachineVersion?: string; /** Resource group name of Recovery Services Vault. */ resourceGroup?: string; -}; +} /** Container for the workloads running inside Azure Compute or Classic Compute. */ -export type AzureWorkloadContainer = ProtectionContainer & { +export interface AzureWorkloadContainer extends ProtectionContainer { /** Polymorphic discriminator, which specifies the different types this object can be */ containerType: | "AzureWorkloadContainer" @@ -2961,16 +3059,16 @@ export type AzureWorkloadContainer = ProtectionContainer & { workloadType?: WorkloadType; /** Re-Do Operation */ operationType?: OperationType; -}; +} /** Azure Sql workload-specific container. */ -export type AzureSqlContainer = ProtectionContainer & { +export interface AzureSqlContainer extends ProtectionContainer { /** Polymorphic discriminator, which specifies the different types this object can be */ containerType: "AzureSqlContainer"; -}; +} /** Azure Storage Account workload-specific container. */ -export type AzureStorageContainer = ProtectionContainer & { +export interface AzureStorageContainer extends ProtectionContainer { /** Polymorphic discriminator, which specifies the different types this object can be */ containerType: "StorageContainer"; /** Fully qualified ARM url. */ @@ -2983,20 +3081,20 @@ export type AzureStorageContainer = ProtectionContainer & { protectedItemCount?: number; /** Whether storage account lock is to be acquired for this container or not. */ acquireStorageAccountLock?: AcquireStorageAccountLock; -}; +} /** Base class for generic container of backup items */ -export type GenericContainer = ProtectionContainer & { +export interface GenericContainer extends ProtectionContainer { /** Polymorphic discriminator, which specifies the different types this object can be */ containerType: "GenericContainer"; /** Name of the container's fabric */ fabricName?: string; /** Extended information (not returned in List container API calls) */ extendedInformation?: GenericContainerExtendedInfo; -}; +} /** Container with items backed up using MAB backup engine. */ -export type MabContainer = ProtectionContainer & { +export interface MabContainer extends ProtectionContainer { /** Polymorphic discriminator, which specifies the different types this object can be */ containerType: "Windows"; /** Can the container be registered one more time. */ @@ -3013,10 +3111,10 @@ export type MabContainer = ProtectionContainer & { mabContainerHealthDetails?: MABContainerHealthDetails[]; /** Health state of mab container. */ containerHealthState?: string; -}; +} /** Azure VM workload-specific workload item. */ -export type AzureVmWorkloadItem = WorkloadItem & { +export interface AzureVmWorkloadItem extends WorkloadItem { /** Polymorphic discriminator, which specifies the different types this object can be */ workloadItemType: | "AzureVmWorkloadItem" @@ -3036,18 +3134,18 @@ export type AzureVmWorkloadItem = WorkloadItem & { subinquireditemcount?: number; /** For instance or AG, indicates number of DB's to be protected */ subWorkloadItemCount?: number; -}; +} /** AzureFileShare workload-specific backup request. */ -export type AzureFileShareBackupRequest = BackupRequest & { +export interface AzureFileShareBackupRequest extends BackupRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "AzureFileShareBackupRequest"; /** Backup copy will expire after the time specified (UTC). */ recoveryPointExpiryTimeInUTC?: Date; -}; +} /** AzureWorkload workload-specific backup request. */ -export type AzureWorkloadBackupRequest = BackupRequest & { +export interface AzureWorkloadBackupRequest extends BackupRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "AzureWorkloadBackupRequest"; /** Type of backup, viz. Full, Differential, Log or CopyOnlyFull */ @@ -3056,28 +3154,28 @@ export type AzureWorkloadBackupRequest = BackupRequest & { enableCompression?: boolean; /** Backup copy will expire after the time specified (UTC). */ recoveryPointExpiryTimeInUTC?: Date; -}; +} /** IaaS VM workload-specific backup request. */ -export type IaasVMBackupRequest = BackupRequest & { +export interface IaasVMBackupRequest extends BackupRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "IaasVMBackupRequest"; /** Backup copy will expire after the time specified (UTC). */ recoveryPointExpiryTimeInUTC?: Date; -}; +} /** Update snapshot Uri with the correct friendly Name of the source Azure file share. */ -export type AzureFileShareProvisionILRRequest = ILRRequest & { +export interface AzureFileShareProvisionILRRequest extends ILRRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "AzureFileShareProvisionILRRequest"; /** Recovery point ID. */ recoveryPointId?: string; /** Source Storage account ARM Id */ sourceResourceId?: string; -}; +} /** Restore files/folders from a backup copy of IaaS VM. */ -export type IaasVmilrRegistrationRequest = ILRRequest & { +export interface IaasVmilrRegistrationRequest extends ILRRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "IaasVMILRRegistrationRequest"; /** ID of the IaaS VM backup copy from where the files/folders have to be restored. */ @@ -3088,10 +3186,10 @@ export type IaasVmilrRegistrationRequest = ILRRequest & { initiatorName?: string; /** Whether to renew existing registration with the iSCSI server. */ renewExistingRegistration?: boolean; -}; +} /** Protectable item for Azure Fileshare workloads. */ -export type AzureFileShareProtectableItem = WorkloadProtectableItem & { +export interface AzureFileShareProtectableItem extends WorkloadProtectableItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectableItemType: "AzureFileShare"; /** Full Fabric ID of container to which this protectable item belongs. For example, ARM ID. */ @@ -3100,10 +3198,10 @@ export type AzureFileShareProtectableItem = WorkloadProtectableItem & { parentContainerFriendlyName?: string; /** File Share type XSync or XSMB. */ azureFileShareType?: AzureFileShareType; -}; +} /** IaaS VM workload-specific backup item. */ -export type IaaSVMProtectableItem = WorkloadProtectableItem & { +export interface IaaSVMProtectableItem extends WorkloadProtectableItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectableItemType: | "IaaSVMProtectableItem" @@ -3115,16 +3213,19 @@ export type IaaSVMProtectableItem = WorkloadProtectableItem & { virtualMachineVersion?: string; /** Resource group name of Recovery Services Vault. */ resourceGroup?: string; -}; +} /** Azure VM workload-specific protectable item. */ -export type AzureVmWorkloadProtectableItem = WorkloadProtectableItem & { +export interface AzureVmWorkloadProtectableItem + extends WorkloadProtectableItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectableItemType: | "AzureVmWorkloadProtectableItem" | "SAPAseSystem" | "SAPHanaDatabase" | "SAPHanaSystem" + | "SAPHanaDBInstance" + | "SAPHanaHSR" | "SQLAvailabilityGroupContainer" | "SQLDataBase" | "SQLInstance"; @@ -3147,27 +3248,27 @@ export type AzureVmWorkloadProtectableItem = WorkloadProtectableItem & { subprotectableitemcount?: number; /** Pre-backup validation for protectable objects */ prebackupvalidation?: PreBackupValidation; -}; +} /** Azure IaaS VM workload-specific Health Details. */ -export type AzureIaaSVMHealthDetails = ResourceHealthDetails & {}; +export interface AzureIaaSVMHealthDetails extends ResourceHealthDetails {} /** Log policy schedule. */ -export type LogSchedulePolicy = SchedulePolicy & { +export interface LogSchedulePolicy extends SchedulePolicy { /** Polymorphic discriminator, which specifies the different types this object can be */ schedulePolicyType: "LogSchedulePolicy"; /** Frequency of the log schedule operation of this policy in minutes. */ scheduleFrequencyInMins?: number; -}; +} /** Long term policy schedule. */ -export type LongTermSchedulePolicy = SchedulePolicy & { +export interface LongTermSchedulePolicy extends SchedulePolicy { /** Polymorphic discriminator, which specifies the different types this object can be */ schedulePolicyType: "LongTermSchedulePolicy"; -}; +} /** Simple policy schedule. */ -export type SimpleSchedulePolicy = SchedulePolicy & { +export interface SimpleSchedulePolicy extends SchedulePolicy { /** Polymorphic discriminator, which specifies the different types this object can be */ schedulePolicyType: "SimpleSchedulePolicy"; /** Frequency of the schedule operation of this policy. */ @@ -3180,10 +3281,10 @@ export type SimpleSchedulePolicy = SchedulePolicy & { hourlySchedule?: HourlySchedule; /** At every number weeks this schedule has to be run. */ scheduleWeeklyFrequency?: number; -}; +} /** The V2 policy schedule for IaaS that supports hourly backups. */ -export type SimpleSchedulePolicyV2 = SchedulePolicy & { +export interface SimpleSchedulePolicyV2 extends SchedulePolicy { /** Polymorphic discriminator, which specifies the different types this object can be */ schedulePolicyType: "SimpleSchedulePolicyV2"; /** Frequency of the schedule operation of this policy. */ @@ -3194,10 +3295,10 @@ export type SimpleSchedulePolicyV2 = SchedulePolicy & { dailySchedule?: DailySchedule; /** Weekly schedule of this policy */ weeklySchedule?: WeeklySchedule; -}; +} /** Long term retention policy. */ -export type LongTermRetentionPolicy = RetentionPolicy & { +export interface LongTermRetentionPolicy extends RetentionPolicy { /** Polymorphic discriminator, which specifies the different types this object can be */ retentionPolicyType: "LongTermRetentionPolicy"; /** Daily retention schedule of the protection policy. */ @@ -3208,75 +3309,92 @@ export type LongTermRetentionPolicy = RetentionPolicy & { monthlySchedule?: MonthlyRetentionSchedule; /** Yearly retention schedule of the protection policy. */ yearlySchedule?: YearlyRetentionSchedule; -}; +} /** Simple policy retention. */ -export type SimpleRetentionPolicy = RetentionPolicy & { +export interface SimpleRetentionPolicy extends RetentionPolicy { /** Polymorphic discriminator, which specifies the different types this object can be */ retentionPolicyType: "SimpleRetentionPolicy"; /** Retention duration of the protection policy. */ retentionDuration?: RetentionDuration; -}; +} /** RecoveryPoint Tier Information V2 */ -export type RecoveryPointTierInformationV2 = RecoveryPointTierInformation & {}; +export interface RecoveryPointTierInformationV2 + extends RecoveryPointTierInformation {} /** Azure Recovery Services Vault specific protection intent item. */ -export type AzureWorkloadAutoProtectionIntent = AzureRecoveryServiceVaultProtectionIntent & { +export interface AzureWorkloadAutoProtectionIntent + extends AzureRecoveryServiceVaultProtectionIntent { /** Polymorphic discriminator, which specifies the different types this object can be */ protectionIntentItemType: | "AzureWorkloadAutoProtectionIntent" | "AzureWorkloadSQLAutoProtectionIntent"; -}; +} /** IaaS VM workload-specific backup item representing the Classic Compute VM. */ -export type AzureIaaSClassicComputeVMProtectedItem = AzureIaaSVMProtectedItem & { +export interface AzureIaaSClassicComputeVMProtectedItem + extends AzureIaaSVMProtectedItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectedItemType: "Microsoft.ClassicCompute/virtualMachines"; -}; +} /** IaaS VM workload-specific backup item representing the Azure Resource Manager VM. */ -export type AzureIaaSComputeVMProtectedItem = AzureIaaSVMProtectedItem & { +export interface AzureIaaSComputeVMProtectedItem + extends AzureIaaSVMProtectedItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectedItemType: "Microsoft.Compute/virtualMachines"; -}; +} /** Azure VM workload-specific protected item representing SAP ASE Database. */ -export type AzureVmWorkloadSAPAseDatabaseProtectedItem = AzureVmWorkloadProtectedItem & { +export interface AzureVmWorkloadSAPAseDatabaseProtectedItem + extends AzureVmWorkloadProtectedItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectedItemType: "AzureVmWorkloadSAPAseDatabase"; -}; +} /** Azure VM workload-specific protected item representing SAP HANA Database. */ -export type AzureVmWorkloadSAPHanaDatabaseProtectedItem = AzureVmWorkloadProtectedItem & { +export interface AzureVmWorkloadSAPHanaDatabaseProtectedItem + extends AzureVmWorkloadProtectedItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectedItemType: "AzureVmWorkloadSAPHanaDatabase"; -}; +} + +/** Azure VM workload-specific protected item representing SAP HANA DBInstance. */ +export interface AzureVmWorkloadSAPHanaDBInstanceProtectedItem + extends AzureVmWorkloadProtectedItem { + /** Polymorphic discriminator, which specifies the different types this object can be */ + protectedItemType: "AzureVmWorkloadSAPHanaDBInstance"; +} /** Azure VM workload-specific protected item representing SQL Database. */ -export type AzureVmWorkloadSQLDatabaseProtectedItem = AzureVmWorkloadProtectedItem & { +export interface AzureVmWorkloadSQLDatabaseProtectedItem + extends AzureVmWorkloadProtectedItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectedItemType: "AzureVmWorkloadSQLDatabase"; -}; +} /** Recovery point specific to PointInTime */ -export type AzureWorkloadPointInTimeRecoveryPoint = AzureWorkloadRecoveryPoint & { +export interface AzureWorkloadPointInTimeRecoveryPoint + extends AzureWorkloadRecoveryPoint { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: | "AzureWorkloadPointInTimeRecoveryPoint" | "AzureWorkloadSAPHanaPointInTimeRecoveryPoint"; /** List of log ranges */ timeRanges?: PointInTimeRange[]; -}; +} /** SAPHana specific recoverypoint, specifically encapsulates full/diff recoverypoints */ -export type AzureWorkloadSAPHanaRecoveryPoint = AzureWorkloadRecoveryPoint & { +export interface AzureWorkloadSAPHanaRecoveryPoint + extends AzureWorkloadRecoveryPoint { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "AzureWorkloadSAPHanaRecoveryPoint"; -}; +} /** SQL specific recoverypoint, specifically encapsulates full/diff recoverypoint along with extended info */ -export type AzureWorkloadSQLRecoveryPoint = AzureWorkloadRecoveryPoint & { +export interface AzureWorkloadSQLRecoveryPoint + extends AzureWorkloadRecoveryPoint { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: | "AzureWorkloadSQLRecoveryPoint" @@ -3287,28 +3405,31 @@ export type AzureWorkloadSQLRecoveryPoint = AzureWorkloadRecoveryPoint & { * Or when ListRecoveryPoints is called for Log RP only with ExtendedInfo query filter */ extendedInfo?: AzureWorkloadSQLRecoveryPointExtendedInfo; -}; +} /** AzureWorkload SAP Hana -specific restore. Specifically for PointInTime/Log restore */ -export type AzureWorkloadPointInTimeRestoreRequest = AzureWorkloadRestoreRequest & { +export interface AzureWorkloadPointInTimeRestoreRequest + extends AzureWorkloadRestoreRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "AzureWorkloadPointInTimeRestoreRequest"; /** PointInTime value */ pointInTime?: Date; -}; +} /** AzureWorkload SAP Hana-specific restore. */ -export type AzureWorkloadSAPHanaRestoreRequest = AzureWorkloadRestoreRequest & { +export interface AzureWorkloadSAPHanaRestoreRequest + extends AzureWorkloadRestoreRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: | "AzureWorkloadSAPHanaRestoreRequest" | "AzureWorkloadSAPHanaPointInTimeRestoreRequest" | "AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest" | "AzureWorkloadSAPHanaRestoreWithRehydrateRequest"; -}; +} /** AzureWorkload SQL -specific restore. Specifically for full/diff restore */ -export type AzureWorkloadSQLRestoreRequest = AzureWorkloadRestoreRequest & { +export interface AzureWorkloadSQLRestoreRequest + extends AzureWorkloadRestoreRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: | "AzureWorkloadSQLRestoreRequest" @@ -3321,218 +3442,264 @@ export type AzureWorkloadSQLRestoreRequest = AzureWorkloadRestoreRequest & { isNonRecoverable?: boolean; /** Data directory details */ alternateDirectoryPaths?: SQLDataDirectoryMapping[]; -}; +} /** IaaS VM workload-specific restore with integrated rehydration of recovery point. */ -export type IaasVMRestoreWithRehydrationRequest = IaasVMRestoreRequest & { +export interface IaasVMRestoreWithRehydrationRequest + extends IaasVMRestoreRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "IaasVMRestoreWithRehydrationRequest"; /** RP Rehydration Info */ recoveryPointRehydrationInfo?: RecoveryPointRehydrationInfo; -}; +} /** AzureRestoreValidation request. */ -export type ValidateIaasVMRestoreOperationRequest = ValidateRestoreOperationRequest & { +export interface ValidateIaasVMRestoreOperationRequest + extends ValidateRestoreOperationRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "ValidateIaasVMRestoreOperationRequest"; -}; +} /** AzureBackupServer (DPMVenus) workload-specific protection container. */ -export type AzureBackupServerContainer = DpmContainer & { +export interface AzureBackupServerContainer extends DpmContainer { /** Polymorphic discriminator, which specifies the different types this object can be */ containerType: "AzureBackupServerContainer"; -}; +} /** IaaS VM workload-specific backup item representing a classic virtual machine. */ -export type AzureIaaSClassicComputeVMContainer = IaaSVMContainer & { +export interface AzureIaaSClassicComputeVMContainer extends IaaSVMContainer { /** Polymorphic discriminator, which specifies the different types this object can be */ containerType: "Microsoft.ClassicCompute/virtualMachines"; -}; +} /** IaaS VM workload-specific backup item representing an Azure Resource Manager virtual machine. */ -export type AzureIaaSComputeVMContainer = IaaSVMContainer & { +export interface AzureIaaSComputeVMContainer extends IaaSVMContainer { /** Polymorphic discriminator, which specifies the different types this object can be */ containerType: "Microsoft.Compute/virtualMachines"; -}; +} /** Container for SQL workloads under SQL Availability Group. */ -export type AzureSqlagWorkloadContainerProtectionContainer = AzureWorkloadContainer & { +export interface AzureSqlagWorkloadContainerProtectionContainer + extends AzureWorkloadContainer { /** Polymorphic discriminator, which specifies the different types this object can be */ containerType: "SQLAGWorkLoadContainer"; -}; +} /** Container for SQL workloads under Azure Virtual Machines. */ -export type AzureVMAppContainerProtectionContainer = AzureWorkloadContainer & { +export interface AzureVMAppContainerProtectionContainer + extends AzureWorkloadContainer { /** Polymorphic discriminator, which specifies the different types this object can be */ containerType: "VMAppContainer"; -}; +} /** Azure VM workload-specific workload item representing SAP ASE Database. */ -export type AzureVmWorkloadSAPAseDatabaseWorkloadItem = AzureVmWorkloadItem & { +export interface AzureVmWorkloadSAPAseDatabaseWorkloadItem + extends AzureVmWorkloadItem { /** Polymorphic discriminator, which specifies the different types this object can be */ workloadItemType: "SAPAseDatabase"; -}; +} /** Azure VM workload-specific workload item representing SAP ASE System. */ -export type AzureVmWorkloadSAPAseSystemWorkloadItem = AzureVmWorkloadItem & { +export interface AzureVmWorkloadSAPAseSystemWorkloadItem + extends AzureVmWorkloadItem { /** Polymorphic discriminator, which specifies the different types this object can be */ workloadItemType: "SAPAseSystem"; -}; +} /** Azure VM workload-specific workload item representing SAP HANA Database. */ -export type AzureVmWorkloadSAPHanaDatabaseWorkloadItem = AzureVmWorkloadItem & { +export interface AzureVmWorkloadSAPHanaDatabaseWorkloadItem + extends AzureVmWorkloadItem { /** Polymorphic discriminator, which specifies the different types this object can be */ workloadItemType: "SAPHanaDatabase"; -}; +} /** Azure VM workload-specific workload item representing SAP HANA System. */ -export type AzureVmWorkloadSAPHanaSystemWorkloadItem = AzureVmWorkloadItem & { +export interface AzureVmWorkloadSAPHanaSystemWorkloadItem + extends AzureVmWorkloadItem { /** Polymorphic discriminator, which specifies the different types this object can be */ workloadItemType: "SAPHanaSystem"; -}; +} /** Azure VM workload-specific workload item representing SQL Database. */ -export type AzureVmWorkloadSQLDatabaseWorkloadItem = AzureVmWorkloadItem & { +export interface AzureVmWorkloadSQLDatabaseWorkloadItem + extends AzureVmWorkloadItem { /** Polymorphic discriminator, which specifies the different types this object can be */ workloadItemType: "SQLDataBase"; -}; +} /** Azure VM workload-specific workload item representing SQL Instance. */ -export type AzureVmWorkloadSQLInstanceWorkloadItem = AzureVmWorkloadItem & { +export interface AzureVmWorkloadSQLInstanceWorkloadItem + extends AzureVmWorkloadItem { /** Polymorphic discriminator, which specifies the different types this object can be */ workloadItemType: "SQLInstance"; /** Data Directory Paths for default directories */ dataDirectoryPaths?: SQLDataDirectory[]; -}; +} /** IaaS VM workload-specific backup item representing the Classic Compute VM. */ -export type AzureIaaSClassicComputeVMProtectableItem = IaaSVMProtectableItem & { +export interface AzureIaaSClassicComputeVMProtectableItem + extends IaaSVMProtectableItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectableItemType: "Microsoft.ClassicCompute/virtualMachines"; -}; +} /** IaaS VM workload-specific backup item representing the Azure Resource Manager VM. */ -export type AzureIaaSComputeVMProtectableItem = IaaSVMProtectableItem & { +export interface AzureIaaSComputeVMProtectableItem + extends IaaSVMProtectableItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectableItemType: "Microsoft.Compute/virtualMachines"; -}; +} /** Azure VM workload-specific protectable item representing SAP ASE System. */ -export type AzureVmWorkloadSAPAseSystemProtectableItem = AzureVmWorkloadProtectableItem & { +export interface AzureVmWorkloadSAPAseSystemProtectableItem + extends AzureVmWorkloadProtectableItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectableItemType: "SAPAseSystem"; -}; +} /** Azure VM workload-specific protectable item representing SAP HANA Database. */ -export type AzureVmWorkloadSAPHanaDatabaseProtectableItem = AzureVmWorkloadProtectableItem & { +export interface AzureVmWorkloadSAPHanaDatabaseProtectableItem + extends AzureVmWorkloadProtectableItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectableItemType: "SAPHanaDatabase"; -}; +} /** Azure VM workload-specific protectable item representing SAP HANA System. */ -export type AzureVmWorkloadSAPHanaSystemProtectableItem = AzureVmWorkloadProtectableItem & { +export interface AzureVmWorkloadSAPHanaSystemProtectableItem + extends AzureVmWorkloadProtectableItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectableItemType: "SAPHanaSystem"; -}; +} + +/** Azure VM workload-specific protectable item representing SAP HANA Dbinstance. */ +export interface AzureVmWorkloadSAPHanaDBInstance + extends AzureVmWorkloadProtectableItem { + /** Polymorphic discriminator, which specifies the different types this object can be */ + protectableItemType: "SAPHanaDBInstance"; +} + +/** Azure VM workload-specific protectable item representing SAP HANA Dbinstance. */ +export interface AzureVmWorkloadSAPHanaHSR + extends AzureVmWorkloadProtectableItem { + /** Polymorphic discriminator, which specifies the different types this object can be */ + protectableItemType: "SAPHanaHSR"; +} /** Azure VM workload-specific protectable item representing SQL Availability Group. */ -export type AzureVmWorkloadSQLAvailabilityGroupProtectableItem = AzureVmWorkloadProtectableItem & { +export interface AzureVmWorkloadSQLAvailabilityGroupProtectableItem + extends AzureVmWorkloadProtectableItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectableItemType: "SQLAvailabilityGroupContainer"; -}; +} /** Azure VM workload-specific protectable item representing SQL Database. */ -export type AzureVmWorkloadSQLDatabaseProtectableItem = AzureVmWorkloadProtectableItem & { +export interface AzureVmWorkloadSQLDatabaseProtectableItem + extends AzureVmWorkloadProtectableItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectableItemType: "SQLDataBase"; -}; +} /** Azure VM workload-specific protectable item representing SQL Instance. */ -export type AzureVmWorkloadSQLInstanceProtectableItem = AzureVmWorkloadProtectableItem & { +export interface AzureVmWorkloadSQLInstanceProtectableItem + extends AzureVmWorkloadProtectableItem { /** Polymorphic discriminator, which specifies the different types this object can be */ protectableItemType: "SQLInstance"; -}; +} /** Azure Workload SQL Auto Protection intent item. */ -export type AzureWorkloadSQLAutoProtectionIntent = AzureWorkloadAutoProtectionIntent & { +export interface AzureWorkloadSQLAutoProtectionIntent + extends AzureWorkloadAutoProtectionIntent { /** Polymorphic discriminator, which specifies the different types this object can be */ protectionIntentItemType: "AzureWorkloadSQLAutoProtectionIntent"; /** Workload item type of the item for which intent is to be set */ workloadItemType?: WorkloadItemType; -}; +} /** Recovery point specific to PointInTime in SAPHana */ -export type AzureWorkloadSAPHanaPointInTimeRecoveryPoint = AzureWorkloadPointInTimeRecoveryPoint & { +export interface AzureWorkloadSAPHanaPointInTimeRecoveryPoint + extends AzureWorkloadPointInTimeRecoveryPoint { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "AzureWorkloadSAPHanaPointInTimeRecoveryPoint"; -}; +} /** Recovery point specific to PointInTime */ -export type AzureWorkloadSQLPointInTimeRecoveryPoint = AzureWorkloadSQLRecoveryPoint & { +export interface AzureWorkloadSQLPointInTimeRecoveryPoint + extends AzureWorkloadSQLRecoveryPoint { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "AzureWorkloadSQLPointInTimeRecoveryPoint"; /** List of log ranges */ timeRanges?: PointInTimeRange[]; -}; +} /** AzureWorkload SAP Hana -specific restore. Specifically for PointInTime/Log restore */ -export type AzureWorkloadSAPHanaPointInTimeRestoreRequest = AzureWorkloadSAPHanaRestoreRequest & { +export interface AzureWorkloadSAPHanaPointInTimeRestoreRequest + extends AzureWorkloadSAPHanaRestoreRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: | "AzureWorkloadSAPHanaPointInTimeRestoreRequest" | "AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest"; /** PointInTime value */ pointInTime?: Date; -}; +} /** AzureWorkload SAP Hana-specific restore with integrated rehydration of recovery point. */ -export type AzureWorkloadSAPHanaRestoreWithRehydrateRequest = AzureWorkloadSAPHanaRestoreRequest & { +export interface AzureWorkloadSAPHanaRestoreWithRehydrateRequest + extends AzureWorkloadSAPHanaRestoreRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "AzureWorkloadSAPHanaRestoreWithRehydrateRequest"; /** RP Rehydration Info */ recoveryPointRehydrationInfo?: RecoveryPointRehydrationInfo; -}; +} /** AzureWorkload SQL -specific restore. Specifically for PointInTime/Log restore */ -export type AzureWorkloadSQLPointInTimeRestoreRequest = AzureWorkloadSQLRestoreRequest & { +export interface AzureWorkloadSQLPointInTimeRestoreRequest + extends AzureWorkloadSQLRestoreRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: | "AzureWorkloadSQLPointInTimeRestoreRequest" | "AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest"; /** PointInTime value */ pointInTime?: Date; -}; +} /** AzureWorkload SQL-specific restore with integrated rehydration of recovery point */ -export type AzureWorkloadSQLRestoreWithRehydrateRequest = AzureWorkloadSQLRestoreRequest & { +export interface AzureWorkloadSQLRestoreWithRehydrateRequest + extends AzureWorkloadSQLRestoreRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "AzureWorkloadSQLRestoreWithRehydrateRequest"; /** RP Rehydration Info */ recoveryPointRehydrationInfo?: RecoveryPointRehydrationInfo; -}; +} /** AzureWorkload SAP Hana-specific restore with integrated rehydration of recovery point. */ -export type AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest = AzureWorkloadSAPHanaPointInTimeRestoreRequest & { +export interface AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest + extends AzureWorkloadSAPHanaPointInTimeRestoreRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest"; /** RP Rehydration Info */ recoveryPointRehydrationInfo?: RecoveryPointRehydrationInfo; -}; +} /** AzureWorkload SQL-specific restore with integrated rehydration of recovery point. */ -export type AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest = AzureWorkloadSQLPointInTimeRestoreRequest & { +export interface AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest + extends AzureWorkloadSQLPointInTimeRestoreRequest { /** Polymorphic discriminator, which specifies the different types this object can be */ objectType: "AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest"; /** RP Rehydration Info */ recoveryPointRehydrationInfo?: RecoveryPointRehydrationInfo; -}; +} /** Known values of {@link StorageType} that the service accepts. */ export enum KnownStorageType { + /** Invalid */ Invalid = "Invalid", + /** GeoRedundant */ GeoRedundant = "GeoRedundant", + /** LocallyRedundant */ LocallyRedundant = "LocallyRedundant", + /** ZoneRedundant */ ZoneRedundant = "ZoneRedundant", + /** ReadAccessGeoZoneRedundant */ ReadAccessGeoZoneRedundant = "ReadAccessGeoZoneRedundant" } @@ -3551,8 +3718,11 @@ export type StorageType = string; /** Known values of {@link StorageTypeState} that the service accepts. */ export enum KnownStorageTypeState { + /** Invalid */ Invalid = "Invalid", + /** Locked */ Locked = "Locked", + /** Unlocked */ Unlocked = "Unlocked" } @@ -3569,8 +3739,11 @@ export type StorageTypeState = string; /** Known values of {@link DedupState} that the service accepts. */ export enum KnownDedupState { + /** Invalid */ Invalid = "Invalid", + /** Enabled */ Enabled = "Enabled", + /** Disabled */ Disabled = "Disabled" } @@ -3587,8 +3760,11 @@ export type DedupState = string; /** Known values of {@link XcoolState} that the service accepts. */ export enum KnownXcoolState { + /** Invalid */ Invalid = "Invalid", + /** Enabled */ Enabled = "Enabled", + /** Disabled */ Disabled = "Disabled" } @@ -3605,21 +3781,38 @@ export type XcoolState = string; /** Known values of {@link DataSourceType} that the service accepts. */ export enum KnownDataSourceType { + /** Invalid */ Invalid = "Invalid", + /** VM */ VM = "VM", + /** FileFolder */ FileFolder = "FileFolder", + /** AzureSqlDb */ AzureSqlDb = "AzureSqlDb", + /** Sqldb */ Sqldb = "SQLDB", + /** Exchange */ Exchange = "Exchange", + /** Sharepoint */ Sharepoint = "Sharepoint", + /** VMwareVM */ VMwareVM = "VMwareVM", + /** SystemState */ SystemState = "SystemState", + /** Client */ Client = "Client", + /** GenericDataSource */ GenericDataSource = "GenericDataSource", + /** SQLDataBase */ SQLDataBase = "SQLDataBase", + /** AzureFileShare */ AzureFileShare = "AzureFileShare", + /** SAPHanaDatabase */ SAPHanaDatabase = "SAPHanaDatabase", - SAPAseDatabase = "SAPAseDatabase" + /** SAPAseDatabase */ + SAPAseDatabase = "SAPAseDatabase", + /** SAPHanaDBInstance */ + SAPHanaDBInstance = "SAPHanaDBInstance" } /** @@ -3641,14 +3834,18 @@ export enum KnownDataSourceType { * **SQLDataBase** \ * **AzureFileShare** \ * **SAPHanaDatabase** \ - * **SAPAseDatabase** + * **SAPAseDatabase** \ + * **SAPHanaDBInstance** */ export type DataSourceType = string; /** Known values of {@link ValidationStatus} that the service accepts. */ export enum KnownValidationStatus { + /** Invalid */ Invalid = "Invalid", + /** Succeeded */ Succeeded = "Succeeded", + /** Failed */ Failed = "Failed" } @@ -3665,10 +3862,15 @@ export type ValidationStatus = string; /** Known values of {@link ProtectionStatus} that the service accepts. */ export enum KnownProtectionStatus { + /** Invalid */ Invalid = "Invalid", + /** NotProtected */ NotProtected = "NotProtected", + /** Protecting */ Protecting = "Protecting", + /** Protected */ Protected = "Protected", + /** ProtectionFailed */ ProtectionFailed = "ProtectionFailed" } @@ -3687,7 +3889,9 @@ export type ProtectionStatus = string; /** Known values of {@link FabricName} that the service accepts. */ export enum KnownFabricName { + /** Invalid */ Invalid = "Invalid", + /** Azure */ Azure = "Azure" } @@ -3703,10 +3907,15 @@ export type FabricName = string; /** Known values of {@link SupportStatus} that the service accepts. */ export enum KnownSupportStatus { + /** Invalid */ Invalid = "Invalid", + /** Supported */ Supported = "Supported", + /** DefaultOFF */ DefaultOFF = "DefaultOFF", + /** DefaultON */ DefaultON = "DefaultON", + /** NotSupported */ NotSupported = "NotSupported" } @@ -3725,11 +3934,17 @@ export type SupportStatus = string; /** Known values of {@link ProtectionIntentItemType} that the service accepts. */ export enum KnownProtectionIntentItemType { + /** Invalid */ Invalid = "Invalid", + /** AzureResourceItem */ AzureResourceItem = "AzureResourceItem", + /** RecoveryServiceVaultItem */ RecoveryServiceVaultItem = "RecoveryServiceVaultItem", + /** AzureWorkloadContainerAutoProtectionIntent */ AzureWorkloadContainerAutoProtectionIntent = "AzureWorkloadContainerAutoProtectionIntent", + /** AzureWorkloadAutoProtectionIntent */ AzureWorkloadAutoProtectionIntent = "AzureWorkloadAutoProtectionIntent", + /** AzureWorkloadSQLAutoProtectionIntent */ AzureWorkloadSQLAutoProtectionIntent = "AzureWorkloadSQLAutoProtectionIntent" } @@ -3749,14 +3964,23 @@ export type ProtectionIntentItemType = string; /** Known values of {@link BackupManagementType} that the service accepts. */ export enum KnownBackupManagementType { + /** Invalid */ Invalid = "Invalid", + /** AzureIaasVM */ AzureIaasVM = "AzureIaasVM", + /** MAB */ MAB = "MAB", + /** DPM */ DPM = "DPM", + /** AzureBackupServer */ AzureBackupServer = "AzureBackupServer", + /** AzureSql */ AzureSql = "AzureSql", + /** AzureStorage */ AzureStorage = "AzureStorage", + /** AzureWorkload */ AzureWorkload = "AzureWorkload", + /** DefaultBackup */ DefaultBackup = "DefaultBackup" } @@ -3779,11 +4003,17 @@ export type BackupManagementType = string; /** Known values of {@link UsagesUnit} that the service accepts. */ export enum KnownUsagesUnit { + /** Count */ Count = "Count", + /** Bytes */ Bytes = "Bytes", + /** Seconds */ Seconds = "Seconds", + /** Percent */ Percent = "Percent", + /** CountPerSecond */ CountPerSecond = "CountPerSecond", + /** BytesPerSecond */ BytesPerSecond = "BytesPerSecond" } @@ -3803,8 +4033,11 @@ export type UsagesUnit = string; /** Known values of {@link EnhancedSecurityState} that the service accepts. */ export enum KnownEnhancedSecurityState { + /** Invalid */ Invalid = "Invalid", + /** Enabled */ Enabled = "Enabled", + /** Disabled */ Disabled = "Disabled" } @@ -3821,8 +4054,11 @@ export type EnhancedSecurityState = string; /** Known values of {@link SoftDeleteFeatureState} that the service accepts. */ export enum KnownSoftDeleteFeatureState { + /** Invalid */ Invalid = "Invalid", + /** Enabled */ Enabled = "Enabled", + /** Disabled */ Disabled = "Disabled" } @@ -3839,8 +4075,11 @@ export type SoftDeleteFeatureState = string; /** Known values of {@link EncryptionAtRestType} that the service accepts. */ export enum KnownEncryptionAtRestType { + /** Invalid */ Invalid = "Invalid", + /** MicrosoftManaged */ MicrosoftManaged = "MicrosoftManaged", + /** CustomerManaged */ CustomerManaged = "CustomerManaged" } @@ -3857,13 +4096,21 @@ export type EncryptionAtRestType = string; /** Known values of {@link LastUpdateStatus} that the service accepts. */ export enum KnownLastUpdateStatus { + /** Invalid */ Invalid = "Invalid", + /** NotEnabled */ NotEnabled = "NotEnabled", + /** PartiallySucceeded */ PartiallySucceeded = "PartiallySucceeded", + /** PartiallyFailed */ PartiallyFailed = "PartiallyFailed", + /** Failed */ Failed = "Failed", + /** Succeeded */ Succeeded = "Succeeded", + /** Initialized */ Initialized = "Initialized", + /** FirstInitialization */ FirstInitialization = "FirstInitialization" } @@ -3885,8 +4132,11 @@ export type LastUpdateStatus = string; /** Known values of {@link InfrastructureEncryptionState} that the service accepts. */ export enum KnownInfrastructureEncryptionState { + /** Invalid */ Invalid = "Invalid", + /** Disabled */ Disabled = "Disabled", + /** Enabled */ Enabled = "Enabled" } @@ -3903,9 +4153,13 @@ export type InfrastructureEncryptionState = string; /** Known values of {@link ProvisioningState} that the service accepts. */ export enum KnownProvisioningState { + /** Succeeded */ Succeeded = "Succeeded", + /** Deleting */ Deleting = "Deleting", + /** Failed */ Failed = "Failed", + /** Pending */ Pending = "Pending" } @@ -3923,9 +4177,13 @@ export type ProvisioningState = string; /** Known values of {@link PrivateEndpointConnectionStatus} that the service accepts. */ export enum KnownPrivateEndpointConnectionStatus { + /** Pending */ Pending = "Pending", + /** Approved */ Approved = "Approved", + /** Rejected */ Rejected = "Rejected", + /** Disconnected */ Disconnected = "Disconnected" } @@ -3943,10 +4201,15 @@ export type PrivateEndpointConnectionStatus = string; /** Known values of {@link OperationStatusValues} that the service accepts. */ export enum KnownOperationStatusValues { + /** Invalid */ Invalid = "Invalid", + /** InProgress */ InProgress = "InProgress", + /** Succeeded */ Succeeded = "Succeeded", + /** Failed */ Failed = "Failed", + /** Canceled */ Canceled = "Canceled" } @@ -3965,8 +4228,11 @@ export type OperationStatusValues = string; /** Known values of {@link DataMoveLevel} that the service accepts. */ export enum KnownDataMoveLevel { + /** Invalid */ Invalid = "Invalid", + /** Vault */ Vault = "Vault", + /** Container */ Container = "Container" } @@ -3983,8 +4249,11 @@ export type DataMoveLevel = string; /** Known values of {@link CreateMode} that the service accepts. */ export enum KnownCreateMode { + /** Invalid */ Invalid = "Invalid", + /** Default */ Default = "Default", + /** Recover */ Recover = "Recover" } @@ -4001,8 +4270,11 @@ export type CreateMode = string; /** Known values of {@link BackupEngineType} that the service accepts. */ export enum KnownBackupEngineType { + /** Invalid */ Invalid = "Invalid", + /** DpmBackupEngine */ DpmBackupEngine = "DpmBackupEngine", + /** AzureBackupServerEngine */ AzureBackupServerEngine = "AzureBackupServerEngine" } @@ -4017,61 +4289,19 @@ export enum KnownBackupEngineType { */ export type BackupEngineType = string; -/** Known values of {@link ContainerType} that the service accepts. */ -export enum KnownContainerType { - Invalid = "Invalid", - Unknown = "Unknown", - IaasVMContainer = "IaasVMContainer", - IaasVMServiceContainer = "IaasVMServiceContainer", - DPMContainer = "DPMContainer", - AzureBackupServerContainer = "AzureBackupServerContainer", - MABContainer = "MABContainer", - Cluster = "Cluster", - AzureSqlContainer = "AzureSqlContainer", - Windows = "Windows", - VCenter = "VCenter", - VMAppContainer = "VMAppContainer", - SqlagWorkLoadContainer = "SQLAGWorkLoadContainer", - StorageContainer = "StorageContainer", - GenericContainer = "GenericContainer", - MicrosoftClassicComputeVirtualMachines = "Microsoft.ClassicCompute/virtualMachines", - MicrosoftComputeVirtualMachines = "Microsoft.Compute/virtualMachines", - AzureWorkloadContainer = "AzureWorkloadContainer" -} - -/** - * Defines values for ContainerType. \ - * {@link KnownContainerType} can be used interchangeably with ContainerType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Invalid** \ - * **Unknown** \ - * **IaasVMContainer** \ - * **IaasVMServiceContainer** \ - * **DPMContainer** \ - * **AzureBackupServerContainer** \ - * **MABContainer** \ - * **Cluster** \ - * **AzureSqlContainer** \ - * **Windows** \ - * **VCenter** \ - * **VMAppContainer** \ - * **SQLAGWorkLoadContainer** \ - * **StorageContainer** \ - * **GenericContainer** \ - * **Microsoft.ClassicCompute\/virtualMachines** \ - * **Microsoft.Compute\/virtualMachines** \ - * **AzureWorkloadContainer** - */ -export type ContainerType = string; - /** Known values of {@link ProtectionState} that the service accepts. */ export enum KnownProtectionState { + /** Invalid */ Invalid = "Invalid", + /** IRPending */ IRPending = "IRPending", + /** Protected */ Protected = "Protected", + /** ProtectionError */ ProtectionError = "ProtectionError", + /** ProtectionStopped */ ProtectionStopped = "ProtectionStopped", + /** ProtectionPaused */ ProtectionPaused = "ProtectionPaused" } @@ -4091,11 +4321,17 @@ export type ProtectionState = string; /** Known values of {@link ResourceHealthStatus} that the service accepts. */ export enum KnownResourceHealthStatus { + /** Healthy */ Healthy = "Healthy", + /** TransientDegraded */ TransientDegraded = "TransientDegraded", + /** PersistentDegraded */ PersistentDegraded = "PersistentDegraded", + /** TransientUnhealthy */ TransientUnhealthy = "TransientUnhealthy", + /** PersistentUnhealthy */ PersistentUnhealthy = "PersistentUnhealthy", + /** Invalid */ Invalid = "Invalid" } @@ -4115,10 +4351,15 @@ export type ResourceHealthStatus = string; /** Known values of {@link RecoveryType} that the service accepts. */ export enum KnownRecoveryType { + /** Invalid */ Invalid = "Invalid", + /** OriginalLocation */ OriginalLocation = "OriginalLocation", + /** AlternateLocation */ AlternateLocation = "AlternateLocation", + /** RestoreDisks */ RestoreDisks = "RestoreDisks", + /** Offline */ Offline = "Offline" } @@ -4137,10 +4378,15 @@ export type RecoveryType = string; /** Known values of {@link CopyOptions} that the service accepts. */ export enum KnownCopyOptions { + /** Invalid */ Invalid = "Invalid", + /** CreateCopy */ CreateCopy = "CreateCopy", + /** Skip */ Skip = "Skip", + /** Overwrite */ Overwrite = "Overwrite", + /** FailOnConflict */ FailOnConflict = "FailOnConflict" } @@ -4159,8 +4405,11 @@ export type CopyOptions = string; /** Known values of {@link RestoreRequestType} that the service accepts. */ export enum KnownRestoreRequestType { + /** Invalid */ Invalid = "Invalid", + /** FullShareRestore */ FullShareRestore = "FullShareRestore", + /** ItemLevelRestore */ ItemLevelRestore = "ItemLevelRestore" } @@ -4177,21 +4426,38 @@ export type RestoreRequestType = string; /** Known values of {@link WorkloadType} that the service accepts. */ export enum KnownWorkloadType { + /** Invalid */ Invalid = "Invalid", + /** VM */ VM = "VM", + /** FileFolder */ FileFolder = "FileFolder", + /** AzureSqlDb */ AzureSqlDb = "AzureSqlDb", + /** Sqldb */ Sqldb = "SQLDB", + /** Exchange */ Exchange = "Exchange", + /** Sharepoint */ Sharepoint = "Sharepoint", + /** VMwareVM */ VMwareVM = "VMwareVM", + /** SystemState */ SystemState = "SystemState", + /** Client */ Client = "Client", + /** GenericDataSource */ GenericDataSource = "GenericDataSource", + /** SQLDataBase */ SQLDataBase = "SQLDataBase", + /** AzureFileShare */ AzureFileShare = "AzureFileShare", + /** SAPHanaDatabase */ SAPHanaDatabase = "SAPHanaDatabase", - SAPAseDatabase = "SAPAseDatabase" + /** SAPAseDatabase */ + SAPAseDatabase = "SAPAseDatabase", + /** SAPHanaDBInstance */ + SAPHanaDBInstance = "SAPHanaDBInstance" } /** @@ -4213,18 +4479,29 @@ export enum KnownWorkloadType { * **SQLDataBase** \ * **AzureFileShare** \ * **SAPHanaDatabase** \ - * **SAPAseDatabase** + * **SAPAseDatabase** \ + * **SAPHanaDBInstance** */ export type WorkloadType = string; /** Known values of {@link PolicyType} that the service accepts. */ export enum KnownPolicyType { + /** Invalid */ Invalid = "Invalid", + /** Full */ Full = "Full", + /** Differential */ Differential = "Differential", + /** Log */ Log = "Log", + /** CopyOnlyFull */ CopyOnlyFull = "CopyOnlyFull", - Incremental = "Incremental" + /** Incremental */ + Incremental = "Incremental", + /** SnapshotFull */ + SnapshotFull = "SnapshotFull", + /** SnapshotCopyOnlyFull */ + SnapshotCopyOnlyFull = "SnapshotCopyOnlyFull" } /** @@ -4237,15 +4514,72 @@ export enum KnownPolicyType { * **Differential** \ * **Log** \ * **CopyOnlyFull** \ - * **Incremental** + * **Incremental** \ + * **SnapshotFull** \ + * **SnapshotCopyOnlyFull** */ export type PolicyType = string; +/** Known values of {@link TieringMode} that the service accepts. */ +export enum KnownTieringMode { + /** Invalid */ + Invalid = "Invalid", + /** TierRecommended */ + TierRecommended = "TierRecommended", + /** TierAfter */ + TierAfter = "TierAfter", + /** DoNotTier */ + DoNotTier = "DoNotTier" +} + +/** + * Defines values for TieringMode. \ + * {@link KnownTieringMode} can be used interchangeably with TieringMode, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Invalid** \ + * **TierRecommended** \ + * **TierAfter** \ + * **DoNotTier** + */ +export type TieringMode = string; + +/** Known values of {@link RetentionDurationType} that the service accepts. */ +export enum KnownRetentionDurationType { + /** Invalid */ + Invalid = "Invalid", + /** Days */ + Days = "Days", + /** Weeks */ + Weeks = "Weeks", + /** Months */ + Months = "Months", + /** Years */ + Years = "Years" +} + +/** + * Defines values for RetentionDurationType. \ + * {@link KnownRetentionDurationType} can be used interchangeably with RetentionDurationType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Invalid** \ + * **Days** \ + * **Weeks** \ + * **Months** \ + * **Years** + */ +export type RetentionDurationType = string; + /** Known values of {@link HealthStatus} that the service accepts. */ export enum KnownHealthStatus { + /** Passed */ Passed = "Passed", + /** ActionRequired */ ActionRequired = "ActionRequired", + /** ActionSuggested */ ActionSuggested = "ActionSuggested", + /** Invalid */ Invalid = "Invalid" } @@ -4263,8 +4597,11 @@ export type HealthStatus = string; /** Known values of {@link IaasvmPolicyType} that the service accepts. */ export enum KnownIaasvmPolicyType { + /** Invalid */ Invalid = "Invalid", + /** V1 */ V1 = "V1", + /** V2 */ V2 = "V2" } @@ -4281,11 +4618,17 @@ export type IaasvmPolicyType = string; /** Known values of {@link ProtectedItemState} that the service accepts. */ export enum KnownProtectedItemState { + /** Invalid */ Invalid = "Invalid", + /** IRPending */ IRPending = "IRPending", + /** Protected */ Protected = "Protected", + /** ProtectionError */ ProtectionError = "ProtectionError", + /** ProtectionStopped */ ProtectionStopped = "ProtectionStopped", + /** ProtectionPaused */ ProtectionPaused = "ProtectionPaused" } @@ -4305,9 +4648,13 @@ export type ProtectedItemState = string; /** Known values of {@link LastBackupStatus} that the service accepts. */ export enum KnownLastBackupStatus { + /** Invalid */ Invalid = "Invalid", + /** Healthy */ Healthy = "Healthy", + /** Unhealthy */ Unhealthy = "Unhealthy", + /** IRPending */ IRPending = "IRPending" } @@ -4325,10 +4672,15 @@ export type LastBackupStatus = string; /** Known values of {@link ProtectedItemHealthStatus} that the service accepts. */ export enum KnownProtectedItemHealthStatus { + /** Invalid */ Invalid = "Invalid", + /** Healthy */ Healthy = "Healthy", + /** Unhealthy */ Unhealthy = "Unhealthy", + /** NotReachable */ NotReachable = "NotReachable", + /** IRPending */ IRPending = "IRPending" } @@ -4347,11 +4699,20 @@ export type ProtectedItemHealthStatus = string; /** Known values of {@link RestorePointType} that the service accepts. */ export enum KnownRestorePointType { + /** Invalid */ Invalid = "Invalid", + /** Full */ Full = "Full", + /** Log */ Log = "Log", + /** Differential */ Differential = "Differential", - Incremental = "Incremental" + /** Incremental */ + Incremental = "Incremental", + /** SnapshotFull */ + SnapshotFull = "SnapshotFull", + /** SnapshotCopyOnlyFull */ + SnapshotCopyOnlyFull = "SnapshotCopyOnlyFull" } /** @@ -4363,14 +4724,19 @@ export enum KnownRestorePointType { * **Full** \ * **Log** \ * **Differential** \ - * **Incremental** + * **Incremental** \ + * **SnapshotFull** \ + * **SnapshotCopyOnlyFull** */ export type RestorePointType = string; /** Known values of {@link OverwriteOptions} that the service accepts. */ export enum KnownOverwriteOptions { + /** Invalid */ Invalid = "Invalid", + /** FailOnConflict */ FailOnConflict = "FailOnConflict", + /** Overwrite */ Overwrite = "Overwrite" } @@ -4387,8 +4753,11 @@ export type OverwriteOptions = string; /** Known values of {@link RecoveryMode} that the service accepts. */ export enum KnownRecoveryMode { + /** Invalid */ Invalid = "Invalid", + /** FileRecovery */ FileRecovery = "FileRecovery", + /** WorkloadRecovery */ WorkloadRecovery = "WorkloadRecovery" } @@ -4405,8 +4774,11 @@ export type RecoveryMode = string; /** Known values of {@link SQLDataDirectoryType} that the service accepts. */ export enum KnownSQLDataDirectoryType { + /** Invalid */ Invalid = "Invalid", + /** Data */ Data = "Data", + /** Log */ Log = "Log" } @@ -4423,13 +4795,24 @@ export type SQLDataDirectoryType = string; /** Known values of {@link RestorePointQueryType} that the service accepts. */ export enum KnownRestorePointQueryType { + /** Invalid */ Invalid = "Invalid", + /** Full */ Full = "Full", + /** Log */ Log = "Log", + /** Differential */ Differential = "Differential", + /** FullAndDifferential */ FullAndDifferential = "FullAndDifferential", + /** All */ All = "All", - Incremental = "Incremental" + /** Incremental */ + Incremental = "Incremental", + /** SnapshotFull */ + SnapshotFull = "SnapshotFull", + /** SnapshotCopyOnlyFull */ + SnapshotCopyOnlyFull = "SnapshotCopyOnlyFull" } /** @@ -4443,40 +4826,27 @@ export enum KnownRestorePointQueryType { * **Differential** \ * **FullAndDifferential** \ * **All** \ - * **Incremental** + * **Incremental** \ + * **SnapshotFull** \ + * **SnapshotCopyOnlyFull** */ export type RestorePointQueryType = string; -/** Known values of {@link RetentionDurationType} that the service accepts. */ -export enum KnownRetentionDurationType { - Invalid = "Invalid", - Days = "Days", - Weeks = "Weeks", - Months = "Months", - Years = "Years" -} - -/** - * Defines values for RetentionDurationType. \ - * {@link KnownRetentionDurationType} can be used interchangeably with RetentionDurationType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Invalid** \ - * **Days** \ - * **Weeks** \ - * **Months** \ - * **Years** - */ -export type RetentionDurationType = string; - /** Known values of {@link JobStatus} that the service accepts. */ export enum KnownJobStatus { + /** Invalid */ Invalid = "Invalid", + /** InProgress */ InProgress = "InProgress", + /** Completed */ Completed = "Completed", + /** Failed */ Failed = "Failed", + /** CompletedWithWarnings */ CompletedWithWarnings = "CompletedWithWarnings", + /** Cancelled */ Cancelled = "Cancelled", + /** Cancelling */ Cancelling = "Cancelling" } @@ -4497,16 +4867,27 @@ export type JobStatus = string; /** Known values of {@link JobOperationType} that the service accepts. */ export enum KnownJobOperationType { + /** Invalid */ Invalid = "Invalid", + /** Register */ Register = "Register", + /** UnRegister */ UnRegister = "UnRegister", + /** ConfigureBackup */ ConfigureBackup = "ConfigureBackup", + /** Backup */ Backup = "Backup", + /** Restore */ Restore = "Restore", + /** DisableBackup */ DisableBackup = "DisableBackup", + /** DeleteBackupData */ DeleteBackupData = "DeleteBackupData", + /** CrossRegionRestore */ CrossRegionRestore = "CrossRegionRestore", + /** Undelete */ Undelete = "Undelete", + /** UpdateCustomerManagedKey */ UpdateCustomerManagedKey = "UpdateCustomerManagedKey" } @@ -4531,8 +4912,11 @@ export type JobOperationType = string; /** Known values of {@link RetentionScheduleFormat} that the service accepts. */ export enum KnownRetentionScheduleFormat { + /** Invalid */ Invalid = "Invalid", + /** Daily */ Daily = "Daily", + /** Weekly */ Weekly = "Weekly" } @@ -4549,20 +4933,35 @@ export type RetentionScheduleFormat = string; /** Known values of {@link MabServerType} that the service accepts. */ export enum KnownMabServerType { + /** Invalid */ Invalid = "Invalid", + /** Unknown */ Unknown = "Unknown", + /** IaasVMContainer */ IaasVMContainer = "IaasVMContainer", + /** IaasVMServiceContainer */ IaasVMServiceContainer = "IaasVMServiceContainer", + /** DPMContainer */ DPMContainer = "DPMContainer", + /** AzureBackupServerContainer */ AzureBackupServerContainer = "AzureBackupServerContainer", + /** MABContainer */ MABContainer = "MABContainer", + /** Cluster */ Cluster = "Cluster", + /** AzureSqlContainer */ AzureSqlContainer = "AzureSqlContainer", + /** Windows */ Windows = "Windows", + /** VCenter */ VCenter = "VCenter", + /** VMAppContainer */ VMAppContainer = "VMAppContainer", + /** SqlagWorkLoadContainer */ SqlagWorkLoadContainer = "SQLAGWorkLoadContainer", + /** StorageContainer */ StorageContainer = "StorageContainer", + /** GenericContainer */ GenericContainer = "GenericContainer" } @@ -4591,9 +4990,13 @@ export type MabServerType = string; /** Known values of {@link HealthState} that the service accepts. */ export enum KnownHealthState { + /** Passed */ Passed = "Passed", + /** ActionRequired */ ActionRequired = "ActionRequired", + /** ActionSuggested */ ActionSuggested = "ActionSuggested", + /** Invalid */ Invalid = "Invalid" } @@ -4611,9 +5014,13 @@ export type HealthState = string; /** Known values of {@link ScheduleRunType} that the service accepts. */ export enum KnownScheduleRunType { + /** Invalid */ Invalid = "Invalid", + /** Daily */ Daily = "Daily", + /** Weekly */ Weekly = "Weekly", + /** Hourly */ Hourly = "Hourly" } @@ -4631,8 +5038,11 @@ export type ScheduleRunType = string; /** Known values of {@link AzureFileShareType} that the service accepts. */ export enum KnownAzureFileShareType { + /** Invalid */ Invalid = "Invalid", + /** Xsmb */ Xsmb = "XSMB", + /** XSync */ XSync = "XSync" } @@ -4649,8 +5059,11 @@ export type AzureFileShareType = string; /** Known values of {@link OperationType} that the service accepts. */ export enum KnownOperationType { + /** Invalid */ Invalid = "Invalid", + /** Register */ Register = "Register", + /** Reregister */ Reregister = "Reregister" } @@ -4667,7 +5080,9 @@ export type OperationType = string; /** Known values of {@link AcquireStorageAccountLock} that the service accepts. */ export enum KnownAcquireStorageAccountLock { + /** Acquire */ Acquire = "Acquire", + /** NotAcquire */ NotAcquire = "NotAcquire" } @@ -4683,8 +5098,11 @@ export type AcquireStorageAccountLock = string; /** Known values of {@link InquiryStatus} that the service accepts. */ export enum KnownInquiryStatus { + /** Invalid */ Invalid = "Invalid", + /** Success */ Success = "Success", + /** Failed */ Failed = "Failed" } @@ -4701,12 +5119,22 @@ export type InquiryStatus = string; /** Known values of {@link BackupType} that the service accepts. */ export enum KnownBackupType { + /** Invalid */ Invalid = "Invalid", + /** Full */ Full = "Full", + /** Differential */ Differential = "Differential", + /** Log */ Log = "Log", + /** CopyOnlyFull */ CopyOnlyFull = "CopyOnlyFull", - Incremental = "Incremental" + /** Incremental */ + Incremental = "Incremental", + /** SnapshotFull */ + SnapshotFull = "SnapshotFull", + /** SnapshotCopyOnlyFull */ + SnapshotCopyOnlyFull = "SnapshotCopyOnlyFull" } /** @@ -4719,19 +5147,30 @@ export enum KnownBackupType { * **Differential** \ * **Log** \ * **CopyOnlyFull** \ - * **Incremental** + * **Incremental** \ + * **SnapshotFull** \ + * **SnapshotCopyOnlyFull** */ export type BackupType = string; /** Known values of {@link WorkloadItemType} that the service accepts. */ export enum KnownWorkloadItemType { + /** Invalid */ Invalid = "Invalid", + /** SQLInstance */ SQLInstance = "SQLInstance", + /** SQLDataBase */ SQLDataBase = "SQLDataBase", + /** SAPHanaSystem */ SAPHanaSystem = "SAPHanaSystem", + /** SAPHanaDatabase */ SAPHanaDatabase = "SAPHanaDatabase", + /** SAPAseSystem */ SAPAseSystem = "SAPAseSystem", - SAPAseDatabase = "SAPAseDatabase" + /** SAPAseDatabase */ + SAPAseDatabase = "SAPAseDatabase", + /** SAPHanaDBInstance */ + SAPHanaDBInstance = "SAPHanaDBInstance" } /** @@ -4745,14 +5184,18 @@ export enum KnownWorkloadItemType { * **SAPHanaSystem** \ * **SAPHanaDatabase** \ * **SAPAseSystem** \ - * **SAPAseDatabase** + * **SAPAseDatabase** \ + * **SAPHanaDBInstance** */ export type WorkloadItemType = string; /** Known values of {@link Type} that the service accepts. */ export enum KnownType { + /** Invalid */ Invalid = "Invalid", + /** BackupProtectedItemCountSummary */ BackupProtectedItemCountSummary = "BackupProtectedItemCountSummary", + /** BackupProtectionContainerCountSummary */ BackupProtectionContainerCountSummary = "BackupProtectionContainerCountSummary" } @@ -4769,8 +5212,11 @@ export type Type = string; /** Known values of {@link IntentItemType} that the service accepts. */ export enum KnownIntentItemType { + /** Invalid */ Invalid = "Invalid", + /** SQLInstance */ SQLInstance = "SQLInstance", + /** SQLAvailabilityGroupContainer */ SQLAvailabilityGroupContainer = "SQLAvailabilityGroupContainer" } @@ -4785,23 +5231,100 @@ export enum KnownIntentItemType { */ export type IntentItemType = string; +/** Known values of {@link ContainerType} that the service accepts. */ +export enum KnownContainerType { + /** Invalid */ + Invalid = "Invalid", + /** Unknown */ + Unknown = "Unknown", + /** IaasVMContainer */ + IaasVMContainer = "IaasVMContainer", + /** IaasVMServiceContainer */ + IaasVMServiceContainer = "IaasVMServiceContainer", + /** DPMContainer */ + DPMContainer = "DPMContainer", + /** AzureBackupServerContainer */ + AzureBackupServerContainer = "AzureBackupServerContainer", + /** MABContainer */ + MABContainer = "MABContainer", + /** Cluster */ + Cluster = "Cluster", + /** AzureSqlContainer */ + AzureSqlContainer = "AzureSqlContainer", + /** Windows */ + Windows = "Windows", + /** VCenter */ + VCenter = "VCenter", + /** VMAppContainer */ + VMAppContainer = "VMAppContainer", + /** SqlagWorkLoadContainer */ + SqlagWorkLoadContainer = "SQLAGWorkLoadContainer", + /** StorageContainer */ + StorageContainer = "StorageContainer", + /** GenericContainer */ + GenericContainer = "GenericContainer", + /** HanaHSRContainer */ + HanaHSRContainer = "HanaHSRContainer" +} + +/** + * Defines values for ContainerType. \ + * {@link KnownContainerType} can be used interchangeably with ContainerType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Invalid** \ + * **Unknown** \ + * **IaasVMContainer** \ + * **IaasVMServiceContainer** \ + * **DPMContainer** \ + * **AzureBackupServerContainer** \ + * **MABContainer** \ + * **Cluster** \ + * **AzureSqlContainer** \ + * **Windows** \ + * **VCenter** \ + * **VMAppContainer** \ + * **SQLAGWorkLoadContainer** \ + * **StorageContainer** \ + * **GenericContainer** \ + * **HanaHSRContainer** + */ +export type ContainerType = string; + /** Known values of {@link BackupItemType} that the service accepts. */ export enum KnownBackupItemType { + /** Invalid */ Invalid = "Invalid", + /** VM */ VM = "VM", + /** FileFolder */ FileFolder = "FileFolder", + /** AzureSqlDb */ AzureSqlDb = "AzureSqlDb", + /** Sqldb */ Sqldb = "SQLDB", + /** Exchange */ Exchange = "Exchange", + /** Sharepoint */ Sharepoint = "Sharepoint", + /** VMwareVM */ VMwareVM = "VMwareVM", + /** SystemState */ SystemState = "SystemState", + /** Client */ Client = "Client", + /** GenericDataSource */ GenericDataSource = "GenericDataSource", + /** SQLDataBase */ SQLDataBase = "SQLDataBase", + /** AzureFileShare */ AzureFileShare = "AzureFileShare", + /** SAPHanaDatabase */ SAPHanaDatabase = "SAPHanaDatabase", - SAPAseDatabase = "SAPAseDatabase" + /** SAPAseDatabase */ + SAPAseDatabase = "SAPAseDatabase", + /** SAPHanaDBInstance */ + SAPHanaDBInstance = "SAPHanaDBInstance" } /** @@ -4823,13 +5346,16 @@ export enum KnownBackupItemType { * **SQLDataBase** \ * **AzureFileShare** \ * **SAPHanaDatabase** \ - * **SAPAseDatabase** + * **SAPAseDatabase** \ + * **SAPHanaDBInstance** */ export type BackupItemType = string; /** Known values of {@link RehydrationPriority} that the service accepts. */ export enum KnownRehydrationPriority { + /** Standard */ Standard = "Standard", + /** High */ High = "High" } @@ -4891,6 +5417,26 @@ export type HttpStatusCode = | "ServiceUnavailable" | "GatewayTimeout" | "HttpVersionNotSupported"; +/** Defines values for ProtectableContainerType. */ +export type ProtectableContainerType = + | "Invalid" + | "Unknown" + | "IaasVMContainer" + | "IaasVMServiceContainer" + | "DPMContainer" + | "AzureBackupServerContainer" + | "MABContainer" + | "Cluster" + | "AzureSqlContainer" + | "Windows" + | "VCenter" + | "VMAppContainer" + | "SQLAGWorkLoadContainer" + | "StorageContainer" + | "GenericContainer" + | "Microsoft.ClassicCompute/virtualMachines" + | "Microsoft.Compute/virtualMachines" + | "AzureWorkloadContainer"; /** Defines values for RecoveryPointTierType. */ export type RecoveryPointTierType = | "Invalid" @@ -5578,6 +6124,26 @@ export interface BackupProtectionContainersListNextOptionalParams /** Contains response data for the listNext operation. */ export type BackupProtectionContainersListNextResponse = ProtectionContainerResourceList; +/** Optional parameters. */ +export interface DeletedProtectionContainersListOptionalParams + extends coreClient.OperationOptions { + /** OData filter options. */ + filter?: string; +} + +/** Contains response data for the list operation. */ +export type DeletedProtectionContainersListResponse = ProtectionContainerResourceList; + +/** Optional parameters. */ +export interface DeletedProtectionContainersListNextOptionalParams + extends coreClient.OperationOptions { + /** OData filter options. */ + filter?: string; +} + +/** Contains response data for the listNext operation. */ +export type DeletedProtectionContainersListNextResponse = ProtectionContainerResourceList; + /** Optional parameters. */ export interface SecurityPINsGetOptionalParams extends coreClient.OperationOptions { diff --git a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/models/mappers.ts b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/models/mappers.ts index 9201787fa7fd..7edda15bbf50 100644 --- a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/models/mappers.ts +++ b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/models/mappers.ts @@ -1189,12 +1189,14 @@ export const ProtectedItem: coreClient.CompositeMapper = { }, backupManagementType: { serializedName: "backupManagementType", + readOnly: true, type: { name: "String" } }, workloadType: { serializedName: "workloadType", + readOnly: true, type: { name: "String" } @@ -1287,6 +1289,12 @@ export const ProtectedItem: coreClient.CompositeMapper = { type: { name: "String" } + }, + softDeleteRetentionPeriod: { + serializedName: "softDeleteRetentionPeriod", + type: { + name: "Number" + } } } } @@ -1799,7 +1807,27 @@ export const ProtectableContainer: coreClient.CompositeMapper = { serializedName: "protectableContainerType", required: true, type: { - name: "String" + name: "Enum", + allowedValues: [ + "Invalid", + "Unknown", + "IaasVMContainer", + "IaasVMServiceContainer", + "DPMContainer", + "AzureBackupServerContainer", + "MABContainer", + "Cluster", + "AzureSqlContainer", + "Windows", + "VCenter", + "VMAppContainer", + "SQLAGWorkLoadContainer", + "StorageContainer", + "GenericContainer", + "Microsoft.ClassicCompute/virtualMachines", + "Microsoft.Compute/virtualMachines", + "AzureWorkloadContainer" + ] } }, healthStatus: { @@ -1856,7 +1884,27 @@ export const ProtectionContainer: coreClient.CompositeMapper = { serializedName: "containerType", required: true, type: { - name: "String" + name: "Enum", + allowedValues: [ + "Invalid", + "Unknown", + "IaasVMContainer", + "IaasVMServiceContainer", + "DPMContainer", + "AzureBackupServerContainer", + "MABContainer", + "Cluster", + "AzureSqlContainer", + "Windows", + "VCenter", + "VMAppContainer", + "SQLAGWorkLoadContainer", + "StorageContainer", + "GenericContainer", + "Microsoft.ClassicCompute/virtualMachines", + "Microsoft.Compute/virtualMachines", + "AzureWorkloadContainer" + ] } }, protectableObjectType: { @@ -2413,6 +2461,13 @@ export const SubProtectionPolicy: coreClient.CompositeMapper = { name: "Composite", className: "RetentionPolicy" } + }, + tieringPolicy: { + serializedName: "tieringPolicy", + type: { + name: "Dictionary", + value: { type: { name: "Composite", className: "TieringPolicy" } } + } } } } @@ -2460,6 +2515,33 @@ export const RetentionPolicy: coreClient.CompositeMapper = { } }; +export const TieringPolicy: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TieringPolicy", + modelProperties: { + tieringMode: { + serializedName: "tieringMode", + type: { + name: "String" + } + }, + duration: { + serializedName: "duration", + type: { + name: "Number" + } + }, + durationType: { + serializedName: "durationType", + type: { + name: "String" + } + } + } + } +}; + export const AzureIaaSVMProtectedItemExtendedInfo: coreClient.CompositeMapper = { type: { name: "Composite", @@ -2471,6 +2553,24 @@ export const AzureIaaSVMProtectedItemExtendedInfo: coreClient.CompositeMapper = name: "DateTime" } }, + oldestRecoveryPointInVault: { + serializedName: "oldestRecoveryPointInVault", + type: { + name: "DateTime" + } + }, + oldestRecoveryPointInArchive: { + serializedName: "oldestRecoveryPointInArchive", + type: { + name: "DateTime" + } + }, + newestRecoveryPointInArchive: { + serializedName: "newestRecoveryPointInArchive", + type: { + name: "DateTime" + } + }, recoveryPointCount: { serializedName: "recoveryPointCount", type: { @@ -2833,6 +2933,24 @@ export const AzureVmWorkloadProtectedItemExtendedInfo: coreClient.CompositeMappe name: "DateTime" } }, + oldestRecoveryPointInVault: { + serializedName: "oldestRecoveryPointInVault", + type: { + name: "DateTime" + } + }, + oldestRecoveryPointInArchive: { + serializedName: "oldestRecoveryPointInArchive", + type: { + name: "DateTime" + } + }, + newestRecoveryPointInArchive: { + serializedName: "newestRecoveryPointInArchive", + type: { + name: "DateTime" + } + }, recoveryPointCount: { serializedName: "recoveryPointCount", type: { @@ -5865,12 +5983,14 @@ export const AzureIaaSVMProtectedItem: coreClient.CompositeMapper = { ...ProtectedItem.type.modelProperties, friendlyName: { serializedName: "friendlyName", + readOnly: true, type: { name: "String" } }, virtualMachineId: { serializedName: "virtualMachineId", + readOnly: true, type: { name: "String" } @@ -5889,6 +6009,7 @@ export const AzureIaaSVMProtectedItem: coreClient.CompositeMapper = { }, healthStatus: { serializedName: "healthStatus", + readOnly: true, type: { name: "String" } @@ -5922,12 +6043,14 @@ export const AzureIaaSVMProtectedItem: coreClient.CompositeMapper = { }, lastBackupTime: { serializedName: "lastBackupTime", + readOnly: true, type: { name: "DateTime" } }, protectedItemDataId: { serializedName: "protectedItemDataId", + readOnly: true, type: { name: "String" } @@ -5996,6 +6119,7 @@ export const AzureVmWorkloadProtectedItem: coreClient.CompositeMapper = { ...ProtectedItem.type.modelProperties, friendlyName: { serializedName: "friendlyName", + readOnly: true, type: { name: "String" } @@ -6020,6 +6144,7 @@ export const AzureVmWorkloadProtectedItem: coreClient.CompositeMapper = { }, protectionStatus: { serializedName: "protectionStatus", + readOnly: true, type: { name: "String" } @@ -6845,6 +6970,13 @@ export const AzureIaaSVMProtectionPolicy: coreClient.CompositeMapper = { className: "RetentionPolicy" } }, + tieringPolicy: { + serializedName: "tieringPolicy", + type: { + name: "Dictionary", + value: { type: { name: "Composite", className: "TieringPolicy" } } + } + }, instantRpRetentionRangeInDays: { serializedName: "instantRpRetentionRangeInDays", type: { @@ -8378,7 +8510,7 @@ export const AzureWorkloadAutoProtectionIntent: coreClient.CompositeMapper = { type: { name: "Composite", className: "AzureWorkloadAutoProtectionIntent", - uberParent: "ProtectionIntent", + uberParent: "AzureRecoveryServiceVaultProtectionIntent", polymorphicDiscriminator: { serializedName: "protectionIntentItemType", clientName: "protectionIntentItemType" @@ -8394,8 +8526,9 @@ export const AzureIaaSClassicComputeVMProtectedItem: coreClient.CompositeMapper type: { name: "Composite", className: "AzureIaaSClassicComputeVMProtectedItem", - uberParent: "ProtectedItem", - polymorphicDiscriminator: ProtectedItem.type.polymorphicDiscriminator, + uberParent: "AzureIaaSVMProtectedItem", + polymorphicDiscriminator: + AzureIaaSVMProtectedItem.type.polymorphicDiscriminator, modelProperties: { ...AzureIaaSVMProtectedItem.type.modelProperties } @@ -8407,8 +8540,9 @@ export const AzureIaaSComputeVMProtectedItem: coreClient.CompositeMapper = { type: { name: "Composite", className: "AzureIaaSComputeVMProtectedItem", - uberParent: "ProtectedItem", - polymorphicDiscriminator: ProtectedItem.type.polymorphicDiscriminator, + uberParent: "AzureIaaSVMProtectedItem", + polymorphicDiscriminator: + AzureIaaSVMProtectedItem.type.polymorphicDiscriminator, modelProperties: { ...AzureIaaSVMProtectedItem.type.modelProperties } @@ -8420,8 +8554,9 @@ export const AzureVmWorkloadSAPAseDatabaseProtectedItem: coreClient.CompositeMap type: { name: "Composite", className: "AzureVmWorkloadSAPAseDatabaseProtectedItem", - uberParent: "ProtectedItem", - polymorphicDiscriminator: ProtectedItem.type.polymorphicDiscriminator, + uberParent: "AzureVmWorkloadProtectedItem", + polymorphicDiscriminator: + AzureVmWorkloadProtectedItem.type.polymorphicDiscriminator, modelProperties: { ...AzureVmWorkloadProtectedItem.type.modelProperties } @@ -8433,8 +8568,23 @@ export const AzureVmWorkloadSAPHanaDatabaseProtectedItem: coreClient.CompositeMa type: { name: "Composite", className: "AzureVmWorkloadSAPHanaDatabaseProtectedItem", - uberParent: "ProtectedItem", - polymorphicDiscriminator: ProtectedItem.type.polymorphicDiscriminator, + uberParent: "AzureVmWorkloadProtectedItem", + polymorphicDiscriminator: + AzureVmWorkloadProtectedItem.type.polymorphicDiscriminator, + modelProperties: { + ...AzureVmWorkloadProtectedItem.type.modelProperties + } + } +}; + +export const AzureVmWorkloadSAPHanaDBInstanceProtectedItem: coreClient.CompositeMapper = { + serializedName: "AzureVmWorkloadSAPHanaDBInstance", + type: { + name: "Composite", + className: "AzureVmWorkloadSAPHanaDBInstanceProtectedItem", + uberParent: "AzureVmWorkloadProtectedItem", + polymorphicDiscriminator: + AzureVmWorkloadProtectedItem.type.polymorphicDiscriminator, modelProperties: { ...AzureVmWorkloadProtectedItem.type.modelProperties } @@ -8446,8 +8596,9 @@ export const AzureVmWorkloadSQLDatabaseProtectedItem: coreClient.CompositeMapper type: { name: "Composite", className: "AzureVmWorkloadSQLDatabaseProtectedItem", - uberParent: "ProtectedItem", - polymorphicDiscriminator: ProtectedItem.type.polymorphicDiscriminator, + uberParent: "AzureVmWorkloadProtectedItem", + polymorphicDiscriminator: + AzureVmWorkloadProtectedItem.type.polymorphicDiscriminator, modelProperties: { ...AzureVmWorkloadProtectedItem.type.modelProperties } @@ -8459,7 +8610,7 @@ export const AzureWorkloadPointInTimeRecoveryPoint: coreClient.CompositeMapper = type: { name: "Composite", className: "AzureWorkloadPointInTimeRecoveryPoint", - uberParent: "RecoveryPoint", + uberParent: "AzureWorkloadRecoveryPoint", polymorphicDiscriminator: { serializedName: "objectType", clientName: "objectType" @@ -8487,8 +8638,9 @@ export const AzureWorkloadSAPHanaRecoveryPoint: coreClient.CompositeMapper = { type: { name: "Composite", className: "AzureWorkloadSAPHanaRecoveryPoint", - uberParent: "RecoveryPoint", - polymorphicDiscriminator: RecoveryPoint.type.polymorphicDiscriminator, + uberParent: "AzureWorkloadRecoveryPoint", + polymorphicDiscriminator: + AzureWorkloadRecoveryPoint.type.polymorphicDiscriminator, modelProperties: { ...AzureWorkloadRecoveryPoint.type.modelProperties } @@ -8500,7 +8652,7 @@ export const AzureWorkloadSQLRecoveryPoint: coreClient.CompositeMapper = { type: { name: "Composite", className: "AzureWorkloadSQLRecoveryPoint", - uberParent: "RecoveryPoint", + uberParent: "AzureWorkloadRecoveryPoint", polymorphicDiscriminator: { serializedName: "objectType", clientName: "objectType" @@ -8523,8 +8675,9 @@ export const AzureWorkloadPointInTimeRestoreRequest: coreClient.CompositeMapper type: { name: "Composite", className: "AzureWorkloadPointInTimeRestoreRequest", - uberParent: "RestoreRequest", - polymorphicDiscriminator: RestoreRequest.type.polymorphicDiscriminator, + uberParent: "AzureWorkloadRestoreRequest", + polymorphicDiscriminator: + AzureWorkloadRestoreRequest.type.polymorphicDiscriminator, modelProperties: { ...AzureWorkloadRestoreRequest.type.modelProperties, pointInTime: { @@ -8542,7 +8695,7 @@ export const AzureWorkloadSAPHanaRestoreRequest: coreClient.CompositeMapper = { type: { name: "Composite", className: "AzureWorkloadSAPHanaRestoreRequest", - uberParent: "RestoreRequest", + uberParent: "AzureWorkloadRestoreRequest", polymorphicDiscriminator: { serializedName: "objectType", clientName: "objectType" @@ -8558,7 +8711,7 @@ export const AzureWorkloadSQLRestoreRequest: coreClient.CompositeMapper = { type: { name: "Composite", className: "AzureWorkloadSQLRestoreRequest", - uberParent: "RestoreRequest", + uberParent: "AzureWorkloadRestoreRequest", polymorphicDiscriminator: { serializedName: "objectType", clientName: "objectType" @@ -8598,8 +8751,9 @@ export const IaasVMRestoreWithRehydrationRequest: coreClient.CompositeMapper = { type: { name: "Composite", className: "IaasVMRestoreWithRehydrationRequest", - uberParent: "RestoreRequest", - polymorphicDiscriminator: RestoreRequest.type.polymorphicDiscriminator, + uberParent: "IaasVMRestoreRequest", + polymorphicDiscriminator: + IaasVMRestoreRequest.type.polymorphicDiscriminator, modelProperties: { ...IaasVMRestoreRequest.type.modelProperties, recoveryPointRehydrationInfo: { @@ -8618,9 +8772,9 @@ export const ValidateIaasVMRestoreOperationRequest: coreClient.CompositeMapper = type: { name: "Composite", className: "ValidateIaasVMRestoreOperationRequest", - uberParent: "ValidateOperationRequest", + uberParent: "ValidateRestoreOperationRequest", polymorphicDiscriminator: - ValidateOperationRequest.type.polymorphicDiscriminator, + ValidateRestoreOperationRequest.type.polymorphicDiscriminator, modelProperties: { ...ValidateRestoreOperationRequest.type.modelProperties } @@ -8632,8 +8786,8 @@ export const AzureBackupServerContainer: coreClient.CompositeMapper = { type: { name: "Composite", className: "AzureBackupServerContainer", - uberParent: "ProtectionContainer", - polymorphicDiscriminator: ProtectionContainer.type.polymorphicDiscriminator, + uberParent: "DpmContainer", + polymorphicDiscriminator: DpmContainer.type.polymorphicDiscriminator, modelProperties: { ...DpmContainer.type.modelProperties } @@ -8645,8 +8799,8 @@ export const AzureIaaSClassicComputeVMContainer: coreClient.CompositeMapper = { type: { name: "Composite", className: "AzureIaaSClassicComputeVMContainer", - uberParent: "ProtectionContainer", - polymorphicDiscriminator: ProtectionContainer.type.polymorphicDiscriminator, + uberParent: "IaaSVMContainer", + polymorphicDiscriminator: IaaSVMContainer.type.polymorphicDiscriminator, modelProperties: { ...IaaSVMContainer.type.modelProperties } @@ -8658,8 +8812,8 @@ export const AzureIaaSComputeVMContainer: coreClient.CompositeMapper = { type: { name: "Composite", className: "AzureIaaSComputeVMContainer", - uberParent: "ProtectionContainer", - polymorphicDiscriminator: ProtectionContainer.type.polymorphicDiscriminator, + uberParent: "IaaSVMContainer", + polymorphicDiscriminator: IaaSVMContainer.type.polymorphicDiscriminator, modelProperties: { ...IaaSVMContainer.type.modelProperties } @@ -8671,8 +8825,9 @@ export const AzureSqlagWorkloadContainerProtectionContainer: coreClient.Composit type: { name: "Composite", className: "AzureSqlagWorkloadContainerProtectionContainer", - uberParent: "ProtectionContainer", - polymorphicDiscriminator: ProtectionContainer.type.polymorphicDiscriminator, + uberParent: "AzureWorkloadContainer", + polymorphicDiscriminator: + AzureWorkloadContainer.type.polymorphicDiscriminator, modelProperties: { ...AzureWorkloadContainer.type.modelProperties } @@ -8684,8 +8839,9 @@ export const AzureVMAppContainerProtectionContainer: coreClient.CompositeMapper type: { name: "Composite", className: "AzureVMAppContainerProtectionContainer", - uberParent: "ProtectionContainer", - polymorphicDiscriminator: ProtectionContainer.type.polymorphicDiscriminator, + uberParent: "AzureWorkloadContainer", + polymorphicDiscriminator: + AzureWorkloadContainer.type.polymorphicDiscriminator, modelProperties: { ...AzureWorkloadContainer.type.modelProperties } @@ -8697,8 +8853,8 @@ export const AzureVmWorkloadSAPAseDatabaseWorkloadItem: coreClient.CompositeMapp type: { name: "Composite", className: "AzureVmWorkloadSAPAseDatabaseWorkloadItem", - uberParent: "WorkloadItem", - polymorphicDiscriminator: WorkloadItem.type.polymorphicDiscriminator, + uberParent: "AzureVmWorkloadItem", + polymorphicDiscriminator: AzureVmWorkloadItem.type.polymorphicDiscriminator, modelProperties: { ...AzureVmWorkloadItem.type.modelProperties } @@ -8710,8 +8866,8 @@ export const AzureVmWorkloadSAPAseSystemWorkloadItem: coreClient.CompositeMapper type: { name: "Composite", className: "AzureVmWorkloadSAPAseSystemWorkloadItem", - uberParent: "WorkloadItem", - polymorphicDiscriminator: WorkloadItem.type.polymorphicDiscriminator, + uberParent: "AzureVmWorkloadItem", + polymorphicDiscriminator: AzureVmWorkloadItem.type.polymorphicDiscriminator, modelProperties: { ...AzureVmWorkloadItem.type.modelProperties } @@ -8723,8 +8879,8 @@ export const AzureVmWorkloadSAPHanaDatabaseWorkloadItem: coreClient.CompositeMap type: { name: "Composite", className: "AzureVmWorkloadSAPHanaDatabaseWorkloadItem", - uberParent: "WorkloadItem", - polymorphicDiscriminator: WorkloadItem.type.polymorphicDiscriminator, + uberParent: "AzureVmWorkloadItem", + polymorphicDiscriminator: AzureVmWorkloadItem.type.polymorphicDiscriminator, modelProperties: { ...AzureVmWorkloadItem.type.modelProperties } @@ -8736,8 +8892,8 @@ export const AzureVmWorkloadSAPHanaSystemWorkloadItem: coreClient.CompositeMappe type: { name: "Composite", className: "AzureVmWorkloadSAPHanaSystemWorkloadItem", - uberParent: "WorkloadItem", - polymorphicDiscriminator: WorkloadItem.type.polymorphicDiscriminator, + uberParent: "AzureVmWorkloadItem", + polymorphicDiscriminator: AzureVmWorkloadItem.type.polymorphicDiscriminator, modelProperties: { ...AzureVmWorkloadItem.type.modelProperties } @@ -8749,8 +8905,8 @@ export const AzureVmWorkloadSQLDatabaseWorkloadItem: coreClient.CompositeMapper type: { name: "Composite", className: "AzureVmWorkloadSQLDatabaseWorkloadItem", - uberParent: "WorkloadItem", - polymorphicDiscriminator: WorkloadItem.type.polymorphicDiscriminator, + uberParent: "AzureVmWorkloadItem", + polymorphicDiscriminator: AzureVmWorkloadItem.type.polymorphicDiscriminator, modelProperties: { ...AzureVmWorkloadItem.type.modelProperties } @@ -8762,8 +8918,8 @@ export const AzureVmWorkloadSQLInstanceWorkloadItem: coreClient.CompositeMapper type: { name: "Composite", className: "AzureVmWorkloadSQLInstanceWorkloadItem", - uberParent: "WorkloadItem", - polymorphicDiscriminator: WorkloadItem.type.polymorphicDiscriminator, + uberParent: "AzureVmWorkloadItem", + polymorphicDiscriminator: AzureVmWorkloadItem.type.polymorphicDiscriminator, modelProperties: { ...AzureVmWorkloadItem.type.modelProperties, dataDirectoryPaths: { @@ -8787,9 +8943,9 @@ export const AzureIaaSClassicComputeVMProtectableItem: coreClient.CompositeMappe type: { name: "Composite", className: "AzureIaaSClassicComputeVMProtectableItem", - uberParent: "WorkloadProtectableItem", + uberParent: "IaaSVMProtectableItem", polymorphicDiscriminator: - WorkloadProtectableItem.type.polymorphicDiscriminator, + IaaSVMProtectableItem.type.polymorphicDiscriminator, modelProperties: { ...IaaSVMProtectableItem.type.modelProperties } @@ -8801,9 +8957,9 @@ export const AzureIaaSComputeVMProtectableItem: coreClient.CompositeMapper = { type: { name: "Composite", className: "AzureIaaSComputeVMProtectableItem", - uberParent: "WorkloadProtectableItem", + uberParent: "IaaSVMProtectableItem", polymorphicDiscriminator: - WorkloadProtectableItem.type.polymorphicDiscriminator, + IaaSVMProtectableItem.type.polymorphicDiscriminator, modelProperties: { ...IaaSVMProtectableItem.type.modelProperties } @@ -8815,9 +8971,9 @@ export const AzureVmWorkloadSAPAseSystemProtectableItem: coreClient.CompositeMap type: { name: "Composite", className: "AzureVmWorkloadSAPAseSystemProtectableItem", - uberParent: "WorkloadProtectableItem", + uberParent: "AzureVmWorkloadProtectableItem", polymorphicDiscriminator: - WorkloadProtectableItem.type.polymorphicDiscriminator, + AzureVmWorkloadProtectableItem.type.polymorphicDiscriminator, modelProperties: { ...AzureVmWorkloadProtectableItem.type.modelProperties } @@ -8829,9 +8985,9 @@ export const AzureVmWorkloadSAPHanaDatabaseProtectableItem: coreClient.Composite type: { name: "Composite", className: "AzureVmWorkloadSAPHanaDatabaseProtectableItem", - uberParent: "WorkloadProtectableItem", + uberParent: "AzureVmWorkloadProtectableItem", polymorphicDiscriminator: - WorkloadProtectableItem.type.polymorphicDiscriminator, + AzureVmWorkloadProtectableItem.type.polymorphicDiscriminator, modelProperties: { ...AzureVmWorkloadProtectableItem.type.modelProperties } @@ -8843,9 +8999,37 @@ export const AzureVmWorkloadSAPHanaSystemProtectableItem: coreClient.CompositeMa type: { name: "Composite", className: "AzureVmWorkloadSAPHanaSystemProtectableItem", - uberParent: "WorkloadProtectableItem", + uberParent: "AzureVmWorkloadProtectableItem", polymorphicDiscriminator: - WorkloadProtectableItem.type.polymorphicDiscriminator, + AzureVmWorkloadProtectableItem.type.polymorphicDiscriminator, + modelProperties: { + ...AzureVmWorkloadProtectableItem.type.modelProperties + } + } +}; + +export const AzureVmWorkloadSAPHanaDBInstance: coreClient.CompositeMapper = { + serializedName: "SAPHanaDBInstance", + type: { + name: "Composite", + className: "AzureVmWorkloadSAPHanaDBInstance", + uberParent: "AzureVmWorkloadProtectableItem", + polymorphicDiscriminator: + AzureVmWorkloadProtectableItem.type.polymorphicDiscriminator, + modelProperties: { + ...AzureVmWorkloadProtectableItem.type.modelProperties + } + } +}; + +export const AzureVmWorkloadSAPHanaHSR: coreClient.CompositeMapper = { + serializedName: "SAPHanaHSR", + type: { + name: "Composite", + className: "AzureVmWorkloadSAPHanaHSR", + uberParent: "AzureVmWorkloadProtectableItem", + polymorphicDiscriminator: + AzureVmWorkloadProtectableItem.type.polymorphicDiscriminator, modelProperties: { ...AzureVmWorkloadProtectableItem.type.modelProperties } @@ -8857,9 +9041,9 @@ export const AzureVmWorkloadSQLAvailabilityGroupProtectableItem: coreClient.Comp type: { name: "Composite", className: "AzureVmWorkloadSQLAvailabilityGroupProtectableItem", - uberParent: "WorkloadProtectableItem", + uberParent: "AzureVmWorkloadProtectableItem", polymorphicDiscriminator: - WorkloadProtectableItem.type.polymorphicDiscriminator, + AzureVmWorkloadProtectableItem.type.polymorphicDiscriminator, modelProperties: { ...AzureVmWorkloadProtectableItem.type.modelProperties } @@ -8871,9 +9055,9 @@ export const AzureVmWorkloadSQLDatabaseProtectableItem: coreClient.CompositeMapp type: { name: "Composite", className: "AzureVmWorkloadSQLDatabaseProtectableItem", - uberParent: "WorkloadProtectableItem", + uberParent: "AzureVmWorkloadProtectableItem", polymorphicDiscriminator: - WorkloadProtectableItem.type.polymorphicDiscriminator, + AzureVmWorkloadProtectableItem.type.polymorphicDiscriminator, modelProperties: { ...AzureVmWorkloadProtectableItem.type.modelProperties } @@ -8885,9 +9069,9 @@ export const AzureVmWorkloadSQLInstanceProtectableItem: coreClient.CompositeMapp type: { name: "Composite", className: "AzureVmWorkloadSQLInstanceProtectableItem", - uberParent: "WorkloadProtectableItem", + uberParent: "AzureVmWorkloadProtectableItem", polymorphicDiscriminator: - WorkloadProtectableItem.type.polymorphicDiscriminator, + AzureVmWorkloadProtectableItem.type.polymorphicDiscriminator, modelProperties: { ...AzureVmWorkloadProtectableItem.type.modelProperties } @@ -8899,8 +9083,9 @@ export const AzureWorkloadSQLAutoProtectionIntent: coreClient.CompositeMapper = type: { name: "Composite", className: "AzureWorkloadSQLAutoProtectionIntent", - uberParent: "ProtectionIntent", - polymorphicDiscriminator: ProtectionIntent.type.polymorphicDiscriminator, + uberParent: "AzureWorkloadAutoProtectionIntent", + polymorphicDiscriminator: + AzureWorkloadAutoProtectionIntent.type.polymorphicDiscriminator, modelProperties: { ...AzureWorkloadAutoProtectionIntent.type.modelProperties, workloadItemType: { @@ -8918,8 +9103,9 @@ export const AzureWorkloadSAPHanaPointInTimeRecoveryPoint: coreClient.CompositeM type: { name: "Composite", className: "AzureWorkloadSAPHanaPointInTimeRecoveryPoint", - uberParent: "RecoveryPoint", - polymorphicDiscriminator: RecoveryPoint.type.polymorphicDiscriminator, + uberParent: "AzureWorkloadPointInTimeRecoveryPoint", + polymorphicDiscriminator: + AzureWorkloadPointInTimeRecoveryPoint.type.polymorphicDiscriminator, modelProperties: { ...AzureWorkloadPointInTimeRecoveryPoint.type.modelProperties } @@ -8931,8 +9117,9 @@ export const AzureWorkloadSQLPointInTimeRecoveryPoint: coreClient.CompositeMappe type: { name: "Composite", className: "AzureWorkloadSQLPointInTimeRecoveryPoint", - uberParent: "RecoveryPoint", - polymorphicDiscriminator: RecoveryPoint.type.polymorphicDiscriminator, + uberParent: "AzureWorkloadSQLRecoveryPoint", + polymorphicDiscriminator: + AzureWorkloadSQLRecoveryPoint.type.polymorphicDiscriminator, modelProperties: { ...AzureWorkloadSQLRecoveryPoint.type.modelProperties, timeRanges: { @@ -8956,7 +9143,7 @@ export const AzureWorkloadSAPHanaPointInTimeRestoreRequest: coreClient.Composite type: { name: "Composite", className: "AzureWorkloadSAPHanaPointInTimeRestoreRequest", - uberParent: "RestoreRequest", + uberParent: "AzureWorkloadSAPHanaRestoreRequest", polymorphicDiscriminator: { serializedName: "objectType", clientName: "objectType" @@ -8978,8 +9165,9 @@ export const AzureWorkloadSAPHanaRestoreWithRehydrateRequest: coreClient.Composi type: { name: "Composite", className: "AzureWorkloadSAPHanaRestoreWithRehydrateRequest", - uberParent: "RestoreRequest", - polymorphicDiscriminator: RestoreRequest.type.polymorphicDiscriminator, + uberParent: "AzureWorkloadSAPHanaRestoreRequest", + polymorphicDiscriminator: + AzureWorkloadSAPHanaRestoreRequest.type.polymorphicDiscriminator, modelProperties: { ...AzureWorkloadSAPHanaRestoreRequest.type.modelProperties, recoveryPointRehydrationInfo: { @@ -8998,7 +9186,7 @@ export const AzureWorkloadSQLPointInTimeRestoreRequest: coreClient.CompositeMapp type: { name: "Composite", className: "AzureWorkloadSQLPointInTimeRestoreRequest", - uberParent: "RestoreRequest", + uberParent: "AzureWorkloadSQLRestoreRequest", polymorphicDiscriminator: { serializedName: "objectType", clientName: "objectType" @@ -9020,8 +9208,9 @@ export const AzureWorkloadSQLRestoreWithRehydrateRequest: coreClient.CompositeMa type: { name: "Composite", className: "AzureWorkloadSQLRestoreWithRehydrateRequest", - uberParent: "RestoreRequest", - polymorphicDiscriminator: RestoreRequest.type.polymorphicDiscriminator, + uberParent: "AzureWorkloadSQLRestoreRequest", + polymorphicDiscriminator: + AzureWorkloadSQLRestoreRequest.type.polymorphicDiscriminator, modelProperties: { ...AzureWorkloadSQLRestoreRequest.type.modelProperties, recoveryPointRehydrationInfo: { @@ -9040,8 +9229,10 @@ export const AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest: coreCli type: { name: "Composite", className: "AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest", - uberParent: "RestoreRequest", - polymorphicDiscriminator: RestoreRequest.type.polymorphicDiscriminator, + uberParent: "AzureWorkloadSAPHanaPointInTimeRestoreRequest", + polymorphicDiscriminator: + AzureWorkloadSAPHanaPointInTimeRestoreRequest.type + .polymorphicDiscriminator, modelProperties: { ...AzureWorkloadSAPHanaPointInTimeRestoreRequest.type.modelProperties, recoveryPointRehydrationInfo: { @@ -9060,8 +9251,9 @@ export const AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest: coreClient. type: { name: "Composite", className: "AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest", - uberParent: "RestoreRequest", - polymorphicDiscriminator: RestoreRequest.type.polymorphicDiscriminator, + uberParent: "AzureWorkloadSQLPointInTimeRestoreRequest", + polymorphicDiscriminator: + AzureWorkloadSQLPointInTimeRestoreRequest.type.polymorphicDiscriminator, modelProperties: { ...AzureWorkloadSQLPointInTimeRestoreRequest.type.modelProperties, recoveryPointRehydrationInfo: { @@ -9162,46 +9354,49 @@ export let discriminators = { "SchedulePolicy.SimpleSchedulePolicyV2": SimpleSchedulePolicyV2, "RetentionPolicy.LongTermRetentionPolicy": LongTermRetentionPolicy, "RetentionPolicy.SimpleRetentionPolicy": SimpleRetentionPolicy, - "ProtectionIntent.AzureWorkloadAutoProtectionIntent": AzureWorkloadAutoProtectionIntent, - "ProtectedItem.Microsoft.ClassicCompute/virtualMachines": AzureIaaSClassicComputeVMProtectedItem, - "ProtectedItem.Microsoft.Compute/virtualMachines": AzureIaaSComputeVMProtectedItem, - "ProtectedItem.AzureVmWorkloadSAPAseDatabase": AzureVmWorkloadSAPAseDatabaseProtectedItem, - "ProtectedItem.AzureVmWorkloadSAPHanaDatabase": AzureVmWorkloadSAPHanaDatabaseProtectedItem, - "ProtectedItem.AzureVmWorkloadSQLDatabase": AzureVmWorkloadSQLDatabaseProtectedItem, - "RecoveryPoint.AzureWorkloadPointInTimeRecoveryPoint": AzureWorkloadPointInTimeRecoveryPoint, - "RecoveryPoint.AzureWorkloadSAPHanaRecoveryPoint": AzureWorkloadSAPHanaRecoveryPoint, - "RecoveryPoint.AzureWorkloadSQLRecoveryPoint": AzureWorkloadSQLRecoveryPoint, - "RestoreRequest.AzureWorkloadPointInTimeRestoreRequest": AzureWorkloadPointInTimeRestoreRequest, - "RestoreRequest.AzureWorkloadSAPHanaRestoreRequest": AzureWorkloadSAPHanaRestoreRequest, - "RestoreRequest.AzureWorkloadSQLRestoreRequest": AzureWorkloadSQLRestoreRequest, - "RestoreRequest.IaasVMRestoreWithRehydrationRequest": IaasVMRestoreWithRehydrationRequest, - "ValidateOperationRequest.ValidateIaasVMRestoreOperationRequest": ValidateIaasVMRestoreOperationRequest, - "ProtectionContainer.AzureBackupServerContainer": AzureBackupServerContainer, - "ProtectionContainer.Microsoft.ClassicCompute/virtualMachines": AzureIaaSClassicComputeVMContainer, - "ProtectionContainer.Microsoft.Compute/virtualMachines": AzureIaaSComputeVMContainer, - "ProtectionContainer.SQLAGWorkLoadContainer": AzureSqlagWorkloadContainerProtectionContainer, - "ProtectionContainer.VMAppContainer": AzureVMAppContainerProtectionContainer, - "WorkloadItem.SAPAseDatabase": AzureVmWorkloadSAPAseDatabaseWorkloadItem, - "WorkloadItem.SAPAseSystem": AzureVmWorkloadSAPAseSystemWorkloadItem, - "WorkloadItem.SAPHanaDatabase": AzureVmWorkloadSAPHanaDatabaseWorkloadItem, - "WorkloadItem.SAPHanaSystem": AzureVmWorkloadSAPHanaSystemWorkloadItem, - "WorkloadItem.SQLDataBase": AzureVmWorkloadSQLDatabaseWorkloadItem, - "WorkloadItem.SQLInstance": AzureVmWorkloadSQLInstanceWorkloadItem, - "WorkloadProtectableItem.Microsoft.ClassicCompute/virtualMachines": AzureIaaSClassicComputeVMProtectableItem, - "WorkloadProtectableItem.Microsoft.Compute/virtualMachines": AzureIaaSComputeVMProtectableItem, - "WorkloadProtectableItem.SAPAseSystem": AzureVmWorkloadSAPAseSystemProtectableItem, - "WorkloadProtectableItem.SAPHanaDatabase": AzureVmWorkloadSAPHanaDatabaseProtectableItem, - "WorkloadProtectableItem.SAPHanaSystem": AzureVmWorkloadSAPHanaSystemProtectableItem, - "WorkloadProtectableItem.SQLAvailabilityGroupContainer": AzureVmWorkloadSQLAvailabilityGroupProtectableItem, - "WorkloadProtectableItem.SQLDataBase": AzureVmWorkloadSQLDatabaseProtectableItem, - "WorkloadProtectableItem.SQLInstance": AzureVmWorkloadSQLInstanceProtectableItem, - "ProtectionIntent.AzureWorkloadSQLAutoProtectionIntent": AzureWorkloadSQLAutoProtectionIntent, - "RecoveryPoint.AzureWorkloadSAPHanaPointInTimeRecoveryPoint": AzureWorkloadSAPHanaPointInTimeRecoveryPoint, - "RecoveryPoint.AzureWorkloadSQLPointInTimeRecoveryPoint": AzureWorkloadSQLPointInTimeRecoveryPoint, - "RestoreRequest.AzureWorkloadSAPHanaPointInTimeRestoreRequest": AzureWorkloadSAPHanaPointInTimeRestoreRequest, - "RestoreRequest.AzureWorkloadSAPHanaRestoreWithRehydrateRequest": AzureWorkloadSAPHanaRestoreWithRehydrateRequest, - "RestoreRequest.AzureWorkloadSQLPointInTimeRestoreRequest": AzureWorkloadSQLPointInTimeRestoreRequest, - "RestoreRequest.AzureWorkloadSQLRestoreWithRehydrateRequest": AzureWorkloadSQLRestoreWithRehydrateRequest, - "RestoreRequest.AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest": AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest, - "RestoreRequest.AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest": AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest + "AzureRecoveryServiceVaultProtectionIntent.AzureWorkloadAutoProtectionIntent": AzureWorkloadAutoProtectionIntent, + "AzureIaaSVMProtectedItem.Microsoft.ClassicCompute/virtualMachines": AzureIaaSClassicComputeVMProtectedItem, + "AzureIaaSVMProtectedItem.Microsoft.Compute/virtualMachines": AzureIaaSComputeVMProtectedItem, + "AzureVmWorkloadProtectedItem.AzureVmWorkloadSAPAseDatabase": AzureVmWorkloadSAPAseDatabaseProtectedItem, + "AzureVmWorkloadProtectedItem.AzureVmWorkloadSAPHanaDatabase": AzureVmWorkloadSAPHanaDatabaseProtectedItem, + "AzureVmWorkloadProtectedItem.AzureVmWorkloadSAPHanaDBInstance": AzureVmWorkloadSAPHanaDBInstanceProtectedItem, + "AzureVmWorkloadProtectedItem.AzureVmWorkloadSQLDatabase": AzureVmWorkloadSQLDatabaseProtectedItem, + "AzureWorkloadRecoveryPoint.AzureWorkloadPointInTimeRecoveryPoint": AzureWorkloadPointInTimeRecoveryPoint, + "AzureWorkloadRecoveryPoint.AzureWorkloadSAPHanaRecoveryPoint": AzureWorkloadSAPHanaRecoveryPoint, + "AzureWorkloadRecoveryPoint.AzureWorkloadSQLRecoveryPoint": AzureWorkloadSQLRecoveryPoint, + "AzureWorkloadRestoreRequest.AzureWorkloadPointInTimeRestoreRequest": AzureWorkloadPointInTimeRestoreRequest, + "AzureWorkloadRestoreRequest.AzureWorkloadSAPHanaRestoreRequest": AzureWorkloadSAPHanaRestoreRequest, + "AzureWorkloadRestoreRequest.AzureWorkloadSQLRestoreRequest": AzureWorkloadSQLRestoreRequest, + "IaasVMRestoreRequest.IaasVMRestoreWithRehydrationRequest": IaasVMRestoreWithRehydrationRequest, + "ValidateRestoreOperationRequest.ValidateIaasVMRestoreOperationRequest": ValidateIaasVMRestoreOperationRequest, + "DpmContainer.AzureBackupServerContainer": AzureBackupServerContainer, + "IaaSVMContainer.Microsoft.ClassicCompute/virtualMachines": AzureIaaSClassicComputeVMContainer, + "IaaSVMContainer.Microsoft.Compute/virtualMachines": AzureIaaSComputeVMContainer, + "AzureWorkloadContainer.SQLAGWorkLoadContainer": AzureSqlagWorkloadContainerProtectionContainer, + "AzureWorkloadContainer.VMAppContainer": AzureVMAppContainerProtectionContainer, + "AzureVmWorkloadItem.SAPAseDatabase": AzureVmWorkloadSAPAseDatabaseWorkloadItem, + "AzureVmWorkloadItem.SAPAseSystem": AzureVmWorkloadSAPAseSystemWorkloadItem, + "AzureVmWorkloadItem.SAPHanaDatabase": AzureVmWorkloadSAPHanaDatabaseWorkloadItem, + "AzureVmWorkloadItem.SAPHanaSystem": AzureVmWorkloadSAPHanaSystemWorkloadItem, + "AzureVmWorkloadItem.SQLDataBase": AzureVmWorkloadSQLDatabaseWorkloadItem, + "AzureVmWorkloadItem.SQLInstance": AzureVmWorkloadSQLInstanceWorkloadItem, + "IaaSVMProtectableItem.Microsoft.ClassicCompute/virtualMachines": AzureIaaSClassicComputeVMProtectableItem, + "IaaSVMProtectableItem.Microsoft.Compute/virtualMachines": AzureIaaSComputeVMProtectableItem, + "AzureVmWorkloadProtectableItem.SAPAseSystem": AzureVmWorkloadSAPAseSystemProtectableItem, + "AzureVmWorkloadProtectableItem.SAPHanaDatabase": AzureVmWorkloadSAPHanaDatabaseProtectableItem, + "AzureVmWorkloadProtectableItem.SAPHanaSystem": AzureVmWorkloadSAPHanaSystemProtectableItem, + "AzureVmWorkloadProtectableItem.SAPHanaDBInstance": AzureVmWorkloadSAPHanaDBInstance, + "AzureVmWorkloadProtectableItem.SAPHanaHSR": AzureVmWorkloadSAPHanaHSR, + "AzureVmWorkloadProtectableItem.SQLAvailabilityGroupContainer": AzureVmWorkloadSQLAvailabilityGroupProtectableItem, + "AzureVmWorkloadProtectableItem.SQLDataBase": AzureVmWorkloadSQLDatabaseProtectableItem, + "AzureVmWorkloadProtectableItem.SQLInstance": AzureVmWorkloadSQLInstanceProtectableItem, + "AzureWorkloadAutoProtectionIntent.AzureWorkloadSQLAutoProtectionIntent": AzureWorkloadSQLAutoProtectionIntent, + "AzureWorkloadPointInTimeRecoveryPoint.AzureWorkloadSAPHanaPointInTimeRecoveryPoint": AzureWorkloadSAPHanaPointInTimeRecoveryPoint, + "AzureWorkloadSQLRecoveryPoint.AzureWorkloadSQLPointInTimeRecoveryPoint": AzureWorkloadSQLPointInTimeRecoveryPoint, + "AzureWorkloadSAPHanaRestoreRequest.AzureWorkloadSAPHanaPointInTimeRestoreRequest": AzureWorkloadSAPHanaPointInTimeRestoreRequest, + "AzureWorkloadSAPHanaRestoreRequest.AzureWorkloadSAPHanaRestoreWithRehydrateRequest": AzureWorkloadSAPHanaRestoreWithRehydrateRequest, + "AzureWorkloadSQLRestoreRequest.AzureWorkloadSQLPointInTimeRestoreRequest": AzureWorkloadSQLPointInTimeRestoreRequest, + "AzureWorkloadSQLRestoreRequest.AzureWorkloadSQLRestoreWithRehydrateRequest": AzureWorkloadSQLRestoreWithRehydrateRequest, + "AzureWorkloadSAPHanaPointInTimeRestoreRequest.AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest": AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest, + "AzureWorkloadSQLPointInTimeRestoreRequest.AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest": AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest }; diff --git a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/models/parameters.ts b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/models/parameters.ts index 67a4c7d0010c..2b64130a41cb 100644 --- a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/models/parameters.ts +++ b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/models/parameters.ts @@ -32,6 +32,7 @@ import { ILRRequestResource as ILRRequestResourceMapper, SecurityPinBase as SecurityPinBaseMapper, ListRecoveryPointsRecommendedForMoveRequest as ListRecoveryPointsRecommendedForMoveRequestMapper, + ResourceGuardProxyBaseResource as ResourceGuardProxyBaseResourceMapper, UnlockDeleteRequest as UnlockDeleteRequestMapper } from "../models/mappers"; @@ -62,7 +63,7 @@ export const $host: OperationURLParameter = { export const apiVersion: OperationQueryParameter = { parameterPath: "apiVersion", mapper: { - defaultValue: "2022-03-01", + defaultValue: "2022-10-01", isConstant: true, serializedName: "api-version", type: { @@ -381,6 +382,11 @@ export const resourceGuardProxyName: OperationURLParameter = { }; export const parameters20: OperationParameter = { + parameterPath: "parameters", + mapper: ResourceGuardProxyBaseResourceMapper +}; + +export const parameters21: OperationParameter = { parameterPath: "parameters", mapper: UnlockDeleteRequestMapper }; diff --git a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operations/deletedProtectionContainers.ts b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operations/deletedProtectionContainers.ts new file mode 100644 index 000000000000..39f67501dc68 --- /dev/null +++ b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operations/deletedProtectionContainers.ts @@ -0,0 +1,181 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { DeletedProtectionContainers } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { RecoveryServicesBackupClient } from "../recoveryServicesBackupClient"; +import { + ProtectionContainerResource, + DeletedProtectionContainersListNextOptionalParams, + DeletedProtectionContainersListOptionalParams, + DeletedProtectionContainersListResponse, + DeletedProtectionContainersListNextResponse +} from "../models"; + +/// +/** Class containing DeletedProtectionContainers operations. */ +export class DeletedProtectionContainersImpl + implements DeletedProtectionContainers { + private readonly client: RecoveryServicesBackupClient; + + /** + * Initialize a new instance of the class DeletedProtectionContainers class. + * @param client Reference to the service client + */ + constructor(client: RecoveryServicesBackupClient) { + this.client = client; + } + + /** + * Lists the soft deleted containers registered to Recovery Services Vault. + * @param resourceGroupName The name of the resource group where the recovery services vault is + * present. + * @param vaultName The name of the recovery services vault. + * @param options The options parameters. + */ + public list( + resourceGroupName: string, + vaultName: string, + options?: DeletedProtectionContainersListOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listPagingAll(resourceGroupName, vaultName, options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listPagingPage(resourceGroupName, vaultName, options); + } + }; + } + + private async *listPagingPage( + resourceGroupName: string, + vaultName: string, + options?: DeletedProtectionContainersListOptionalParams + ): AsyncIterableIterator { + let result = await this._list(resourceGroupName, vaultName, options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listNext( + resourceGroupName, + vaultName, + continuationToken, + options + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listPagingAll( + resourceGroupName: string, + vaultName: string, + options?: DeletedProtectionContainersListOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listPagingPage( + resourceGroupName, + vaultName, + options + )) { + yield* page; + } + } + + /** + * Lists the soft deleted containers registered to Recovery Services Vault. + * @param resourceGroupName The name of the resource group where the recovery services vault is + * present. + * @param vaultName The name of the recovery services vault. + * @param options The options parameters. + */ + private _list( + resourceGroupName: string, + vaultName: string, + options?: DeletedProtectionContainersListOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, vaultName, options }, + listOperationSpec + ); + } + + /** + * ListNext + * @param resourceGroupName The name of the resource group where the recovery services vault is + * present. + * @param vaultName The name of the recovery services vault. + * @param nextLink The nextLink from the previous successful call to the List method. + * @param options The options parameters. + */ + private _listNext( + resourceGroupName: string, + vaultName: string, + nextLink: string, + options?: DeletedProtectionContainersListNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, vaultName, nextLink, options }, + listNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupDeletedProtectionContainers", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ProtectionContainerResourceList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + queryParameters: [Parameters.apiVersion, Parameters.filter], + urlParameters: [ + Parameters.$host, + Parameters.vaultName, + Parameters.resourceGroupName, + Parameters.subscriptionId + ], + headerParameters: [Parameters.accept], + serializer +}; +const listNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ProtectionContainerResourceList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + queryParameters: [Parameters.apiVersion, Parameters.filter], + urlParameters: [ + Parameters.$host, + Parameters.vaultName, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operations/index.ts b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operations/index.ts index 154cc42aeb56..2437070aadd2 100644 --- a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operations/index.ts +++ b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operations/index.ts @@ -50,6 +50,7 @@ export * from "./backupOperationStatuses"; export * from "./protectionPolicyOperationStatuses"; export * from "./backupProtectableItems"; export * from "./backupProtectionContainers"; +export * from "./deletedProtectionContainers"; export * from "./securityPINs"; export * from "./recoveryPointsRecommendedForMove"; export * from "./resourceGuardProxies"; diff --git a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operations/resourceGuardProxy.ts b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operations/resourceGuardProxy.ts index cc2ed3cd1b18..b74d943cf5fb 100644 --- a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operations/resourceGuardProxy.ts +++ b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operations/resourceGuardProxy.ts @@ -14,6 +14,7 @@ import { RecoveryServicesBackupClient } from "../recoveryServicesBackupClient"; import { ResourceGuardProxyGetOptionalParams, ResourceGuardProxyGetResponse, + ResourceGuardProxyBaseResource, ResourceGuardProxyPutOptionalParams, ResourceGuardProxyPutResponse, ResourceGuardProxyDeleteOptionalParams, @@ -61,16 +62,24 @@ export class ResourceGuardProxyImpl implements ResourceGuardProxy { * @param resourceGroupName The name of the resource group where the recovery services vault is * present. * @param resourceGuardProxyName + * @param parameters Request body for operation * @param options The options parameters. */ put( vaultName: string, resourceGroupName: string, resourceGuardProxyName: string, + parameters: ResourceGuardProxyBaseResource, options?: ResourceGuardProxyPutOptionalParams ): Promise { return this.client.sendOperationRequest( - { vaultName, resourceGroupName, resourceGuardProxyName, options }, + { + vaultName, + resourceGroupName, + resourceGuardProxyName, + parameters, + options + }, putOperationSpec ); } @@ -161,6 +170,7 @@ const putOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.CloudError } }, + requestBody: Parameters.parameters20, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -169,7 +179,8 @@ const putOperationSpec: coreClient.OperationSpec = { Parameters.subscriptionId, Parameters.resourceGuardProxyName ], - headerParameters: [Parameters.accept], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", serializer }; const deleteOperationSpec: coreClient.OperationSpec = { @@ -206,7 +217,7 @@ const unlockDeleteOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.CloudError } }, - requestBody: Parameters.parameters20, + requestBody: Parameters.parameters21, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, diff --git a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operationsInterfaces/deletedProtectionContainers.ts b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operationsInterfaces/deletedProtectionContainers.ts new file mode 100644 index 000000000000..b68304bb20dc --- /dev/null +++ b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operationsInterfaces/deletedProtectionContainers.ts @@ -0,0 +1,30 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { + ProtectionContainerResource, + DeletedProtectionContainersListOptionalParams +} from "../models"; + +/// +/** Interface representing a DeletedProtectionContainers. */ +export interface DeletedProtectionContainers { + /** + * Lists the soft deleted containers registered to Recovery Services Vault. + * @param resourceGroupName The name of the resource group where the recovery services vault is + * present. + * @param vaultName The name of the recovery services vault. + * @param options The options parameters. + */ + list( + resourceGroupName: string, + vaultName: string, + options?: DeletedProtectionContainersListOptionalParams + ): PagedAsyncIterableIterator; +} diff --git a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operationsInterfaces/index.ts b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operationsInterfaces/index.ts index 154cc42aeb56..2437070aadd2 100644 --- a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operationsInterfaces/index.ts +++ b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operationsInterfaces/index.ts @@ -50,6 +50,7 @@ export * from "./backupOperationStatuses"; export * from "./protectionPolicyOperationStatuses"; export * from "./backupProtectableItems"; export * from "./backupProtectionContainers"; +export * from "./deletedProtectionContainers"; export * from "./securityPINs"; export * from "./recoveryPointsRecommendedForMove"; export * from "./resourceGuardProxies"; diff --git a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operationsInterfaces/resourceGuardProxy.ts b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operationsInterfaces/resourceGuardProxy.ts index c3fafd6b4752..3a1881319eaa 100644 --- a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operationsInterfaces/resourceGuardProxy.ts +++ b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/operationsInterfaces/resourceGuardProxy.ts @@ -9,6 +9,7 @@ import { ResourceGuardProxyGetOptionalParams, ResourceGuardProxyGetResponse, + ResourceGuardProxyBaseResource, ResourceGuardProxyPutOptionalParams, ResourceGuardProxyPutResponse, ResourceGuardProxyDeleteOptionalParams, @@ -40,12 +41,14 @@ export interface ResourceGuardProxy { * @param resourceGroupName The name of the resource group where the recovery services vault is * present. * @param resourceGuardProxyName + * @param parameters Request body for operation * @param options The options parameters. */ put( vaultName: string, resourceGroupName: string, resourceGuardProxyName: string, + parameters: ResourceGuardProxyBaseResource, options?: ResourceGuardProxyPutOptionalParams ): Promise; /** diff --git a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/recoveryServicesBackupClient.ts b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/recoveryServicesBackupClient.ts index 6006c2d5c1f1..f9a0db02ed43 100644 --- a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/recoveryServicesBackupClient.ts +++ b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/src/recoveryServicesBackupClient.ts @@ -8,6 +8,11 @@ import * as coreClient from "@azure/core-client"; import * as coreRestPipeline from "@azure/core-rest-pipeline"; +import { + PipelineRequest, + PipelineResponse, + SendRequest +} from "@azure/core-rest-pipeline"; import * as coreAuth from "@azure/core-auth"; import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; import { LroImpl } from "./lroImpl"; @@ -56,6 +61,7 @@ import { ProtectionPolicyOperationStatusesImpl, BackupProtectableItemsImpl, BackupProtectionContainersImpl, + DeletedProtectionContainersImpl, SecurityPINsImpl, RecoveryPointsRecommendedForMoveImpl, ResourceGuardProxiesImpl, @@ -106,6 +112,7 @@ import { ProtectionPolicyOperationStatuses, BackupProtectableItems, BackupProtectionContainers, + DeletedProtectionContainers, SecurityPINs, RecoveryPointsRecommendedForMove, ResourceGuardProxies, @@ -157,7 +164,7 @@ export class RecoveryServicesBackupClient extends coreClient.ServiceClient { credential: credentials }; - const packageDetails = `azsdk-js-arm-recoveryservicesbackup/9.0.1`; + const packageDetails = `azsdk-js-arm-recoveryservicesbackup/10.0.0`; const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}` @@ -177,34 +184,41 @@ export class RecoveryServicesBackupClient extends coreClient.ServiceClient { }; super(optionsWithDefaults); + let bearerTokenAuthenticationPolicyFound: boolean = false; if (options?.pipeline && options.pipeline.getOrderedPolicies().length > 0) { const pipelinePolicies: coreRestPipeline.PipelinePolicy[] = options.pipeline.getOrderedPolicies(); - const bearerTokenAuthenticationPolicyFound = pipelinePolicies.some( + bearerTokenAuthenticationPolicyFound = pipelinePolicies.some( (pipelinePolicy) => pipelinePolicy.name === coreRestPipeline.bearerTokenAuthenticationPolicyName ); - if (!bearerTokenAuthenticationPolicyFound) { - this.pipeline.removePolicy({ - name: coreRestPipeline.bearerTokenAuthenticationPolicyName - }); - this.pipeline.addPolicy( - coreRestPipeline.bearerTokenAuthenticationPolicy({ - scopes: `${optionsWithDefaults.baseUri}/.default`, - challengeCallbacks: { - authorizeRequestOnChallenge: - coreClient.authorizeRequestOnClaimChallenge - } - }) - ); - } + } + if ( + !options || + !options.pipeline || + options.pipeline.getOrderedPolicies().length == 0 || + !bearerTokenAuthenticationPolicyFound + ) { + this.pipeline.removePolicy({ + name: coreRestPipeline.bearerTokenAuthenticationPolicyName + }); + this.pipeline.addPolicy( + coreRestPipeline.bearerTokenAuthenticationPolicy({ + credential: credentials, + scopes: `${optionsWithDefaults.credentialScopes}`, + challengeCallbacks: { + authorizeRequestOnChallenge: + coreClient.authorizeRequestOnClaimChallenge + } + }) + ); } // Parameter assignments this.subscriptionId = subscriptionId; // Assigning values to Constant parameters this.$host = options.$host || "https://management.azure.com"; - this.apiVersion = options.apiVersion || "2022-03-01"; + this.apiVersion = options.apiVersion || "2022-10-01"; this.backupResourceStorageConfigsNonCRR = new BackupResourceStorageConfigsNonCRRImpl( this ); @@ -271,12 +285,44 @@ export class RecoveryServicesBackupClient extends coreClient.ServiceClient { ); this.backupProtectableItems = new BackupProtectableItemsImpl(this); this.backupProtectionContainers = new BackupProtectionContainersImpl(this); + this.deletedProtectionContainers = new DeletedProtectionContainersImpl( + this + ); this.securityPINs = new SecurityPINsImpl(this); this.recoveryPointsRecommendedForMove = new RecoveryPointsRecommendedForMoveImpl( this ); this.resourceGuardProxies = new ResourceGuardProxiesImpl(this); this.resourceGuardProxy = new ResourceGuardProxyImpl(this); + this.addCustomApiVersionPolicy(options.apiVersion); + } + + /** A function that adds a policy that sets the api-version (or equivalent) to reflect the library version. */ + private addCustomApiVersionPolicy(apiVersion?: string) { + if (!apiVersion) { + return; + } + const apiVersionPolicy = { + name: "CustomApiVersionPolicy", + async sendRequest( + request: PipelineRequest, + next: SendRequest + ): Promise { + const param = request.url.split("?"); + if (param.length > 1) { + const newParams = param[1].split("&").map((item) => { + if (item.indexOf("api-version") > -1) { + return "api-version=" + apiVersion; + } else { + return item; + } + }); + request.url = param[0] + "?" + newParams.join("&"); + } + return next(request); + } + }; + this.pipeline.addPolicy(apiVersionPolicy); } /** @@ -639,6 +685,7 @@ export class RecoveryServicesBackupClient extends coreClient.ServiceClient { protectionPolicyOperationStatuses: ProtectionPolicyOperationStatuses; backupProtectableItems: BackupProtectableItems; backupProtectionContainers: BackupProtectionContainers; + deletedProtectionContainers: DeletedProtectionContainers; securityPINs: SecurityPINs; recoveryPointsRecommendedForMove: RecoveryPointsRecommendedForMove; resourceGuardProxies: ResourceGuardProxies; diff --git a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/test/sampleTest.ts b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/test/sampleTest.ts index 7ed89b043e1b..25aeb3ebcc36 100644 --- a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/test/sampleTest.ts +++ b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/test/sampleTest.ts @@ -7,35 +7,30 @@ */ import { - env, - record, - RecorderEnvironmentSetup, - Recorder + Recorder, + RecorderStartOptions, + env } from "@azure-tools/test-recorder"; -import * as assert from "assert"; +import { assert } from "chai"; +import { Context } from "mocha"; -const recorderEnvSetup: RecorderEnvironmentSetup = { - replaceableVariables: { - AZURE_CLIENT_ID: "azure_client_id", - AZURE_CLIENT_SECRET: "azure_client_secret", - AZURE_TENANT_ID: "88888888-8888-8888-8888-888888888888", - SUBSCRIPTION_ID: "azure_subscription_id" - }, - customizationsOnRecordings: [ - (recording: any): any => - recording.replace( - /"access_token":"[^"]*"/g, - `"access_token":"access_token"` - ) - ], - queryParametersToSkip: [] +const replaceableVariables: Record = { + AZURE_CLIENT_ID: "azure_client_id", + AZURE_CLIENT_SECRET: "azure_client_secret", + AZURE_TENANT_ID: "88888888-8888-8888-8888-888888888888", + SUBSCRIPTION_ID: "azure_subscription_id" +}; + +const recorderOptions: RecorderStartOptions = { + envSetupForPlayback: replaceableVariables }; describe("My test", () => { let recorder: Recorder; - beforeEach(async function() { - recorder = record(this, recorderEnvSetup); + beforeEach(async function(this: Context) { + recorder = new Recorder(this.currentTest); + await recorder.start(recorderOptions); }); afterEach(async function() { diff --git a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/tsconfig.json b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/tsconfig.json index a7e9eaf1a49b..3e6ae96443f3 100644 --- a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/tsconfig.json +++ b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/tsconfig.json @@ -15,17 +15,11 @@ ], "declaration": true, "outDir": "./dist-esm", - "importHelpers": true, - "paths": { - "@azure/arm-recoveryservicesbackup": [ - "./src/index" - ] - } + "importHelpers": true }, "include": [ "./src/**/*.ts", - "./test/**/*.ts", - "samples-dev/**/*.ts" + "./test/**/*.ts" ], "exclude": [ "node_modules"