@azure/arm-storsimple1200series 2.1.1-alpha.20250131.1 → 2.1.1-alpha.20250204.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.min.js CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0});var tslib=require("tslib"),coreClient=require("@azure/core-client"),coreRestPipeline=require("@azure/core-rest-pipeline"),coreLro=require("@azure/core-lro");function _interopNamespaceDefault(a){var i=Object.create(null);return a&&Object.keys(a).forEach(function(e){var r;"default"!==e&&(r=Object.getOwnPropertyDescriptor(a,e),Object.defineProperty(i,e,r.get?r:{enumerable:!0,get:function(){return a[e]}}))}),i.default=a,Object.freeze(i)}var coreClient__namespace=_interopNamespaceDefault(coreClient),coreRestPipeline__namespace=_interopNamespaceDefault(coreRestPipeline);let pageMap=new WeakMap;function getContinuationToken(e){return"object"!=typeof e||null===e||null==(e=pageMap.get(e))?void 0:e.continuationToken}function setContinuationToken(e,r){var a;"object"==typeof e&&null!==e&&r&&((a=null!=(a=pageMap.get(e))?a:{}).continuationToken=r,pageMap.set(e,a))}let ManagerList={type:{name:"Composite",className:"ManagerList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"Manager"}}}}}}},ManagerIntrinsicSettings={type:{name:"Composite",className:"ManagerIntrinsicSettings",modelProperties:{type:{serializedName:"type",required:!0,type:{name:"Enum",allowedValues:["GardaV1","HelsinkiV1"]}}}}},ManagerSku={type:{name:"Composite",className:"ManagerSku",modelProperties:{name:{defaultValue:"Standard",isConstant:!0,serializedName:"name",type:{name:"String"}}}}},Resource={type:{name:"Composite",className:"Resource",modelProperties:{id:{serializedName:"id",readOnly:!0,type:{name:"String"}},name:{serializedName:"name",readOnly:!0,type:{name:"String"}},type:{serializedName:"type",readOnly:!0,type:{name:"String"}},location:{serializedName:"location",required:!0,type:{name:"String"}},tags:{serializedName:"tags",type:{name:"Dictionary",value:{type:{name:"String"}}}}}}},ErrorModel={type:{name:"Composite",className:"ErrorModel",modelProperties:{errorCode:{serializedName:"errorCode",required:!0,type:{name:"String"}},message:{serializedName:"message",type:{name:"Composite",className:"Message"}},values:{serializedName:"values",type:{name:"Sequence",element:{type:{name:"Composite",className:"Item"}}}}}}},Message={type:{name:"Composite",className:"Message",modelProperties:{language:{serializedName:"language",type:{name:"String"}},value:{serializedName:"value",type:{name:"String"}}}}},Item={type:{name:"Composite",className:"Item",modelProperties:{key:{serializedName:"key",required:!0,type:{name:"String"}},value:{serializedName:"value",required:!0,type:{name:"String"}}}}},AvailableProviderOperations={type:{name:"Composite",className:"AvailableProviderOperations",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"AvailableProviderOperation"}}}},nextLink:{serializedName:"nextLink",type:{name:"String"}}}}},AvailableProviderOperation={type:{name:"Composite",className:"AvailableProviderOperation",modelProperties:{name:{serializedName:"name",type:{name:"String"}},display:{serializedName:"display",type:{name:"Composite",className:"AvailableProviderOperationDisplay"}},origin:{serializedName:"origin",type:{name:"String"}},properties:{serializedName:"properties",type:{name:"Dictionary",value:{type:{name:"any"}}}}}}},AvailableProviderOperationDisplay={type:{name:"Composite",className:"AvailableProviderOperationDisplay",modelProperties:{provider:{serializedName:"provider",type:{name:"String"}},resource:{serializedName:"resource",type:{name:"String"}},operation:{serializedName:"operation",type:{name:"String"}},description:{serializedName:"description",type:{name:"String"}}}}},ManagerPatch={type:{name:"Composite",className:"ManagerPatch",modelProperties:{tags:{serializedName:"tags",type:{name:"Dictionary",value:{type:{name:"String"}}}}}}},AccessControlRecordList={type:{name:"Composite",className:"AccessControlRecordList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"AccessControlRecord"}}}}}}},BaseModel={type:{name:"Composite",className:"BaseModel",modelProperties:{id:{serializedName:"id",readOnly:!0,type:{name:"String"}},name:{serializedName:"name",readOnly:!0,type:{name:"String"}},type:{serializedName:"type",readOnly:!0,type:{name:"String"}}}}},AlertList={type:{name:"Composite",className:"AlertList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"Alert"}}}},nextLink:{serializedName:"nextLink",type:{name:"String"}}}}},AlertSource={type:{name:"Composite",className:"AlertSource",modelProperties:{name:{serializedName:"name",type:{name:"String"}},timeZone:{serializedName:"timeZone",type:{name:"String"}},alertSourceType:{serializedName:"alertSourceType",type:{name:"Enum",allowedValues:["Resource","Device"]}}}}},AlertErrorDetails={type:{name:"Composite",className:"AlertErrorDetails",modelProperties:{errorCode:{serializedName:"errorCode",type:{name:"String"}},errorMessage:{serializedName:"errorMessage",type:{name:"String"}},occurences:{serializedName:"occurences",type:{name:"Number"}}}}},BackupList={type:{name:"Composite",className:"BackupList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"Backup"}}}},nextLink:{serializedName:"nextLink",type:{name:"String"}}}}},UploadCertificateRequest={type:{name:"Composite",className:"UploadCertificateRequest",modelProperties:{contractVersion:{serializedName:"contractVersion",readOnly:!0,type:{name:"Enum",allowedValues:["InvalidVersion","V2011_09","V2012_02","V2012_05","V2012_12","V2013_04","V2013_10","V2013_11","V2014_04","V2014_06","V2014_07","V2014_09","V2014_10","V2014_12","V2015_01","V2015_02","V2015_04","V2015_05","V2015_06","V2015_07","V2015_08","V2015_10","V2015_12","V2016_01","V2016_02","V2016_04","V2016_05","V2016_07","V2016_08"]}},authType:{serializedName:"properties.authType",type:{name:"Enum",allowedValues:["Invalid","AccessControlService","AzureActiveDirectory"]}},certificate:{serializedName:"properties.certificate",required:!0,type:{name:"String"}}}}},ClearAlertRequest={type:{name:"Composite",className:"ClearAlertRequest",modelProperties:{resolutionMessage:{serializedName:"resolutionMessage",type:{name:"String"}},alerts:{serializedName:"alerts",required:!0,type:{name:"Sequence",element:{type:{name:"String"}}}}}}},DeviceList={type:{name:"Composite",className:"DeviceList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"Device"}}}}}}},DeviceDetails={type:{name:"Composite",className:"DeviceDetails",modelProperties:{endpointCount:{serializedName:"endpointCount",type:{name:"Number"}},totalStorageInBytes:{serializedName:"totalStorageInBytes",type:{name:"Number"}},totalLocalStorageInBytes:{serializedName:"totalLocalStorageInBytes",type:{name:"Number"}},provisionedStorageInBytes:{serializedName:"provisionedStorageInBytes",type:{name:"Number"}},provisionedLocalStorageInBytes:{serializedName:"provisionedLocalStorageInBytes",type:{name:"Number"}},usingStorageInBytes:{serializedName:"usingStorageInBytes",type:{name:"Number"}},usingLocalStorageInBytes:{serializedName:"usingLocalStorageInBytes",type:{name:"Number"}},totalBackupSizeInBytes:{serializedName:"totalBackupSizeInBytes",type:{name:"Number"}},availableStorageInBytes:{serializedName:"availableStorageInBytes",type:{name:"Number"}},availableLocalStorageInBytes:{serializedName:"availableLocalStorageInBytes",type:{name:"Number"}}}}},DevicePatch={type:{name:"Composite",className:"DevicePatch",modelProperties:{deviceDescription:{serializedName:"deviceDescription",type:{name:"String"}}}}},CloneRequest={type:{name:"Composite",className:"CloneRequest",modelProperties:{targetDeviceId:{serializedName:"properties.targetDeviceId",required:!0,type:{name:"String"}},targetAccessPointId:{serializedName:"properties.targetAccessPointId",required:!0,type:{name:"String"}},newEndpointName:{serializedName:"properties.newEndpointName",required:!0,type:{name:"String"}},share:{serializedName:"properties.share",type:{name:"Composite",className:"FileShare"}},disk:{serializedName:"properties.disk",type:{name:"Composite",className:"IscsiDisk"}}}}},BackupScheduleGroupList={type:{name:"Composite",className:"BackupScheduleGroupList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"BackupScheduleGroup"}}}}}}},Time={type:{name:"Composite",className:"Time",modelProperties:{hour:{constraints:{InclusiveMaximum:23,InclusiveMinimum:0},serializedName:"hour",required:!0,type:{name:"Number"}},minute:{constraints:{InclusiveMaximum:59,InclusiveMinimum:0},serializedName:"minute",required:!0,type:{name:"Number"}}}}},ChapSettingsList={type:{name:"Composite",className:"ChapSettingsList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"ChapSettings"}}}}}}},AsymmetricEncryptedSecret={type:{name:"Composite",className:"AsymmetricEncryptedSecret",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"String"}},encryptionCertificateThumbprint:{serializedName:"encryptionCertificateThumbprint",type:{name:"String"}},encryptionAlgorithm:{serializedName:"encryptionAlgorithm",required:!0,type:{name:"Enum",allowedValues:["None","AES256","RSAES_PKCS1_v_1_5"]}}}}},IscsiDiskList={type:{name:"Composite",className:"IscsiDiskList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"IscsiDisk"}}}}}}},FailoverRequest={type:{name:"Composite",className:"FailoverRequest",modelProperties:{accesspointIds:{serializedName:"accesspointIds",type:{name:"Sequence",element:{type:{name:"String"}}}},targetDeviceId:{serializedName:"targetDeviceId",type:{name:"String"}},skipValidation:{serializedName:"skipValidation",type:{name:"Boolean"}},keepSourceDevice:{serializedName:"keepSourceDevice",type:{name:"Boolean"}}}}},FileServerList={type:{name:"Composite",className:"FileServerList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"FileServer"}}}}}}},MetricList={type:{name:"Composite",className:"MetricList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"Metrics"}}}}}}},Metrics={type:{name:"Composite",className:"Metrics",modelProperties:{resourceId:{serializedName:"resourceId",required:!0,type:{name:"String"}},startTime:{serializedName:"startTime",required:!0,type:{name:"DateTime"}},endTime:{serializedName:"endTime",required:!0,type:{name:"DateTime"}},timeGrain:{serializedName:"timeGrain",required:!0,type:{name:"String"}},primaryAggregation:{serializedName:"primaryAggregation",required:!0,type:{name:"Enum",allowedValues:["Average","Last","Maximum","Minimum","None","Total"]}},name:{serializedName:"name",type:{name:"Composite",className:"MetricName"}},dimensions:{serializedName:"dimensions",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"MetricDimension"}}}},unit:{serializedName:"unit",required:!0,type:{name:"Enum",allowedValues:["Bytes","BytesPerSecond","Count","CountPerSecond","Percent","Seconds"]}},type:{serializedName:"type",required:!0,type:{name:"String"}},values:{serializedName:"values",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"MetricData"}}}}}}},MetricName={type:{name:"Composite",className:"MetricName",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"String"}},localizedValue:{serializedName:"localizedValue",required:!0,type:{name:"String"}}}}},MetricDimension={type:{name:"Composite",className:"MetricDimension",modelProperties:{name:{serializedName:"name",required:!0,type:{name:"String"}},value:{serializedName:"value",required:!0,type:{name:"String"}}}}},MetricData={type:{name:"Composite",className:"MetricData",modelProperties:{timeStamp:{serializedName:"timeStamp",required:!0,type:{name:"DateTime"}},sum:{serializedName:"sum",required:!0,type:{name:"Number"}},count:{serializedName:"count",required:!0,type:{name:"Number"}},average:{serializedName:"average",required:!0,type:{name:"Number"}},minimum:{serializedName:"minimum",required:!0,type:{name:"Number"}},maximum:{serializedName:"maximum",required:!0,type:{name:"Number"}}}}},MetricDefinitionList={type:{name:"Composite",className:"MetricDefinitionList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"MetricDefinition"}}}}}}},MetricDefinition={type:{name:"Composite",className:"MetricDefinition",modelProperties:{name:{serializedName:"name",type:{name:"Composite",className:"MetricName"}},unit:{serializedName:"unit",required:!0,type:{name:"Enum",allowedValues:["Bytes","BytesPerSecond","Count","CountPerSecond","Percent","Seconds"]}},primaryAggregationType:{serializedName:"primaryAggregationType",required:!0,type:{name:"Enum",allowedValues:["Average","Last","Maximum","Minimum","None","Total"]}},resourceId:{serializedName:"resourceId",required:!0,type:{name:"String"}},metricAvailabilities:{serializedName:"metricAvailabilities",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"MetricAvailablity"}}}},dimensions:{serializedName:"dimensions",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"MetricDimension"}}}},type:{serializedName:"type",required:!0,type:{name:"String"}}}}},MetricAvailablity={type:{name:"Composite",className:"MetricAvailablity",modelProperties:{timeGrain:{serializedName:"timeGrain",required:!0,type:{name:"String"}},retention:{serializedName:"retention",required:!0,type:{name:"String"}}}}},FileShareList={type:{name:"Composite",className:"FileShareList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"FileShare"}}}}}}},IscsiServerList={type:{name:"Composite",className:"IscsiServerList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"IscsiServer"}}}}}}},JobList={type:{name:"Composite",className:"JobList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"Job"}}}},nextLink:{serializedName:"nextLink",type:{name:"String"}}}}},JobErrorDetails={type:{name:"Composite",className:"JobErrorDetails",modelProperties:{errorDetails:{serializedName:"errorDetails",type:{name:"Sequence",element:{type:{name:"Composite",className:"JobErrorItem"}}}},code:{serializedName:"code",required:!0,type:{name:"String"}},message:{serializedName:"message",required:!0,type:{name:"String"}}}}},JobErrorItem={type:{name:"Composite",className:"JobErrorItem",modelProperties:{recommendations:{serializedName:"recommendations",type:{name:"Sequence",element:{type:{name:"String"}}}},code:{serializedName:"code",required:!0,type:{name:"String"}},message:{serializedName:"message",required:!0,type:{name:"String"}}}}},JobStage={type:{name:"Composite",className:"JobStage",modelProperties:{message:{serializedName:"message",type:{name:"String"}},stageStatus:{serializedName:"stageStatus",required:!0,type:{name:"Enum",allowedValues:["Invalid","Running","Succeeded","Failed","Canceled","Paused","Scheduled"]}},detail:{serializedName:"detail",type:{name:"String"}},errorCode:{serializedName:"errorCode",type:{name:"String"}}}}},JobStats={type:{name:"Composite",className:"JobStats",modelProperties:{completedWorkItemCount:{serializedName:"completedWorkItemCount",type:{name:"Number"}},totalWorkItemCount:{serializedName:"totalWorkItemCount",type:{name:"Number"}},estimatedTimeRemaining:{serializedName:"estimatedTimeRemaining",type:{name:"Number"}}}}},UpdateDownloadProgress={type:{name:"Composite",className:"UpdateDownloadProgress",modelProperties:{downloadPhase:{serializedName:"downloadPhase",type:{name:"Enum",allowedValues:["Unknown","Initializing","Downloading","Verifying"]}},percentComplete:{serializedName:"percentComplete",type:{name:"Number"}},totalBytesToDownload:{serializedName:"totalBytesToDownload",type:{name:"Number"}},totalBytesDownloaded:{serializedName:"totalBytesDownloaded",type:{name:"Number"}},numberOfUpdatesToDownload:{serializedName:"numberOfUpdatesToDownload",type:{name:"Number"}},numberOfUpdatesDownloaded:{serializedName:"numberOfUpdatesDownloaded",type:{name:"Number"}}}}},UpdateInstallProgress={type:{name:"Composite",className:"UpdateInstallProgress",modelProperties:{percentComplete:{serializedName:"percentComplete",type:{name:"Number"}},numberOfUpdatesToInstall:{serializedName:"numberOfUpdatesToInstall",type:{name:"Number"}},numberOfUpdatesInstalled:{serializedName:"numberOfUpdatesInstalled",type:{name:"Number"}}}}},NodeNetwork={type:{name:"Composite",className:"NodeNetwork",modelProperties:{networkAdapters:{serializedName:"networkAdapters",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"NetworkAdapter"}}}}}}},NetworkAdapter={type:{name:"Composite",className:"NetworkAdapter",modelProperties:{networkAdapterName:{serializedName:"networkAdapterName",required:!0,type:{name:"String"}},iPv4Info:{serializedName:"iPv4Info",type:{name:"Composite",className:"IPConfig"}},iPv6Info:{serializedName:"iPv6Info",type:{name:"Composite",className:"IPConfig"}},dhcpStatus:{serializedName:"dhcpStatus",required:!0,type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},linkSpeed:{serializedName:"linkSpeed",type:{name:"Number"}}}}},IPConfig={type:{name:"Composite",className:"IPConfig",modelProperties:{ipAddress:{serializedName:"ipAddress",required:!0,type:{name:"String"}},prefixLength:{serializedName:"prefixLength",type:{name:"Number"}},gateway:{serializedName:"gateway",required:!0,type:{name:"String"}}}}},SendTestAlertEmailRequest={type:{name:"Composite",className:"SendTestAlertEmailRequest",modelProperties:{emailList:{serializedName:"emailList",required:!0,type:{name:"Sequence",element:{type:{name:"String"}}}}}}},SymmetricEncryptedSecret={type:{name:"Composite",className:"SymmetricEncryptedSecret",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"String"}},valueCertificateThumbprint:{serializedName:"valueCertificateThumbprint",type:{name:"String"}},encryptionAlgorithm:{serializedName:"encryptionAlgorithm",required:!0,type:{name:"Enum",allowedValues:["None","AES256","RSAES_PKCS1_v_1_5"]}}}}},StorageAccountCredentialList={type:{name:"Composite",className:"StorageAccountCredentialList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"StorageAccountCredential"}}}}}}},StorageDomainList={type:{name:"Composite",className:"StorageDomainList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"StorageDomain"}}}}}}},AlertFilter={type:{name:"Composite",className:"AlertFilter",modelProperties:{status:{serializedName:"status",type:{name:"Enum",allowedValues:["Active","Cleared"]}},severity:{serializedName:"severity",type:{name:"Enum",allowedValues:["Informational","Warning","Critical"]}},sourceType:{serializedName:"sourceType",type:{name:"Enum",allowedValues:["Resource","Device"]}},sourceName:{serializedName:"sourceName",type:{name:"String"}},appearedOnTime:{serializedName:"appearedOnTime",type:{name:"DateTime"}}}}},BackupFilter={type:{name:"Composite",className:"BackupFilter",modelProperties:{initiatedBy:{serializedName:"initiatedBy",type:{name:"Enum",allowedValues:["Manual","Scheduled"]}},createdTime:{serializedName:"createdTime",type:{name:"DateTime"}}}}},JobFilter={type:{name:"Composite",className:"JobFilter",modelProperties:{jobType:{serializedName:"jobType",required:!0,type:{name:"Enum",allowedValues:["Backup","Clone","Failover","DownloadUpdates","InstallUpdates"]}},status:{serializedName:"status",required:!0,type:{name:"Enum",allowedValues:["Invalid","Running","Succeeded","Failed","Canceled","Paused","Scheduled"]}},startTime:{serializedName:"startTime",type:{name:"DateTime"}}}}},MetricFilter={type:{name:"Composite",className:"MetricFilter",modelProperties:{name:{serializedName:"name",type:{name:"Composite",className:"MetricNameFilter"}},startTime:{serializedName:"startTime",type:{name:"DateTime"}},endTime:{serializedName:"endTime",type:{name:"DateTime"}},timeGrain:{serializedName:"timeGrain",type:{name:"String"}}}}},MetricNameFilter={type:{name:"Composite",className:"MetricNameFilter",modelProperties:{value:{serializedName:"value",type:{name:"String"}}}}},Manager={type:{name:"Composite",className:"Manager",modelProperties:Object.assign(Object.assign({},Resource.type.modelProperties),{etag:{serializedName:"etag",type:{name:"String"}},cisIntrinsicSettings:{serializedName:"properties.cisIntrinsicSettings",type:{name:"Composite",className:"ManagerIntrinsicSettings"}},sku:{serializedName:"properties.sku",type:{name:"Composite",className:"ManagerSku"}},provisioningState:{serializedName:"properties.provisioningState",readOnly:!0,type:{name:"String"}}})}},AccessControlRecord={type:{name:"Composite",className:"AccessControlRecord",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{initiatorName:{serializedName:"properties.initiatorName",required:!0,type:{name:"String"}}})}},Alert={type:{name:"Composite",className:"Alert",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{title:{serializedName:"properties.title",required:!0,type:{name:"String"}},scope:{serializedName:"properties.scope",required:!0,type:{name:"Enum",allowedValues:["Resource","Device"]}},alertType:{serializedName:"properties.alertType",required:!0,type:{name:"String"}},appearedAtTime:{serializedName:"properties.appearedAtTime",required:!0,type:{name:"DateTime"}},appearedAtSourceTime:{serializedName:"properties.appearedAtSourceTime",required:!0,type:{name:"DateTime"}},clearedAtTime:{serializedName:"properties.clearedAtTime",type:{name:"DateTime"}},clearedAtSourceTime:{serializedName:"properties.clearedAtSourceTime",type:{name:"DateTime"}},source:{serializedName:"properties.source",type:{name:"Composite",className:"AlertSource"}},recommendation:{serializedName:"properties.recommendation",type:{name:"String"}},resolutionReason:{serializedName:"properties.resolutionReason",type:{name:"String"}},severity:{serializedName:"properties.severity",required:!0,type:{name:"Enum",allowedValues:["Informational","Warning","Critical"]}},status:{serializedName:"properties.status",required:!0,type:{name:"Enum",allowedValues:["Active","Cleared"]}},errorDetails:{serializedName:"properties.errorDetails",type:{name:"Composite",className:"AlertErrorDetails"}},detailedInformation:{serializedName:"properties.detailedInformation",type:{name:"Dictionary",value:{type:{name:"String"}}}}})}},BackupElement={type:{name:"Composite",className:"BackupElement",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{sizeInBytes:{serializedName:"properties.sizeInBytes",required:!0,type:{name:"Number"}},endpointName:{serializedName:"properties.endpointName",required:!0,type:{name:"String"}},dataPolicy:{serializedName:"properties.dataPolicy",required:!0,type:{name:"Enum",allowedValues:["Invalid","Local","Tiered","Cloud"]}}})}},Backup={type:{name:"Composite",className:"Backup",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{targetId:{serializedName:"properties.targetId",type:{name:"String"}},targetType:{serializedName:"properties.targetType",type:{name:"String"}},sizeInBytes:{serializedName:"properties.sizeInBytes",required:!0,type:{name:"Number"}},createdTime:{serializedName:"properties.createdTime",type:{name:"DateTime"}},expirationTime:{serializedName:"properties.expirationTime",type:{name:"DateTime"}},initiatedBy:{serializedName:"properties.initiatedBy",required:!0,type:{name:"Enum",allowedValues:["Manual","Scheduled"]}},deviceId:{serializedName:"properties.deviceId",required:!0,type:{name:"String"}},elements:{serializedName:"properties.elements",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"BackupElement"}}}}})}},UploadCertificateResponse={type:{name:"Composite",className:"UploadCertificateResponse",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{authType:{serializedName:"properties.authType",type:{name:"Enum",allowedValues:["Invalid","AccessControlService","AzureActiveDirectory"]}},certificate:{serializedName:"properties.certificate",required:!0,type:{name:"String"}},resourceId:{serializedName:"properties.resourceId",required:!0,type:{name:"Number"}},aadAuthority:{serializedName:"properties.aadAuthority",required:!0,type:{name:"String"}},aadTenantId:{serializedName:"properties.aadTenantId",required:!0,type:{name:"String"}},servicePrincipalClientId:{serializedName:"properties.servicePrincipalClientId",required:!0,type:{name:"String"}},servicePrincipalObjectId:{serializedName:"properties.servicePrincipalObjectId",required:!0,type:{name:"String"}},azureManagementEndpointAudience:{serializedName:"properties.azureManagementEndpointAudience",required:!0,type:{name:"String"}},subject:{serializedName:"properties.subject",required:!0,type:{name:"String"}},validFrom:{serializedName:"properties.validFrom",required:!0,type:{name:"DateTime"}},validTo:{serializedName:"properties.validTo",required:!0,type:{name:"DateTime"}},thumbprint:{serializedName:"properties.thumbprint",required:!0,type:{name:"String"}},friendlyName:{serializedName:"properties.friendlyName",required:!0,type:{name:"String"}},issuer:{serializedName:"properties.issuer",required:!0,type:{name:"String"}}})}},Device={type:{name:"Composite",className:"Device",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{activationTime:{serializedName:"properties.activationTime",type:{name:"DateTime"}},allowedDeviceOperations:{serializedName:"properties.allowedDeviceOperations",type:{name:"Sequence",element:{type:{name:"Enum",allowedValues:["None","Delete","DeleteWithWarning","DRSource","DRTarget","Browsable","ReadOnlyForDR","Deactivate"]}}}},culture:{serializedName:"properties.culture",type:{name:"String"}},deviceCapabilities:{serializedName:"properties.deviceCapabilities",type:{name:"Sequence",element:{type:{name:"Enum",allowedValues:["Invalid","FileServer","IscsiServer"]}}}},deviceDescription:{serializedName:"properties.deviceDescription",type:{name:"String"}},domainName:{serializedName:"properties.domainName",type:{name:"String"}},deviceSoftwareVersion:{serializedName:"properties.deviceSoftwareVersion",type:{name:"String"}},friendlySoftwareName:{serializedName:"properties.friendlySoftwareName",type:{name:"String"}},deviceConfigurationStatus:{serializedName:"properties.deviceConfigurationStatus",type:{name:"Enum",allowedValues:["Complete","Pending"]}},modelDescription:{serializedName:"properties.modelDescription",type:{name:"String"}},status:{serializedName:"properties.status",type:{name:"Enum",allowedValues:["Unknown","Online","Offline","RequiresAttention","MaintenanceMode","Creating","Provisioning","Deleted","ReadyToSetup","Deactivated","Deactivating"]}},typePropertiesType:{serializedName:"properties.type",type:{name:"Enum",allowedValues:["Invalid","Appliance","VirtualAppliance","Series9000OnPremVirtualAppliance","Series9000VirtualAppliance","Series9000PhysicalAppliance"]}},details:{serializedName:"properties.details",type:{name:"Composite",className:"DeviceDetails"}}})}},AlertSettings={type:{name:"Composite",className:"AlertSettings",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{emailNotification:{serializedName:"properties.emailNotification",required:!0,type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},notificationToServiceOwners:{serializedName:"properties.notificationToServiceOwners",required:!0,type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},alertNotificationCulture:{serializedName:"properties.alertNotificationCulture",required:!0,type:{name:"String"}},additionalRecipientEmailList:{serializedName:"properties.additionalRecipientEmailList",type:{name:"Sequence",element:{type:{name:"String"}}}}})}},FileShare={type:{name:"Composite",className:"FileShare",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{description:{serializedName:"properties.description",type:{name:"String"}},shareStatus:{serializedName:"properties.shareStatus",required:!0,type:{name:"Enum",allowedValues:["Online","Offline"]}},dataPolicy:{serializedName:"properties.dataPolicy",required:!0,type:{name:"Enum",allowedValues:["Invalid","Local","Tiered","Cloud"]}},adminUser:{serializedName:"properties.adminUser",required:!0,type:{name:"String"}},provisionedCapacityInBytes:{serializedName:"properties.provisionedCapacityInBytes",required:!0,type:{name:"Number"}},usedCapacityInBytes:{serializedName:"properties.usedCapacityInBytes",readOnly:!0,type:{name:"Number"}},localUsedCapacityInBytes:{serializedName:"properties.localUsedCapacityInBytes",readOnly:!0,type:{name:"Number"}},monitoringStatus:{serializedName:"properties.monitoringStatus",required:!0,type:{name:"Enum",allowedValues:["Enabled","Disabled"]}}})}},IscsiDisk={type:{name:"Composite",className:"IscsiDisk",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{description:{serializedName:"properties.description",type:{name:"String"}},diskStatus:{serializedName:"properties.diskStatus",required:!0,type:{name:"Enum",allowedValues:["Online","Offline"]}},accessControlRecords:{serializedName:"properties.accessControlRecords",required:!0,type:{name:"Sequence",element:{type:{name:"String"}}}},dataPolicy:{serializedName:"properties.dataPolicy",required:!0,type:{name:"Enum",allowedValues:["Invalid","Local","Tiered","Cloud"]}},provisionedCapacityInBytes:{serializedName:"properties.provisionedCapacityInBytes",required:!0,type:{name:"Number"}},usedCapacityInBytes:{serializedName:"properties.usedCapacityInBytes",readOnly:!0,type:{name:"Number"}},localUsedCapacityInBytes:{serializedName:"properties.localUsedCapacityInBytes",readOnly:!0,type:{name:"Number"}},monitoringStatus:{serializedName:"properties.monitoringStatus",required:!0,type:{name:"Enum",allowedValues:["Enabled","Disabled"]}}})}},BackupScheduleGroup={type:{name:"Composite",className:"BackupScheduleGroup",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{startTime:{serializedName:"properties.startTime",type:{name:"Composite",className:"Time"}}})}},ChapSettings={type:{name:"Composite",className:"ChapSettings",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{password:{serializedName:"properties.password",type:{name:"Composite",className:"AsymmetricEncryptedSecret"}}})}},FileServer={type:{name:"Composite",className:"FileServer",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{domainName:{serializedName:"properties.domainName",required:!0,type:{name:"String"}},storageDomainId:{serializedName:"properties.storageDomainId",required:!0,type:{name:"String"}},backupScheduleGroupId:{serializedName:"properties.backupScheduleGroupId",required:!0,type:{name:"String"}},description:{serializedName:"properties.description",type:{name:"String"}}})}},IscsiServer={type:{name:"Composite",className:"IscsiServer",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{storageDomainId:{serializedName:"properties.storageDomainId",required:!0,type:{name:"String"}},backupScheduleGroupId:{serializedName:"properties.backupScheduleGroupId",required:!0,type:{name:"String"}},description:{serializedName:"properties.description",type:{name:"String"}},chapId:{serializedName:"properties.chapId",type:{name:"String"}},reverseChapId:{serializedName:"properties.reverseChapId",type:{name:"String"}}})}},Job={type:{name:"Composite",className:"Job",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{status:{serializedName:"status",required:!0,type:{name:"Enum",allowedValues:["Invalid","Running","Succeeded","Failed","Canceled","Paused","Scheduled"]}},startTime:{serializedName:"startTime",type:{name:"DateTime"}},endTime:{serializedName:"endTime",type:{name:"DateTime"}},percentComplete:{serializedName:"percentComplete",required:!0,type:{name:"Number"}},error:{serializedName:"error",type:{name:"Composite",className:"JobErrorDetails"}},jobType:{serializedName:"properties.jobType",type:{name:"Enum",allowedValues:["Backup","Clone","Failover","DownloadUpdates","InstallUpdates"]}},targetId:{serializedName:"properties.targetId",type:{name:"String"}},entityId:{serializedName:"properties.entityId",type:{name:"String"}},entityType:{serializedName:"properties.entityType",type:{name:"String"}},jobStages:{serializedName:"properties.jobStages",type:{name:"Sequence",element:{type:{name:"Composite",className:"JobStage"}}}},deviceId:{serializedName:"properties.deviceId",type:{name:"String"}},isCancellable:{serializedName:"properties.isCancellable",type:{name:"Boolean"}},stats:{serializedName:"properties.stats",type:{name:"Composite",className:"JobStats"}},targetType:{serializedName:"properties.targetType",type:{name:"Enum",allowedValues:["FileServer","DiskServer"]}},sourceDeviceId:{serializedName:"properties.sourceDeviceId",type:{name:"String"}},backupPointInTime:{serializedName:"properties.backupPointInTime",type:{name:"DateTime"}},downloadProgress:{serializedName:"properties.downloadProgress",type:{name:"Composite",className:"UpdateDownloadProgress"}},installProgress:{serializedName:"properties.installProgress",type:{name:"Composite",className:"UpdateInstallProgress"}}})}},NetworkSettings={type:{name:"Composite",className:"NetworkSettings",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{primaryDnsServer:{serializedName:"properties.primaryDnsServer",required:!0,type:{name:"String"}},secondaryDnsServer:{serializedName:"properties.secondaryDnsServer",type:{name:"String"}},nodeNetworks:{serializedName:"properties.nodeNetworks",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"NodeNetwork"}}}}})}},SecuritySettings={type:{name:"Composite",className:"SecuritySettings",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{deviceAdminPassword:{serializedName:"properties.deviceAdminPassword",type:{name:"Composite",className:"AsymmetricEncryptedSecret"}}})}},TimeSettings={type:{name:"Composite",className:"TimeSettings",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{timeZone:{serializedName:"properties.timeZone",required:!0,type:{name:"String"}},primaryTimeServer:{serializedName:"properties.primaryTimeServer",required:!0,type:{name:"String"}},secondaryTimeServer:{serializedName:"properties.secondaryTimeServer",type:{name:"String"}}})}},Updates={type:{name:"Composite",className:"Updates",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{deviceVersion:{serializedName:"properties.deviceVersion",type:{name:"String"}},deviceLastScannedTime:{serializedName:"properties.deviceLastScannedTime",type:{name:"DateTime"}},regularUpdatesAvailable:{serializedName:"properties.regularUpdatesAvailable",type:{name:"Boolean"}},rebootRequiredForInstall:{serializedName:"properties.rebootRequiredForInstall",type:{name:"Boolean"}},totalItemsPendingForDownload:{serializedName:"properties.totalItemsPendingForDownload",type:{name:"Number"}},totalItemsPendingForInstall:{serializedName:"properties.totalItemsPendingForInstall",type:{name:"Number"}},status:{serializedName:"properties.status",type:{name:"Enum",allowedValues:["Idle","Scanning","Downloading","Installing"]}},lastCompletedScanTime:{serializedName:"properties.lastCompletedScanTime",type:{name:"DateTime"}},lastCompletedDownloadJobTime:{serializedName:"properties.lastCompletedDownloadJobTime",type:{name:"DateTime"}},lastCompletedInstallJobTime:{serializedName:"properties.lastCompletedInstallJobTime",type:{name:"DateTime"}},inProgressDownloadJobId:{serializedName:"properties.inProgressDownloadJobId",type:{name:"String"}},inProgressInstallJobId:{serializedName:"properties.inProgressInstallJobId",type:{name:"String"}},inProgressScanStartedTime:{serializedName:"properties.inProgressScanStartedTime",type:{name:"DateTime"}},inProgressDownloadJobStartedTime:{serializedName:"properties.inProgressDownloadJobStartedTime",type:{name:"DateTime"}},inProgressInstallJobStartedTime:{serializedName:"properties.inProgressInstallJobStartedTime",type:{name:"DateTime"}}})}},EncryptionSettings={type:{name:"Composite",className:"EncryptionSettings",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{encryptionStatus:{serializedName:"properties.encryptionStatus",required:!0,type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},keyRolloverStatus:{serializedName:"properties.keyRolloverStatus",required:!0,type:{name:"Enum",allowedValues:["Required","NotRequired"]}}})}},ManagerExtendedInfo={type:{name:"Composite",className:"ManagerExtendedInfo",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{etag:{serializedName:"etag",type:{name:"String"}},version:{serializedName:"properties.version",type:{name:"String"}},integrityKey:{serializedName:"properties.integrityKey",required:!0,type:{name:"String"}},encryptionKey:{serializedName:"properties.encryptionKey",type:{name:"String"}},encryptionKeyThumbprint:{serializedName:"properties.encryptionKeyThumbprint",type:{name:"String"}},portalCertificateThumbprint:{serializedName:"properties.portalCertificateThumbprint",type:{name:"String"}},algorithm:{serializedName:"properties.algorithm",required:!0,type:{name:"String"}}})}},StorageAccountCredential={type:{name:"Composite",className:"StorageAccountCredential",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{cloudType:{serializedName:"properties.cloudType",required:!0,type:{name:"Enum",allowedValues:["Azure","S3","S3_RRS","OpenStack","HP"]}},endPoint:{serializedName:"properties.endPoint",required:!0,type:{name:"String"}},login:{serializedName:"properties.login",required:!0,type:{name:"String"}},location:{serializedName:"properties.location",type:{name:"String"}},enableSSL:{serializedName:"properties.enableSSL",required:!0,type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},accessKey:{serializedName:"properties.accessKey",type:{name:"Composite",className:"AsymmetricEncryptedSecret"}}})}},StorageDomain={type:{name:"Composite",className:"StorageDomain",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{storageAccountCredentialIds:{serializedName:"properties.storageAccountCredentialIds",required:!0,type:{name:"Sequence",element:{type:{name:"String"}}}},encryptionKey:{serializedName:"properties.encryptionKey",type:{name:"Composite",className:"AsymmetricEncryptedSecret"}},encryptionStatus:{serializedName:"properties.encryptionStatus",required:!0,type:{name:"Enum",allowedValues:["Enabled","Disabled"]}}})}};var Mappers=Object.freeze({__proto__:null,AccessControlRecord:AccessControlRecord,AccessControlRecordList:AccessControlRecordList,Alert:Alert,AlertErrorDetails:AlertErrorDetails,AlertFilter:AlertFilter,AlertList:AlertList,AlertSettings:AlertSettings,AlertSource:AlertSource,AsymmetricEncryptedSecret:AsymmetricEncryptedSecret,AvailableProviderOperation:AvailableProviderOperation,AvailableProviderOperationDisplay:AvailableProviderOperationDisplay,AvailableProviderOperations:AvailableProviderOperations,Backup:Backup,BackupElement:BackupElement,BackupFilter:BackupFilter,BackupList:BackupList,BackupScheduleGroup:BackupScheduleGroup,BackupScheduleGroupList:BackupScheduleGroupList,BaseModel:BaseModel,ChapSettings:ChapSettings,ChapSettingsList:ChapSettingsList,ClearAlertRequest:ClearAlertRequest,CloneRequest:CloneRequest,Device:Device,DeviceDetails:DeviceDetails,DeviceList:DeviceList,DevicePatch:DevicePatch,EncryptionSettings:EncryptionSettings,ErrorModel:ErrorModel,FailoverRequest:FailoverRequest,FileServer:FileServer,FileServerList:FileServerList,FileShare:FileShare,FileShareList:FileShareList,IPConfig:IPConfig,IscsiDisk:IscsiDisk,IscsiDiskList:IscsiDiskList,IscsiServer:IscsiServer,IscsiServerList:IscsiServerList,Item:Item,Job:Job,JobErrorDetails:JobErrorDetails,JobErrorItem:JobErrorItem,JobFilter:JobFilter,JobList:JobList,JobStage:JobStage,JobStats:JobStats,Manager:Manager,ManagerExtendedInfo:ManagerExtendedInfo,ManagerIntrinsicSettings:ManagerIntrinsicSettings,ManagerList:ManagerList,ManagerPatch:ManagerPatch,ManagerSku:ManagerSku,Message:Message,MetricAvailablity:MetricAvailablity,MetricData:MetricData,MetricDefinition:MetricDefinition,MetricDefinitionList:MetricDefinitionList,MetricDimension:MetricDimension,MetricFilter:MetricFilter,MetricList:MetricList,MetricName:MetricName,MetricNameFilter:MetricNameFilter,Metrics:Metrics,NetworkAdapter:NetworkAdapter,NetworkSettings:NetworkSettings,NodeNetwork:NodeNetwork,Resource:Resource,SecuritySettings:SecuritySettings,SendTestAlertEmailRequest:SendTestAlertEmailRequest,StorageAccountCredential:StorageAccountCredential,StorageAccountCredentialList:StorageAccountCredentialList,StorageDomain:StorageDomain,StorageDomainList:StorageDomainList,SymmetricEncryptedSecret:SymmetricEncryptedSecret,Time:Time,TimeSettings:TimeSettings,UpdateDownloadProgress:UpdateDownloadProgress,UpdateInstallProgress:UpdateInstallProgress,Updates:Updates,UploadCertificateRequest:UploadCertificateRequest,UploadCertificateResponse:UploadCertificateResponse});let accept={parameterPath:"accept",mapper:{defaultValue:"application/json",isConstant:!0,serializedName:"Accept",type:{name:"String"}}},$host={parameterPath:"$host",mapper:{serializedName:"$host",required:!0,type:{name:"String"}},skipEncoding:!0},subscriptionId={parameterPath:"subscriptionId",mapper:{serializedName:"subscriptionId",required:!0,type:{name:"String"}}},apiVersion={parameterPath:"apiVersion",mapper:{defaultValue:"2016-10-01",isConstant:!0,serializedName:"api-version",type:{name:"String"}}},resourceGroupName={parameterPath:"resourceGroupName",mapper:{serializedName:"resourceGroupName",required:!0,type:{name:"String"}}},managerName={parameterPath:"managerName",mapper:{constraints:{MaxLength:50,MinLength:2},serializedName:"managerName",required:!0,type:{name:"String"}}},contentType={parameterPath:["options","contentType"],mapper:{defaultValue:"application/json",isConstant:!0,serializedName:"Content-Type",type:{name:"String"}}},manager={parameterPath:"manager",mapper:Manager},parameters={parameterPath:"parameters",mapper:ManagerPatch},uploadCertificateRequestrequest={parameterPath:"uploadCertificateRequestrequest",mapper:UploadCertificateRequest},certificateName={parameterPath:"certificateName",mapper:{serializedName:"certificateName",required:!0,type:{name:"String"}}},managerExtendedInfo={parameterPath:"managerExtendedInfo",mapper:ManagerExtendedInfo},ifMatch={parameterPath:"ifMatch",mapper:{serializedName:"If-Match",required:!0,type:{name:"String"}}},filter={parameterPath:["options","filter"],mapper:{serializedName:"$filter",type:{name:"String"}}},nextLink={parameterPath:"nextLink",mapper:{serializedName:"nextLink",required:!0,type:{name:"String"}},skipEncoding:!0},accessControlRecordName={parameterPath:"accessControlRecordName",mapper:{serializedName:"accessControlRecordName",required:!0,type:{name:"String"}}},accessControlRecord={parameterPath:"accessControlRecord",mapper:AccessControlRecord},request={parameterPath:"request",mapper:ClearAlertRequest},request1={parameterPath:"request",mapper:SendTestAlertEmailRequest},deviceName={parameterPath:"deviceName",mapper:{serializedName:"deviceName",required:!0,type:{name:"String"}}},forFailover={parameterPath:["options","forFailover"],mapper:{serializedName:"forFailover",type:{name:"Boolean"}}},backupName={parameterPath:"backupName",mapper:{serializedName:"backupName",required:!0,type:{name:"String"}}},cloneRequest={parameterPath:"cloneRequest",mapper:CloneRequest},elementName={parameterPath:"elementName",mapper:{serializedName:"elementName",required:!0,type:{name:"String"}}},expand={parameterPath:["options","expand"],mapper:{serializedName:"$expand",type:{name:"String"}}},devicePatch={parameterPath:"devicePatch",mapper:DevicePatch},alertSettings={parameterPath:"alertSettings",mapper:AlertSettings},failoverRequest={parameterPath:"failoverRequest",mapper:FailoverRequest},securitySettings={parameterPath:"securitySettings",mapper:SecuritySettings},scheduleGroupName={parameterPath:"scheduleGroupName",mapper:{serializedName:"scheduleGroupName",required:!0,type:{name:"String"}}},scheduleGroup={parameterPath:"scheduleGroup",mapper:BackupScheduleGroup},chapUserName={parameterPath:"chapUserName",mapper:{serializedName:"chapUserName",required:!0,type:{name:"String"}}},chapSetting={parameterPath:"chapSetting",mapper:ChapSettings},iscsiServerName={parameterPath:"iscsiServerName",mapper:{serializedName:"iscsiServerName",required:!0,type:{name:"String"}}},diskName={parameterPath:"diskName",mapper:{serializedName:"diskName",required:!0,type:{name:"String"}}},iscsiDisk={parameterPath:"iscsiDisk",mapper:IscsiDisk},fileServerName={parameterPath:"fileServerName",mapper:{serializedName:"fileServerName",required:!0,type:{name:"String"}}},fileServer={parameterPath:"fileServer",mapper:FileServer},shareName={parameterPath:"shareName",mapper:{serializedName:"shareName",required:!0,type:{name:"String"}}},fileShare={parameterPath:"fileShare",mapper:FileShare},iscsiServer={parameterPath:"iscsiServer",mapper:IscsiServer},jobName={parameterPath:"jobName",mapper:{serializedName:"jobName",required:!0,type:{name:"String"}}},credentialName={parameterPath:"credentialName",mapper:{serializedName:"credentialName",required:!0,type:{name:"String"}}},storageAccount={parameterPath:"storageAccount",mapper:StorageAccountCredential},storageDomainName={parameterPath:"storageDomainName",mapper:{serializedName:"storageDomainName",required:!0,type:{name:"String"}}},storageDomain={parameterPath:"storageDomain",mapper:StorageDomain};class ManagersImpl{constructor(e){this.client=e}list(r){let e=this.listPagingAll(r);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listPagingPage(r,e)}}}listPagingPage(r,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._list(r));yield yield tslib.__await(e.value||[])})}listPagingAll(n){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listPagingPage(n));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listByResourceGroup(r,a){let e=this.listByResourceGroupPagingAll(r,a);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByResourceGroupPagingPage(r,a,e)}}}listByResourceGroupPagingPage(r,a,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByResourceGroup(r,a));yield yield tslib.__await(e.value||[])})}listByResourceGroupPagingAll(n,l){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByResourceGroupPagingPage(n,l));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetrics(r,a,i){let e=this.listMetricsPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricsPagingPage(r,a,i,e)}}}listMetricsPagingPage(r,a,i,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetrics(r,a,i));yield yield tslib.__await(e.value||[])})}listMetricsPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricsPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetricDefinition(r,a,i){let e=this.listMetricDefinitionPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricDefinitionPagingPage(r,a,i,e)}}}listMetricDefinitionPagingPage(r,a,i,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetricDefinition(r,a,i));yield yield tslib.__await(e.value||[])})}listMetricDefinitionPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricDefinitionPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_list(e){return this.client.sendOperationRequest({options:e},listOperationSpec$1)}_listByResourceGroup(e,r){return this.client.sendOperationRequest({resourceGroupName:e,options:r},listByResourceGroupOperationSpec)}get(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},getOperationSpec$b)}createOrUpdate(e,r,a,i){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,manager:a,options:i},createOrUpdateOperationSpec$9)}delete(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},deleteOperationSpec$b)}update(e,r,a,i){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,parameters:a,options:i},updateOperationSpec)}uploadRegistrationCertificate(e,r,a,i,t){return this.client.sendOperationRequest({certificateName:e,resourceGroupName:r,managerName:a,uploadCertificateRequestrequest:i,options:t},uploadRegistrationCertificateOperationSpec)}getEncryptionSettings(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},getEncryptionSettingsOperationSpec)}getExtendedInfo(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},getExtendedInfoOperationSpec)}createExtendedInfo(e,r,a,i){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,managerExtendedInfo:a,options:i},createExtendedInfoOperationSpec)}deleteExtendedInfo(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},deleteExtendedInfoOperationSpec)}updateExtendedInfo(e,r,a,i,t){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,ifMatch:a,managerExtendedInfo:i,options:t},updateExtendedInfoOperationSpec)}getEncryptionKey(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},getEncryptionKeyOperationSpec)}_listMetrics(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listMetricsOperationSpec$5)}_listMetricDefinition(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listMetricDefinitionOperationSpec$5)}}let serializer$e=coreClient__namespace.createSerializer(Mappers,!1),listOperationSpec$1={path:"/subscriptions/{subscriptionId}/providers/Microsoft.StorSimple/managers",httpMethod:"GET",responses:{200:{bodyMapper:ManagerList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId],headerParameters:[accept],serializer:serializer$e},listByResourceGroupOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers",httpMethod:"GET",responses:{200:{bodyMapper:ManagerList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName],headerParameters:[accept],serializer:serializer$e},getOperationSpec$b={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}",httpMethod:"GET",responses:{200:{bodyMapper:Manager},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$e},createOrUpdateOperationSpec$9={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}",httpMethod:"PUT",responses:{200:{bodyMapper:Manager},201:{bodyMapper:Manager},default:{bodyMapper:ErrorModel}},requestBody:manager,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$e},deleteOperationSpec$b={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}",httpMethod:"DELETE",responses:{200:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$e},updateOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}",httpMethod:"PATCH",responses:{200:{bodyMapper:Manager},default:{bodyMapper:ErrorModel}},requestBody:parameters,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$e},uploadRegistrationCertificateOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/certificates/{certificateName}",httpMethod:"PUT",responses:{200:{bodyMapper:UploadCertificateResponse},default:{bodyMapper:ErrorModel}},requestBody:uploadCertificateRequestrequest,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,certificateName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$e},getEncryptionSettingsOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/encryptionSettings/default",httpMethod:"GET",responses:{200:{bodyMapper:EncryptionSettings},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$e},getExtendedInfoOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/extendedInformation/vaultExtendedInfo",httpMethod:"GET",responses:{200:{bodyMapper:ManagerExtendedInfo},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$e},createExtendedInfoOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/extendedInformation/vaultExtendedInfo",httpMethod:"PUT",responses:{200:{bodyMapper:ManagerExtendedInfo},default:{bodyMapper:ErrorModel}},requestBody:managerExtendedInfo,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$e},deleteExtendedInfoOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/extendedInformation/vaultExtendedInfo",httpMethod:"DELETE",responses:{204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$e},updateExtendedInfoOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/extendedInformation/vaultExtendedInfo",httpMethod:"PATCH",responses:{200:{bodyMapper:ManagerExtendedInfo},default:{bodyMapper:ErrorModel}},requestBody:managerExtendedInfo,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept,contentType,ifMatch],mediaType:"json",serializer:serializer$e},getEncryptionKeyOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/getEncryptionKey",httpMethod:"POST",responses:{200:{bodyMapper:SymmetricEncryptedSecret},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$e},listMetricsOperationSpec$5={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/metrics",httpMethod:"GET",responses:{200:{bodyMapper:MetricList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$e},listMetricDefinitionOperationSpec$5={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/metricsDefinitions",httpMethod:"GET",responses:{200:{bodyMapper:MetricDefinitionList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$e};class AvailableProviderOperationsOperationsImpl{constructor(e){this.client=e}list(r){let e=this.listPagingAll(r);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listPagingPage(r,e)}}}listPagingPage(t,s){return tslib.__asyncGenerator(this,arguments,function*(){let e,r=null==s?void 0:s.continuationToken;var a;for(r||(setContinuationToken(a=(e=yield tslib.__await(this._list(t))).value||[],r=e.nextLink),yield yield tslib.__await(a));r;){e=yield tslib.__await(this._listNext(r,t)),r=e.nextLink;var i=e.value||[];setContinuationToken(i,r),yield yield tslib.__await(i)}})}listPagingAll(n){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listPagingPage(n));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_list(e){return this.client.sendOperationRequest({options:e},listOperationSpec)}_listNext(e,r){return this.client.sendOperationRequest({nextLink:e,options:r},listNextOperationSpec)}}let serializer$d=coreClient__namespace.createSerializer(Mappers,!1),listOperationSpec={path:"/providers/Microsoft.StorSimple/operations",httpMethod:"GET",responses:{200:{bodyMapper:AvailableProviderOperations},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host],headerParameters:[accept],serializer:serializer$d},listNextOperationSpec={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:AvailableProviderOperations},default:{bodyMapper:ErrorModel}},urlParameters:[$host,nextLink],headerParameters:[accept],serializer:serializer$d};class LroImpl{constructor(e,r,a,i=a.path,t=a.httpMethod){this.sendOperationFn=e,this.args=r,this.spec=a,this.requestPath=i,this.requestMethod=t}sendInitialRequest(){return tslib.__awaiter(this,void 0,void 0,function*(){return this.sendOperationFn(this.args,this.spec)})}sendPollRequest(r){return tslib.__awaiter(this,void 0,void 0,function*(){var e=this.spec,e=tslib.__rest(e,["requestBody"]);return this.sendOperationFn(this.args,Object.assign(Object.assign({},e),{path:r,httpMethod:"GET"}))})}}class AccessControlRecordsImpl{constructor(e){this.client=e}listByManager(r,a,i){let e=this.listByManagerPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByManagerPagingPage(r,a,i,e)}}}listByManagerPagingPage(r,a,i,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByManager(r,a,i));yield yield tslib.__await(e.value||[])})}listByManagerPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByManagerPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByManager(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listByManagerOperationSpec$8)}get(e,r,a,i){return this.client.sendOperationRequest({accessControlRecordName:e,resourceGroupName:r,managerName:a,options:i},getOperationSpec$a)}beginCreateOrUpdate(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{accessControlRecordName:r,resourceGroupName:a,managerName:i,accessControlRecord:t,options:s},createOrUpdateOperationSpec$8),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,r,a,i,t)).pollUntilDone()})}beginDelete(r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{accessControlRecordName:r,resourceGroupName:a,managerName:i,options:t},deleteOperationSpec$a),e=new coreLro.LroEngine(e,{resumeFrom:null==t?void 0:t.resumeFrom,intervalInMs:null==t?void 0:t.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i)).pollUntilDone()})}}let serializer$c=coreClient__namespace.createSerializer(Mappers,!1),listByManagerOperationSpec$8={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/accessControlRecords",httpMethod:"GET",responses:{200:{bodyMapper:AccessControlRecordList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$c},getOperationSpec$a={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/accessControlRecords/{accessControlRecordName}",httpMethod:"GET",responses:{200:{bodyMapper:AccessControlRecord},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,accessControlRecordName],headerParameters:[accept],serializer:serializer$c},createOrUpdateOperationSpec$8={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/accessControlRecords/{accessControlRecordName}",httpMethod:"PUT",responses:{200:{bodyMapper:AccessControlRecord},201:{bodyMapper:AccessControlRecord},202:{bodyMapper:AccessControlRecord},204:{bodyMapper:AccessControlRecord},default:{bodyMapper:ErrorModel}},requestBody:accessControlRecord,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,accessControlRecordName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$c},deleteOperationSpec$a={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/accessControlRecords/{accessControlRecordName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,accessControlRecordName],headerParameters:[accept],serializer:serializer$c};class AlertsImpl{constructor(e){this.client=e}listByManager(r,a,i){let e=this.listByManagerPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByManagerPagingPage(r,a,i,e)}}}listByManagerPagingPage(t,s,o,n){return tslib.__asyncGenerator(this,arguments,function*(){let e,r=null==n?void 0:n.continuationToken;var a;for(r||(setContinuationToken(a=(e=yield tslib.__await(this._listByManager(t,s,o))).value||[],r=e.nextLink),yield yield tslib.__await(a));r;){e=yield tslib.__await(this._listByManagerNext(t,s,r,o)),r=e.nextLink;var i=e.value||[];setContinuationToken(i,r),yield yield tslib.__await(i)}})}listByManagerPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByManagerPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByManager(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listByManagerOperationSpec$7)}clear(e,r,a,i){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,request:a,options:i},clearOperationSpec)}sendTestEmail(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,request:i,options:t},sendTestEmailOperationSpec)}_listByManagerNext(e,r,a,i){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,nextLink:a,options:i},listByManagerNextOperationSpec$2)}}let serializer$b=coreClient__namespace.createSerializer(Mappers,!1),listByManagerOperationSpec$7={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/alerts",httpMethod:"GET",responses:{200:{bodyMapper:AlertList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$b},clearOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/clearAlerts",httpMethod:"POST",responses:{204:{},default:{bodyMapper:ErrorModel}},requestBody:request,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$b},sendTestEmailOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/sendTestAlertEmail",httpMethod:"POST",responses:{204:{},default:{bodyMapper:ErrorModel}},requestBody:request1,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$b},listByManagerNextOperationSpec$2={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:AlertList},default:{bodyMapper:ErrorModel}},urlParameters:[$host,subscriptionId,resourceGroupName,managerName,nextLink],headerParameters:[accept],serializer:serializer$b};class BackupsImpl{constructor(e){this.client=e}listByManager(r,a,i){let e=this.listByManagerPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByManagerPagingPage(r,a,i,e)}}}listByManagerPagingPage(t,s,o,n){return tslib.__asyncGenerator(this,arguments,function*(){let e,r=null==n?void 0:n.continuationToken;var a;for(r||(setContinuationToken(a=(e=yield tslib.__await(this._listByManager(t,s,o))).value||[],r=e.nextLink),yield yield tslib.__await(a));r;){e=yield tslib.__await(this._listByManagerNext(t,s,r,o)),r=e.nextLink;var i=e.value||[];setContinuationToken(i,r),yield yield tslib.__await(i)}})}listByManagerPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByManagerPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listByDevice(r,a,i,t){let e=this.listByDevicePagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByDevicePagingPage(r,a,i,t,e)}}}listByDevicePagingPage(t,s,o,n,l){return tslib.__asyncGenerator(this,arguments,function*(){let e,r=null==l?void 0:l.continuationToken;var a;for(r||(setContinuationToken(a=(e=yield tslib.__await(this._listByDevice(t,s,o,n))).value||[],r=e.nextLink),yield yield tslib.__await(a));r;){e=yield tslib.__await(this._listByDeviceNext(t,s,o,r,n)),r=e.nextLink;var i=e.value||[];setContinuationToken(i,r),yield yield tslib.__await(i)}})}listByDevicePagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByDevicePagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByManager(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listByManagerOperationSpec$6)}_listByDevice(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listByDeviceOperationSpec$7)}beginDelete(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,backupName:a,resourceGroupName:i,managerName:t,options:s},deleteOperationSpec$9),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i,t)).pollUntilDone()})}beginClone(r,a,i,t,s,n,l){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,backupName:a,elementName:i,resourceGroupName:t,managerName:s,cloneRequest:n,options:l},cloneOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==l?void 0:l.resumeFrom,intervalInMs:null==l?void 0:l.updateIntervalInMs});return yield e.poll(),e})}beginCloneAndWait(e,r,a,i,t,s,o){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginClone(e,r,a,i,t,s,o)).pollUntilDone()})}_listByManagerNext(e,r,a,i){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,nextLink:a,options:i},listByManagerNextOperationSpec$1)}_listByDeviceNext(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,nextLink:i,options:t},listByDeviceNextOperationSpec$1)}}let serializer$a=coreClient__namespace.createSerializer(Mappers,!1),listByManagerOperationSpec$6={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/backups",httpMethod:"GET",responses:{200:{bodyMapper:BackupList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$a},listByDeviceOperationSpec$7={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backups",httpMethod:"GET",responses:{200:{bodyMapper:BackupList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter,forFailover],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$a},deleteOperationSpec$9={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backups/{backupName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,backupName],headerParameters:[accept],serializer:serializer$a},cloneOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backups/{backupName}/elements/{elementName}/clone",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},requestBody:cloneRequest,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,backupName,elementName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$a},listByManagerNextOperationSpec$1={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:BackupList},default:{bodyMapper:ErrorModel}},urlParameters:[$host,subscriptionId,resourceGroupName,managerName,nextLink],headerParameters:[accept],serializer:serializer$a},listByDeviceNextOperationSpec$1={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:BackupList},default:{bodyMapper:ErrorModel}},urlParameters:[$host,subscriptionId,resourceGroupName,managerName,nextLink,deviceName],headerParameters:[accept],serializer:serializer$a};class DevicesImpl{constructor(e){this.client=e}listByManager(r,a,i){let e=this.listByManagerPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByManagerPagingPage(r,a,i,e)}}}listByManagerPagingPage(r,a,i,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByManager(r,a,i));yield yield tslib.__await(e.value||[])})}listByManagerPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByManagerPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listFailoverTarget(r,a,i,t){let e=this.listFailoverTargetPagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listFailoverTargetPagingPage(r,a,i,t,e)}}}listFailoverTargetPagingPage(r,a,i,t,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listFailoverTarget(r,a,i,t));yield yield tslib.__await(e.value||[])})}listFailoverTargetPagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listFailoverTargetPagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetrics(r,a,i,t){let e=this.listMetricsPagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricsPagingPage(r,a,i,t,e)}}}listMetricsPagingPage(r,a,i,t,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetrics(r,a,i,t));yield yield tslib.__await(e.value||[])})}listMetricsPagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricsPagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetricDefinition(r,a,i,t){let e=this.listMetricDefinitionPagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricDefinitionPagingPage(r,a,i,t,e)}}}listMetricDefinitionPagingPage(r,a,i,t,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetricDefinition(r,a,i,t));yield yield tslib.__await(e.value||[])})}listMetricDefinitionPagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricDefinitionPagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByManager(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listByManagerOperationSpec$5)}get(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},getOperationSpec$9)}beginDelete(r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,resourceGroupName:a,managerName:i,options:t},deleteOperationSpec$8),e=new coreLro.LroEngine(e,{resumeFrom:null==t?void 0:t.resumeFrom,intervalInMs:null==t?void 0:t.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i)).pollUntilDone()})}beginPatch(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,resourceGroupName:a,managerName:i,devicePatch:t,options:s},patchOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginPatchAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginPatch(e,r,a,i,t)).pollUntilDone()})}getAlertSettings(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},getAlertSettingsOperationSpec)}beginCreateOrUpdateAlertSettings(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,resourceGroupName:a,managerName:i,alertSettings:t,options:s},createOrUpdateAlertSettingsOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateAlertSettingsAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdateAlertSettings(e,r,a,i,t)).pollUntilDone()})}beginDeactivate(r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,resourceGroupName:a,managerName:i,options:t},deactivateOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==t?void 0:t.resumeFrom,intervalInMs:null==t?void 0:t.updateIntervalInMs});return yield e.poll(),e})}beginDeactivateAndWait(e,r,a,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDeactivate(e,r,a,i)).pollUntilDone()})}beginDownloadUpdates(r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,resourceGroupName:a,managerName:i,options:t},downloadUpdatesOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==t?void 0:t.resumeFrom,intervalInMs:null==t?void 0:t.updateIntervalInMs});return yield e.poll(),e})}beginDownloadUpdatesAndWait(e,r,a,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDownloadUpdates(e,r,a,i)).pollUntilDone()})}beginFailover(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,resourceGroupName:a,managerName:i,failoverRequest:t,options:s},failoverOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginFailoverAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginFailover(e,r,a,i,t)).pollUntilDone()})}_listFailoverTarget(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listFailoverTargetOperationSpec)}beginInstallUpdates(r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,resourceGroupName:a,managerName:i,options:t},installUpdatesOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==t?void 0:t.resumeFrom,intervalInMs:null==t?void 0:t.updateIntervalInMs});return yield e.poll(),e})}beginInstallUpdatesAndWait(e,r,a,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginInstallUpdates(e,r,a,i)).pollUntilDone()})}_listMetrics(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listMetricsOperationSpec$4)}_listMetricDefinition(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listMetricDefinitionOperationSpec$4)}getNetworkSettings(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},getNetworkSettingsOperationSpec)}beginScanForUpdates(r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,resourceGroupName:a,managerName:i,options:t},scanForUpdatesOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==t?void 0:t.resumeFrom,intervalInMs:null==t?void 0:t.updateIntervalInMs});return yield e.poll(),e})}beginScanForUpdatesAndWait(e,r,a,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginScanForUpdates(e,r,a,i)).pollUntilDone()})}beginCreateOrUpdateSecuritySettings(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,resourceGroupName:a,managerName:i,securitySettings:t,options:s},createOrUpdateSecuritySettingsOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateSecuritySettingsAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdateSecuritySettings(e,r,a,i,t)).pollUntilDone()})}getTimeSettings(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},getTimeSettingsOperationSpec)}getUpdateSummary(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},getUpdateSummaryOperationSpec)}}let serializer$9=coreClient__namespace.createSerializer(Mappers,!1),listByManagerOperationSpec$5={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices",httpMethod:"GET",responses:{200:{bodyMapper:DeviceList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,expand],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$9},getOperationSpec$9={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}",httpMethod:"GET",responses:{200:{bodyMapper:Device},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,expand],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},deleteOperationSpec$8={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},patchOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}",httpMethod:"PATCH",responses:{200:{bodyMapper:Device},201:{bodyMapper:Device},202:{bodyMapper:Device},204:{bodyMapper:Device},default:{bodyMapper:ErrorModel}},requestBody:devicePatch,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$9},getAlertSettingsOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/alertSettings/default",httpMethod:"GET",responses:{200:{bodyMapper:AlertSettings},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},createOrUpdateAlertSettingsOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/alertSettings/default",httpMethod:"PUT",responses:{200:{bodyMapper:AlertSettings},201:{bodyMapper:AlertSettings},202:{bodyMapper:AlertSettings},204:{bodyMapper:AlertSettings},default:{bodyMapper:ErrorModel}},requestBody:alertSettings,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$9},deactivateOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/deactivate",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},downloadUpdatesOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/download",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},failoverOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/failover",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},requestBody:failoverRequest,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$9},listFailoverTargetOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/failoverTargets",httpMethod:"GET",responses:{200:{bodyMapper:DeviceList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,expand],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},installUpdatesOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/install",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},listMetricsOperationSpec$4={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/metrics",httpMethod:"GET",responses:{200:{bodyMapper:MetricList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},listMetricDefinitionOperationSpec$4={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/metricsDefinitions",httpMethod:"GET",responses:{200:{bodyMapper:MetricDefinitionList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},getNetworkSettingsOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/networkSettings/default",httpMethod:"GET",responses:{200:{bodyMapper:NetworkSettings},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},scanForUpdatesOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/scanForUpdates",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},createOrUpdateSecuritySettingsOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/securitySettings/default/update",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},requestBody:securitySettings,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$9},getTimeSettingsOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/timeSettings/default",httpMethod:"GET",responses:{200:{bodyMapper:TimeSettings},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},getUpdateSummaryOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/updateSummary/default",httpMethod:"GET",responses:{200:{bodyMapper:Updates},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9};class BackupScheduleGroupsImpl{constructor(e){this.client=e}listByDevice(r,a,i,t){let e=this.listByDevicePagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByDevicePagingPage(r,a,i,t,e)}}}listByDevicePagingPage(r,a,i,t,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByDevice(r,a,i,t));yield yield tslib.__await(e.value||[])})}listByDevicePagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByDevicePagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByDevice(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listByDeviceOperationSpec$6)}get(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,scheduleGroupName:r,resourceGroupName:a,managerName:i,options:t},getOperationSpec$8)}beginCreateOrUpdate(r,a,i,t,s,n){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,scheduleGroupName:a,resourceGroupName:i,managerName:t,scheduleGroup:s,options:n},createOrUpdateOperationSpec$7),e=new coreLro.LroEngine(e,{resumeFrom:null==n?void 0:n.resumeFrom,intervalInMs:null==n?void 0:n.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,r,a,i,t,s)).pollUntilDone()})}beginDelete(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,scheduleGroupName:a,resourceGroupName:i,managerName:t,options:s},deleteOperationSpec$7),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i,t)).pollUntilDone()})}}let serializer$8=coreClient__namespace.createSerializer(Mappers,!1),listByDeviceOperationSpec$6={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backupScheduleGroups",httpMethod:"GET",responses:{200:{bodyMapper:BackupScheduleGroupList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$8},getOperationSpec$8={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backupScheduleGroups/{scheduleGroupName}",httpMethod:"GET",responses:{200:{bodyMapper:BackupScheduleGroup},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,scheduleGroupName],headerParameters:[accept],serializer:serializer$8},createOrUpdateOperationSpec$7={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backupScheduleGroups/{scheduleGroupName}",httpMethod:"PUT",responses:{200:{bodyMapper:BackupScheduleGroup},201:{bodyMapper:BackupScheduleGroup},202:{bodyMapper:BackupScheduleGroup},204:{bodyMapper:BackupScheduleGroup},default:{bodyMapper:ErrorModel}},requestBody:scheduleGroup,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,scheduleGroupName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$8},deleteOperationSpec$7={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backupScheduleGroups/{scheduleGroupName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,scheduleGroupName],headerParameters:[accept],serializer:serializer$8};class ChapSettingsOperationsImpl{constructor(e){this.client=e}listByDevice(r,a,i,t){let e=this.listByDevicePagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByDevicePagingPage(r,a,i,t,e)}}}listByDevicePagingPage(r,a,i,t,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByDevice(r,a,i,t));yield yield tslib.__await(e.value||[])})}listByDevicePagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByDevicePagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByDevice(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listByDeviceOperationSpec$5)}get(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,chapUserName:r,resourceGroupName:a,managerName:i,options:t},getOperationSpec$7)}beginCreateOrUpdate(r,a,i,t,s,n){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,chapUserName:a,resourceGroupName:i,managerName:t,chapSetting:s,options:n},createOrUpdateOperationSpec$6),e=new coreLro.LroEngine(e,{resumeFrom:null==n?void 0:n.resumeFrom,intervalInMs:null==n?void 0:n.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,r,a,i,t,s)).pollUntilDone()})}beginDelete(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,chapUserName:a,resourceGroupName:i,managerName:t,options:s},deleteOperationSpec$6),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i,t)).pollUntilDone()})}}let serializer$7=coreClient__namespace.createSerializer(Mappers,!1),listByDeviceOperationSpec$5={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/chapSettings",httpMethod:"GET",responses:{200:{bodyMapper:ChapSettingsList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$7},getOperationSpec$7={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/chapSettings/{chapUserName}",httpMethod:"GET",responses:{200:{bodyMapper:ChapSettings},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,chapUserName],headerParameters:[accept],serializer:serializer$7},createOrUpdateOperationSpec$6={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/chapSettings/{chapUserName}",httpMethod:"PUT",responses:{200:{bodyMapper:ChapSettings},201:{bodyMapper:ChapSettings},202:{bodyMapper:ChapSettings},204:{bodyMapper:ChapSettings},default:{bodyMapper:ErrorModel}},requestBody:chapSetting,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,chapUserName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$7},deleteOperationSpec$6={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/chapSettings/{chapUserName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,chapUserName],headerParameters:[accept],serializer:serializer$7};class IscsiDisksImpl{constructor(e){this.client=e}listByDevice(r,a,i,t){let e=this.listByDevicePagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByDevicePagingPage(r,a,i,t,e)}}}listByDevicePagingPage(r,a,i,t,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByDevice(r,a,i,t));yield yield tslib.__await(e.value||[])})}listByDevicePagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByDevicePagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listByIscsiServer(r,a,i,t,s){let e=this.listByIscsiServerPagingAll(r,a,i,t,s);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByIscsiServerPagingPage(r,a,i,t,s,e)}}}listByIscsiServerPagingPage(r,a,i,t,s,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByIscsiServer(r,a,i,t,s));yield yield tslib.__await(e.value||[])})}listByIscsiServerPagingAll(n,l,p,m,d){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByIscsiServerPagingPage(n,l,p,m,d));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetrics(r,a,i,t,s,o){let e=this.listMetricsPagingAll(r,a,i,t,s,o);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricsPagingPage(r,a,i,t,s,o,e)}}}listMetricsPagingPage(r,a,i,t,s,o,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetrics(r,a,i,t,s,o));yield yield tslib.__await(e.value||[])})}listMetricsPagingAll(n,l,p,m,d,c){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricsPagingPage(n,l,p,m,d,c));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetricDefinition(r,a,i,t,s,o){let e=this.listMetricDefinitionPagingAll(r,a,i,t,s,o);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricDefinitionPagingPage(r,a,i,t,s,o,e)}}}listMetricDefinitionPagingPage(r,a,i,t,s,o,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetricDefinition(r,a,i,t,s,o));yield yield tslib.__await(e.value||[])})}listMetricDefinitionPagingAll(n,l,p,m,d,c){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricDefinitionPagingPage(n,l,p,m,d,c));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByDevice(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listByDeviceOperationSpec$4)}_listByIscsiServer(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,iscsiServerName:r,resourceGroupName:a,managerName:i,options:t},listByIscsiServerOperationSpec)}get(e,r,a,i,t,s){return this.client.sendOperationRequest({deviceName:e,iscsiServerName:r,diskName:a,resourceGroupName:i,managerName:t,options:s},getOperationSpec$6)}beginCreateOrUpdate(r,a,i,t,s,n,l){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,iscsiServerName:a,diskName:i,resourceGroupName:t,managerName:s,iscsiDisk:n,options:l},createOrUpdateOperationSpec$5),e=new coreLro.LroEngine(e,{resumeFrom:null==l?void 0:l.resumeFrom,intervalInMs:null==l?void 0:l.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,r,a,i,t,s,o){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,r,a,i,t,s,o)).pollUntilDone()})}beginDelete(r,a,i,t,s,n){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,iscsiServerName:a,diskName:i,resourceGroupName:t,managerName:s,options:n},deleteOperationSpec$5),e=new coreLro.LroEngine(e,{resumeFrom:null==n?void 0:n.resumeFrom,intervalInMs:null==n?void 0:n.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i,t,s)).pollUntilDone()})}_listMetrics(e,r,a,i,t,s){return this.client.sendOperationRequest({deviceName:e,iscsiServerName:r,diskName:a,resourceGroupName:i,managerName:t,options:s},listMetricsOperationSpec$3)}_listMetricDefinition(e,r,a,i,t,s){return this.client.sendOperationRequest({deviceName:e,iscsiServerName:r,diskName:a,resourceGroupName:i,managerName:t,options:s},listMetricDefinitionOperationSpec$3)}}let serializer$6=coreClient__namespace.createSerializer(Mappers,!1),listByDeviceOperationSpec$4={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/disks",httpMethod:"GET",responses:{200:{bodyMapper:IscsiDiskList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$6},listByIscsiServerOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}/disks",httpMethod:"GET",responses:{200:{bodyMapper:IscsiDiskList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName],headerParameters:[accept],serializer:serializer$6},getOperationSpec$6={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}/disks/{diskName}",httpMethod:"GET",responses:{200:{bodyMapper:IscsiDisk},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName,diskName],headerParameters:[accept],serializer:serializer$6},createOrUpdateOperationSpec$5={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}/disks/{diskName}",httpMethod:"PUT",responses:{200:{bodyMapper:IscsiDisk},201:{bodyMapper:IscsiDisk},202:{bodyMapper:IscsiDisk},204:{bodyMapper:IscsiDisk},default:{bodyMapper:ErrorModel}},requestBody:iscsiDisk,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName,diskName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$6},deleteOperationSpec$5={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}/disks/{diskName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName,diskName],headerParameters:[accept],serializer:serializer$6},listMetricsOperationSpec$3={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}/disks/{diskName}/metrics",httpMethod:"GET",responses:{200:{bodyMapper:MetricList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName,diskName],headerParameters:[accept],serializer:serializer$6},listMetricDefinitionOperationSpec$3={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}/disks/{diskName}/metricsDefinitions",httpMethod:"GET",responses:{200:{bodyMapper:MetricDefinitionList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName,diskName],headerParameters:[accept],serializer:serializer$6};class FileServersImpl{constructor(e){this.client=e}listByDevice(r,a,i,t){let e=this.listByDevicePagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByDevicePagingPage(r,a,i,t,e)}}}listByDevicePagingPage(r,a,i,t,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByDevice(r,a,i,t));yield yield tslib.__await(e.value||[])})}listByDevicePagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByDevicePagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetrics(r,a,i,t,s){let e=this.listMetricsPagingAll(r,a,i,t,s);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricsPagingPage(r,a,i,t,s,e)}}}listMetricsPagingPage(r,a,i,t,s,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetrics(r,a,i,t,s));yield yield tslib.__await(e.value||[])})}listMetricsPagingAll(n,l,p,m,d){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricsPagingPage(n,l,p,m,d));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetricDefinition(r,a,i,t,s){let e=this.listMetricDefinitionPagingAll(r,a,i,t,s);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricDefinitionPagingPage(r,a,i,t,s,e)}}}listMetricDefinitionPagingPage(r,a,i,t,s,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetricDefinition(r,a,i,t,s));yield yield tslib.__await(e.value||[])})}listMetricDefinitionPagingAll(n,l,p,m,d){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricDefinitionPagingPage(n,l,p,m,d));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listByManager(r,a,i){let e=this.listByManagerPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByManagerPagingPage(r,a,i,e)}}}listByManagerPagingPage(r,a,i,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByManager(r,a,i));yield yield tslib.__await(e.value||[])})}listByManagerPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByManagerPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByDevice(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listByDeviceOperationSpec$3)}get(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,fileServerName:r,resourceGroupName:a,managerName:i,options:t},getOperationSpec$5)}beginCreateOrUpdate(r,a,i,t,s,n){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,fileServerName:a,resourceGroupName:i,managerName:t,fileServer:s,options:n},createOrUpdateOperationSpec$4),e=new coreLro.LroEngine(e,{resumeFrom:null==n?void 0:n.resumeFrom,intervalInMs:null==n?void 0:n.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,r,a,i,t,s)).pollUntilDone()})}beginDelete(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,fileServerName:a,resourceGroupName:i,managerName:t,options:s},deleteOperationSpec$4),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i,t)).pollUntilDone()})}beginBackupNow(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,fileServerName:a,resourceGroupName:i,managerName:t,options:s},backupNowOperationSpec$1),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginBackupNowAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginBackupNow(e,r,a,i,t)).pollUntilDone()})}_listMetrics(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,fileServerName:r,resourceGroupName:a,managerName:i,options:t},listMetricsOperationSpec$2)}_listMetricDefinition(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,fileServerName:r,resourceGroupName:a,managerName:i,options:t},listMetricDefinitionOperationSpec$2)}_listByManager(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listByManagerOperationSpec$4)}}let serializer$5=coreClient__namespace.createSerializer(Mappers,!1),listByDeviceOperationSpec$3={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers",httpMethod:"GET",responses:{200:{bodyMapper:FileServerList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$5},getOperationSpec$5={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}",httpMethod:"GET",responses:{200:{bodyMapper:FileServer},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName],headerParameters:[accept],serializer:serializer$5},createOrUpdateOperationSpec$4={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}",httpMethod:"PUT",responses:{200:{bodyMapper:FileServer},201:{bodyMapper:FileServer},202:{bodyMapper:FileServer},204:{bodyMapper:FileServer},default:{bodyMapper:ErrorModel}},requestBody:fileServer,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$5},deleteOperationSpec$4={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName],headerParameters:[accept],serializer:serializer$5},backupNowOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}/backup",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName],headerParameters:[accept],serializer:serializer$5},listMetricsOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}/metrics",httpMethod:"GET",responses:{200:{bodyMapper:MetricList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName],headerParameters:[accept],serializer:serializer$5},listMetricDefinitionOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}/metricsDefinitions",httpMethod:"GET",responses:{200:{bodyMapper:MetricDefinitionList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName],headerParameters:[accept],serializer:serializer$5},listByManagerOperationSpec$4={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/fileservers",httpMethod:"GET",responses:{200:{bodyMapper:FileServerList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$5};class FileSharesImpl{constructor(e){this.client=e}listByFileServer(r,a,i,t,s){let e=this.listByFileServerPagingAll(r,a,i,t,s);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByFileServerPagingPage(r,a,i,t,s,e)}}}listByFileServerPagingPage(r,a,i,t,s,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByFileServer(r,a,i,t,s));yield yield tslib.__await(e.value||[])})}listByFileServerPagingAll(n,l,p,m,d){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByFileServerPagingPage(n,l,p,m,d));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetrics(r,a,i,t,s,o){let e=this.listMetricsPagingAll(r,a,i,t,s,o);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricsPagingPage(r,a,i,t,s,o,e)}}}listMetricsPagingPage(r,a,i,t,s,o,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetrics(r,a,i,t,s,o));yield yield tslib.__await(e.value||[])})}listMetricsPagingAll(n,l,p,m,d,c){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricsPagingPage(n,l,p,m,d,c));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetricDefinition(r,a,i,t,s,o){let e=this.listMetricDefinitionPagingAll(r,a,i,t,s,o);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricDefinitionPagingPage(r,a,i,t,s,o,e)}}}listMetricDefinitionPagingPage(r,a,i,t,s,o,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetricDefinition(r,a,i,t,s,o));yield yield tslib.__await(e.value||[])})}listMetricDefinitionPagingAll(n,l,p,m,d,c){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricDefinitionPagingPage(n,l,p,m,d,c));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listByDevice(r,a,i,t){let e=this.listByDevicePagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByDevicePagingPage(r,a,i,t,e)}}}listByDevicePagingPage(r,a,i,t,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByDevice(r,a,i,t));yield yield tslib.__await(e.value||[])})}listByDevicePagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByDevicePagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByFileServer(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,fileServerName:r,resourceGroupName:a,managerName:i,options:t},listByFileServerOperationSpec)}get(e,r,a,i,t,s){return this.client.sendOperationRequest({deviceName:e,fileServerName:r,shareName:a,resourceGroupName:i,managerName:t,options:s},getOperationSpec$4)}beginCreateOrUpdate(r,a,i,t,s,n,l){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,fileServerName:a,shareName:i,resourceGroupName:t,managerName:s,fileShare:n,options:l},createOrUpdateOperationSpec$3),e=new coreLro.LroEngine(e,{resumeFrom:null==l?void 0:l.resumeFrom,intervalInMs:null==l?void 0:l.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,r,a,i,t,s,o){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,r,a,i,t,s,o)).pollUntilDone()})}beginDelete(r,a,i,t,s,n){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,fileServerName:a,shareName:i,resourceGroupName:t,managerName:s,options:n},deleteOperationSpec$3),e=new coreLro.LroEngine(e,{resumeFrom:null==n?void 0:n.resumeFrom,intervalInMs:null==n?void 0:n.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i,t,s)).pollUntilDone()})}_listMetrics(e,r,a,i,t,s){return this.client.sendOperationRequest({deviceName:e,fileServerName:r,shareName:a,resourceGroupName:i,managerName:t,options:s},listMetricsOperationSpec$1)}_listMetricDefinition(e,r,a,i,t,s){return this.client.sendOperationRequest({deviceName:e,fileServerName:r,shareName:a,resourceGroupName:i,managerName:t,options:s},listMetricDefinitionOperationSpec$1)}_listByDevice(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listByDeviceOperationSpec$2)}}let serializer$4=coreClient__namespace.createSerializer(Mappers,!1),listByFileServerOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}/shares",httpMethod:"GET",responses:{200:{bodyMapper:FileShareList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName],headerParameters:[accept],serializer:serializer$4},getOperationSpec$4={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}/shares/{shareName}",httpMethod:"GET",responses:{200:{bodyMapper:FileShare},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName,shareName],headerParameters:[accept],serializer:serializer$4},createOrUpdateOperationSpec$3={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}/shares/{shareName}",httpMethod:"PUT",responses:{200:{bodyMapper:FileShare},201:{bodyMapper:FileShare},202:{bodyMapper:FileShare},204:{bodyMapper:FileShare},default:{bodyMapper:ErrorModel}},requestBody:fileShare,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName,shareName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$4},deleteOperationSpec$3={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}/shares/{shareName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName,shareName],headerParameters:[accept],serializer:serializer$4},listMetricsOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}/shares/{shareName}/metrics",httpMethod:"GET",responses:{200:{bodyMapper:MetricList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName,shareName],headerParameters:[accept],serializer:serializer$4},listMetricDefinitionOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}/shares/{shareName}/metricsDefinitions",httpMethod:"GET",responses:{200:{bodyMapper:MetricDefinitionList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName,shareName],headerParameters:[accept],serializer:serializer$4},listByDeviceOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/shares",httpMethod:"GET",responses:{200:{bodyMapper:FileShareList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$4};class IscsiServersImpl{constructor(e){this.client=e}listByDevice(r,a,i,t){let e=this.listByDevicePagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByDevicePagingPage(r,a,i,t,e)}}}listByDevicePagingPage(r,a,i,t,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByDevice(r,a,i,t));yield yield tslib.__await(e.value||[])})}listByDevicePagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByDevicePagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetrics(r,a,i,t,s){let e=this.listMetricsPagingAll(r,a,i,t,s);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricsPagingPage(r,a,i,t,s,e)}}}listMetricsPagingPage(r,a,i,t,s,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetrics(r,a,i,t,s));yield yield tslib.__await(e.value||[])})}listMetricsPagingAll(n,l,p,m,d){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricsPagingPage(n,l,p,m,d));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetricDefinition(r,a,i,t,s){let e=this.listMetricDefinitionPagingAll(r,a,i,t,s);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricDefinitionPagingPage(r,a,i,t,s,e)}}}listMetricDefinitionPagingPage(r,a,i,t,s,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetricDefinition(r,a,i,t,s));yield yield tslib.__await(e.value||[])})}listMetricDefinitionPagingAll(n,l,p,m,d){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricDefinitionPagingPage(n,l,p,m,d));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listByManager(r,a,i){let e=this.listByManagerPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByManagerPagingPage(r,a,i,e)}}}listByManagerPagingPage(r,a,i,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByManager(r,a,i));yield yield tslib.__await(e.value||[])})}listByManagerPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByManagerPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByDevice(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listByDeviceOperationSpec$1)}get(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,iscsiServerName:r,resourceGroupName:a,managerName:i,options:t},getOperationSpec$3)}beginCreateOrUpdate(r,a,i,t,s,n){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,iscsiServerName:a,resourceGroupName:i,managerName:t,iscsiServer:s,options:n},createOrUpdateOperationSpec$2),e=new coreLro.LroEngine(e,{resumeFrom:null==n?void 0:n.resumeFrom,intervalInMs:null==n?void 0:n.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,r,a,i,t,s)).pollUntilDone()})}beginDelete(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,iscsiServerName:a,resourceGroupName:i,managerName:t,options:s},deleteOperationSpec$2),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i,t)).pollUntilDone()})}beginBackupNow(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,iscsiServerName:a,resourceGroupName:i,managerName:t,options:s},backupNowOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginBackupNowAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginBackupNow(e,r,a,i,t)).pollUntilDone()})}_listMetrics(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,iscsiServerName:r,resourceGroupName:a,managerName:i,options:t},listMetricsOperationSpec)}_listMetricDefinition(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,iscsiServerName:r,resourceGroupName:a,managerName:i,options:t},listMetricDefinitionOperationSpec)}_listByManager(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listByManagerOperationSpec$3)}}let serializer$3=coreClient__namespace.createSerializer(Mappers,!1),listByDeviceOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers",httpMethod:"GET",responses:{200:{bodyMapper:IscsiServerList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$3},getOperationSpec$3={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}",httpMethod:"GET",responses:{200:{bodyMapper:IscsiServer},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName],headerParameters:[accept],serializer:serializer$3},createOrUpdateOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}",httpMethod:"PUT",responses:{200:{bodyMapper:IscsiServer},201:{bodyMapper:IscsiServer},202:{bodyMapper:IscsiServer},204:{bodyMapper:IscsiServer},default:{bodyMapper:ErrorModel}},requestBody:iscsiServer,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$3},deleteOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName],headerParameters:[accept],serializer:serializer$3},backupNowOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}/backup",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName],headerParameters:[accept],serializer:serializer$3},listMetricsOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}/metrics",httpMethod:"GET",responses:{200:{bodyMapper:MetricList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName],headerParameters:[accept],serializer:serializer$3},listMetricDefinitionOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}/metricsDefinitions",httpMethod:"GET",responses:{200:{bodyMapper:MetricDefinitionList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName],headerParameters:[accept],serializer:serializer$3},listByManagerOperationSpec$3={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/iscsiservers",httpMethod:"GET",responses:{200:{bodyMapper:IscsiServerList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$3};class JobsImpl{constructor(e){this.client=e}listByDevice(r,a,i,t){let e=this.listByDevicePagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByDevicePagingPage(r,a,i,t,e)}}}listByDevicePagingPage(t,s,o,n,l){return tslib.__asyncGenerator(this,arguments,function*(){let e,r=null==l?void 0:l.continuationToken;var a;for(r||(setContinuationToken(a=(e=yield tslib.__await(this._listByDevice(t,s,o,n))).value||[],r=e.nextLink),yield yield tslib.__await(a));r;){e=yield tslib.__await(this._listByDeviceNext(t,s,o,r,n)),r=e.nextLink;var i=e.value||[];setContinuationToken(i,r),yield yield tslib.__await(i)}})}listByDevicePagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByDevicePagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listByManager(r,a,i){let e=this.listByManagerPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByManagerPagingPage(r,a,i,e)}}}listByManagerPagingPage(t,s,o,n){return tslib.__asyncGenerator(this,arguments,function*(){let e,r=null==n?void 0:n.continuationToken;var a;for(r||(setContinuationToken(a=(e=yield tslib.__await(this._listByManager(t,s,o))).value||[],r=e.nextLink),yield yield tslib.__await(a));r;){e=yield tslib.__await(this._listByManagerNext(t,s,r,o)),r=e.nextLink;var i=e.value||[];setContinuationToken(i,r),yield yield tslib.__await(i)}})}listByManagerPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByManagerPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByDevice(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listByDeviceOperationSpec)}get(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,jobName:r,resourceGroupName:a,managerName:i,options:t},getOperationSpec$2)}_listByManager(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listByManagerOperationSpec$2)}_listByDeviceNext(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,nextLink:i,options:t},listByDeviceNextOperationSpec)}_listByManagerNext(e,r,a,i){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,nextLink:a,options:i},listByManagerNextOperationSpec)}}let serializer$2=coreClient__namespace.createSerializer(Mappers,!1),listByDeviceOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/jobs",httpMethod:"GET",responses:{200:{bodyMapper:JobList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$2},getOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/jobs/{jobName}",httpMethod:"GET",responses:{200:{bodyMapper:Job},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,jobName],headerParameters:[accept],serializer:serializer$2},listByManagerOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/jobs",httpMethod:"GET",responses:{200:{bodyMapper:JobList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$2},listByDeviceNextOperationSpec={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:JobList},default:{bodyMapper:ErrorModel}},urlParameters:[$host,subscriptionId,resourceGroupName,managerName,nextLink,deviceName],headerParameters:[accept],serializer:serializer$2},listByManagerNextOperationSpec={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:JobList},default:{bodyMapper:ErrorModel}},urlParameters:[$host,subscriptionId,resourceGroupName,managerName,nextLink],headerParameters:[accept],serializer:serializer$2};class StorageAccountCredentialsImpl{constructor(e){this.client=e}listByManager(r,a,i){let e=this.listByManagerPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByManagerPagingPage(r,a,i,e)}}}listByManagerPagingPage(r,a,i,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByManager(r,a,i));yield yield tslib.__await(e.value||[])})}listByManagerPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByManagerPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByManager(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listByManagerOperationSpec$1)}get(e,r,a,i){return this.client.sendOperationRequest({credentialName:e,resourceGroupName:r,managerName:a,options:i},getOperationSpec$1)}beginCreateOrUpdate(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{credentialName:r,resourceGroupName:a,managerName:i,storageAccount:t,options:s},createOrUpdateOperationSpec$1),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,r,a,i,t)).pollUntilDone()})}beginDelete(r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{credentialName:r,resourceGroupName:a,managerName:i,options:t},deleteOperationSpec$1),e=new coreLro.LroEngine(e,{resumeFrom:null==t?void 0:t.resumeFrom,intervalInMs:null==t?void 0:t.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i)).pollUntilDone()})}}let serializer$1=coreClient__namespace.createSerializer(Mappers,!1),listByManagerOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/storageAccountCredentials",httpMethod:"GET",responses:{200:{bodyMapper:StorageAccountCredentialList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$1},getOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/storageAccountCredentials/{credentialName}",httpMethod:"GET",responses:{200:{bodyMapper:StorageAccountCredential},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,credentialName],headerParameters:[accept],serializer:serializer$1},createOrUpdateOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/storageAccountCredentials/{credentialName}",httpMethod:"PUT",responses:{200:{bodyMapper:StorageAccountCredential},201:{bodyMapper:StorageAccountCredential},202:{bodyMapper:StorageAccountCredential},204:{bodyMapper:StorageAccountCredential},default:{bodyMapper:ErrorModel}},requestBody:storageAccount,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,credentialName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$1},deleteOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/storageAccountCredentials/{credentialName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,credentialName],headerParameters:[accept],serializer:serializer$1};class StorageDomainsImpl{constructor(e){this.client=e}listByManager(r,a,i){let e=this.listByManagerPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByManagerPagingPage(r,a,i,e)}}}listByManagerPagingPage(r,a,i,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByManager(r,a,i));yield yield tslib.__await(e.value||[])})}listByManagerPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByManagerPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByManager(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listByManagerOperationSpec)}get(e,r,a,i){return this.client.sendOperationRequest({storageDomainName:e,resourceGroupName:r,managerName:a,options:i},getOperationSpec)}beginCreateOrUpdate(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{storageDomainName:r,resourceGroupName:a,managerName:i,storageDomain:t,options:s},createOrUpdateOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,r,a,i,t)).pollUntilDone()})}beginDelete(r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{storageDomainName:r,resourceGroupName:a,managerName:i,options:t},deleteOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==t?void 0:t.resumeFrom,intervalInMs:null==t?void 0:t.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i)).pollUntilDone()})}}let serializer=coreClient__namespace.createSerializer(Mappers,!1),listByManagerOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/storageDomains",httpMethod:"GET",responses:{200:{bodyMapper:StorageDomainList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer},getOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/storageDomains/{storageDomainName}",httpMethod:"GET",responses:{200:{bodyMapper:StorageDomain},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,storageDomainName],headerParameters:[accept],serializer:serializer},createOrUpdateOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/storageDomains/{storageDomainName}",httpMethod:"PUT",responses:{200:{bodyMapper:StorageDomain},201:{bodyMapper:StorageDomain},202:{bodyMapper:StorageDomain},204:{bodyMapper:StorageDomain},default:{bodyMapper:ErrorModel}},requestBody:storageDomain,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,storageDomainName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer},deleteOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/storageDomains/{storageDomainName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,storageDomainName],headerParameters:[accept],serializer:serializer};class StorSimpleManagementClient extends coreClient__namespace.ServiceClient{constructor(e,r,a){if(void 0===e)throw new Error("'credentials' cannot be null");if(void 0===r)throw new Error("'subscriptionId' cannot be null");var i,t="azsdk-js-arm-storsimple1200series/2.1.1",t=(a=a||{}).userAgentOptions&&a.userAgentOptions.userAgentPrefix?a.userAgentOptions.userAgentPrefix+" "+t:t,t=Object.assign(Object.assign(Object.assign({},{requestContentType:"application/json; charset=utf-8",credential:e}),a),{userAgentOptions:{userAgentPrefix:t},endpoint:null!=(t=null!=(t=a.endpoint)?t:a.baseUri)?t:"https://management.azure.com"});super(t);let s=!1;null!=a&&a.pipeline&&0<a.pipeline.getOrderedPolicies().length&&(i=a.pipeline.getOrderedPolicies(),s=i.some(e=>e.name===coreRestPipeline__namespace.bearerTokenAuthenticationPolicyName)),a&&a.pipeline&&0!=a.pipeline.getOrderedPolicies().length&&s||(this.pipeline.removePolicy({name:coreRestPipeline__namespace.bearerTokenAuthenticationPolicyName}),this.pipeline.addPolicy(coreRestPipeline__namespace.bearerTokenAuthenticationPolicy({credential:e,scopes:null!=(i=t.credentialScopes)?i:t.endpoint+"/.default",challengeCallbacks:{authorizeRequestOnChallenge:coreClient__namespace.authorizeRequestOnClaimChallenge}}))),this.subscriptionId=r,this.$host=a.$host||"https://management.azure.com",this.apiVersion=a.apiVersion||"2016-10-01",this.managers=new ManagersImpl(this),this.availableProviderOperationsOperations=new AvailableProviderOperationsOperationsImpl(this),this.accessControlRecords=new AccessControlRecordsImpl(this),this.alerts=new AlertsImpl(this),this.backups=new BackupsImpl(this),this.devices=new DevicesImpl(this),this.backupScheduleGroups=new BackupScheduleGroupsImpl(this),this.chapSettingsOperations=new ChapSettingsOperationsImpl(this),this.iscsiDisks=new IscsiDisksImpl(this),this.fileServers=new FileServersImpl(this),this.fileShares=new FileSharesImpl(this),this.iscsiServers=new IscsiServersImpl(this),this.jobs=new JobsImpl(this),this.storageAccountCredentials=new StorageAccountCredentialsImpl(this),this.storageDomains=new StorageDomainsImpl(this),this.addCustomApiVersionPolicy(a.apiVersion)}addCustomApiVersionPolicy(t){t&&this.pipeline.addPolicy({name:"CustomApiVersionPolicy",sendRequest(a,i){return tslib.__awaiter(this,void 0,void 0,function*(){var e,r=a.url.split("?");return 1<r.length&&(e=r[1].split("&").map(e=>-1<e.indexOf("api-version")?"api-version="+t:e),a.url=r[0]+"?"+e.join("&")),i(a)})}})}}exports.StorSimpleManagementClient=StorSimpleManagementClient,exports.getContinuationToken=getContinuationToken;
1
+ Object.defineProperty(exports,"__esModule",{value:!0});var tslib=require("tslib"),coreClient=require("@azure/core-client"),coreRestPipeline=require("@azure/core-rest-pipeline"),coreLro=require("@azure/core-lro");function _interopNamespaceDefault(a){var i=Object.create(null);return a&&Object.keys(a).forEach(function(e){var r;"default"!==e&&(r=Object.getOwnPropertyDescriptor(a,e),Object.defineProperty(i,e,r.get?r:{enumerable:!0,get:function(){return a[e]}}))}),i.default=a,Object.freeze(i)}var coreClient__namespace=_interopNamespaceDefault(coreClient),coreRestPipeline__namespace=_interopNamespaceDefault(coreRestPipeline);let pageMap=new WeakMap;function getContinuationToken(e){return"object"!=typeof e||null===e||null==(e=pageMap.get(e))?void 0:e.continuationToken}function setContinuationToken(e,r){var a;"object"==typeof e&&null!==e&&r&&((a=null!=(a=pageMap.get(e))?a:{}).continuationToken=r,pageMap.set(e,a))}let ManagerList={type:{name:"Composite",className:"ManagerList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"Manager"}}}}}}},ManagerIntrinsicSettings={type:{name:"Composite",className:"ManagerIntrinsicSettings",modelProperties:{type:{serializedName:"type",required:!0,type:{name:"Enum",allowedValues:["GardaV1","HelsinkiV1"]}}}}},ManagerSku={type:{name:"Composite",className:"ManagerSku",modelProperties:{name:{defaultValue:"Standard",isConstant:!0,serializedName:"name",type:{name:"String"}}}}},Resource={type:{name:"Composite",className:"Resource",modelProperties:{id:{serializedName:"id",readOnly:!0,type:{name:"String"}},name:{serializedName:"name",readOnly:!0,type:{name:"String"}},type:{serializedName:"type",readOnly:!0,type:{name:"String"}},location:{serializedName:"location",required:!0,type:{name:"String"}},tags:{serializedName:"tags",type:{name:"Dictionary",value:{type:{name:"String"}}}}}}},ErrorModel={type:{name:"Composite",className:"ErrorModel",modelProperties:{errorCode:{serializedName:"errorCode",required:!0,type:{name:"String"}},message:{serializedName:"message",type:{name:"Composite",className:"Message"}},values:{serializedName:"values",type:{name:"Sequence",element:{type:{name:"Composite",className:"Item"}}}}}}},Message={type:{name:"Composite",className:"Message",modelProperties:{language:{serializedName:"language",type:{name:"String"}},value:{serializedName:"value",type:{name:"String"}}}}},Item={type:{name:"Composite",className:"Item",modelProperties:{key:{serializedName:"key",required:!0,type:{name:"String"}},value:{serializedName:"value",required:!0,type:{name:"String"}}}}},AvailableProviderOperations={type:{name:"Composite",className:"AvailableProviderOperations",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"AvailableProviderOperation"}}}},nextLink:{serializedName:"nextLink",type:{name:"String"}}}}},AvailableProviderOperation={type:{name:"Composite",className:"AvailableProviderOperation",modelProperties:{name:{serializedName:"name",type:{name:"String"}},display:{serializedName:"display",type:{name:"Composite",className:"AvailableProviderOperationDisplay"}},origin:{serializedName:"origin",type:{name:"String"}},properties:{serializedName:"properties",type:{name:"Dictionary",value:{type:{name:"any"}}}}}}},AvailableProviderOperationDisplay={type:{name:"Composite",className:"AvailableProviderOperationDisplay",modelProperties:{provider:{serializedName:"provider",type:{name:"String"}},resource:{serializedName:"resource",type:{name:"String"}},operation:{serializedName:"operation",type:{name:"String"}},description:{serializedName:"description",type:{name:"String"}}}}},ManagerPatch={type:{name:"Composite",className:"ManagerPatch",modelProperties:{tags:{serializedName:"tags",type:{name:"Dictionary",value:{type:{name:"String"}}}}}}},AccessControlRecordList={type:{name:"Composite",className:"AccessControlRecordList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"AccessControlRecord"}}}}}}},BaseModel={type:{name:"Composite",className:"BaseModel",modelProperties:{id:{serializedName:"id",readOnly:!0,type:{name:"String"}},name:{serializedName:"name",readOnly:!0,type:{name:"String"}},type:{serializedName:"type",readOnly:!0,type:{name:"String"}}}}},AlertList={type:{name:"Composite",className:"AlertList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"Alert"}}}},nextLink:{serializedName:"nextLink",type:{name:"String"}}}}},AlertSource={type:{name:"Composite",className:"AlertSource",modelProperties:{name:{serializedName:"name",type:{name:"String"}},timeZone:{serializedName:"timeZone",type:{name:"String"}},alertSourceType:{serializedName:"alertSourceType",type:{name:"Enum",allowedValues:["Resource","Device"]}}}}},AlertErrorDetails={type:{name:"Composite",className:"AlertErrorDetails",modelProperties:{errorCode:{serializedName:"errorCode",type:{name:"String"}},errorMessage:{serializedName:"errorMessage",type:{name:"String"}},occurences:{serializedName:"occurences",type:{name:"Number"}}}}},BackupList={type:{name:"Composite",className:"BackupList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"Backup"}}}},nextLink:{serializedName:"nextLink",type:{name:"String"}}}}},UploadCertificateRequest={type:{name:"Composite",className:"UploadCertificateRequest",modelProperties:{contractVersion:{serializedName:"contractVersion",readOnly:!0,type:{name:"Enum",allowedValues:["InvalidVersion","V2011_09","V2012_02","V2012_05","V2012_12","V2013_04","V2013_10","V2013_11","V2014_04","V2014_06","V2014_07","V2014_09","V2014_10","V2014_12","V2015_01","V2015_02","V2015_04","V2015_05","V2015_06","V2015_07","V2015_08","V2015_10","V2015_12","V2016_01","V2016_02","V2016_04","V2016_05","V2016_07","V2016_08"]}},authType:{serializedName:"properties.authType",type:{name:"Enum",allowedValues:["Invalid","AccessControlService","AzureActiveDirectory"]}},certificate:{serializedName:"properties.certificate",required:!0,type:{name:"String"}}}}},ClearAlertRequest={type:{name:"Composite",className:"ClearAlertRequest",modelProperties:{resolutionMessage:{serializedName:"resolutionMessage",type:{name:"String"}},alerts:{serializedName:"alerts",required:!0,type:{name:"Sequence",element:{type:{name:"String"}}}}}}},DeviceList={type:{name:"Composite",className:"DeviceList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"Device"}}}}}}},DeviceDetails={type:{name:"Composite",className:"DeviceDetails",modelProperties:{endpointCount:{serializedName:"endpointCount",type:{name:"Number"}},totalStorageInBytes:{serializedName:"totalStorageInBytes",type:{name:"Number"}},totalLocalStorageInBytes:{serializedName:"totalLocalStorageInBytes",type:{name:"Number"}},provisionedStorageInBytes:{serializedName:"provisionedStorageInBytes",type:{name:"Number"}},provisionedLocalStorageInBytes:{serializedName:"provisionedLocalStorageInBytes",type:{name:"Number"}},usingStorageInBytes:{serializedName:"usingStorageInBytes",type:{name:"Number"}},usingLocalStorageInBytes:{serializedName:"usingLocalStorageInBytes",type:{name:"Number"}},totalBackupSizeInBytes:{serializedName:"totalBackupSizeInBytes",type:{name:"Number"}},availableStorageInBytes:{serializedName:"availableStorageInBytes",type:{name:"Number"}},availableLocalStorageInBytes:{serializedName:"availableLocalStorageInBytes",type:{name:"Number"}}}}},DevicePatch={type:{name:"Composite",className:"DevicePatch",modelProperties:{deviceDescription:{serializedName:"deviceDescription",type:{name:"String"}}}}},CloneRequest={type:{name:"Composite",className:"CloneRequest",modelProperties:{targetDeviceId:{serializedName:"properties.targetDeviceId",required:!0,type:{name:"String"}},targetAccessPointId:{serializedName:"properties.targetAccessPointId",required:!0,type:{name:"String"}},newEndpointName:{serializedName:"properties.newEndpointName",required:!0,type:{name:"String"}},share:{serializedName:"properties.share",type:{name:"Composite",className:"FileShare"}},disk:{serializedName:"properties.disk",type:{name:"Composite",className:"IscsiDisk"}}}}},BackupScheduleGroupList={type:{name:"Composite",className:"BackupScheduleGroupList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"BackupScheduleGroup"}}}}}}},Time={type:{name:"Composite",className:"Time",modelProperties:{hour:{constraints:{InclusiveMaximum:23,InclusiveMinimum:0},serializedName:"hour",required:!0,type:{name:"Number"}},minute:{constraints:{InclusiveMaximum:59,InclusiveMinimum:0},serializedName:"minute",required:!0,type:{name:"Number"}}}}},ChapSettingsList={type:{name:"Composite",className:"ChapSettingsList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"ChapSettings"}}}}}}},AsymmetricEncryptedSecret={type:{name:"Composite",className:"AsymmetricEncryptedSecret",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"String"}},encryptionCertificateThumbprint:{serializedName:"encryptionCertificateThumbprint",type:{name:"String"}},encryptionAlgorithm:{serializedName:"encryptionAlgorithm",required:!0,type:{name:"Enum",allowedValues:["None","AES256","RSAES_PKCS1_v_1_5"]}}}}},IscsiDiskList={type:{name:"Composite",className:"IscsiDiskList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"IscsiDisk"}}}}}}},FailoverRequest={type:{name:"Composite",className:"FailoverRequest",modelProperties:{accesspointIds:{serializedName:"accesspointIds",type:{name:"Sequence",element:{type:{name:"String"}}}},targetDeviceId:{serializedName:"targetDeviceId",type:{name:"String"}},skipValidation:{serializedName:"skipValidation",type:{name:"Boolean"}},keepSourceDevice:{serializedName:"keepSourceDevice",type:{name:"Boolean"}}}}},FileServerList={type:{name:"Composite",className:"FileServerList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"FileServer"}}}}}}},MetricList={type:{name:"Composite",className:"MetricList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"Metrics"}}}}}}},Metrics={type:{name:"Composite",className:"Metrics",modelProperties:{resourceId:{serializedName:"resourceId",required:!0,type:{name:"String"}},startTime:{serializedName:"startTime",required:!0,type:{name:"DateTime"}},endTime:{serializedName:"endTime",required:!0,type:{name:"DateTime"}},timeGrain:{serializedName:"timeGrain",required:!0,type:{name:"String"}},primaryAggregation:{serializedName:"primaryAggregation",required:!0,type:{name:"Enum",allowedValues:["Average","Last","Maximum","Minimum","None","Total"]}},name:{serializedName:"name",type:{name:"Composite",className:"MetricName"}},dimensions:{serializedName:"dimensions",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"MetricDimension"}}}},unit:{serializedName:"unit",required:!0,type:{name:"Enum",allowedValues:["Bytes","BytesPerSecond","Count","CountPerSecond","Percent","Seconds"]}},type:{serializedName:"type",required:!0,type:{name:"String"}},values:{serializedName:"values",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"MetricData"}}}}}}},MetricName={type:{name:"Composite",className:"MetricName",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"String"}},localizedValue:{serializedName:"localizedValue",required:!0,type:{name:"String"}}}}},MetricDimension={type:{name:"Composite",className:"MetricDimension",modelProperties:{name:{serializedName:"name",required:!0,type:{name:"String"}},value:{serializedName:"value",required:!0,type:{name:"String"}}}}},MetricData={type:{name:"Composite",className:"MetricData",modelProperties:{timeStamp:{serializedName:"timeStamp",required:!0,type:{name:"DateTime"}},sum:{serializedName:"sum",required:!0,type:{name:"Number"}},count:{serializedName:"count",required:!0,type:{name:"Number"}},average:{serializedName:"average",required:!0,type:{name:"Number"}},minimum:{serializedName:"minimum",required:!0,type:{name:"Number"}},maximum:{serializedName:"maximum",required:!0,type:{name:"Number"}}}}},MetricDefinitionList={type:{name:"Composite",className:"MetricDefinitionList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"MetricDefinition"}}}}}}},MetricDefinition={type:{name:"Composite",className:"MetricDefinition",modelProperties:{name:{serializedName:"name",type:{name:"Composite",className:"MetricName"}},unit:{serializedName:"unit",required:!0,type:{name:"Enum",allowedValues:["Bytes","BytesPerSecond","Count","CountPerSecond","Percent","Seconds"]}},primaryAggregationType:{serializedName:"primaryAggregationType",required:!0,type:{name:"Enum",allowedValues:["Average","Last","Maximum","Minimum","None","Total"]}},resourceId:{serializedName:"resourceId",required:!0,type:{name:"String"}},metricAvailabilities:{serializedName:"metricAvailabilities",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"MetricAvailablity"}}}},dimensions:{serializedName:"dimensions",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"MetricDimension"}}}},type:{serializedName:"type",required:!0,type:{name:"String"}}}}},MetricAvailablity={type:{name:"Composite",className:"MetricAvailablity",modelProperties:{timeGrain:{serializedName:"timeGrain",required:!0,type:{name:"String"}},retention:{serializedName:"retention",required:!0,type:{name:"String"}}}}},FileShareList={type:{name:"Composite",className:"FileShareList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"FileShare"}}}}}}},IscsiServerList={type:{name:"Composite",className:"IscsiServerList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"IscsiServer"}}}}}}},JobList={type:{name:"Composite",className:"JobList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"Job"}}}},nextLink:{serializedName:"nextLink",type:{name:"String"}}}}},JobErrorDetails={type:{name:"Composite",className:"JobErrorDetails",modelProperties:{errorDetails:{serializedName:"errorDetails",type:{name:"Sequence",element:{type:{name:"Composite",className:"JobErrorItem"}}}},code:{serializedName:"code",required:!0,type:{name:"String"}},message:{serializedName:"message",required:!0,type:{name:"String"}}}}},JobErrorItem={type:{name:"Composite",className:"JobErrorItem",modelProperties:{recommendations:{serializedName:"recommendations",type:{name:"Sequence",element:{type:{name:"String"}}}},code:{serializedName:"code",required:!0,type:{name:"String"}},message:{serializedName:"message",required:!0,type:{name:"String"}}}}},JobStage={type:{name:"Composite",className:"JobStage",modelProperties:{message:{serializedName:"message",type:{name:"String"}},stageStatus:{serializedName:"stageStatus",required:!0,type:{name:"Enum",allowedValues:["Invalid","Running","Succeeded","Failed","Canceled","Paused","Scheduled"]}},detail:{serializedName:"detail",type:{name:"String"}},errorCode:{serializedName:"errorCode",type:{name:"String"}}}}},JobStats={type:{name:"Composite",className:"JobStats",modelProperties:{completedWorkItemCount:{serializedName:"completedWorkItemCount",type:{name:"Number"}},totalWorkItemCount:{serializedName:"totalWorkItemCount",type:{name:"Number"}},estimatedTimeRemaining:{serializedName:"estimatedTimeRemaining",type:{name:"Number"}}}}},UpdateDownloadProgress={type:{name:"Composite",className:"UpdateDownloadProgress",modelProperties:{downloadPhase:{serializedName:"downloadPhase",type:{name:"Enum",allowedValues:["Unknown","Initializing","Downloading","Verifying"]}},percentComplete:{serializedName:"percentComplete",type:{name:"Number"}},totalBytesToDownload:{serializedName:"totalBytesToDownload",type:{name:"Number"}},totalBytesDownloaded:{serializedName:"totalBytesDownloaded",type:{name:"Number"}},numberOfUpdatesToDownload:{serializedName:"numberOfUpdatesToDownload",type:{name:"Number"}},numberOfUpdatesDownloaded:{serializedName:"numberOfUpdatesDownloaded",type:{name:"Number"}}}}},UpdateInstallProgress={type:{name:"Composite",className:"UpdateInstallProgress",modelProperties:{percentComplete:{serializedName:"percentComplete",type:{name:"Number"}},numberOfUpdatesToInstall:{serializedName:"numberOfUpdatesToInstall",type:{name:"Number"}},numberOfUpdatesInstalled:{serializedName:"numberOfUpdatesInstalled",type:{name:"Number"}}}}},NodeNetwork={type:{name:"Composite",className:"NodeNetwork",modelProperties:{networkAdapters:{serializedName:"networkAdapters",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"NetworkAdapter"}}}}}}},NetworkAdapter={type:{name:"Composite",className:"NetworkAdapter",modelProperties:{networkAdapterName:{serializedName:"networkAdapterName",required:!0,type:{name:"String"}},iPv4Info:{serializedName:"iPv4Info",type:{name:"Composite",className:"IPConfig"}},iPv6Info:{serializedName:"iPv6Info",type:{name:"Composite",className:"IPConfig"}},dhcpStatus:{serializedName:"dhcpStatus",required:!0,type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},linkSpeed:{serializedName:"linkSpeed",type:{name:"Number"}}}}},IPConfig={type:{name:"Composite",className:"IPConfig",modelProperties:{ipAddress:{serializedName:"ipAddress",required:!0,type:{name:"String"}},prefixLength:{serializedName:"prefixLength",type:{name:"Number"}},gateway:{serializedName:"gateway",required:!0,type:{name:"String"}}}}},SendTestAlertEmailRequest={type:{name:"Composite",className:"SendTestAlertEmailRequest",modelProperties:{emailList:{serializedName:"emailList",required:!0,type:{name:"Sequence",element:{type:{name:"String"}}}}}}},SymmetricEncryptedSecret={type:{name:"Composite",className:"SymmetricEncryptedSecret",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"String"}},valueCertificateThumbprint:{serializedName:"valueCertificateThumbprint",type:{name:"String"}},encryptionAlgorithm:{serializedName:"encryptionAlgorithm",required:!0,type:{name:"Enum",allowedValues:["None","AES256","RSAES_PKCS1_v_1_5"]}}}}},StorageAccountCredentialList={type:{name:"Composite",className:"StorageAccountCredentialList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"StorageAccountCredential"}}}}}}},StorageDomainList={type:{name:"Composite",className:"StorageDomainList",modelProperties:{value:{serializedName:"value",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"StorageDomain"}}}}}}},AlertFilter={type:{name:"Composite",className:"AlertFilter",modelProperties:{status:{serializedName:"status",type:{name:"Enum",allowedValues:["Active","Cleared"]}},severity:{serializedName:"severity",type:{name:"Enum",allowedValues:["Informational","Warning","Critical"]}},sourceType:{serializedName:"sourceType",type:{name:"Enum",allowedValues:["Resource","Device"]}},sourceName:{serializedName:"sourceName",type:{name:"String"}},appearedOnTime:{serializedName:"appearedOnTime",type:{name:"DateTime"}}}}},BackupFilter={type:{name:"Composite",className:"BackupFilter",modelProperties:{initiatedBy:{serializedName:"initiatedBy",type:{name:"Enum",allowedValues:["Manual","Scheduled"]}},createdTime:{serializedName:"createdTime",type:{name:"DateTime"}}}}},JobFilter={type:{name:"Composite",className:"JobFilter",modelProperties:{jobType:{serializedName:"jobType",required:!0,type:{name:"Enum",allowedValues:["Backup","Clone","Failover","DownloadUpdates","InstallUpdates"]}},status:{serializedName:"status",required:!0,type:{name:"Enum",allowedValues:["Invalid","Running","Succeeded","Failed","Canceled","Paused","Scheduled"]}},startTime:{serializedName:"startTime",type:{name:"DateTime"}}}}},MetricFilter={type:{name:"Composite",className:"MetricFilter",modelProperties:{name:{serializedName:"name",type:{name:"Composite",className:"MetricNameFilter"}},startTime:{serializedName:"startTime",type:{name:"DateTime"}},endTime:{serializedName:"endTime",type:{name:"DateTime"}},timeGrain:{serializedName:"timeGrain",type:{name:"String"}}}}},MetricNameFilter={type:{name:"Composite",className:"MetricNameFilter",modelProperties:{value:{serializedName:"value",type:{name:"String"}}}}},Manager={type:{name:"Composite",className:"Manager",modelProperties:Object.assign(Object.assign({},Resource.type.modelProperties),{etag:{serializedName:"etag",type:{name:"String"}},cisIntrinsicSettings:{serializedName:"properties.cisIntrinsicSettings",type:{name:"Composite",className:"ManagerIntrinsicSettings"}},sku:{serializedName:"properties.sku",type:{name:"Composite",className:"ManagerSku"}},provisioningState:{serializedName:"properties.provisioningState",readOnly:!0,type:{name:"String"}}})}},AccessControlRecord={type:{name:"Composite",className:"AccessControlRecord",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{initiatorName:{serializedName:"properties.initiatorName",required:!0,type:{name:"String"}}})}},Alert={type:{name:"Composite",className:"Alert",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{title:{serializedName:"properties.title",required:!0,type:{name:"String"}},scope:{serializedName:"properties.scope",required:!0,type:{name:"Enum",allowedValues:["Resource","Device"]}},alertType:{serializedName:"properties.alertType",required:!0,type:{name:"String"}},appearedAtTime:{serializedName:"properties.appearedAtTime",required:!0,type:{name:"DateTime"}},appearedAtSourceTime:{serializedName:"properties.appearedAtSourceTime",required:!0,type:{name:"DateTime"}},clearedAtTime:{serializedName:"properties.clearedAtTime",type:{name:"DateTime"}},clearedAtSourceTime:{serializedName:"properties.clearedAtSourceTime",type:{name:"DateTime"}},source:{serializedName:"properties.source",type:{name:"Composite",className:"AlertSource"}},recommendation:{serializedName:"properties.recommendation",type:{name:"String"}},resolutionReason:{serializedName:"properties.resolutionReason",type:{name:"String"}},severity:{serializedName:"properties.severity",required:!0,type:{name:"Enum",allowedValues:["Informational","Warning","Critical"]}},status:{serializedName:"properties.status",required:!0,type:{name:"Enum",allowedValues:["Active","Cleared"]}},errorDetails:{serializedName:"properties.errorDetails",type:{name:"Composite",className:"AlertErrorDetails"}},detailedInformation:{serializedName:"properties.detailedInformation",type:{name:"Dictionary",value:{type:{name:"String"}}}}})}},BackupElement={type:{name:"Composite",className:"BackupElement",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{sizeInBytes:{serializedName:"properties.sizeInBytes",required:!0,type:{name:"Number"}},endpointName:{serializedName:"properties.endpointName",required:!0,type:{name:"String"}},dataPolicy:{serializedName:"properties.dataPolicy",required:!0,type:{name:"Enum",allowedValues:["Invalid","Local","Tiered","Cloud"]}}})}},Backup={type:{name:"Composite",className:"Backup",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{targetId:{serializedName:"properties.targetId",type:{name:"String"}},targetType:{serializedName:"properties.targetType",type:{name:"String"}},sizeInBytes:{serializedName:"properties.sizeInBytes",required:!0,type:{name:"Number"}},createdTime:{serializedName:"properties.createdTime",type:{name:"DateTime"}},expirationTime:{serializedName:"properties.expirationTime",type:{name:"DateTime"}},initiatedBy:{serializedName:"properties.initiatedBy",required:!0,type:{name:"Enum",allowedValues:["Manual","Scheduled"]}},deviceId:{serializedName:"properties.deviceId",required:!0,type:{name:"String"}},elements:{serializedName:"properties.elements",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"BackupElement"}}}}})}},UploadCertificateResponse={type:{name:"Composite",className:"UploadCertificateResponse",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{authType:{serializedName:"properties.authType",type:{name:"Enum",allowedValues:["Invalid","AccessControlService","AzureActiveDirectory"]}},certificate:{serializedName:"properties.certificate",required:!0,type:{name:"String"}},resourceId:{serializedName:"properties.resourceId",required:!0,type:{name:"Number"}},aadAuthority:{serializedName:"properties.aadAuthority",required:!0,type:{name:"String"}},aadTenantId:{serializedName:"properties.aadTenantId",required:!0,type:{name:"String"}},servicePrincipalClientId:{serializedName:"properties.servicePrincipalClientId",required:!0,type:{name:"String"}},servicePrincipalObjectId:{serializedName:"properties.servicePrincipalObjectId",required:!0,type:{name:"String"}},azureManagementEndpointAudience:{serializedName:"properties.azureManagementEndpointAudience",required:!0,type:{name:"String"}},subject:{serializedName:"properties.subject",required:!0,type:{name:"String"}},validFrom:{serializedName:"properties.validFrom",required:!0,type:{name:"DateTime"}},validTo:{serializedName:"properties.validTo",required:!0,type:{name:"DateTime"}},thumbprint:{serializedName:"properties.thumbprint",required:!0,type:{name:"String"}},friendlyName:{serializedName:"properties.friendlyName",required:!0,type:{name:"String"}},issuer:{serializedName:"properties.issuer",required:!0,type:{name:"String"}}})}},Device={type:{name:"Composite",className:"Device",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{activationTime:{serializedName:"properties.activationTime",type:{name:"DateTime"}},allowedDeviceOperations:{serializedName:"properties.allowedDeviceOperations",type:{name:"Sequence",element:{type:{name:"Enum",allowedValues:["None","Delete","DeleteWithWarning","DRSource","DRTarget","Browsable","ReadOnlyForDR","Deactivate"]}}}},culture:{serializedName:"properties.culture",type:{name:"String"}},deviceCapabilities:{serializedName:"properties.deviceCapabilities",type:{name:"Sequence",element:{type:{name:"Enum",allowedValues:["Invalid","FileServer","IscsiServer"]}}}},deviceDescription:{serializedName:"properties.deviceDescription",type:{name:"String"}},domainName:{serializedName:"properties.domainName",type:{name:"String"}},deviceSoftwareVersion:{serializedName:"properties.deviceSoftwareVersion",type:{name:"String"}},friendlySoftwareName:{serializedName:"properties.friendlySoftwareName",type:{name:"String"}},deviceConfigurationStatus:{serializedName:"properties.deviceConfigurationStatus",type:{name:"Enum",allowedValues:["Complete","Pending"]}},modelDescription:{serializedName:"properties.modelDescription",type:{name:"String"}},status:{serializedName:"properties.status",type:{name:"Enum",allowedValues:["Unknown","Online","Offline","RequiresAttention","MaintenanceMode","Creating","Provisioning","Deleted","ReadyToSetup","Deactivated","Deactivating"]}},typePropertiesType:{serializedName:"properties.type",type:{name:"Enum",allowedValues:["Invalid","Appliance","VirtualAppliance","Series9000OnPremVirtualAppliance","Series9000VirtualAppliance","Series9000PhysicalAppliance"]}},details:{serializedName:"properties.details",type:{name:"Composite",className:"DeviceDetails"}}})}},AlertSettings={type:{name:"Composite",className:"AlertSettings",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{emailNotification:{serializedName:"properties.emailNotification",required:!0,type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},notificationToServiceOwners:{serializedName:"properties.notificationToServiceOwners",required:!0,type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},alertNotificationCulture:{serializedName:"properties.alertNotificationCulture",required:!0,type:{name:"String"}},additionalRecipientEmailList:{serializedName:"properties.additionalRecipientEmailList",type:{name:"Sequence",element:{type:{name:"String"}}}}})}},FileShare={type:{name:"Composite",className:"FileShare",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{description:{serializedName:"properties.description",type:{name:"String"}},shareStatus:{serializedName:"properties.shareStatus",required:!0,type:{name:"Enum",allowedValues:["Online","Offline"]}},dataPolicy:{serializedName:"properties.dataPolicy",required:!0,type:{name:"Enum",allowedValues:["Invalid","Local","Tiered","Cloud"]}},adminUser:{serializedName:"properties.adminUser",required:!0,type:{name:"String"}},provisionedCapacityInBytes:{serializedName:"properties.provisionedCapacityInBytes",required:!0,type:{name:"Number"}},usedCapacityInBytes:{serializedName:"properties.usedCapacityInBytes",readOnly:!0,type:{name:"Number"}},localUsedCapacityInBytes:{serializedName:"properties.localUsedCapacityInBytes",readOnly:!0,type:{name:"Number"}},monitoringStatus:{serializedName:"properties.monitoringStatus",required:!0,type:{name:"Enum",allowedValues:["Enabled","Disabled"]}}})}},IscsiDisk={type:{name:"Composite",className:"IscsiDisk",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{description:{serializedName:"properties.description",type:{name:"String"}},diskStatus:{serializedName:"properties.diskStatus",required:!0,type:{name:"Enum",allowedValues:["Online","Offline"]}},accessControlRecords:{serializedName:"properties.accessControlRecords",required:!0,type:{name:"Sequence",element:{type:{name:"String"}}}},dataPolicy:{serializedName:"properties.dataPolicy",required:!0,type:{name:"Enum",allowedValues:["Invalid","Local","Tiered","Cloud"]}},provisionedCapacityInBytes:{serializedName:"properties.provisionedCapacityInBytes",required:!0,type:{name:"Number"}},usedCapacityInBytes:{serializedName:"properties.usedCapacityInBytes",readOnly:!0,type:{name:"Number"}},localUsedCapacityInBytes:{serializedName:"properties.localUsedCapacityInBytes",readOnly:!0,type:{name:"Number"}},monitoringStatus:{serializedName:"properties.monitoringStatus",required:!0,type:{name:"Enum",allowedValues:["Enabled","Disabled"]}}})}},BackupScheduleGroup={type:{name:"Composite",className:"BackupScheduleGroup",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{startTime:{serializedName:"properties.startTime",type:{name:"Composite",className:"Time"}}})}},ChapSettings={type:{name:"Composite",className:"ChapSettings",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{password:{serializedName:"properties.password",type:{name:"Composite",className:"AsymmetricEncryptedSecret"}}})}},FileServer={type:{name:"Composite",className:"FileServer",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{domainName:{serializedName:"properties.domainName",required:!0,type:{name:"String"}},storageDomainId:{serializedName:"properties.storageDomainId",required:!0,type:{name:"String"}},backupScheduleGroupId:{serializedName:"properties.backupScheduleGroupId",required:!0,type:{name:"String"}},description:{serializedName:"properties.description",type:{name:"String"}}})}},IscsiServer={type:{name:"Composite",className:"IscsiServer",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{storageDomainId:{serializedName:"properties.storageDomainId",required:!0,type:{name:"String"}},backupScheduleGroupId:{serializedName:"properties.backupScheduleGroupId",required:!0,type:{name:"String"}},description:{serializedName:"properties.description",type:{name:"String"}},chapId:{serializedName:"properties.chapId",type:{name:"String"}},reverseChapId:{serializedName:"properties.reverseChapId",type:{name:"String"}}})}},Job={type:{name:"Composite",className:"Job",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{status:{serializedName:"status",required:!0,type:{name:"Enum",allowedValues:["Invalid","Running","Succeeded","Failed","Canceled","Paused","Scheduled"]}},startTime:{serializedName:"startTime",type:{name:"DateTime"}},endTime:{serializedName:"endTime",type:{name:"DateTime"}},percentComplete:{serializedName:"percentComplete",required:!0,type:{name:"Number"}},error:{serializedName:"error",type:{name:"Composite",className:"JobErrorDetails"}},jobType:{serializedName:"properties.jobType",type:{name:"Enum",allowedValues:["Backup","Clone","Failover","DownloadUpdates","InstallUpdates"]}},targetId:{serializedName:"properties.targetId",type:{name:"String"}},entityId:{serializedName:"properties.entityId",type:{name:"String"}},entityType:{serializedName:"properties.entityType",type:{name:"String"}},jobStages:{serializedName:"properties.jobStages",type:{name:"Sequence",element:{type:{name:"Composite",className:"JobStage"}}}},deviceId:{serializedName:"properties.deviceId",type:{name:"String"}},isCancellable:{serializedName:"properties.isCancellable",type:{name:"Boolean"}},stats:{serializedName:"properties.stats",type:{name:"Composite",className:"JobStats"}},targetType:{serializedName:"properties.targetType",type:{name:"Enum",allowedValues:["FileServer","DiskServer"]}},sourceDeviceId:{serializedName:"properties.sourceDeviceId",type:{name:"String"}},backupPointInTime:{serializedName:"properties.backupPointInTime",type:{name:"DateTime"}},downloadProgress:{serializedName:"properties.downloadProgress",type:{name:"Composite",className:"UpdateDownloadProgress"}},installProgress:{serializedName:"properties.installProgress",type:{name:"Composite",className:"UpdateInstallProgress"}}})}},NetworkSettings={type:{name:"Composite",className:"NetworkSettings",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{primaryDnsServer:{serializedName:"properties.primaryDnsServer",required:!0,type:{name:"String"}},secondaryDnsServer:{serializedName:"properties.secondaryDnsServer",type:{name:"String"}},nodeNetworks:{serializedName:"properties.nodeNetworks",required:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"NodeNetwork"}}}}})}},SecuritySettings={type:{name:"Composite",className:"SecuritySettings",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{deviceAdminPassword:{serializedName:"properties.deviceAdminPassword",type:{name:"Composite",className:"AsymmetricEncryptedSecret"}}})}},TimeSettings={type:{name:"Composite",className:"TimeSettings",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{timeZone:{serializedName:"properties.timeZone",required:!0,type:{name:"String"}},primaryTimeServer:{serializedName:"properties.primaryTimeServer",required:!0,type:{name:"String"}},secondaryTimeServer:{serializedName:"properties.secondaryTimeServer",type:{name:"String"}}})}},Updates={type:{name:"Composite",className:"Updates",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{deviceVersion:{serializedName:"properties.deviceVersion",type:{name:"String"}},deviceLastScannedTime:{serializedName:"properties.deviceLastScannedTime",type:{name:"DateTime"}},regularUpdatesAvailable:{serializedName:"properties.regularUpdatesAvailable",type:{name:"Boolean"}},rebootRequiredForInstall:{serializedName:"properties.rebootRequiredForInstall",type:{name:"Boolean"}},totalItemsPendingForDownload:{serializedName:"properties.totalItemsPendingForDownload",type:{name:"Number"}},totalItemsPendingForInstall:{serializedName:"properties.totalItemsPendingForInstall",type:{name:"Number"}},status:{serializedName:"properties.status",type:{name:"Enum",allowedValues:["Idle","Scanning","Downloading","Installing"]}},lastCompletedScanTime:{serializedName:"properties.lastCompletedScanTime",type:{name:"DateTime"}},lastCompletedDownloadJobTime:{serializedName:"properties.lastCompletedDownloadJobTime",type:{name:"DateTime"}},lastCompletedInstallJobTime:{serializedName:"properties.lastCompletedInstallJobTime",type:{name:"DateTime"}},inProgressDownloadJobId:{serializedName:"properties.inProgressDownloadJobId",type:{name:"String"}},inProgressInstallJobId:{serializedName:"properties.inProgressInstallJobId",type:{name:"String"}},inProgressScanStartedTime:{serializedName:"properties.inProgressScanStartedTime",type:{name:"DateTime"}},inProgressDownloadJobStartedTime:{serializedName:"properties.inProgressDownloadJobStartedTime",type:{name:"DateTime"}},inProgressInstallJobStartedTime:{serializedName:"properties.inProgressInstallJobStartedTime",type:{name:"DateTime"}}})}},EncryptionSettings={type:{name:"Composite",className:"EncryptionSettings",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{encryptionStatus:{serializedName:"properties.encryptionStatus",required:!0,type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},keyRolloverStatus:{serializedName:"properties.keyRolloverStatus",required:!0,type:{name:"Enum",allowedValues:["Required","NotRequired"]}}})}},ManagerExtendedInfo={type:{name:"Composite",className:"ManagerExtendedInfo",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{etag:{serializedName:"etag",type:{name:"String"}},version:{serializedName:"properties.version",type:{name:"String"}},integrityKey:{serializedName:"properties.integrityKey",required:!0,type:{name:"String"}},encryptionKey:{serializedName:"properties.encryptionKey",type:{name:"String"}},encryptionKeyThumbprint:{serializedName:"properties.encryptionKeyThumbprint",type:{name:"String"}},portalCertificateThumbprint:{serializedName:"properties.portalCertificateThumbprint",type:{name:"String"}},algorithm:{serializedName:"properties.algorithm",required:!0,type:{name:"String"}}})}},StorageAccountCredential={type:{name:"Composite",className:"StorageAccountCredential",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{cloudType:{serializedName:"properties.cloudType",required:!0,type:{name:"Enum",allowedValues:["Azure","S3","S3_RRS","OpenStack","HP"]}},endPoint:{serializedName:"properties.endPoint",required:!0,type:{name:"String"}},login:{serializedName:"properties.login",required:!0,type:{name:"String"}},location:{serializedName:"properties.location",type:{name:"String"}},enableSSL:{serializedName:"properties.enableSSL",required:!0,type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},accessKey:{serializedName:"properties.accessKey",type:{name:"Composite",className:"AsymmetricEncryptedSecret"}}})}},StorageDomain={type:{name:"Composite",className:"StorageDomain",modelProperties:Object.assign(Object.assign({},BaseModel.type.modelProperties),{storageAccountCredentialIds:{serializedName:"properties.storageAccountCredentialIds",required:!0,type:{name:"Sequence",element:{type:{name:"String"}}}},encryptionKey:{serializedName:"properties.encryptionKey",type:{name:"Composite",className:"AsymmetricEncryptedSecret"}},encryptionStatus:{serializedName:"properties.encryptionStatus",required:!0,type:{name:"Enum",allowedValues:["Enabled","Disabled"]}}})}};var Mappers=Object.freeze({__proto__:null,AccessControlRecord:AccessControlRecord,AccessControlRecordList:AccessControlRecordList,Alert:Alert,AlertErrorDetails:AlertErrorDetails,AlertFilter:AlertFilter,AlertList:AlertList,AlertSettings:AlertSettings,AlertSource:AlertSource,AsymmetricEncryptedSecret:AsymmetricEncryptedSecret,AvailableProviderOperation:AvailableProviderOperation,AvailableProviderOperationDisplay:AvailableProviderOperationDisplay,AvailableProviderOperations:AvailableProviderOperations,Backup:Backup,BackupElement:BackupElement,BackupFilter:BackupFilter,BackupList:BackupList,BackupScheduleGroup:BackupScheduleGroup,BackupScheduleGroupList:BackupScheduleGroupList,BaseModel:BaseModel,ChapSettings:ChapSettings,ChapSettingsList:ChapSettingsList,ClearAlertRequest:ClearAlertRequest,CloneRequest:CloneRequest,Device:Device,DeviceDetails:DeviceDetails,DeviceList:DeviceList,DevicePatch:DevicePatch,EncryptionSettings:EncryptionSettings,ErrorModel:ErrorModel,FailoverRequest:FailoverRequest,FileServer:FileServer,FileServerList:FileServerList,FileShare:FileShare,FileShareList:FileShareList,IPConfig:IPConfig,IscsiDisk:IscsiDisk,IscsiDiskList:IscsiDiskList,IscsiServer:IscsiServer,IscsiServerList:IscsiServerList,Item:Item,Job:Job,JobErrorDetails:JobErrorDetails,JobErrorItem:JobErrorItem,JobFilter:JobFilter,JobList:JobList,JobStage:JobStage,JobStats:JobStats,Manager:Manager,ManagerExtendedInfo:ManagerExtendedInfo,ManagerIntrinsicSettings:ManagerIntrinsicSettings,ManagerList:ManagerList,ManagerPatch:ManagerPatch,ManagerSku:ManagerSku,Message:Message,MetricAvailablity:MetricAvailablity,MetricData:MetricData,MetricDefinition:MetricDefinition,MetricDefinitionList:MetricDefinitionList,MetricDimension:MetricDimension,MetricFilter:MetricFilter,MetricList:MetricList,MetricName:MetricName,MetricNameFilter:MetricNameFilter,Metrics:Metrics,NetworkAdapter:NetworkAdapter,NetworkSettings:NetworkSettings,NodeNetwork:NodeNetwork,Resource:Resource,SecuritySettings:SecuritySettings,SendTestAlertEmailRequest:SendTestAlertEmailRequest,StorageAccountCredential:StorageAccountCredential,StorageAccountCredentialList:StorageAccountCredentialList,StorageDomain:StorageDomain,StorageDomainList:StorageDomainList,SymmetricEncryptedSecret:SymmetricEncryptedSecret,Time:Time,TimeSettings:TimeSettings,UpdateDownloadProgress:UpdateDownloadProgress,UpdateInstallProgress:UpdateInstallProgress,Updates:Updates,UploadCertificateRequest:UploadCertificateRequest,UploadCertificateResponse:UploadCertificateResponse});let accept={parameterPath:"accept",mapper:{defaultValue:"application/json",isConstant:!0,serializedName:"Accept",type:{name:"String"}}},$host={parameterPath:"$host",mapper:{serializedName:"$host",required:!0,type:{name:"String"}},skipEncoding:!0},subscriptionId={parameterPath:"subscriptionId",mapper:{serializedName:"subscriptionId",required:!0,type:{name:"String"}}},apiVersion={parameterPath:"apiVersion",mapper:{defaultValue:"2016-10-01",isConstant:!0,serializedName:"api-version",type:{name:"String"}}},resourceGroupName={parameterPath:"resourceGroupName",mapper:{serializedName:"resourceGroupName",required:!0,type:{name:"String"}}},managerName={parameterPath:"managerName",mapper:{constraints:{MaxLength:50,MinLength:2},serializedName:"managerName",required:!0,type:{name:"String"}}},contentType={parameterPath:["options","contentType"],mapper:{defaultValue:"application/json",isConstant:!0,serializedName:"Content-Type",type:{name:"String"}}},manager={parameterPath:"manager",mapper:Manager},parameters={parameterPath:"parameters",mapper:ManagerPatch},uploadCertificateRequestrequest={parameterPath:"uploadCertificateRequestrequest",mapper:UploadCertificateRequest},certificateName={parameterPath:"certificateName",mapper:{serializedName:"certificateName",required:!0,type:{name:"String"}}},managerExtendedInfo={parameterPath:"managerExtendedInfo",mapper:ManagerExtendedInfo},ifMatch={parameterPath:"ifMatch",mapper:{serializedName:"If-Match",required:!0,type:{name:"String"}}},filter={parameterPath:["options","filter"],mapper:{serializedName:"$filter",type:{name:"String"}}},nextLink={parameterPath:"nextLink",mapper:{serializedName:"nextLink",required:!0,type:{name:"String"}},skipEncoding:!0},accessControlRecordName={parameterPath:"accessControlRecordName",mapper:{serializedName:"accessControlRecordName",required:!0,type:{name:"String"}}},accessControlRecord={parameterPath:"accessControlRecord",mapper:AccessControlRecord},request={parameterPath:"request",mapper:ClearAlertRequest},request1={parameterPath:"request",mapper:SendTestAlertEmailRequest},deviceName={parameterPath:"deviceName",mapper:{serializedName:"deviceName",required:!0,type:{name:"String"}}},forFailover={parameterPath:["options","forFailover"],mapper:{serializedName:"forFailover",type:{name:"Boolean"}}},backupName={parameterPath:"backupName",mapper:{serializedName:"backupName",required:!0,type:{name:"String"}}},cloneRequest={parameterPath:"cloneRequest",mapper:CloneRequest},elementName={parameterPath:"elementName",mapper:{serializedName:"elementName",required:!0,type:{name:"String"}}},expand={parameterPath:["options","expand"],mapper:{serializedName:"$expand",type:{name:"String"}}},devicePatch={parameterPath:"devicePatch",mapper:DevicePatch},alertSettings={parameterPath:"alertSettings",mapper:AlertSettings},failoverRequest={parameterPath:"failoverRequest",mapper:FailoverRequest},securitySettings={parameterPath:"securitySettings",mapper:SecuritySettings},scheduleGroupName={parameterPath:"scheduleGroupName",mapper:{serializedName:"scheduleGroupName",required:!0,type:{name:"String"}}},scheduleGroup={parameterPath:"scheduleGroup",mapper:BackupScheduleGroup},chapUserName={parameterPath:"chapUserName",mapper:{serializedName:"chapUserName",required:!0,type:{name:"String"}}},chapSetting={parameterPath:"chapSetting",mapper:ChapSettings},iscsiServerName={parameterPath:"iscsiServerName",mapper:{serializedName:"iscsiServerName",required:!0,type:{name:"String"}}},diskName={parameterPath:"diskName",mapper:{serializedName:"diskName",required:!0,type:{name:"String"}}},iscsiDisk={parameterPath:"iscsiDisk",mapper:IscsiDisk},fileServerName={parameterPath:"fileServerName",mapper:{serializedName:"fileServerName",required:!0,type:{name:"String"}}},fileServer={parameterPath:"fileServer",mapper:FileServer},shareName={parameterPath:"shareName",mapper:{serializedName:"shareName",required:!0,type:{name:"String"}}},fileShare={parameterPath:"fileShare",mapper:FileShare},iscsiServer={parameterPath:"iscsiServer",mapper:IscsiServer},jobName={parameterPath:"jobName",mapper:{serializedName:"jobName",required:!0,type:{name:"String"}}},credentialName={parameterPath:"credentialName",mapper:{serializedName:"credentialName",required:!0,type:{name:"String"}}},storageAccount={parameterPath:"storageAccount",mapper:StorageAccountCredential},storageDomainName={parameterPath:"storageDomainName",mapper:{serializedName:"storageDomainName",required:!0,type:{name:"String"}}},storageDomain={parameterPath:"storageDomain",mapper:StorageDomain};class ManagersImpl{constructor(e){this.client=e}list(r){let e=this.listPagingAll(r);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listPagingPage(r,e)}}}listPagingPage(r,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._list(r));yield yield tslib.__await(e.value||[])})}listPagingAll(n){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listPagingPage(n));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listByResourceGroup(r,a){let e=this.listByResourceGroupPagingAll(r,a);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByResourceGroupPagingPage(r,a,e)}}}listByResourceGroupPagingPage(r,a,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByResourceGroup(r,a));yield yield tslib.__await(e.value||[])})}listByResourceGroupPagingAll(n,l){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByResourceGroupPagingPage(n,l));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetrics(r,a,i){let e=this.listMetricsPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricsPagingPage(r,a,i,e)}}}listMetricsPagingPage(r,a,i,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetrics(r,a,i));yield yield tslib.__await(e.value||[])})}listMetricsPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricsPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetricDefinition(r,a,i){let e=this.listMetricDefinitionPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricDefinitionPagingPage(r,a,i,e)}}}listMetricDefinitionPagingPage(r,a,i,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetricDefinition(r,a,i));yield yield tslib.__await(e.value||[])})}listMetricDefinitionPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricDefinitionPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_list(e){return this.client.sendOperationRequest({options:e},listOperationSpec$1)}_listByResourceGroup(e,r){return this.client.sendOperationRequest({resourceGroupName:e,options:r},listByResourceGroupOperationSpec)}get(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},getOperationSpec$b)}createOrUpdate(e,r,a,i){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,manager:a,options:i},createOrUpdateOperationSpec$9)}delete(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},deleteOperationSpec$b)}update(e,r,a,i){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,parameters:a,options:i},updateOperationSpec)}uploadRegistrationCertificate(e,r,a,i,t){return this.client.sendOperationRequest({certificateName:e,resourceGroupName:r,managerName:a,uploadCertificateRequestrequest:i,options:t},uploadRegistrationCertificateOperationSpec)}getEncryptionSettings(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},getEncryptionSettingsOperationSpec)}getExtendedInfo(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},getExtendedInfoOperationSpec)}createExtendedInfo(e,r,a,i){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,managerExtendedInfo:a,options:i},createExtendedInfoOperationSpec)}deleteExtendedInfo(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},deleteExtendedInfoOperationSpec)}updateExtendedInfo(e,r,a,i,t){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,ifMatch:a,managerExtendedInfo:i,options:t},updateExtendedInfoOperationSpec)}getEncryptionKey(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},getEncryptionKeyOperationSpec)}_listMetrics(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listMetricsOperationSpec$5)}_listMetricDefinition(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listMetricDefinitionOperationSpec$5)}}let serializer$e=coreClient__namespace.createSerializer(Mappers,!1),listOperationSpec$1={path:"/subscriptions/{subscriptionId}/providers/Microsoft.StorSimple/managers",httpMethod:"GET",responses:{200:{bodyMapper:ManagerList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId],headerParameters:[accept],serializer:serializer$e},listByResourceGroupOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers",httpMethod:"GET",responses:{200:{bodyMapper:ManagerList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName],headerParameters:[accept],serializer:serializer$e},getOperationSpec$b={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}",httpMethod:"GET",responses:{200:{bodyMapper:Manager},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$e},createOrUpdateOperationSpec$9={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}",httpMethod:"PUT",responses:{200:{bodyMapper:Manager},201:{bodyMapper:Manager},default:{bodyMapper:ErrorModel}},requestBody:manager,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$e},deleteOperationSpec$b={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}",httpMethod:"DELETE",responses:{200:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$e},updateOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}",httpMethod:"PATCH",responses:{200:{bodyMapper:Manager},default:{bodyMapper:ErrorModel}},requestBody:parameters,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$e},uploadRegistrationCertificateOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/certificates/{certificateName}",httpMethod:"PUT",responses:{200:{bodyMapper:UploadCertificateResponse},default:{bodyMapper:ErrorModel}},requestBody:uploadCertificateRequestrequest,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,certificateName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$e},getEncryptionSettingsOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/encryptionSettings/default",httpMethod:"GET",responses:{200:{bodyMapper:EncryptionSettings},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$e},getExtendedInfoOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/extendedInformation/vaultExtendedInfo",httpMethod:"GET",responses:{200:{bodyMapper:ManagerExtendedInfo},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$e},createExtendedInfoOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/extendedInformation/vaultExtendedInfo",httpMethod:"PUT",responses:{200:{bodyMapper:ManagerExtendedInfo},default:{bodyMapper:ErrorModel}},requestBody:managerExtendedInfo,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$e},deleteExtendedInfoOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/extendedInformation/vaultExtendedInfo",httpMethod:"DELETE",responses:{204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$e},updateExtendedInfoOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/extendedInformation/vaultExtendedInfo",httpMethod:"PATCH",responses:{200:{bodyMapper:ManagerExtendedInfo},default:{bodyMapper:ErrorModel}},requestBody:managerExtendedInfo,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept,contentType,ifMatch],mediaType:"json",serializer:serializer$e},getEncryptionKeyOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/getEncryptionKey",httpMethod:"POST",responses:{200:{bodyMapper:SymmetricEncryptedSecret},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$e},listMetricsOperationSpec$5={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/metrics",httpMethod:"GET",responses:{200:{bodyMapper:MetricList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$e},listMetricDefinitionOperationSpec$5={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/metricsDefinitions",httpMethod:"GET",responses:{200:{bodyMapper:MetricDefinitionList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$e};class AvailableProviderOperationsOperationsImpl{constructor(e){this.client=e}list(r){let e=this.listPagingAll(r);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listPagingPage(r,e)}}}listPagingPage(t,s){return tslib.__asyncGenerator(this,arguments,function*(){let e,r=null==s?void 0:s.continuationToken;var a;for(r||(setContinuationToken(a=(e=yield tslib.__await(this._list(t))).value||[],r=e.nextLink),yield yield tslib.__await(a));r;){e=yield tslib.__await(this._listNext(r,t)),r=e.nextLink;var i=e.value||[];setContinuationToken(i,r),yield yield tslib.__await(i)}})}listPagingAll(n){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listPagingPage(n));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_list(e){return this.client.sendOperationRequest({options:e},listOperationSpec)}_listNext(e,r){return this.client.sendOperationRequest({nextLink:e,options:r},listNextOperationSpec)}}let serializer$d=coreClient__namespace.createSerializer(Mappers,!1),listOperationSpec={path:"/providers/Microsoft.StorSimple/operations",httpMethod:"GET",responses:{200:{bodyMapper:AvailableProviderOperations},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host],headerParameters:[accept],serializer:serializer$d},listNextOperationSpec={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:AvailableProviderOperations},default:{bodyMapper:ErrorModel}},urlParameters:[$host,nextLink],headerParameters:[accept],serializer:serializer$d};class LroImpl{constructor(e,r,a,i=a.path,t=a.httpMethod){this.sendOperationFn=e,this.args=r,this.spec=a,this.requestPath=i,this.requestMethod=t}sendInitialRequest(){return tslib.__awaiter(this,void 0,void 0,function*(){return this.sendOperationFn(this.args,this.spec)})}sendPollRequest(r){return tslib.__awaiter(this,void 0,void 0,function*(){var e=this.spec,{}=e,e=tslib.__rest(e,["requestBody"]);return this.sendOperationFn(this.args,Object.assign(Object.assign({},e),{path:r,httpMethod:"GET"}))})}}class AccessControlRecordsImpl{constructor(e){this.client=e}listByManager(r,a,i){let e=this.listByManagerPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByManagerPagingPage(r,a,i,e)}}}listByManagerPagingPage(r,a,i,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByManager(r,a,i));yield yield tslib.__await(e.value||[])})}listByManagerPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByManagerPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByManager(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listByManagerOperationSpec$8)}get(e,r,a,i){return this.client.sendOperationRequest({accessControlRecordName:e,resourceGroupName:r,managerName:a,options:i},getOperationSpec$a)}beginCreateOrUpdate(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{accessControlRecordName:r,resourceGroupName:a,managerName:i,accessControlRecord:t,options:s},createOrUpdateOperationSpec$8),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,r,a,i,t)).pollUntilDone()})}beginDelete(r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{accessControlRecordName:r,resourceGroupName:a,managerName:i,options:t},deleteOperationSpec$a),e=new coreLro.LroEngine(e,{resumeFrom:null==t?void 0:t.resumeFrom,intervalInMs:null==t?void 0:t.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i)).pollUntilDone()})}}let serializer$c=coreClient__namespace.createSerializer(Mappers,!1),listByManagerOperationSpec$8={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/accessControlRecords",httpMethod:"GET",responses:{200:{bodyMapper:AccessControlRecordList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$c},getOperationSpec$a={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/accessControlRecords/{accessControlRecordName}",httpMethod:"GET",responses:{200:{bodyMapper:AccessControlRecord},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,accessControlRecordName],headerParameters:[accept],serializer:serializer$c},createOrUpdateOperationSpec$8={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/accessControlRecords/{accessControlRecordName}",httpMethod:"PUT",responses:{200:{bodyMapper:AccessControlRecord},201:{bodyMapper:AccessControlRecord},202:{bodyMapper:AccessControlRecord},204:{bodyMapper:AccessControlRecord},default:{bodyMapper:ErrorModel}},requestBody:accessControlRecord,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,accessControlRecordName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$c},deleteOperationSpec$a={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/accessControlRecords/{accessControlRecordName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,accessControlRecordName],headerParameters:[accept],serializer:serializer$c};class AlertsImpl{constructor(e){this.client=e}listByManager(r,a,i){let e=this.listByManagerPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByManagerPagingPage(r,a,i,e)}}}listByManagerPagingPage(t,s,o,n){return tslib.__asyncGenerator(this,arguments,function*(){let e,r=null==n?void 0:n.continuationToken;var a;for(r||(setContinuationToken(a=(e=yield tslib.__await(this._listByManager(t,s,o))).value||[],r=e.nextLink),yield yield tslib.__await(a));r;){e=yield tslib.__await(this._listByManagerNext(t,s,r,o)),r=e.nextLink;var i=e.value||[];setContinuationToken(i,r),yield yield tslib.__await(i)}})}listByManagerPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByManagerPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByManager(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listByManagerOperationSpec$7)}clear(e,r,a,i){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,request:a,options:i},clearOperationSpec)}sendTestEmail(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,request:i,options:t},sendTestEmailOperationSpec)}_listByManagerNext(e,r,a,i){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,nextLink:a,options:i},listByManagerNextOperationSpec$2)}}let serializer$b=coreClient__namespace.createSerializer(Mappers,!1),listByManagerOperationSpec$7={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/alerts",httpMethod:"GET",responses:{200:{bodyMapper:AlertList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$b},clearOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/clearAlerts",httpMethod:"POST",responses:{204:{},default:{bodyMapper:ErrorModel}},requestBody:request,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$b},sendTestEmailOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/sendTestAlertEmail",httpMethod:"POST",responses:{204:{},default:{bodyMapper:ErrorModel}},requestBody:request1,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$b},listByManagerNextOperationSpec$2={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:AlertList},default:{bodyMapper:ErrorModel}},urlParameters:[$host,subscriptionId,resourceGroupName,managerName,nextLink],headerParameters:[accept],serializer:serializer$b};class BackupsImpl{constructor(e){this.client=e}listByManager(r,a,i){let e=this.listByManagerPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByManagerPagingPage(r,a,i,e)}}}listByManagerPagingPage(t,s,o,n){return tslib.__asyncGenerator(this,arguments,function*(){let e,r=null==n?void 0:n.continuationToken;var a;for(r||(setContinuationToken(a=(e=yield tslib.__await(this._listByManager(t,s,o))).value||[],r=e.nextLink),yield yield tslib.__await(a));r;){e=yield tslib.__await(this._listByManagerNext(t,s,r,o)),r=e.nextLink;var i=e.value||[];setContinuationToken(i,r),yield yield tslib.__await(i)}})}listByManagerPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByManagerPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listByDevice(r,a,i,t){let e=this.listByDevicePagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByDevicePagingPage(r,a,i,t,e)}}}listByDevicePagingPage(t,s,o,n,l){return tslib.__asyncGenerator(this,arguments,function*(){let e,r=null==l?void 0:l.continuationToken;var a;for(r||(setContinuationToken(a=(e=yield tslib.__await(this._listByDevice(t,s,o,n))).value||[],r=e.nextLink),yield yield tslib.__await(a));r;){e=yield tslib.__await(this._listByDeviceNext(t,s,o,r,n)),r=e.nextLink;var i=e.value||[];setContinuationToken(i,r),yield yield tslib.__await(i)}})}listByDevicePagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByDevicePagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByManager(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listByManagerOperationSpec$6)}_listByDevice(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listByDeviceOperationSpec$7)}beginDelete(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,backupName:a,resourceGroupName:i,managerName:t,options:s},deleteOperationSpec$9),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i,t)).pollUntilDone()})}beginClone(r,a,i,t,s,n,l){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,backupName:a,elementName:i,resourceGroupName:t,managerName:s,cloneRequest:n,options:l},cloneOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==l?void 0:l.resumeFrom,intervalInMs:null==l?void 0:l.updateIntervalInMs});return yield e.poll(),e})}beginCloneAndWait(e,r,a,i,t,s,o){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginClone(e,r,a,i,t,s,o)).pollUntilDone()})}_listByManagerNext(e,r,a,i){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,nextLink:a,options:i},listByManagerNextOperationSpec$1)}_listByDeviceNext(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,nextLink:i,options:t},listByDeviceNextOperationSpec$1)}}let serializer$a=coreClient__namespace.createSerializer(Mappers,!1),listByManagerOperationSpec$6={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/backups",httpMethod:"GET",responses:{200:{bodyMapper:BackupList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$a},listByDeviceOperationSpec$7={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backups",httpMethod:"GET",responses:{200:{bodyMapper:BackupList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter,forFailover],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$a},deleteOperationSpec$9={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backups/{backupName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,backupName],headerParameters:[accept],serializer:serializer$a},cloneOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backups/{backupName}/elements/{elementName}/clone",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},requestBody:cloneRequest,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,backupName,elementName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$a},listByManagerNextOperationSpec$1={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:BackupList},default:{bodyMapper:ErrorModel}},urlParameters:[$host,subscriptionId,resourceGroupName,managerName,nextLink],headerParameters:[accept],serializer:serializer$a},listByDeviceNextOperationSpec$1={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:BackupList},default:{bodyMapper:ErrorModel}},urlParameters:[$host,subscriptionId,resourceGroupName,managerName,nextLink,deviceName],headerParameters:[accept],serializer:serializer$a};class DevicesImpl{constructor(e){this.client=e}listByManager(r,a,i){let e=this.listByManagerPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByManagerPagingPage(r,a,i,e)}}}listByManagerPagingPage(r,a,i,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByManager(r,a,i));yield yield tslib.__await(e.value||[])})}listByManagerPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByManagerPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listFailoverTarget(r,a,i,t){let e=this.listFailoverTargetPagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listFailoverTargetPagingPage(r,a,i,t,e)}}}listFailoverTargetPagingPage(r,a,i,t,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listFailoverTarget(r,a,i,t));yield yield tslib.__await(e.value||[])})}listFailoverTargetPagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listFailoverTargetPagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetrics(r,a,i,t){let e=this.listMetricsPagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricsPagingPage(r,a,i,t,e)}}}listMetricsPagingPage(r,a,i,t,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetrics(r,a,i,t));yield yield tslib.__await(e.value||[])})}listMetricsPagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricsPagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetricDefinition(r,a,i,t){let e=this.listMetricDefinitionPagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricDefinitionPagingPage(r,a,i,t,e)}}}listMetricDefinitionPagingPage(r,a,i,t,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetricDefinition(r,a,i,t));yield yield tslib.__await(e.value||[])})}listMetricDefinitionPagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricDefinitionPagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByManager(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listByManagerOperationSpec$5)}get(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},getOperationSpec$9)}beginDelete(r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,resourceGroupName:a,managerName:i,options:t},deleteOperationSpec$8),e=new coreLro.LroEngine(e,{resumeFrom:null==t?void 0:t.resumeFrom,intervalInMs:null==t?void 0:t.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i)).pollUntilDone()})}beginPatch(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,resourceGroupName:a,managerName:i,devicePatch:t,options:s},patchOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginPatchAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginPatch(e,r,a,i,t)).pollUntilDone()})}getAlertSettings(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},getAlertSettingsOperationSpec)}beginCreateOrUpdateAlertSettings(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,resourceGroupName:a,managerName:i,alertSettings:t,options:s},createOrUpdateAlertSettingsOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateAlertSettingsAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdateAlertSettings(e,r,a,i,t)).pollUntilDone()})}beginDeactivate(r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,resourceGroupName:a,managerName:i,options:t},deactivateOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==t?void 0:t.resumeFrom,intervalInMs:null==t?void 0:t.updateIntervalInMs});return yield e.poll(),e})}beginDeactivateAndWait(e,r,a,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDeactivate(e,r,a,i)).pollUntilDone()})}beginDownloadUpdates(r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,resourceGroupName:a,managerName:i,options:t},downloadUpdatesOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==t?void 0:t.resumeFrom,intervalInMs:null==t?void 0:t.updateIntervalInMs});return yield e.poll(),e})}beginDownloadUpdatesAndWait(e,r,a,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDownloadUpdates(e,r,a,i)).pollUntilDone()})}beginFailover(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,resourceGroupName:a,managerName:i,failoverRequest:t,options:s},failoverOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginFailoverAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginFailover(e,r,a,i,t)).pollUntilDone()})}_listFailoverTarget(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listFailoverTargetOperationSpec)}beginInstallUpdates(r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,resourceGroupName:a,managerName:i,options:t},installUpdatesOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==t?void 0:t.resumeFrom,intervalInMs:null==t?void 0:t.updateIntervalInMs});return yield e.poll(),e})}beginInstallUpdatesAndWait(e,r,a,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginInstallUpdates(e,r,a,i)).pollUntilDone()})}_listMetrics(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listMetricsOperationSpec$4)}_listMetricDefinition(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listMetricDefinitionOperationSpec$4)}getNetworkSettings(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},getNetworkSettingsOperationSpec)}beginScanForUpdates(r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,resourceGroupName:a,managerName:i,options:t},scanForUpdatesOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==t?void 0:t.resumeFrom,intervalInMs:null==t?void 0:t.updateIntervalInMs});return yield e.poll(),e})}beginScanForUpdatesAndWait(e,r,a,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginScanForUpdates(e,r,a,i)).pollUntilDone()})}beginCreateOrUpdateSecuritySettings(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,resourceGroupName:a,managerName:i,securitySettings:t,options:s},createOrUpdateSecuritySettingsOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateSecuritySettingsAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdateSecuritySettings(e,r,a,i,t)).pollUntilDone()})}getTimeSettings(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},getTimeSettingsOperationSpec)}getUpdateSummary(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},getUpdateSummaryOperationSpec)}}let serializer$9=coreClient__namespace.createSerializer(Mappers,!1),listByManagerOperationSpec$5={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices",httpMethod:"GET",responses:{200:{bodyMapper:DeviceList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,expand],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$9},getOperationSpec$9={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}",httpMethod:"GET",responses:{200:{bodyMapper:Device},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,expand],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},deleteOperationSpec$8={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},patchOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}",httpMethod:"PATCH",responses:{200:{bodyMapper:Device},201:{bodyMapper:Device},202:{bodyMapper:Device},204:{bodyMapper:Device},default:{bodyMapper:ErrorModel}},requestBody:devicePatch,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$9},getAlertSettingsOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/alertSettings/default",httpMethod:"GET",responses:{200:{bodyMapper:AlertSettings},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},createOrUpdateAlertSettingsOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/alertSettings/default",httpMethod:"PUT",responses:{200:{bodyMapper:AlertSettings},201:{bodyMapper:AlertSettings},202:{bodyMapper:AlertSettings},204:{bodyMapper:AlertSettings},default:{bodyMapper:ErrorModel}},requestBody:alertSettings,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$9},deactivateOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/deactivate",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},downloadUpdatesOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/download",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},failoverOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/failover",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},requestBody:failoverRequest,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$9},listFailoverTargetOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/failoverTargets",httpMethod:"GET",responses:{200:{bodyMapper:DeviceList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,expand],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},installUpdatesOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/install",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},listMetricsOperationSpec$4={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/metrics",httpMethod:"GET",responses:{200:{bodyMapper:MetricList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},listMetricDefinitionOperationSpec$4={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/metricsDefinitions",httpMethod:"GET",responses:{200:{bodyMapper:MetricDefinitionList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},getNetworkSettingsOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/networkSettings/default",httpMethod:"GET",responses:{200:{bodyMapper:NetworkSettings},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},scanForUpdatesOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/scanForUpdates",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},createOrUpdateSecuritySettingsOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/securitySettings/default/update",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},requestBody:securitySettings,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$9},getTimeSettingsOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/timeSettings/default",httpMethod:"GET",responses:{200:{bodyMapper:TimeSettings},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9},getUpdateSummaryOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/updateSummary/default",httpMethod:"GET",responses:{200:{bodyMapper:Updates},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$9};class BackupScheduleGroupsImpl{constructor(e){this.client=e}listByDevice(r,a,i,t){let e=this.listByDevicePagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByDevicePagingPage(r,a,i,t,e)}}}listByDevicePagingPage(r,a,i,t,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByDevice(r,a,i,t));yield yield tslib.__await(e.value||[])})}listByDevicePagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByDevicePagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByDevice(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listByDeviceOperationSpec$6)}get(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,scheduleGroupName:r,resourceGroupName:a,managerName:i,options:t},getOperationSpec$8)}beginCreateOrUpdate(r,a,i,t,s,n){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,scheduleGroupName:a,resourceGroupName:i,managerName:t,scheduleGroup:s,options:n},createOrUpdateOperationSpec$7),e=new coreLro.LroEngine(e,{resumeFrom:null==n?void 0:n.resumeFrom,intervalInMs:null==n?void 0:n.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,r,a,i,t,s)).pollUntilDone()})}beginDelete(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,scheduleGroupName:a,resourceGroupName:i,managerName:t,options:s},deleteOperationSpec$7),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i,t)).pollUntilDone()})}}let serializer$8=coreClient__namespace.createSerializer(Mappers,!1),listByDeviceOperationSpec$6={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backupScheduleGroups",httpMethod:"GET",responses:{200:{bodyMapper:BackupScheduleGroupList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$8},getOperationSpec$8={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backupScheduleGroups/{scheduleGroupName}",httpMethod:"GET",responses:{200:{bodyMapper:BackupScheduleGroup},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,scheduleGroupName],headerParameters:[accept],serializer:serializer$8},createOrUpdateOperationSpec$7={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backupScheduleGroups/{scheduleGroupName}",httpMethod:"PUT",responses:{200:{bodyMapper:BackupScheduleGroup},201:{bodyMapper:BackupScheduleGroup},202:{bodyMapper:BackupScheduleGroup},204:{bodyMapper:BackupScheduleGroup},default:{bodyMapper:ErrorModel}},requestBody:scheduleGroup,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,scheduleGroupName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$8},deleteOperationSpec$7={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backupScheduleGroups/{scheduleGroupName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,scheduleGroupName],headerParameters:[accept],serializer:serializer$8};class ChapSettingsOperationsImpl{constructor(e){this.client=e}listByDevice(r,a,i,t){let e=this.listByDevicePagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByDevicePagingPage(r,a,i,t,e)}}}listByDevicePagingPage(r,a,i,t,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByDevice(r,a,i,t));yield yield tslib.__await(e.value||[])})}listByDevicePagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByDevicePagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByDevice(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listByDeviceOperationSpec$5)}get(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,chapUserName:r,resourceGroupName:a,managerName:i,options:t},getOperationSpec$7)}beginCreateOrUpdate(r,a,i,t,s,n){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,chapUserName:a,resourceGroupName:i,managerName:t,chapSetting:s,options:n},createOrUpdateOperationSpec$6),e=new coreLro.LroEngine(e,{resumeFrom:null==n?void 0:n.resumeFrom,intervalInMs:null==n?void 0:n.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,r,a,i,t,s)).pollUntilDone()})}beginDelete(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,chapUserName:a,resourceGroupName:i,managerName:t,options:s},deleteOperationSpec$6),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i,t)).pollUntilDone()})}}let serializer$7=coreClient__namespace.createSerializer(Mappers,!1),listByDeviceOperationSpec$5={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/chapSettings",httpMethod:"GET",responses:{200:{bodyMapper:ChapSettingsList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$7},getOperationSpec$7={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/chapSettings/{chapUserName}",httpMethod:"GET",responses:{200:{bodyMapper:ChapSettings},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,chapUserName],headerParameters:[accept],serializer:serializer$7},createOrUpdateOperationSpec$6={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/chapSettings/{chapUserName}",httpMethod:"PUT",responses:{200:{bodyMapper:ChapSettings},201:{bodyMapper:ChapSettings},202:{bodyMapper:ChapSettings},204:{bodyMapper:ChapSettings},default:{bodyMapper:ErrorModel}},requestBody:chapSetting,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,chapUserName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$7},deleteOperationSpec$6={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/chapSettings/{chapUserName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,chapUserName],headerParameters:[accept],serializer:serializer$7};class IscsiDisksImpl{constructor(e){this.client=e}listByDevice(r,a,i,t){let e=this.listByDevicePagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByDevicePagingPage(r,a,i,t,e)}}}listByDevicePagingPage(r,a,i,t,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByDevice(r,a,i,t));yield yield tslib.__await(e.value||[])})}listByDevicePagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByDevicePagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listByIscsiServer(r,a,i,t,s){let e=this.listByIscsiServerPagingAll(r,a,i,t,s);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByIscsiServerPagingPage(r,a,i,t,s,e)}}}listByIscsiServerPagingPage(r,a,i,t,s,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByIscsiServer(r,a,i,t,s));yield yield tslib.__await(e.value||[])})}listByIscsiServerPagingAll(n,l,p,m,d){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByIscsiServerPagingPage(n,l,p,m,d));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetrics(r,a,i,t,s,o){let e=this.listMetricsPagingAll(r,a,i,t,s,o);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricsPagingPage(r,a,i,t,s,o,e)}}}listMetricsPagingPage(r,a,i,t,s,o,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetrics(r,a,i,t,s,o));yield yield tslib.__await(e.value||[])})}listMetricsPagingAll(n,l,p,m,d,c){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricsPagingPage(n,l,p,m,d,c));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetricDefinition(r,a,i,t,s,o){let e=this.listMetricDefinitionPagingAll(r,a,i,t,s,o);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricDefinitionPagingPage(r,a,i,t,s,o,e)}}}listMetricDefinitionPagingPage(r,a,i,t,s,o,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetricDefinition(r,a,i,t,s,o));yield yield tslib.__await(e.value||[])})}listMetricDefinitionPagingAll(n,l,p,m,d,c){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricDefinitionPagingPage(n,l,p,m,d,c));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByDevice(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listByDeviceOperationSpec$4)}_listByIscsiServer(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,iscsiServerName:r,resourceGroupName:a,managerName:i,options:t},listByIscsiServerOperationSpec)}get(e,r,a,i,t,s){return this.client.sendOperationRequest({deviceName:e,iscsiServerName:r,diskName:a,resourceGroupName:i,managerName:t,options:s},getOperationSpec$6)}beginCreateOrUpdate(r,a,i,t,s,n,l){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,iscsiServerName:a,diskName:i,resourceGroupName:t,managerName:s,iscsiDisk:n,options:l},createOrUpdateOperationSpec$5),e=new coreLro.LroEngine(e,{resumeFrom:null==l?void 0:l.resumeFrom,intervalInMs:null==l?void 0:l.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,r,a,i,t,s,o){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,r,a,i,t,s,o)).pollUntilDone()})}beginDelete(r,a,i,t,s,n){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,iscsiServerName:a,diskName:i,resourceGroupName:t,managerName:s,options:n},deleteOperationSpec$5),e=new coreLro.LroEngine(e,{resumeFrom:null==n?void 0:n.resumeFrom,intervalInMs:null==n?void 0:n.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i,t,s)).pollUntilDone()})}_listMetrics(e,r,a,i,t,s){return this.client.sendOperationRequest({deviceName:e,iscsiServerName:r,diskName:a,resourceGroupName:i,managerName:t,options:s},listMetricsOperationSpec$3)}_listMetricDefinition(e,r,a,i,t,s){return this.client.sendOperationRequest({deviceName:e,iscsiServerName:r,diskName:a,resourceGroupName:i,managerName:t,options:s},listMetricDefinitionOperationSpec$3)}}let serializer$6=coreClient__namespace.createSerializer(Mappers,!1),listByDeviceOperationSpec$4={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/disks",httpMethod:"GET",responses:{200:{bodyMapper:IscsiDiskList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$6},listByIscsiServerOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}/disks",httpMethod:"GET",responses:{200:{bodyMapper:IscsiDiskList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName],headerParameters:[accept],serializer:serializer$6},getOperationSpec$6={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}/disks/{diskName}",httpMethod:"GET",responses:{200:{bodyMapper:IscsiDisk},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName,diskName],headerParameters:[accept],serializer:serializer$6},createOrUpdateOperationSpec$5={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}/disks/{diskName}",httpMethod:"PUT",responses:{200:{bodyMapper:IscsiDisk},201:{bodyMapper:IscsiDisk},202:{bodyMapper:IscsiDisk},204:{bodyMapper:IscsiDisk},default:{bodyMapper:ErrorModel}},requestBody:iscsiDisk,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName,diskName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$6},deleteOperationSpec$5={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}/disks/{diskName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName,diskName],headerParameters:[accept],serializer:serializer$6},listMetricsOperationSpec$3={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}/disks/{diskName}/metrics",httpMethod:"GET",responses:{200:{bodyMapper:MetricList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName,diskName],headerParameters:[accept],serializer:serializer$6},listMetricDefinitionOperationSpec$3={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}/disks/{diskName}/metricsDefinitions",httpMethod:"GET",responses:{200:{bodyMapper:MetricDefinitionList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName,diskName],headerParameters:[accept],serializer:serializer$6};class FileServersImpl{constructor(e){this.client=e}listByDevice(r,a,i,t){let e=this.listByDevicePagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByDevicePagingPage(r,a,i,t,e)}}}listByDevicePagingPage(r,a,i,t,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByDevice(r,a,i,t));yield yield tslib.__await(e.value||[])})}listByDevicePagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByDevicePagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetrics(r,a,i,t,s){let e=this.listMetricsPagingAll(r,a,i,t,s);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricsPagingPage(r,a,i,t,s,e)}}}listMetricsPagingPage(r,a,i,t,s,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetrics(r,a,i,t,s));yield yield tslib.__await(e.value||[])})}listMetricsPagingAll(n,l,p,m,d){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricsPagingPage(n,l,p,m,d));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetricDefinition(r,a,i,t,s){let e=this.listMetricDefinitionPagingAll(r,a,i,t,s);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricDefinitionPagingPage(r,a,i,t,s,e)}}}listMetricDefinitionPagingPage(r,a,i,t,s,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetricDefinition(r,a,i,t,s));yield yield tslib.__await(e.value||[])})}listMetricDefinitionPagingAll(n,l,p,m,d){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricDefinitionPagingPage(n,l,p,m,d));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listByManager(r,a,i){let e=this.listByManagerPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByManagerPagingPage(r,a,i,e)}}}listByManagerPagingPage(r,a,i,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByManager(r,a,i));yield yield tslib.__await(e.value||[])})}listByManagerPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByManagerPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByDevice(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listByDeviceOperationSpec$3)}get(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,fileServerName:r,resourceGroupName:a,managerName:i,options:t},getOperationSpec$5)}beginCreateOrUpdate(r,a,i,t,s,n){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,fileServerName:a,resourceGroupName:i,managerName:t,fileServer:s,options:n},createOrUpdateOperationSpec$4),e=new coreLro.LroEngine(e,{resumeFrom:null==n?void 0:n.resumeFrom,intervalInMs:null==n?void 0:n.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,r,a,i,t,s)).pollUntilDone()})}beginDelete(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,fileServerName:a,resourceGroupName:i,managerName:t,options:s},deleteOperationSpec$4),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i,t)).pollUntilDone()})}beginBackupNow(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,fileServerName:a,resourceGroupName:i,managerName:t,options:s},backupNowOperationSpec$1),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginBackupNowAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginBackupNow(e,r,a,i,t)).pollUntilDone()})}_listMetrics(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,fileServerName:r,resourceGroupName:a,managerName:i,options:t},listMetricsOperationSpec$2)}_listMetricDefinition(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,fileServerName:r,resourceGroupName:a,managerName:i,options:t},listMetricDefinitionOperationSpec$2)}_listByManager(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listByManagerOperationSpec$4)}}let serializer$5=coreClient__namespace.createSerializer(Mappers,!1),listByDeviceOperationSpec$3={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers",httpMethod:"GET",responses:{200:{bodyMapper:FileServerList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$5},getOperationSpec$5={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}",httpMethod:"GET",responses:{200:{bodyMapper:FileServer},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName],headerParameters:[accept],serializer:serializer$5},createOrUpdateOperationSpec$4={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}",httpMethod:"PUT",responses:{200:{bodyMapper:FileServer},201:{bodyMapper:FileServer},202:{bodyMapper:FileServer},204:{bodyMapper:FileServer},default:{bodyMapper:ErrorModel}},requestBody:fileServer,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$5},deleteOperationSpec$4={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName],headerParameters:[accept],serializer:serializer$5},backupNowOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}/backup",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName],headerParameters:[accept],serializer:serializer$5},listMetricsOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}/metrics",httpMethod:"GET",responses:{200:{bodyMapper:MetricList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName],headerParameters:[accept],serializer:serializer$5},listMetricDefinitionOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}/metricsDefinitions",httpMethod:"GET",responses:{200:{bodyMapper:MetricDefinitionList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName],headerParameters:[accept],serializer:serializer$5},listByManagerOperationSpec$4={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/fileservers",httpMethod:"GET",responses:{200:{bodyMapper:FileServerList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$5};class FileSharesImpl{constructor(e){this.client=e}listByFileServer(r,a,i,t,s){let e=this.listByFileServerPagingAll(r,a,i,t,s);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByFileServerPagingPage(r,a,i,t,s,e)}}}listByFileServerPagingPage(r,a,i,t,s,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByFileServer(r,a,i,t,s));yield yield tslib.__await(e.value||[])})}listByFileServerPagingAll(n,l,p,m,d){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByFileServerPagingPage(n,l,p,m,d));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetrics(r,a,i,t,s,o){let e=this.listMetricsPagingAll(r,a,i,t,s,o);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricsPagingPage(r,a,i,t,s,o,e)}}}listMetricsPagingPage(r,a,i,t,s,o,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetrics(r,a,i,t,s,o));yield yield tslib.__await(e.value||[])})}listMetricsPagingAll(n,l,p,m,d,c){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricsPagingPage(n,l,p,m,d,c));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetricDefinition(r,a,i,t,s,o){let e=this.listMetricDefinitionPagingAll(r,a,i,t,s,o);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricDefinitionPagingPage(r,a,i,t,s,o,e)}}}listMetricDefinitionPagingPage(r,a,i,t,s,o,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetricDefinition(r,a,i,t,s,o));yield yield tslib.__await(e.value||[])})}listMetricDefinitionPagingAll(n,l,p,m,d,c){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricDefinitionPagingPage(n,l,p,m,d,c));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listByDevice(r,a,i,t){let e=this.listByDevicePagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByDevicePagingPage(r,a,i,t,e)}}}listByDevicePagingPage(r,a,i,t,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByDevice(r,a,i,t));yield yield tslib.__await(e.value||[])})}listByDevicePagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByDevicePagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByFileServer(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,fileServerName:r,resourceGroupName:a,managerName:i,options:t},listByFileServerOperationSpec)}get(e,r,a,i,t,s){return this.client.sendOperationRequest({deviceName:e,fileServerName:r,shareName:a,resourceGroupName:i,managerName:t,options:s},getOperationSpec$4)}beginCreateOrUpdate(r,a,i,t,s,n,l){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,fileServerName:a,shareName:i,resourceGroupName:t,managerName:s,fileShare:n,options:l},createOrUpdateOperationSpec$3),e=new coreLro.LroEngine(e,{resumeFrom:null==l?void 0:l.resumeFrom,intervalInMs:null==l?void 0:l.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,r,a,i,t,s,o){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,r,a,i,t,s,o)).pollUntilDone()})}beginDelete(r,a,i,t,s,n){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,fileServerName:a,shareName:i,resourceGroupName:t,managerName:s,options:n},deleteOperationSpec$3),e=new coreLro.LroEngine(e,{resumeFrom:null==n?void 0:n.resumeFrom,intervalInMs:null==n?void 0:n.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i,t,s)).pollUntilDone()})}_listMetrics(e,r,a,i,t,s){return this.client.sendOperationRequest({deviceName:e,fileServerName:r,shareName:a,resourceGroupName:i,managerName:t,options:s},listMetricsOperationSpec$1)}_listMetricDefinition(e,r,a,i,t,s){return this.client.sendOperationRequest({deviceName:e,fileServerName:r,shareName:a,resourceGroupName:i,managerName:t,options:s},listMetricDefinitionOperationSpec$1)}_listByDevice(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listByDeviceOperationSpec$2)}}let serializer$4=coreClient__namespace.createSerializer(Mappers,!1),listByFileServerOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}/shares",httpMethod:"GET",responses:{200:{bodyMapper:FileShareList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName],headerParameters:[accept],serializer:serializer$4},getOperationSpec$4={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}/shares/{shareName}",httpMethod:"GET",responses:{200:{bodyMapper:FileShare},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName,shareName],headerParameters:[accept],serializer:serializer$4},createOrUpdateOperationSpec$3={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}/shares/{shareName}",httpMethod:"PUT",responses:{200:{bodyMapper:FileShare},201:{bodyMapper:FileShare},202:{bodyMapper:FileShare},204:{bodyMapper:FileShare},default:{bodyMapper:ErrorModel}},requestBody:fileShare,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName,shareName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$4},deleteOperationSpec$3={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}/shares/{shareName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName,shareName],headerParameters:[accept],serializer:serializer$4},listMetricsOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}/shares/{shareName}/metrics",httpMethod:"GET",responses:{200:{bodyMapper:MetricList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName,shareName],headerParameters:[accept],serializer:serializer$4},listMetricDefinitionOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/fileservers/{fileServerName}/shares/{shareName}/metricsDefinitions",httpMethod:"GET",responses:{200:{bodyMapper:MetricDefinitionList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,fileServerName,shareName],headerParameters:[accept],serializer:serializer$4},listByDeviceOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/shares",httpMethod:"GET",responses:{200:{bodyMapper:FileShareList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$4};class IscsiServersImpl{constructor(e){this.client=e}listByDevice(r,a,i,t){let e=this.listByDevicePagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByDevicePagingPage(r,a,i,t,e)}}}listByDevicePagingPage(r,a,i,t,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByDevice(r,a,i,t));yield yield tslib.__await(e.value||[])})}listByDevicePagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByDevicePagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetrics(r,a,i,t,s){let e=this.listMetricsPagingAll(r,a,i,t,s);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricsPagingPage(r,a,i,t,s,e)}}}listMetricsPagingPage(r,a,i,t,s,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetrics(r,a,i,t,s));yield yield tslib.__await(e.value||[])})}listMetricsPagingAll(n,l,p,m,d){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricsPagingPage(n,l,p,m,d));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listMetricDefinition(r,a,i,t,s){let e=this.listMetricDefinitionPagingAll(r,a,i,t,s);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listMetricDefinitionPagingPage(r,a,i,t,s,e)}}}listMetricDefinitionPagingPage(r,a,i,t,s,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listMetricDefinition(r,a,i,t,s));yield yield tslib.__await(e.value||[])})}listMetricDefinitionPagingAll(n,l,p,m,d){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listMetricDefinitionPagingPage(n,l,p,m,d));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listByManager(r,a,i){let e=this.listByManagerPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByManagerPagingPage(r,a,i,e)}}}listByManagerPagingPage(r,a,i,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByManager(r,a,i));yield yield tslib.__await(e.value||[])})}listByManagerPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByManagerPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByDevice(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listByDeviceOperationSpec$1)}get(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,iscsiServerName:r,resourceGroupName:a,managerName:i,options:t},getOperationSpec$3)}beginCreateOrUpdate(r,a,i,t,s,n){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,iscsiServerName:a,resourceGroupName:i,managerName:t,iscsiServer:s,options:n},createOrUpdateOperationSpec$2),e=new coreLro.LroEngine(e,{resumeFrom:null==n?void 0:n.resumeFrom,intervalInMs:null==n?void 0:n.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,r,a,i,t,s)).pollUntilDone()})}beginDelete(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,iscsiServerName:a,resourceGroupName:i,managerName:t,options:s},deleteOperationSpec$2),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i,t)).pollUntilDone()})}beginBackupNow(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{deviceName:r,iscsiServerName:a,resourceGroupName:i,managerName:t,options:s},backupNowOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginBackupNowAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginBackupNow(e,r,a,i,t)).pollUntilDone()})}_listMetrics(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,iscsiServerName:r,resourceGroupName:a,managerName:i,options:t},listMetricsOperationSpec)}_listMetricDefinition(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,iscsiServerName:r,resourceGroupName:a,managerName:i,options:t},listMetricDefinitionOperationSpec)}_listByManager(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listByManagerOperationSpec$3)}}let serializer$3=coreClient__namespace.createSerializer(Mappers,!1),listByDeviceOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers",httpMethod:"GET",responses:{200:{bodyMapper:IscsiServerList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$3},getOperationSpec$3={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}",httpMethod:"GET",responses:{200:{bodyMapper:IscsiServer},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName],headerParameters:[accept],serializer:serializer$3},createOrUpdateOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}",httpMethod:"PUT",responses:{200:{bodyMapper:IscsiServer},201:{bodyMapper:IscsiServer},202:{bodyMapper:IscsiServer},204:{bodyMapper:IscsiServer},default:{bodyMapper:ErrorModel}},requestBody:iscsiServer,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$3},deleteOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName],headerParameters:[accept],serializer:serializer$3},backupNowOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}/backup",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName],headerParameters:[accept],serializer:serializer$3},listMetricsOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}/metrics",httpMethod:"GET",responses:{200:{bodyMapper:MetricList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName],headerParameters:[accept],serializer:serializer$3},listMetricDefinitionOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/iscsiservers/{iscsiServerName}/metricsDefinitions",httpMethod:"GET",responses:{200:{bodyMapper:MetricDefinitionList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,iscsiServerName],headerParameters:[accept],serializer:serializer$3},listByManagerOperationSpec$3={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/iscsiservers",httpMethod:"GET",responses:{200:{bodyMapper:IscsiServerList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$3};class JobsImpl{constructor(e){this.client=e}listByDevice(r,a,i,t){let e=this.listByDevicePagingAll(r,a,i,t);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByDevicePagingPage(r,a,i,t,e)}}}listByDevicePagingPage(t,s,o,n,l){return tslib.__asyncGenerator(this,arguments,function*(){let e,r=null==l?void 0:l.continuationToken;var a;for(r||(setContinuationToken(a=(e=yield tslib.__await(this._listByDevice(t,s,o,n))).value||[],r=e.nextLink),yield yield tslib.__await(a));r;){e=yield tslib.__await(this._listByDeviceNext(t,s,o,r,n)),r=e.nextLink;var i=e.value||[];setContinuationToken(i,r),yield yield tslib.__await(i)}})}listByDevicePagingAll(n,l,p,m){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByDevicePagingPage(n,l,p,m));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}listByManager(r,a,i){let e=this.listByManagerPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByManagerPagingPage(r,a,i,e)}}}listByManagerPagingPage(t,s,o,n){return tslib.__asyncGenerator(this,arguments,function*(){let e,r=null==n?void 0:n.continuationToken;var a;for(r||(setContinuationToken(a=(e=yield tslib.__await(this._listByManager(t,s,o))).value||[],r=e.nextLink),yield yield tslib.__await(a));r;){e=yield tslib.__await(this._listByManagerNext(t,s,r,o)),r=e.nextLink;var i=e.value||[];setContinuationToken(i,r),yield yield tslib.__await(i)}})}listByManagerPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByManagerPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByDevice(e,r,a,i){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,options:i},listByDeviceOperationSpec)}get(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,jobName:r,resourceGroupName:a,managerName:i,options:t},getOperationSpec$2)}_listByManager(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listByManagerOperationSpec$2)}_listByDeviceNext(e,r,a,i,t){return this.client.sendOperationRequest({deviceName:e,resourceGroupName:r,managerName:a,nextLink:i,options:t},listByDeviceNextOperationSpec)}_listByManagerNext(e,r,a,i){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,nextLink:a,options:i},listByManagerNextOperationSpec)}}let serializer$2=coreClient__namespace.createSerializer(Mappers,!1),listByDeviceOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/jobs",httpMethod:"GET",responses:{200:{bodyMapper:JobList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName],headerParameters:[accept],serializer:serializer$2},getOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/jobs/{jobName}",httpMethod:"GET",responses:{200:{bodyMapper:Job},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,deviceName,jobName],headerParameters:[accept],serializer:serializer$2},listByManagerOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/jobs",httpMethod:"GET",responses:{200:{bodyMapper:JobList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$2},listByDeviceNextOperationSpec={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:JobList},default:{bodyMapper:ErrorModel}},urlParameters:[$host,subscriptionId,resourceGroupName,managerName,nextLink,deviceName],headerParameters:[accept],serializer:serializer$2},listByManagerNextOperationSpec={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:JobList},default:{bodyMapper:ErrorModel}},urlParameters:[$host,subscriptionId,resourceGroupName,managerName,nextLink],headerParameters:[accept],serializer:serializer$2};class StorageAccountCredentialsImpl{constructor(e){this.client=e}listByManager(r,a,i){let e=this.listByManagerPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByManagerPagingPage(r,a,i,e)}}}listByManagerPagingPage(r,a,i,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByManager(r,a,i));yield yield tslib.__await(e.value||[])})}listByManagerPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByManagerPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByManager(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listByManagerOperationSpec$1)}get(e,r,a,i){return this.client.sendOperationRequest({credentialName:e,resourceGroupName:r,managerName:a,options:i},getOperationSpec$1)}beginCreateOrUpdate(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{credentialName:r,resourceGroupName:a,managerName:i,storageAccount:t,options:s},createOrUpdateOperationSpec$1),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,r,a,i,t)).pollUntilDone()})}beginDelete(r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{credentialName:r,resourceGroupName:a,managerName:i,options:t},deleteOperationSpec$1),e=new coreLro.LroEngine(e,{resumeFrom:null==t?void 0:t.resumeFrom,intervalInMs:null==t?void 0:t.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i)).pollUntilDone()})}}let serializer$1=coreClient__namespace.createSerializer(Mappers,!1),listByManagerOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/storageAccountCredentials",httpMethod:"GET",responses:{200:{bodyMapper:StorageAccountCredentialList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer$1},getOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/storageAccountCredentials/{credentialName}",httpMethod:"GET",responses:{200:{bodyMapper:StorageAccountCredential},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,credentialName],headerParameters:[accept],serializer:serializer$1},createOrUpdateOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/storageAccountCredentials/{credentialName}",httpMethod:"PUT",responses:{200:{bodyMapper:StorageAccountCredential},201:{bodyMapper:StorageAccountCredential},202:{bodyMapper:StorageAccountCredential},204:{bodyMapper:StorageAccountCredential},default:{bodyMapper:ErrorModel}},requestBody:storageAccount,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,credentialName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$1},deleteOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/storageAccountCredentials/{credentialName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,credentialName],headerParameters:[accept],serializer:serializer$1};class StorageDomainsImpl{constructor(e){this.client=e}listByManager(r,a,i){let e=this.listByManagerPagingAll(r,a,i);return{next(){return e.next()},[Symbol.asyncIterator](){return this},byPage:e=>{if(null!=e&&e.maxPageSize)throw new Error("maxPageSize is not supported by this operation.");return this.listByManagerPagingPage(r,a,i,e)}}}listByManagerPagingPage(r,a,i,e){return tslib.__asyncGenerator(this,arguments,function*(){var e=yield tslib.__await(this._listByManager(r,a,i));yield yield tslib.__await(e.value||[])})}listByManagerPagingAll(n,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,r,a;try{for(var i,t=!0,s=tslib.__asyncValues(this.listByManagerPagingPage(n,l,p));!(e=(i=yield tslib.__await(s.next())).done);t=!0){var o=i.value,t=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(o)))}}catch(e){r={error:e}}finally{try{t||e||!(a=s.return)||(yield tslib.__await(a.call(s)))}finally{if(r)throw r.error}}})}_listByManager(e,r,a){return this.client.sendOperationRequest({resourceGroupName:e,managerName:r,options:a},listByManagerOperationSpec)}get(e,r,a,i){return this.client.sendOperationRequest({storageDomainName:e,resourceGroupName:r,managerName:a,options:i},getOperationSpec)}beginCreateOrUpdate(r,a,i,t,s){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{storageDomainName:r,resourceGroupName:a,managerName:i,storageDomain:t,options:s},createOrUpdateOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,r,a,i,t)).pollUntilDone()})}beginDelete(r,a,i,t){return tslib.__awaiter(this,void 0,void 0,function*(){let o=(e,r)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,r)});var e=new LroImpl((t,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,a=void 0,i=null==(e=t.options)?void 0:e.onResponse;var r=Object.assign(Object.assign({},t),{options:Object.assign(Object.assign({},t.options),{onResponse:(e,r)=>{a=e,null!=i&&i(e,r)}})});return{flatResponse:yield o(r,s),rawResponse:{statusCode:a.status,body:a.parsedBody,headers:a.headers.toJSON()}}}),{storageDomainName:r,resourceGroupName:a,managerName:i,options:t},deleteOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==t?void 0:t.resumeFrom,intervalInMs:null==t?void 0:t.updateIntervalInMs});return yield e.poll(),e})}beginDeleteAndWait(e,r,a,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,r,a,i)).pollUntilDone()})}}let serializer=coreClient__namespace.createSerializer(Mappers,!1),listByManagerOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/storageDomains",httpMethod:"GET",responses:{200:{bodyMapper:StorageDomainList},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName],headerParameters:[accept],serializer:serializer},getOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/storageDomains/{storageDomainName}",httpMethod:"GET",responses:{200:{bodyMapper:StorageDomain},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,storageDomainName],headerParameters:[accept],serializer:serializer},createOrUpdateOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/storageDomains/{storageDomainName}",httpMethod:"PUT",responses:{200:{bodyMapper:StorageDomain},201:{bodyMapper:StorageDomain},202:{bodyMapper:StorageDomain},204:{bodyMapper:StorageDomain},default:{bodyMapper:ErrorModel}},requestBody:storageDomain,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,storageDomainName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer},deleteOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/storageDomains/{storageDomainName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorModel}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,managerName,storageDomainName],headerParameters:[accept],serializer:serializer};class StorSimpleManagementClient extends coreClient__namespace.ServiceClient{constructor(e,r,a){if(void 0===e)throw new Error("'credentials' cannot be null");if(void 0===r)throw new Error("'subscriptionId' cannot be null");var i,t="azsdk-js-arm-storsimple1200series/2.1.1",t=(a=a||{}).userAgentOptions&&a.userAgentOptions.userAgentPrefix?a.userAgentOptions.userAgentPrefix+" "+t:t,t=Object.assign(Object.assign(Object.assign({},{requestContentType:"application/json; charset=utf-8",credential:e}),a),{userAgentOptions:{userAgentPrefix:t},endpoint:null!=(t=null!=(t=a.endpoint)?t:a.baseUri)?t:"https://management.azure.com"});super(t);let s=!1;null!=a&&a.pipeline&&0<a.pipeline.getOrderedPolicies().length&&(i=a.pipeline.getOrderedPolicies(),s=i.some(e=>e.name===coreRestPipeline__namespace.bearerTokenAuthenticationPolicyName)),a&&a.pipeline&&0!=a.pipeline.getOrderedPolicies().length&&s||(this.pipeline.removePolicy({name:coreRestPipeline__namespace.bearerTokenAuthenticationPolicyName}),this.pipeline.addPolicy(coreRestPipeline__namespace.bearerTokenAuthenticationPolicy({credential:e,scopes:null!=(i=t.credentialScopes)?i:t.endpoint+"/.default",challengeCallbacks:{authorizeRequestOnChallenge:coreClient__namespace.authorizeRequestOnClaimChallenge}}))),this.subscriptionId=r,this.$host=a.$host||"https://management.azure.com",this.apiVersion=a.apiVersion||"2016-10-01",this.managers=new ManagersImpl(this),this.availableProviderOperationsOperations=new AvailableProviderOperationsOperationsImpl(this),this.accessControlRecords=new AccessControlRecordsImpl(this),this.alerts=new AlertsImpl(this),this.backups=new BackupsImpl(this),this.devices=new DevicesImpl(this),this.backupScheduleGroups=new BackupScheduleGroupsImpl(this),this.chapSettingsOperations=new ChapSettingsOperationsImpl(this),this.iscsiDisks=new IscsiDisksImpl(this),this.fileServers=new FileServersImpl(this),this.fileShares=new FileSharesImpl(this),this.iscsiServers=new IscsiServersImpl(this),this.jobs=new JobsImpl(this),this.storageAccountCredentials=new StorageAccountCredentialsImpl(this),this.storageDomains=new StorageDomainsImpl(this),this.addCustomApiVersionPolicy(a.apiVersion)}addCustomApiVersionPolicy(t){t&&this.pipeline.addPolicy({name:"CustomApiVersionPolicy",sendRequest(a,i){return tslib.__awaiter(this,void 0,void 0,function*(){var e,r=a.url.split("?");return 1<r.length&&(e=r[1].split("&").map(e=>-1<e.indexOf("api-version")?"api-version="+t:e),a.url=r[0]+"?"+e.join("&")),i(a)})}})}}exports.StorSimpleManagementClient=StorSimpleManagementClient,exports.getContinuationToken=getContinuationToken;