/*
 * Copyright (c) Microsoft Corporation. All rights reserved.
 * Licensed under the MIT License. See License.txt in the project root for
 * license information.
 *
 * Code generated by Microsoft (R) AutoRest Code Generator.
 * Changes may cause incorrect behavior and will be lost if the code is
 * regenerated.
 */

/* jshint latedef:false */
/* jshint forin:false */
/* jshint noempty:false */

'use strict';

var msRestAzure = require('ms-rest-azure');

exports.BaseResource = msRestAzure.BaseResource;
exports.CloudError = msRestAzure.CloudError;
exports.FeatureSupportRequest = require('./featureSupportRequest');
exports.AzureBackupGoalFeatureSupportRequest = require('./azureBackupGoalFeatureSupportRequest');
exports.AzureFileshareProtectedItemExtendedInfo = require('./azureFileshareProtectedItemExtendedInfo');
exports.ProtectedItem = require('./protectedItem');
exports.AzureFileshareProtectedItem = require('./azureFileshareProtectedItem');
exports.SchedulePolicy = require('./schedulePolicy');
exports.RetentionPolicy = require('./retentionPolicy');
exports.ProtectionPolicy = require('./protectionPolicy');
exports.AzureFileShareProtectionPolicy = require('./azureFileShareProtectionPolicy');
exports.RestoreFileSpecs = require('./restoreFileSpecs');
exports.TargetAFSRestoreInfo = require('./targetAFSRestoreInfo');
exports.RestoreRequest = require('./restoreRequest');
exports.AzureFileShareRestoreRequest = require('./azureFileShareRestoreRequest');
exports.AzureIaaSVMProtectedItem = require('./azureIaaSVMProtectedItem');
exports.AzureIaaSClassicComputeVMProtectedItem = require('./azureIaaSClassicComputeVMProtectedItem');
exports.AzureIaaSComputeVMProtectedItem = require('./azureIaaSComputeVMProtectedItem');
exports.AzureIaaSVMErrorInfo = require('./azureIaaSVMErrorInfo');
exports.AzureIaaSVMHealthDetails = require('./azureIaaSVMHealthDetails');
exports.AzureIaaSVMJobTaskDetails = require('./azureIaaSVMJobTaskDetails');
exports.AzureIaaSVMJobExtendedInfo = require('./azureIaaSVMJobExtendedInfo');
exports.Job = require('./job');
exports.AzureIaaSVMJob = require('./azureIaaSVMJob');
exports.AzureIaaSVMProtectedItemExtendedInfo = require('./azureIaaSVMProtectedItemExtendedInfo');
exports.AzureIaaSVMProtectionPolicy = require('./azureIaaSVMProtectionPolicy');
exports.ProtectionIntent = require('./protectionIntent');
exports.AzureRecoveryServiceVaultProtectionIntent = require('./azureRecoveryServiceVaultProtectionIntent');
exports.AzureResourceProtectionIntent = require('./azureResourceProtectionIntent');
exports.AzureSqlProtectedItemExtendedInfo = require('./azureSqlProtectedItemExtendedInfo');
exports.AzureSqlProtectedItem = require('./azureSqlProtectedItem');
exports.AzureSqlProtectionPolicy = require('./azureSqlProtectionPolicy');
exports.AzureStorageErrorInfo = require('./azureStorageErrorInfo');
exports.AzureStorageJobTaskDetails = require('./azureStorageJobTaskDetails');
exports.AzureStorageJobExtendedInfo = require('./azureStorageJobExtendedInfo');
exports.AzureStorageJob = require('./azureStorageJob');
exports.AzureVMResourceFeatureSupportRequest = require('./azureVMResourceFeatureSupportRequest');
exports.AzureVMResourceFeatureSupportResponse = require('./azureVMResourceFeatureSupportResponse');
exports.ErrorDetail = require('./errorDetail');
exports.AzureVmWorkloadProtectedItemExtendedInfo = require('./azureVmWorkloadProtectedItemExtendedInfo');
exports.AzureVmWorkloadProtectedItem = require('./azureVmWorkloadProtectedItem');
exports.Settings = require('./settings');
exports.SubProtectionPolicy = require('./subProtectionPolicy');
exports.AzureVmWorkloadProtectionPolicy = require('./azureVmWorkloadProtectionPolicy');
exports.AzureVmWorkloadSAPHanaDatabaseProtectedItem = require('./azureVmWorkloadSAPHanaDatabaseProtectedItem');
exports.AzureVmWorkloadSQLDatabaseProtectedItem = require('./azureVmWorkloadSQLDatabaseProtectedItem');
exports.AzureWorkloadAutoProtectionIntent = require('./azureWorkloadAutoProtectionIntent');
exports.AzureWorkloadErrorInfo = require('./azureWorkloadErrorInfo');
exports.AzureWorkloadJobTaskDetails = require('./azureWorkloadJobTaskDetails');
exports.AzureWorkloadJobExtendedInfo = require('./azureWorkloadJobExtendedInfo');
exports.AzureWorkloadJob = require('./azureWorkloadJob');
exports.AzureWorkloadRestoreRequest = require('./azureWorkloadRestoreRequest');
exports.AzureWorkloadSAPHanaRestoreRequest = require('./azureWorkloadSAPHanaRestoreRequest');
exports.AzureWorkloadSAPHanaPointInTimeRestoreRequest = require('./azureWorkloadSAPHanaPointInTimeRestoreRequest');
exports.TargetRestoreInfo = require('./targetRestoreInfo');
exports.AzureWorkloadSQLAutoProtectionIntent = require('./azureWorkloadSQLAutoProtectionIntent');
exports.AzureWorkloadSQLRestoreRequest = require('./azureWorkloadSQLRestoreRequest');
exports.AzureWorkloadSQLPointInTimeRestoreRequest = require('./azureWorkloadSQLPointInTimeRestoreRequest');
exports.SQLDataDirectoryMapping = require('./sQLDataDirectoryMapping');
exports.NameInfo = require('./nameInfo');
exports.BackupManagementUsage = require('./backupManagementUsage');
exports.BackupStatusRequest = require('./backupStatusRequest');
exports.BackupStatusResponse = require('./backupStatusResponse');
exports.BMSBackupSummariesQueryObject = require('./bMSBackupSummariesQueryObject');
exports.Day = require('./day');
exports.DailyRetentionFormat = require('./dailyRetentionFormat');
exports.RetentionDuration = require('./retentionDuration');
exports.DailyRetentionSchedule = require('./dailyRetentionSchedule');
exports.DpmErrorInfo = require('./dpmErrorInfo');
exports.DpmJobTaskDetails = require('./dpmJobTaskDetails');
exports.DpmJobExtendedInfo = require('./dpmJobExtendedInfo');
exports.DpmJob = require('./dpmJob');
exports.DPMProtectedItemExtendedInfo = require('./dPMProtectedItemExtendedInfo');
exports.DPMProtectedItem = require('./dPMProtectedItem');
exports.EncryptionDetails = require('./encryptionDetails');
exports.OperationResultInfoBase = require('./operationResultInfoBase');
exports.ExportJobsOperationResultInfo = require('./exportJobsOperationResultInfo');
exports.GenericProtectedItem = require('./genericProtectedItem');
exports.GenericProtectionPolicy = require('./genericProtectionPolicy');
exports.IaasVMRestoreRequest = require('./iaasVMRestoreRequest');
exports.JobQueryObject = require('./jobQueryObject');
exports.Resource = require('./resource');
exports.JobResource = require('./jobResource');
exports.LogSchedulePolicy = require('./logSchedulePolicy');
exports.WeeklyRetentionSchedule = require('./weeklyRetentionSchedule');
exports.WeeklyRetentionFormat = require('./weeklyRetentionFormat');
exports.MonthlyRetentionSchedule = require('./monthlyRetentionSchedule');
exports.YearlyRetentionSchedule = require('./yearlyRetentionSchedule');
exports.LongTermRetentionPolicy = require('./longTermRetentionPolicy');
exports.LongTermSchedulePolicy = require('./longTermSchedulePolicy');
exports.MabErrorInfo = require('./mabErrorInfo');
exports.MabFileFolderProtectedItemExtendedInfo = require('./mabFileFolderProtectedItemExtendedInfo');
exports.MabFileFolderProtectedItem = require('./mabFileFolderProtectedItem');
exports.MabJobTaskDetails = require('./mabJobTaskDetails');
exports.MabJobExtendedInfo = require('./mabJobExtendedInfo');
exports.MabJob = require('./mabJob');
exports.MabProtectionPolicy = require('./mabProtectionPolicy');
exports.OperationResultInfo = require('./operationResultInfo');
exports.OperationWorkerResponse = require('./operationWorkerResponse');
exports.OperationResultInfoBaseResource = require('./operationResultInfoBaseResource');
exports.PreValidateEnableBackupRequest = require('./preValidateEnableBackupRequest');
exports.PreValidateEnableBackupResponse = require('./preValidateEnableBackupResponse');
exports.ProtectedItemQueryObject = require('./protectedItemQueryObject');
exports.ProtectedItemResource = require('./protectedItemResource');
exports.ProtectionIntentQueryObject = require('./protectionIntentQueryObject');
exports.ProtectionIntentResource = require('./protectionIntentResource');
exports.ProtectionPolicyQueryObject = require('./protectionPolicyQueryObject');
exports.ProtectionPolicyResource = require('./protectionPolicyResource');
exports.ResourceList = require('./resourceList');
exports.SimpleRetentionPolicy = require('./simpleRetentionPolicy');
exports.SimpleSchedulePolicy = require('./simpleSchedulePolicy');
exports.ValidateOperationRequest = require('./validateOperationRequest');
exports.ValidateRestoreOperationRequest = require('./validateRestoreOperationRequest');
exports.ValidateIaasVMRestoreOperationRequest = require('./validateIaasVMRestoreOperationRequest');
exports.ValidateOperationResponse = require('./validateOperationResponse');
exports.ValidateOperationsResponse = require('./validateOperationsResponse');
exports.DPMContainerExtendedInfo = require('./dPMContainerExtendedInfo');
exports.ProtectionContainer = require('./protectionContainer');
exports.AzureBackupServerContainer = require('./azureBackupServerContainer');
exports.BackupEngineBase = require('./backupEngineBase');
exports.AzureBackupServerEngine = require('./azureBackupServerEngine');
exports.BackupRequest = require('./backupRequest');
exports.AzureFileShareBackupRequest = require('./azureFileShareBackupRequest');
exports.WorkloadProtectableItem = require('./workloadProtectableItem');
exports.AzureFileShareProtectableItem = require('./azureFileShareProtectableItem');
exports.RecoveryPoint = require('./recoveryPoint');
exports.AzureFileShareRecoveryPoint = require('./azureFileShareRecoveryPoint');
exports.IaaSVMContainer = require('./iaaSVMContainer');
exports.AzureIaaSClassicComputeVMContainer = require('./azureIaaSClassicComputeVMContainer');
exports.IaaSVMProtectableItem = require('./iaaSVMProtectableItem');
exports.AzureIaaSClassicComputeVMProtectableItem = require('./azureIaaSClassicComputeVMProtectableItem');
exports.AzureIaaSComputeVMContainer = require('./azureIaaSComputeVMContainer');
exports.AzureIaaSComputeVMProtectableItem = require('./azureIaaSComputeVMProtectableItem');
exports.AzureWorkloadContainer = require('./azureWorkloadContainer');
exports.AzureSQLAGWorkloadContainerProtectionContainer = require('./azureSQLAGWorkloadContainerProtectionContainer');
exports.AzureSqlContainer = require('./azureSqlContainer');
exports.AzureStorageContainer = require('./azureStorageContainer');
exports.ProtectableContainer = require('./protectableContainer');
exports.AzureStorageProtectableContainer = require('./azureStorageProtectableContainer');
exports.AzureVMAppContainerProtectableContainer = require('./azureVMAppContainerProtectableContainer');
exports.AzureVMAppContainerProtectionContainer = require('./azureVMAppContainerProtectionContainer');
exports.WorkloadItem = require('./workloadItem');
exports.AzureVmWorkloadItem = require('./azureVmWorkloadItem');
exports.PreBackupValidation = require('./preBackupValidation');
exports.AzureVmWorkloadProtectableItem = require('./azureVmWorkloadProtectableItem');
exports.AzureVmWorkloadSAPHanaDatabaseProtectableItem = require('./azureVmWorkloadSAPHanaDatabaseProtectableItem');
exports.AzureVmWorkloadSAPHanaDatabaseWorkloadItem = require('./azureVmWorkloadSAPHanaDatabaseWorkloadItem');
exports.AzureVmWorkloadSAPHanaSystemProtectableItem = require('./azureVmWorkloadSAPHanaSystemProtectableItem');
exports.AzureVmWorkloadSAPHanaSystemWorkloadItem = require('./azureVmWorkloadSAPHanaSystemWorkloadItem');
exports.AzureVmWorkloadSQLAvailabilityGroupProtectableItem = require('./azureVmWorkloadSQLAvailabilityGroupProtectableItem');
exports.AzureVmWorkloadSQLDatabaseProtectableItem = require('./azureVmWorkloadSQLDatabaseProtectableItem');
exports.AzureVmWorkloadSQLDatabaseWorkloadItem = require('./azureVmWorkloadSQLDatabaseWorkloadItem');
exports.AzureVmWorkloadSQLInstanceProtectableItem = require('./azureVmWorkloadSQLInstanceProtectableItem');
exports.SQLDataDirectory = require('./sQLDataDirectory');
exports.AzureVmWorkloadSQLInstanceWorkloadItem = require('./azureVmWorkloadSQLInstanceWorkloadItem');
exports.AzureWorkloadBackupRequest = require('./azureWorkloadBackupRequest');
exports.InquiryValidation = require('./inquiryValidation');
exports.WorkloadInquiryDetails = require('./workloadInquiryDetails');
exports.InquiryInfo = require('./inquiryInfo');
exports.DistributedNodesInfo = require('./distributedNodesInfo');
exports.AzureWorkloadContainerExtendedInfo = require('./azureWorkloadContainerExtendedInfo');
exports.AzureWorkloadRecoveryPoint = require('./azureWorkloadRecoveryPoint');
exports.PointInTimeRange = require('./pointInTimeRange');
exports.AzureWorkloadSAPHanaRecoveryPoint = require('./azureWorkloadSAPHanaRecoveryPoint');
exports.AzureWorkloadSAPHanaPointInTimeRecoveryPoint = require('./azureWorkloadSAPHanaPointInTimeRecoveryPoint');
exports.AzureWorkloadSQLRecoveryPoint = require('./azureWorkloadSQLRecoveryPoint');
exports.AzureWorkloadSQLPointInTimeRecoveryPoint = require('./azureWorkloadSQLPointInTimeRecoveryPoint');
exports.AzureWorkloadSQLRecoveryPointExtendedInfo = require('./azureWorkloadSQLRecoveryPointExtendedInfo');
exports.BackupEngineExtendedInfo = require('./backupEngineExtendedInfo');
exports.BackupEngineBaseResource = require('./backupEngineBaseResource');
exports.BackupRequestResource = require('./backupRequestResource');
exports.BackupResourceConfig = require('./backupResourceConfig');
exports.BackupResourceConfigResource = require('./backupResourceConfigResource');
exports.BackupResourceVaultConfig = require('./backupResourceVaultConfig');
exports.BackupResourceVaultConfigResource = require('./backupResourceVaultConfigResource');
exports.BEKDetails = require('./bEKDetails');
exports.BMSBackupEngineQueryObject = require('./bMSBackupEngineQueryObject');
exports.BMSBackupEnginesQueryObject = require('./bMSBackupEnginesQueryObject');
exports.BMSContainerQueryObject = require('./bMSContainerQueryObject');
exports.BMSContainersInquiryQueryObject = require('./bMSContainersInquiryQueryObject');
exports.BMSPOQueryObject = require('./bMSPOQueryObject');
exports.BMSRefreshContainersQueryObject = require('./bMSRefreshContainersQueryObject');
exports.BMSRPQueryObject = require('./bMSRPQueryObject');
exports.BMSWorkloadItemQueryObject = require('./bMSWorkloadItemQueryObject');
exports.ClientScriptForConnect = require('./clientScriptForConnect');
exports.ContainerIdentityInfo = require('./containerIdentityInfo');
exports.DpmBackupEngine = require('./dpmBackupEngine');
exports.DpmContainer = require('./dpmContainer');
exports.GenericContainerExtendedInfo = require('./genericContainerExtendedInfo');
exports.GenericContainer = require('./genericContainer');
exports.GenericRecoveryPoint = require('./genericRecoveryPoint');
exports.GetProtectedItemQueryObject = require('./getProtectedItemQueryObject');
exports.IaasVMBackupRequest = require('./iaasVMBackupRequest');
exports.ILRRequest = require('./iLRRequest');
exports.IaasVMILRRegistrationRequest = require('./iaasVMILRRegistrationRequest');
exports.KEKDetails = require('./kEKDetails');
exports.KeyAndSecretDetails = require('./keyAndSecretDetails');
exports.RecoveryPointTierInformation = require('./recoveryPointTierInformation');
exports.IaasVMRecoveryPoint = require('./iaasVMRecoveryPoint');
exports.ILRRequestResource = require('./iLRRequestResource');
exports.InstantItemRecoveryTarget = require('./instantItemRecoveryTarget');
exports.MabContainerExtendedInfo = require('./mabContainerExtendedInfo');
exports.MABContainerHealthDetails = require('./mABContainerHealthDetails');
exports.MabContainer = require('./mabContainer');
exports.OperationStatusError = require('./operationStatusError');
exports.OperationStatusExtendedInfo = require('./operationStatusExtendedInfo');
exports.OperationStatus = require('./operationStatus');
exports.OperationStatusJobExtendedInfo = require('./operationStatusJobExtendedInfo');
exports.OperationStatusJobsExtendedInfo = require('./operationStatusJobsExtendedInfo');
exports.OperationStatusProvisionILRExtendedInfo = require('./operationStatusProvisionILRExtendedInfo');
exports.ProtectableContainerResource = require('./protectableContainerResource');
exports.ProtectionContainerResource = require('./protectionContainerResource');
exports.RecoveryPointResource = require('./recoveryPointResource');
exports.RestoreRequestResource = require('./restoreRequestResource');
exports.TokenInformation = require('./tokenInformation');
exports.WorkloadItemResource = require('./workloadItemResource');
exports.WorkloadProtectableItemResource = require('./workloadProtectableItemResource');
exports.ClientDiscoveryDisplay = require('./clientDiscoveryDisplay');
exports.ClientDiscoveryForLogSpecification = require('./clientDiscoveryForLogSpecification');
exports.ClientDiscoveryForServiceSpecification = require('./clientDiscoveryForServiceSpecification');
exports.ClientDiscoveryForProperties = require('./clientDiscoveryForProperties');
exports.ClientDiscoveryValueForSingleApi = require('./clientDiscoveryValueForSingleApi');
exports.JobResourceList = require('./jobResourceList');
exports.ProtectionPolicyResourceList = require('./protectionPolicyResourceList');
exports.ProtectedItemResourceList = require('./protectedItemResourceList');
exports.ProtectionIntentResourceList = require('./protectionIntentResourceList');
exports.BackupManagementUsageList = require('./backupManagementUsageList');
exports.BackupEngineBaseResourceList = require('./backupEngineBaseResourceList');
exports.ProtectableContainerResourceList = require('./protectableContainerResourceList');
exports.WorkloadItemResourceList = require('./workloadItemResourceList');
exports.RecoveryPointResourceList = require('./recoveryPointResourceList');
exports.WorkloadProtectableItemResourceList = require('./workloadProtectableItemResourceList');
exports.ProtectionContainerResourceList = require('./protectionContainerResourceList');
exports.ClientDiscoveryResponse = require('./clientDiscoveryResponse');
exports.discriminators = {
  'FeatureSupportRequest.AzureBackupGoals' : exports.AzureBackupGoalFeatureSupportRequest,
  'ProtectedItem.AzureFileShareProtectedItem' : exports.AzureFileshareProtectedItem,
  'SchedulePolicy' : exports.SchedulePolicy,
  'RetentionPolicy' : exports.RetentionPolicy,
  'ProtectionPolicy.AzureStorage' : exports.AzureFileShareProtectionPolicy,
  'RestoreRequest.AzureFileShareRestoreRequest' : exports.AzureFileShareRestoreRequest,
  'ProtectedItem.Microsoft.ClassicCompute/virtualMachines' : exports.AzureIaaSClassicComputeVMProtectedItem,
  'ProtectedItem.Microsoft.Compute/virtualMachines' : exports.AzureIaaSComputeVMProtectedItem,
  'Job.AzureIaaSVMJob' : exports.AzureIaaSVMJob,
  'ProtectedItem.AzureIaaSVMProtectedItem' : exports.AzureIaaSVMProtectedItem,
  'ProtectionPolicy.AzureIaasVM' : exports.AzureIaaSVMProtectionPolicy,
  'ProtectionIntent.RecoveryServiceVaultItem' : exports.AzureRecoveryServiceVaultProtectionIntent,
  'ProtectionIntent.AzureResourceItem' : exports.AzureResourceProtectionIntent,
  'ProtectedItem.Microsoft.Sql/servers/databases' : exports.AzureSqlProtectedItem,
  'ProtectionPolicy.AzureSql' : exports.AzureSqlProtectionPolicy,
  'Job.AzureStorageJob' : exports.AzureStorageJob,
  'FeatureSupportRequest.AzureVMResourceBackup' : exports.AzureVMResourceFeatureSupportRequest,
  'ProtectedItem.AzureVmWorkloadProtectedItem' : exports.AzureVmWorkloadProtectedItem,
  'ProtectionPolicy.AzureWorkload' : exports.AzureVmWorkloadProtectionPolicy,
  'ProtectedItem.AzureVmWorkloadSAPHanaDatabase' : exports.AzureVmWorkloadSAPHanaDatabaseProtectedItem,
  'ProtectedItem.AzureVmWorkloadSQLDatabase' : exports.AzureVmWorkloadSQLDatabaseProtectedItem,
  'ProtectionIntent.AzureWorkloadAutoProtectionIntent' : exports.AzureWorkloadAutoProtectionIntent,
  'Job.AzureWorkloadJob' : exports.AzureWorkloadJob,
  'RestoreRequest.AzureWorkloadRestoreRequest' : exports.AzureWorkloadRestoreRequest,
  'RestoreRequest.AzureWorkloadSAPHanaPointInTimeRestoreRequest' : exports.AzureWorkloadSAPHanaPointInTimeRestoreRequest,
  'RestoreRequest.AzureWorkloadSAPHanaRestoreRequest' : exports.AzureWorkloadSAPHanaRestoreRequest,
  'ProtectionIntent.AzureWorkloadSQLAutoProtectionIntent' : exports.AzureWorkloadSQLAutoProtectionIntent,
  'RestoreRequest.AzureWorkloadSQLPointInTimeRestoreRequest' : exports.AzureWorkloadSQLPointInTimeRestoreRequest,
  'RestoreRequest.AzureWorkloadSQLRestoreRequest' : exports.AzureWorkloadSQLRestoreRequest,
  'Job.DpmJob' : exports.DpmJob,
  'ProtectedItem.DPMProtectedItem' : exports.DPMProtectedItem,
  'OperationResultInfoBase.ExportJobsOperationResultInfo' : exports.ExportJobsOperationResultInfo,
  'FeatureSupportRequest' : exports.FeatureSupportRequest,
  'ProtectedItem.GenericProtectedItem' : exports.GenericProtectedItem,
  'ProtectionPolicy.GenericProtectionPolicy' : exports.GenericProtectionPolicy,
  'RestoreRequest.IaasVMRestoreRequest' : exports.IaasVMRestoreRequest,
  'Job' : exports.Job,
  'SchedulePolicy.LogSchedulePolicy' : exports.LogSchedulePolicy,
  'RetentionPolicy.LongTermRetentionPolicy' : exports.LongTermRetentionPolicy,
  'SchedulePolicy.LongTermSchedulePolicy' : exports.LongTermSchedulePolicy,
  'ProtectedItem.MabFileFolderProtectedItem' : exports.MabFileFolderProtectedItem,
  'Job.MabJob' : exports.MabJob,
  'ProtectionPolicy.MAB' : exports.MabProtectionPolicy,
  'OperationResultInfoBase.OperationResultInfo' : exports.OperationResultInfo,
  'OperationResultInfoBase' : exports.OperationResultInfoBase,
  'ProtectedItem' : exports.ProtectedItem,
  'ProtectionIntent' : exports.ProtectionIntent,
  'ProtectionPolicy' : exports.ProtectionPolicy,
  'RestoreRequest' : exports.RestoreRequest,
  'RetentionPolicy.SimpleRetentionPolicy' : exports.SimpleRetentionPolicy,
  'SchedulePolicy.SimpleSchedulePolicy' : exports.SimpleSchedulePolicy,
  'ValidateOperationRequest.ValidateIaasVMRestoreOperationRequest' : exports.ValidateIaasVMRestoreOperationRequest,
  'ValidateOperationRequest' : exports.ValidateOperationRequest,
  'ValidateOperationRequest.ValidateRestoreOperationRequest' : exports.ValidateRestoreOperationRequest,
  'ProtectionContainer.AzureBackupServerContainer' : exports.AzureBackupServerContainer,
  'BackupEngineBase.AzureBackupServerEngine' : exports.AzureBackupServerEngine,
  'BackupRequest.AzureFileShareBackupRequest' : exports.AzureFileShareBackupRequest,
  'WorkloadProtectableItem.AzureFileShare' : exports.AzureFileShareProtectableItem,
  'RecoveryPoint.AzureFileShareRecoveryPoint' : exports.AzureFileShareRecoveryPoint,
  'ProtectionContainer.Microsoft.ClassicCompute/virtualMachines' : exports.AzureIaaSClassicComputeVMContainer,
  'WorkloadProtectableItem.Microsoft.ClassicCompute/virtualMachines' : exports.AzureIaaSClassicComputeVMProtectableItem,
  'ProtectionContainer.Microsoft.Compute/virtualMachines' : exports.AzureIaaSComputeVMContainer,
  'WorkloadProtectableItem.Microsoft.Compute/virtualMachines' : exports.AzureIaaSComputeVMProtectableItem,
  'ProtectionContainer.SQLAGWorkLoadContainer' : exports.AzureSQLAGWorkloadContainerProtectionContainer,
  'ProtectionContainer.AzureSqlContainer' : exports.AzureSqlContainer,
  'ProtectionContainer.StorageContainer' : exports.AzureStorageContainer,
  'ProtectableContainer.StorageContainer' : exports.AzureStorageProtectableContainer,
  'ProtectableContainer.VMAppContainer' : exports.AzureVMAppContainerProtectableContainer,
  'ProtectionContainer.VMAppContainer' : exports.AzureVMAppContainerProtectionContainer,
  'WorkloadItem.AzureVmWorkloadItem' : exports.AzureVmWorkloadItem,
  'WorkloadProtectableItem.AzureVmWorkloadProtectableItem' : exports.AzureVmWorkloadProtectableItem,
  'WorkloadProtectableItem.SAPHanaDatabase' : exports.AzureVmWorkloadSAPHanaDatabaseProtectableItem,
  'WorkloadItem.SAPHanaDatabase' : exports.AzureVmWorkloadSAPHanaDatabaseWorkloadItem,
  'WorkloadProtectableItem.SAPHanaSystem' : exports.AzureVmWorkloadSAPHanaSystemProtectableItem,
  'WorkloadItem.SAPHanaSystem' : exports.AzureVmWorkloadSAPHanaSystemWorkloadItem,
  'WorkloadProtectableItem.SQLAvailabilityGroupContainer' : exports.AzureVmWorkloadSQLAvailabilityGroupProtectableItem,
  'WorkloadProtectableItem.SQLDataBase' : exports.AzureVmWorkloadSQLDatabaseProtectableItem,
  'WorkloadItem.SQLDataBase' : exports.AzureVmWorkloadSQLDatabaseWorkloadItem,
  'WorkloadProtectableItem.SQLInstance' : exports.AzureVmWorkloadSQLInstanceProtectableItem,
  'WorkloadItem.SQLInstance' : exports.AzureVmWorkloadSQLInstanceWorkloadItem,
  'BackupRequest.AzureWorkloadBackupRequest' : exports.AzureWorkloadBackupRequest,
  'ProtectionContainer.AzureWorkloadBackupRequest' : exports.AzureWorkloadContainer,
  'RecoveryPoint.AzureWorkloadRecoveryPoint' : exports.AzureWorkloadRecoveryPoint,
  'RecoveryPoint.AzureWorkloadSAPHanaPointInTimeRecoveryPoint' : exports.AzureWorkloadSAPHanaPointInTimeRecoveryPoint,
  'RecoveryPoint.AzureWorkloadSAPHanaRecoveryPoint' : exports.AzureWorkloadSAPHanaRecoveryPoint,
  'RecoveryPoint.AzureWorkloadSQLPointInTimeRecoveryPoint' : exports.AzureWorkloadSQLPointInTimeRecoveryPoint,
  'RecoveryPoint.AzureWorkloadSQLRecoveryPoint' : exports.AzureWorkloadSQLRecoveryPoint,
  'BackupEngineBase' : exports.BackupEngineBase,
  'BackupRequest' : exports.BackupRequest,
  'BackupEngineBase.DpmBackupEngine' : exports.DpmBackupEngine,
  'ProtectionContainer.DPMContainer' : exports.DpmContainer,
  'ProtectionContainer.GenericContainer' : exports.GenericContainer,
  'RecoveryPoint.GenericRecoveryPoint' : exports.GenericRecoveryPoint,
  'BackupRequest.IaasVMBackupRequest' : exports.IaasVMBackupRequest,
  'ProtectionContainer.IaaSVMContainer' : exports.IaaSVMContainer,
  'ILRRequest.IaasVMILRRegistrationRequest' : exports.IaasVMILRRegistrationRequest,
  'WorkloadProtectableItem.IaaSVMProtectableItem' : exports.IaaSVMProtectableItem,
  'RecoveryPoint.IaasVMRecoveryPoint' : exports.IaasVMRecoveryPoint,
  'ILRRequest' : exports.ILRRequest,
  'ProtectionContainer.Windows' : exports.MabContainer,
  'OperationStatusExtendedInfo' : exports.OperationStatusExtendedInfo,
  'OperationStatusExtendedInfo.OperationStatusJobExtendedInfo' : exports.OperationStatusJobExtendedInfo,
  'OperationStatusExtendedInfo.OperationStatusJobsExtendedInfo' : exports.OperationStatusJobsExtendedInfo,
  'OperationStatusExtendedInfo.OperationStatusProvisionILRExtendedInfo' : exports.OperationStatusProvisionILRExtendedInfo,
  'ProtectableContainer' : exports.ProtectableContainer,
  'ProtectionContainer' : exports.ProtectionContainer,
  'RecoveryPoint' : exports.RecoveryPoint,
  'WorkloadItem' : exports.WorkloadItem,
  'WorkloadProtectableItem' : exports.WorkloadProtectableItem
};
