@azure/arm-labservices 3.1.1-alpha.20250203.1 → 3.1.1-alpha.20250205.1
Sign up to get free protection for your applications and to get access to all the features.
- package/LICENSE +4 -4
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/package.json +1 -1
- package/types/tsdoc-metadata.json +1 -1
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(t){var r=Object.create(null);return t&&Object.keys(t).forEach(function(e){var a;"default"!==e&&(a=Object.getOwnPropertyDescriptor(t,e),Object.defineProperty(r,e,a.get?a:{enumerable:!0,get:function(){return t[e]}}))}),r.default=t,Object.freeze(r)}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,a){var t;"object"==typeof e&&null!==e&&a&&((t=null!=(t=pageMap.get(e))?t:{}).continuationToken=a,pageMap.set(e,t))}exports.KnownCreatedByType=void 0,(e=>{e.User="User",e.Application="Application",e.ManagedIdentity="ManagedIdentity",e.Key="Key"})(exports.KnownCreatedByType||(exports.KnownCreatedByType={})),exports.KnownOrigin=void 0,(e=>{e.User="user",e.System="system",e.UserSystem="user,system"})(exports.KnownOrigin||(exports.KnownOrigin={})),exports.KnownActionType=void 0,(exports.KnownActionType||(exports.KnownActionType={})).Internal="Internal",exports.KnownLabServicesSkuTier=void 0,(e=>{e.Standard="Standard",e.Premium="Premium"})(exports.KnownLabServicesSkuTier||(exports.KnownLabServicesSkuTier={})),exports.KnownScaleType=void 0,(e=>{e.None="None",e.Manual="Manual",e.Automatic="Automatic"})(exports.KnownScaleType||(exports.KnownScaleType={})),exports.KnownRestrictionType=void 0,(exports.KnownRestrictionType||(exports.KnownRestrictionType={})).Location="Location",exports.KnownRestrictionReasonCode=void 0,(e=>{e.QuotaId="QuotaId",e.NotAvailableForSubscription="NotAvailableForSubscription"})(exports.KnownRestrictionReasonCode||(exports.KnownRestrictionReasonCode={})),exports.KnownUsageUnit=void 0,(exports.KnownUsageUnit||(exports.KnownUsageUnit={})).Count="Count";let PagedImages={type:{name:"Composite",className:"PagedImages",modelProperties:{value:{serializedName:"value",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"Image"}}}},nextLink:{serializedName:"nextLink",readOnly:!0,type:{name:"String"}}}}},SystemData={type:{name:"Composite",className:"SystemData",modelProperties:{createdBy:{serializedName:"createdBy",type:{name:"String"}},createdByType:{serializedName:"createdByType",type:{name:"String"}},createdAt:{serializedName:"createdAt",type:{name:"DateTime"}},lastModifiedBy:{serializedName:"lastModifiedBy",type:{name:"String"}},lastModifiedByType:{serializedName:"lastModifiedByType",type:{name:"String"}},lastModifiedAt:{serializedName:"lastModifiedAt",type:{name:"DateTime"}}}}},ImageUpdateProperties={type:{name:"Composite",className:"ImageUpdateProperties",modelProperties:{enabledState:{serializedName:"enabledState",type:{name:"Enum",allowedValues:["Enabled","Disabled"]}}}}},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"}}}}},ErrorResponse={type:{name:"Composite",className:"ErrorResponse",modelProperties:{error:{serializedName:"error",type:{name:"Composite",className:"ErrorDetail"}}}}},ErrorDetail={type:{name:"Composite",className:"ErrorDetail",modelProperties:{code:{serializedName:"code",readOnly:!0,type:{name:"String"}},message:{serializedName:"message",readOnly:!0,type:{name:"String"}},target:{serializedName:"target",readOnly:!0,type:{name:"String"}},details:{serializedName:"details",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"ErrorDetail"}}}},additionalInfo:{serializedName:"additionalInfo",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"ErrorAdditionalInfo"}}}}}}},ErrorAdditionalInfo={type:{name:"Composite",className:"ErrorAdditionalInfo",modelProperties:{type:{serializedName:"type",readOnly:!0,type:{name:"String"}},info:{serializedName:"info",readOnly:!0,type:{name:"Dictionary",value:{type:{name:"any"}}}}}}},ImageUpdate={type:{name:"Composite",className:"ImageUpdate",modelProperties:{enabledState:{serializedName:"properties.enabledState",type:{name:"Enum",allowedValues:["Enabled","Disabled"]}}}}},PagedLabPlans={type:{name:"Composite",className:"PagedLabPlans",modelProperties:{value:{serializedName:"value",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"LabPlan"}}}},nextLink:{serializedName:"nextLink",readOnly:!0,type:{name:"String"}}}}},LabPlanUpdateProperties={type:{name:"Composite",className:"LabPlanUpdateProperties",modelProperties:{defaultConnectionProfile:{serializedName:"defaultConnectionProfile",type:{name:"Composite",className:"ConnectionProfile"}},defaultAutoShutdownProfile:{serializedName:"defaultAutoShutdownProfile",type:{name:"Composite",className:"AutoShutdownProfile"}},defaultNetworkProfile:{serializedName:"defaultNetworkProfile",type:{name:"Composite",className:"LabPlanNetworkProfile"}},allowedRegions:{serializedName:"allowedRegions",type:{name:"Sequence",element:{type:{name:"String"}}}},sharedGalleryId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"sharedGalleryId",type:{name:"String"}},supportInfo:{serializedName:"supportInfo",type:{name:"Composite",className:"SupportInfo"}},linkedLmsInstance:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"linkedLmsInstance",type:{name:"String"}}}}},ConnectionProfile={type:{name:"Composite",className:"ConnectionProfile",modelProperties:{webSshAccess:{serializedName:"webSshAccess",type:{name:"Enum",allowedValues:["Public","Private","None"]}},webRdpAccess:{serializedName:"webRdpAccess",type:{name:"Enum",allowedValues:["Public","Private","None"]}},clientSshAccess:{serializedName:"clientSshAccess",type:{name:"Enum",allowedValues:["Public","Private","None"]}},clientRdpAccess:{serializedName:"clientRdpAccess",type:{name:"Enum",allowedValues:["Public","Private","None"]}}}}},AutoShutdownProfile={type:{name:"Composite",className:"AutoShutdownProfile",modelProperties:{shutdownOnDisconnect:{serializedName:"shutdownOnDisconnect",type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},shutdownWhenNotConnected:{serializedName:"shutdownWhenNotConnected",type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},shutdownOnIdle:{serializedName:"shutdownOnIdle",type:{name:"Enum",allowedValues:["None","UserAbsence","LowUsage"]}},disconnectDelay:{serializedName:"disconnectDelay",type:{name:"TimeSpan"}},noConnectDelay:{serializedName:"noConnectDelay",type:{name:"TimeSpan"}},idleDelay:{serializedName:"idleDelay",type:{name:"TimeSpan"}}}}},LabPlanNetworkProfile={type:{name:"Composite",className:"LabPlanNetworkProfile",modelProperties:{subnetId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"subnetId",type:{name:"String"}}}}},SupportInfo={type:{name:"Composite",className:"SupportInfo",modelProperties:{url:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"url",type:{name:"String"}},email:{constraints:{MaxLength:254,MinLength:6},serializedName:"email",type:{name:"String"}},phone:{constraints:{MaxLength:31,MinLength:1},serializedName:"phone",type:{name:"String"}},instructions:{serializedName:"instructions",type:{name:"String"}}}}},Identity={type:{name:"Composite",className:"Identity",modelProperties:{principalId:{serializedName:"principalId",readOnly:!0,type:{name:"String"}},tenantId:{serializedName:"tenantId",readOnly:!0,type:{name:"String"}},type:{defaultValue:"SystemAssigned",isConstant:!0,serializedName:"type",type:{name:"String"}}}}},TrackedResourceUpdate={type:{name:"Composite",className:"TrackedResourceUpdate",modelProperties:{tags:{serializedName:"tags",type:{name:"Sequence",element:{type:{name:"String"}}}}}}},SaveImageBody={type:{name:"Composite",className:"SaveImageBody",modelProperties:{name:{serializedName:"name",type:{name:"String"}},labVirtualMachineId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"labVirtualMachineId",type:{name:"String"}}}}},OperationListResult={type:{name:"Composite",className:"OperationListResult",modelProperties:{value:{serializedName:"value",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"Operation"}}}},nextLink:{serializedName:"nextLink",readOnly:!0,type:{name:"String"}}}}},Operation={type:{name:"Composite",className:"Operation",modelProperties:{name:{serializedName:"name",readOnly:!0,type:{name:"String"}},isDataAction:{serializedName:"isDataAction",readOnly:!0,type:{name:"Boolean"}},display:{serializedName:"display",type:{name:"Composite",className:"OperationDisplay"}},origin:{serializedName:"origin",readOnly:!0,type:{name:"String"}},actionType:{serializedName:"actionType",readOnly:!0,type:{name:"String"}}}}},OperationDisplay={type:{name:"Composite",className:"OperationDisplay",modelProperties:{provider:{serializedName:"provider",readOnly:!0,type:{name:"String"}},resource:{serializedName:"resource",readOnly:!0,type:{name:"String"}},operation:{serializedName:"operation",readOnly:!0,type:{name:"String"}},description:{serializedName:"description",readOnly:!0,type:{name:"String"}}}}},PagedLabs={type:{name:"Composite",className:"PagedLabs",modelProperties:{value:{serializedName:"value",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"Lab"}}}},nextLink:{serializedName:"nextLink",readOnly:!0,type:{name:"String"}}}}},LabNetworkProfile={type:{name:"Composite",className:"LabNetworkProfile",modelProperties:{subnetId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"subnetId",type:{name:"String"}},loadBalancerId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"loadBalancerId",type:{name:"String"}},publicIpId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"publicIpId",type:{name:"String"}}}}},LabUpdateProperties={type:{name:"Composite",className:"LabUpdateProperties",modelProperties:{autoShutdownProfile:{serializedName:"autoShutdownProfile",type:{name:"Composite",className:"AutoShutdownProfile"}},connectionProfile:{serializedName:"connectionProfile",type:{name:"Composite",className:"ConnectionProfile"}},virtualMachineProfile:{serializedName:"virtualMachineProfile",type:{name:"Composite",className:"VirtualMachineProfile"}},securityProfile:{serializedName:"securityProfile",type:{name:"Composite",className:"SecurityProfile"}},rosterProfile:{serializedName:"rosterProfile",type:{name:"Composite",className:"RosterProfile"}},labPlanId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"labPlanId",type:{name:"String"}},title:{constraints:{MaxLength:120,MinLength:1},serializedName:"title",type:{name:"String"}},description:{serializedName:"description",type:{name:"String"}}}}},VirtualMachineProfile={type:{name:"Composite",className:"VirtualMachineProfile",modelProperties:{createOption:{serializedName:"createOption",required:!0,type:{name:"Enum",allowedValues:["Image","TemplateVM"]}},imageReference:{serializedName:"imageReference",type:{name:"Composite",className:"ImageReference"}},osType:{serializedName:"osType",readOnly:!0,type:{name:"Enum",allowedValues:["Windows","Linux"]}},sku:{serializedName:"sku",type:{name:"Composite",className:"Sku"}},additionalCapabilities:{serializedName:"additionalCapabilities",type:{name:"Composite",className:"VirtualMachineAdditionalCapabilities"}},usageQuota:{serializedName:"usageQuota",required:!0,type:{name:"TimeSpan"}},useSharedPassword:{serializedName:"useSharedPassword",type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},adminUser:{serializedName:"adminUser",type:{name:"Composite",className:"Credentials"}},nonAdminUser:{serializedName:"nonAdminUser",type:{name:"Composite",className:"Credentials"}}}}},ImageReference={type:{name:"Composite",className:"ImageReference",modelProperties:{id:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"id",type:{name:"String"}},offer:{serializedName:"offer",type:{name:"String"}},publisher:{serializedName:"publisher",type:{name:"String"}},sku:{serializedName:"sku",type:{name:"String"}},version:{serializedName:"version",type:{name:"String"}},exactVersion:{serializedName:"exactVersion",readOnly:!0,type:{name:"String"}}}}},Sku={type:{name:"Composite",className:"Sku",modelProperties:{name:{serializedName:"name",required:!0,type:{name:"String"}},tier:{serializedName:"tier",type:{name:"Enum",allowedValues:["Free","Basic","Standard","Premium"]}},size:{serializedName:"size",type:{name:"String"}},family:{serializedName:"family",type:{name:"String"}},capacity:{serializedName:"capacity",type:{name:"Number"}}}}},VirtualMachineAdditionalCapabilities={type:{name:"Composite",className:"VirtualMachineAdditionalCapabilities",modelProperties:{installGpuDrivers:{serializedName:"installGpuDrivers",type:{name:"Enum",allowedValues:["Enabled","Disabled"]}}}}},Credentials={type:{name:"Composite",className:"Credentials",modelProperties:{username:{serializedName:"username",required:!0,type:{name:"String"}},password:{serializedName:"password",type:{name:"String"}}}}},SecurityProfile={type:{name:"Composite",className:"SecurityProfile",modelProperties:{registrationCode:{serializedName:"registrationCode",readOnly:!0,type:{name:"String"}},openAccess:{serializedName:"openAccess",type:{name:"Enum",allowedValues:["Enabled","Disabled"]}}}}},RosterProfile={type:{name:"Composite",className:"RosterProfile",modelProperties:{activeDirectoryGroupId:{serializedName:"activeDirectoryGroupId",type:{name:"String"}},ltiContextId:{serializedName:"ltiContextId",type:{name:"String"}},lmsInstance:{serializedName:"lmsInstance",type:{name:"String"}},ltiClientId:{serializedName:"ltiClientId",type:{name:"String"}},ltiRosterEndpoint:{serializedName:"ltiRosterEndpoint",type:{name:"String"}}}}},OperationResult={type:{name:"Composite",className:"OperationResult",modelProperties:{id:{serializedName:"id",readOnly:!0,type:{name:"String"}},name:{serializedName:"name",readOnly:!0,type:{name:"String"}},status:{serializedName:"status",required:!0,type:{name:"Enum",allowedValues:["NotStarted","InProgress","Succeeded","Failed","Canceled"]}},startTime:{serializedName:"startTime",type:{name:"DateTime"}},endTime:{serializedName:"endTime",type:{name:"DateTime"}},percentComplete:{serializedName:"percentComplete",type:{name:"Number"}},error:{serializedName:"error",type:{name:"Composite",className:"ErrorDetail"}}}}},PagedSchedules={type:{name:"Composite",className:"PagedSchedules",modelProperties:{value:{serializedName:"value",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"Schedule"}}}},nextLink:{serializedName:"nextLink",readOnly:!0,type:{name:"String"}}}}},ScheduleUpdateProperties={type:{name:"Composite",className:"ScheduleUpdateProperties",modelProperties:{startAt:{serializedName:"startAt",type:{name:"DateTime"}},stopAt:{serializedName:"stopAt",type:{name:"DateTime"}},recurrencePattern:{serializedName:"recurrencePattern",type:{name:"Composite",className:"RecurrencePattern"}},timeZoneId:{constraints:{MaxLength:50},serializedName:"timeZoneId",type:{name:"String"}},notes:{constraints:{MaxLength:1e3},serializedName:"notes",type:{name:"String"}}}}},RecurrencePattern={type:{name:"Composite",className:"RecurrencePattern",modelProperties:{frequency:{serializedName:"frequency",required:!0,type:{name:"Enum",allowedValues:["Daily","Weekly"]}},weekDays:{serializedName:"weekDays",type:{name:"Sequence",element:{type:{name:"Enum",allowedValues:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]}}}},interval:{constraints:{InclusiveMaximum:365,InclusiveMinimum:1},serializedName:"interval",type:{name:"Number"}},expirationDate:{serializedName:"expirationDate",required:!0,type:{name:"DateTime"}}}}},ScheduleUpdate={type:{name:"Composite",className:"ScheduleUpdate",modelProperties:{startAt:{serializedName:"properties.startAt",type:{name:"DateTime"}},stopAt:{serializedName:"properties.stopAt",type:{name:"DateTime"}},recurrencePattern:{serializedName:"properties.recurrencePattern",type:{name:"Composite",className:"RecurrencePattern"}},timeZoneId:{constraints:{MaxLength:50},serializedName:"properties.timeZoneId",type:{name:"String"}},notes:{constraints:{MaxLength:1e3},serializedName:"properties.notes",type:{name:"String"}}}}},PagedLabServicesSkus={type:{name:"Composite",className:"PagedLabServicesSkus",modelProperties:{value:{serializedName:"value",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"LabServicesSku"}}}},nextLink:{serializedName:"nextLink",readOnly:!0,type:{name:"String"}}}}},LabServicesSku={type:{name:"Composite",className:"LabServicesSku",modelProperties:{resourceType:{serializedName:"resourceType",readOnly:!0,type:{name:"String"}},name:{serializedName:"name",readOnly:!0,type:{name:"String"}},tier:{serializedName:"tier",readOnly:!0,type:{name:"String"}},size:{serializedName:"size",readOnly:!0,type:{name:"String"}},family:{serializedName:"family",readOnly:!0,type:{name:"String"}},capacity:{serializedName:"capacity",type:{name:"Composite",className:"LabServicesSkuCapacity"}},capabilities:{serializedName:"capabilities",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"LabServicesSkuCapabilities"}}}},locations:{serializedName:"locations",readOnly:!0,type:{name:"Sequence",element:{type:{name:"String"}}}},costs:{serializedName:"costs",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"LabServicesSkuCost"}}}},restrictions:{serializedName:"restrictions",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"LabServicesSkuRestrictions"}}}}}}},LabServicesSkuCapacity={type:{name:"Composite",className:"LabServicesSkuCapacity",modelProperties:{default:{serializedName:"default",readOnly:!0,type:{name:"Number"}},minimum:{serializedName:"minimum",readOnly:!0,type:{name:"Number"}},maximum:{serializedName:"maximum",readOnly:!0,type:{name:"Number"}},scaleType:{serializedName:"scaleType",readOnly:!0,type:{name:"String"}}}}},LabServicesSkuCapabilities={type:{name:"Composite",className:"LabServicesSkuCapabilities",modelProperties:{name:{serializedName:"name",readOnly:!0,type:{name:"String"}},value:{serializedName:"value",readOnly:!0,type:{name:"String"}}}}},LabServicesSkuCost={type:{name:"Composite",className:"LabServicesSkuCost",modelProperties:{meterId:{serializedName:"meterId",readOnly:!0,type:{name:"String"}},quantity:{serializedName:"quantity",readOnly:!0,type:{name:"Number"}},extendedUnit:{serializedName:"extendedUnit",readOnly:!0,type:{name:"String"}}}}},LabServicesSkuRestrictions={type:{name:"Composite",className:"LabServicesSkuRestrictions",modelProperties:{type:{serializedName:"type",readOnly:!0,type:{name:"String"}},values:{serializedName:"values",readOnly:!0,type:{name:"Sequence",element:{type:{name:"String"}}}},reasonCode:{serializedName:"reasonCode",readOnly:!0,type:{name:"String"}}}}},ListUsagesResult={type:{name:"Composite",className:"ListUsagesResult",modelProperties:{value:{serializedName:"value",type:{name:"Sequence",element:{type:{name:"Composite",className:"Usage"}}}},nextLink:{serializedName:"nextLink",readOnly:!0,type:{name:"String"}}}}},Usage={type:{name:"Composite",className:"Usage",modelProperties:{currentValue:{serializedName:"currentValue",type:{name:"Number"}},limit:{serializedName:"limit",type:{name:"Number"}},unit:{serializedName:"unit",type:{name:"String"}},name:{serializedName:"name",type:{name:"Composite",className:"UsageName"}},id:{serializedName:"id",type:{name:"String"}}}}},UsageName={type:{name:"Composite",className:"UsageName",modelProperties:{localizedValue:{serializedName:"localizedValue",type:{name:"String"}},skuInstances:{serializedName:"skuInstances",type:{name:"Sequence",element:{type:{name:"String"}}}},value:{serializedName:"value",type:{name:"String"}}}}},PagedUsers={type:{name:"Composite",className:"PagedUsers",modelProperties:{value:{serializedName:"value",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"User"}}}},nextLink:{serializedName:"nextLink",readOnly:!0,type:{name:"String"}}}}},UserUpdateProperties={type:{name:"Composite",className:"UserUpdateProperties",modelProperties:{additionalUsageQuota:{serializedName:"additionalUsageQuota",type:{name:"TimeSpan"}}}}},UserUpdate={type:{name:"Composite",className:"UserUpdate",modelProperties:{additionalUsageQuota:{serializedName:"properties.additionalUsageQuota",type:{name:"TimeSpan"}}}}},InviteBody={type:{name:"Composite",className:"InviteBody",modelProperties:{text:{serializedName:"text",type:{name:"String"}}}}},PagedVirtualMachines={type:{name:"Composite",className:"PagedVirtualMachines",modelProperties:{value:{serializedName:"value",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"VirtualMachine"}}}},nextLink:{serializedName:"nextLink",readOnly:!0,type:{name:"String"}}}}},VirtualMachineConnectionProfile={type:{name:"Composite",className:"VirtualMachineConnectionProfile",modelProperties:{privateIpAddress:{serializedName:"privateIpAddress",readOnly:!0,type:{name:"String"}},sshAuthority:{serializedName:"sshAuthority",readOnly:!0,type:{name:"String"}},sshInBrowserUrl:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"sshInBrowserUrl",readOnly:!0,type:{name:"String"}},rdpAuthority:{serializedName:"rdpAuthority",readOnly:!0,type:{name:"String"}},rdpInBrowserUrl:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"rdpInBrowserUrl",readOnly:!0,type:{name:"String"}},adminUsername:{serializedName:"adminUsername",readOnly:!0,type:{name:"String"}},nonAdminUsername:{serializedName:"nonAdminUsername",readOnly:!0,type:{name:"String"}}}}},ResetPasswordBody={type:{name:"Composite",className:"ResetPasswordBody",modelProperties:{username:{serializedName:"username",required:!0,type:{name:"String"}},password:{serializedName:"password",required:!0,type:{name:"String"}}}}},ImageProperties={type:{name:"Composite",className:"ImageProperties",modelProperties:Object.assign(Object.assign({},ImageUpdateProperties.type.modelProperties),{provisioningState:{serializedName:"provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}},displayName:{serializedName:"displayName",readOnly:!0,type:{name:"String"}},description:{serializedName:"description",readOnly:!0,type:{name:"String"}},iconUrl:{serializedName:"iconUrl",readOnly:!0,type:{name:"String"}},author:{serializedName:"author",readOnly:!0,type:{name:"String"}},osType:{serializedName:"osType",readOnly:!0,type:{name:"Enum",allowedValues:["Windows","Linux"]}},plan:{serializedName:"plan",readOnly:!0,type:{name:"String"}},termsStatus:{serializedName:"termsStatus",readOnly:!0,type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},offer:{serializedName:"offer",readOnly:!0,type:{name:"String"}},publisher:{serializedName:"publisher",readOnly:!0,type:{name:"String"}},sku:{serializedName:"sku",readOnly:!0,type:{name:"String"}},version:{serializedName:"version",readOnly:!0,type:{name:"String"}},sharedGalleryId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"sharedGalleryId",readOnly:!0,type:{name:"String"}},availableRegions:{serializedName:"availableRegions",type:{name:"Sequence",element:{type:{name:"String"}}}},osState:{serializedName:"osState",readOnly:!0,type:{name:"Enum",allowedValues:["Generalized","Specialized"]}}})}},ProxyResource={type:{name:"Composite",className:"ProxyResource",modelProperties:Object.assign({},Resource.type.modelProperties)}},TrackedResource={type:{name:"Composite",className:"TrackedResource",modelProperties:Object.assign(Object.assign({},Resource.type.modelProperties),{tags:{serializedName:"tags",type:{name:"Dictionary",value:{type:{name:"String"}}}},location:{serializedName:"location",required:!0,type:{name:"String"}}})}},LabPlanProperties={type:{name:"Composite",className:"LabPlanProperties",modelProperties:Object.assign(Object.assign({},LabPlanUpdateProperties.type.modelProperties),{provisioningState:{serializedName:"provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}}})}},LabPlanUpdate={type:{name:"Composite",className:"LabPlanUpdate",modelProperties:Object.assign(Object.assign({},TrackedResourceUpdate.type.modelProperties),{identity:{serializedName:"identity",type:{name:"Composite",className:"Identity"}},defaultConnectionProfile:{serializedName:"properties.defaultConnectionProfile",type:{name:"Composite",className:"ConnectionProfile"}},defaultAutoShutdownProfile:{serializedName:"properties.defaultAutoShutdownProfile",type:{name:"Composite",className:"AutoShutdownProfile"}},defaultNetworkProfile:{serializedName:"properties.defaultNetworkProfile",type:{name:"Composite",className:"LabPlanNetworkProfile"}},allowedRegions:{serializedName:"properties.allowedRegions",type:{name:"Sequence",element:{type:{name:"String"}}}},sharedGalleryId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"properties.sharedGalleryId",type:{name:"String"}},supportInfo:{serializedName:"properties.supportInfo",type:{name:"Composite",className:"SupportInfo"}},linkedLmsInstance:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"properties.linkedLmsInstance",type:{name:"String"}}})}},LabUpdate={type:{name:"Composite",className:"LabUpdate",modelProperties:Object.assign(Object.assign({},TrackedResourceUpdate.type.modelProperties),{autoShutdownProfile:{serializedName:"properties.autoShutdownProfile",type:{name:"Composite",className:"AutoShutdownProfile"}},connectionProfile:{serializedName:"properties.connectionProfile",type:{name:"Composite",className:"ConnectionProfile"}},virtualMachineProfile:{serializedName:"properties.virtualMachineProfile",type:{name:"Composite",className:"VirtualMachineProfile"}},securityProfile:{serializedName:"properties.securityProfile",type:{name:"Composite",className:"SecurityProfile"}},rosterProfile:{serializedName:"properties.rosterProfile",type:{name:"Composite",className:"RosterProfile"}},labPlanId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"properties.labPlanId",type:{name:"String"}},title:{constraints:{MaxLength:120,MinLength:1},serializedName:"properties.title",type:{name:"String"}},description:{serializedName:"properties.description",type:{name:"String"}}})}},LabProperties={type:{name:"Composite",className:"LabProperties",modelProperties:Object.assign(Object.assign({},LabUpdateProperties.type.modelProperties),{provisioningState:{serializedName:"provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}},networkProfile:{serializedName:"networkProfile",type:{name:"Composite",className:"LabNetworkProfile"}},state:{serializedName:"state",readOnly:!0,type:{name:"Enum",allowedValues:["Draft","Publishing","Scaling","Syncing","Published"]}}})}},ScheduleProperties={type:{name:"Composite",className:"ScheduleProperties",modelProperties:Object.assign(Object.assign({},ScheduleUpdateProperties.type.modelProperties),{provisioningState:{serializedName:"provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}}})}},UserProperties={type:{name:"Composite",className:"UserProperties",modelProperties:Object.assign(Object.assign({},UserUpdateProperties.type.modelProperties),{provisioningState:{serializedName:"provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}},displayName:{serializedName:"displayName",readOnly:!0,type:{name:"String"}},email:{constraints:{MaxLength:254,MinLength:6},serializedName:"email",required:!0,type:{name:"String"}},registrationState:{serializedName:"registrationState",readOnly:!0,type:{name:"Enum",allowedValues:["Registered","NotRegistered"]}},invitationState:{serializedName:"invitationState",readOnly:!0,type:{name:"Enum",allowedValues:["NotSent","Sending","Sent","Failed"]}},invitationSent:{serializedName:"invitationSent",readOnly:!0,type:{name:"DateTime"}},totalUsage:{serializedName:"totalUsage",readOnly:!0,type:{name:"TimeSpan"}}})}},Image={type:{name:"Composite",className:"Image",modelProperties:Object.assign(Object.assign({},ProxyResource.type.modelProperties),{systemData:{serializedName:"systemData",type:{name:"Composite",className:"SystemData"}},enabledState:{serializedName:"properties.enabledState",type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},provisioningState:{serializedName:"properties.provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}},displayName:{serializedName:"properties.displayName",readOnly:!0,type:{name:"String"}},description:{serializedName:"properties.description",readOnly:!0,type:{name:"String"}},iconUrl:{serializedName:"properties.iconUrl",readOnly:!0,type:{name:"String"}},author:{serializedName:"properties.author",readOnly:!0,type:{name:"String"}},osType:{serializedName:"properties.osType",readOnly:!0,type:{name:"Enum",allowedValues:["Windows","Linux"]}},plan:{serializedName:"properties.plan",readOnly:!0,type:{name:"String"}},termsStatus:{serializedName:"properties.termsStatus",readOnly:!0,type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},offer:{serializedName:"properties.offer",readOnly:!0,type:{name:"String"}},publisher:{serializedName:"properties.publisher",readOnly:!0,type:{name:"String"}},sku:{serializedName:"properties.sku",readOnly:!0,type:{name:"String"}},version:{serializedName:"properties.version",readOnly:!0,type:{name:"String"}},sharedGalleryId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"properties.sharedGalleryId",readOnly:!0,type:{name:"String"}},availableRegions:{serializedName:"properties.availableRegions",type:{name:"Sequence",element:{type:{name:"String"}}}},osState:{serializedName:"properties.osState",readOnly:!0,type:{name:"Enum",allowedValues:["Generalized","Specialized"]}}})}},Schedule={type:{name:"Composite",className:"Schedule",modelProperties:Object.assign(Object.assign({},ProxyResource.type.modelProperties),{systemData:{serializedName:"systemData",type:{name:"Composite",className:"SystemData"}},startAt:{serializedName:"properties.startAt",type:{name:"DateTime"}},stopAt:{serializedName:"properties.stopAt",type:{name:"DateTime"}},recurrencePattern:{serializedName:"properties.recurrencePattern",type:{name:"Composite",className:"RecurrencePattern"}},timeZoneId:{constraints:{MaxLength:50},serializedName:"properties.timeZoneId",type:{name:"String"}},notes:{constraints:{MaxLength:1e3},serializedName:"properties.notes",type:{name:"String"}},provisioningState:{serializedName:"properties.provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}}})}},User={type:{name:"Composite",className:"User",modelProperties:Object.assign(Object.assign({},ProxyResource.type.modelProperties),{systemData:{serializedName:"systemData",type:{name:"Composite",className:"SystemData"}},additionalUsageQuota:{serializedName:"properties.additionalUsageQuota",type:{name:"TimeSpan"}},provisioningState:{serializedName:"properties.provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}},displayName:{serializedName:"properties.displayName",readOnly:!0,type:{name:"String"}},email:{constraints:{MaxLength:254,MinLength:6},serializedName:"properties.email",required:!0,type:{name:"String"}},registrationState:{serializedName:"properties.registrationState",readOnly:!0,type:{name:"Enum",allowedValues:["Registered","NotRegistered"]}},invitationState:{serializedName:"properties.invitationState",readOnly:!0,type:{name:"Enum",allowedValues:["NotSent","Sending","Sent","Failed"]}},invitationSent:{serializedName:"properties.invitationSent",readOnly:!0,type:{name:"DateTime"}},totalUsage:{serializedName:"properties.totalUsage",readOnly:!0,type:{name:"TimeSpan"}}})}},VirtualMachine={type:{name:"Composite",className:"VirtualMachine",modelProperties:Object.assign(Object.assign({},ProxyResource.type.modelProperties),{systemData:{serializedName:"systemData",type:{name:"Composite",className:"SystemData"}},provisioningState:{serializedName:"properties.provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}},state:{serializedName:"properties.state",readOnly:!0,type:{name:"Enum",allowedValues:["Stopped","Starting","Running","Stopping","ResettingPassword","Reimaging","Redeploying"]}},connectionProfile:{serializedName:"properties.connectionProfile",type:{name:"Composite",className:"VirtualMachineConnectionProfile"}},claimedByUserId:{serializedName:"properties.claimedByUserId",readOnly:!0,type:{name:"String"}},vmType:{serializedName:"properties.vmType",readOnly:!0,type:{name:"Enum",allowedValues:["User","Template"]}}})}},LabPlan={type:{name:"Composite",className:"LabPlan",modelProperties:Object.assign(Object.assign({},TrackedResource.type.modelProperties),{systemData:{serializedName:"systemData",type:{name:"Composite",className:"SystemData"}},identity:{serializedName:"identity",type:{name:"Composite",className:"Identity"}},defaultConnectionProfile:{serializedName:"properties.defaultConnectionProfile",type:{name:"Composite",className:"ConnectionProfile"}},defaultAutoShutdownProfile:{serializedName:"properties.defaultAutoShutdownProfile",type:{name:"Composite",className:"AutoShutdownProfile"}},defaultNetworkProfile:{serializedName:"properties.defaultNetworkProfile",type:{name:"Composite",className:"LabPlanNetworkProfile"}},allowedRegions:{serializedName:"properties.allowedRegions",type:{name:"Sequence",element:{type:{name:"String"}}}},sharedGalleryId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"properties.sharedGalleryId",type:{name:"String"}},supportInfo:{serializedName:"properties.supportInfo",type:{name:"Composite",className:"SupportInfo"}},linkedLmsInstance:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"properties.linkedLmsInstance",type:{name:"String"}},provisioningState:{serializedName:"properties.provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}}})}},Lab={type:{name:"Composite",className:"Lab",modelProperties:Object.assign(Object.assign({},TrackedResource.type.modelProperties),{systemData:{serializedName:"systemData",type:{name:"Composite",className:"SystemData"}},autoShutdownProfile:{serializedName:"properties.autoShutdownProfile",type:{name:"Composite",className:"AutoShutdownProfile"}},connectionProfile:{serializedName:"properties.connectionProfile",type:{name:"Composite",className:"ConnectionProfile"}},virtualMachineProfile:{serializedName:"properties.virtualMachineProfile",type:{name:"Composite",className:"VirtualMachineProfile"}},securityProfile:{serializedName:"properties.securityProfile",type:{name:"Composite",className:"SecurityProfile"}},rosterProfile:{serializedName:"properties.rosterProfile",type:{name:"Composite",className:"RosterProfile"}},labPlanId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"properties.labPlanId",type:{name:"String"}},title:{constraints:{MaxLength:120,MinLength:1},serializedName:"properties.title",type:{name:"String"}},description:{serializedName:"properties.description",type:{name:"String"}},provisioningState:{serializedName:"properties.provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}},networkProfile:{serializedName:"properties.networkProfile",type:{name:"Composite",className:"LabNetworkProfile"}},state:{serializedName:"properties.state",readOnly:!0,type:{name:"Enum",allowedValues:["Draft","Publishing","Scaling","Syncing","Published"]}}})}};var Mappers=Object.freeze({__proto__:null,AutoShutdownProfile:AutoShutdownProfile,ConnectionProfile:ConnectionProfile,Credentials:Credentials,ErrorAdditionalInfo:ErrorAdditionalInfo,ErrorDetail:ErrorDetail,ErrorResponse:ErrorResponse,Identity:Identity,Image:Image,ImageProperties:ImageProperties,ImageReference:ImageReference,ImageUpdate:ImageUpdate,ImageUpdateProperties:ImageUpdateProperties,InviteBody:InviteBody,Lab:Lab,LabNetworkProfile:LabNetworkProfile,LabPlan:LabPlan,LabPlanNetworkProfile:LabPlanNetworkProfile,LabPlanProperties:LabPlanProperties,LabPlanUpdate:LabPlanUpdate,LabPlanUpdateProperties:LabPlanUpdateProperties,LabProperties:LabProperties,LabServicesSku:LabServicesSku,LabServicesSkuCapabilities:LabServicesSkuCapabilities,LabServicesSkuCapacity:LabServicesSkuCapacity,LabServicesSkuCost:LabServicesSkuCost,LabServicesSkuRestrictions:LabServicesSkuRestrictions,LabUpdate:LabUpdate,LabUpdateProperties:LabUpdateProperties,ListUsagesResult:ListUsagesResult,Operation:Operation,OperationDisplay:OperationDisplay,OperationListResult:OperationListResult,OperationResult:OperationResult,PagedImages:PagedImages,PagedLabPlans:PagedLabPlans,PagedLabServicesSkus:PagedLabServicesSkus,PagedLabs:PagedLabs,PagedSchedules:PagedSchedules,PagedUsers:PagedUsers,PagedVirtualMachines:PagedVirtualMachines,ProxyResource:ProxyResource,RecurrencePattern:RecurrencePattern,ResetPasswordBody:ResetPasswordBody,Resource:Resource,RosterProfile:RosterProfile,SaveImageBody:SaveImageBody,Schedule:Schedule,ScheduleProperties:ScheduleProperties,ScheduleUpdate:ScheduleUpdate,ScheduleUpdateProperties:ScheduleUpdateProperties,SecurityProfile:SecurityProfile,Sku:Sku,SupportInfo:SupportInfo,SystemData:SystemData,TrackedResource:TrackedResource,TrackedResourceUpdate:TrackedResourceUpdate,Usage:Usage,UsageName:UsageName,User:User,UserProperties:UserProperties,UserUpdate:UserUpdate,UserUpdateProperties:UserUpdateProperties,VirtualMachine:VirtualMachine,VirtualMachineAdditionalCapabilities:VirtualMachineAdditionalCapabilities,VirtualMachineConnectionProfile:VirtualMachineConnectionProfile,VirtualMachineProfile:VirtualMachineProfile});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},apiVersion={parameterPath:"apiVersion",mapper:{defaultValue:"2022-08-01",isConstant:!0,serializedName:"api-version",type:{name:"String"}}},subscriptionId={parameterPath:"subscriptionId",mapper:{constraints:{MinLength:1},serializedName:"subscriptionId",required:!0,type:{name:"String"}}},resourceGroupName={parameterPath:"resourceGroupName",mapper:{constraints:{MaxLength:90,MinLength:1},serializedName:"resourceGroupName",required:!0,type:{name:"String"}}},labPlanName={parameterPath:"labPlanName",mapper:{constraints:{MaxLength:100,MinLength:1},serializedName:"labPlanName",required:!0,type:{name:"String"}}},filter={parameterPath:["options","filter"],mapper:{serializedName:"$filter",type:{name:"String"}}},imageName={parameterPath:"imageName",mapper:{constraints:{Pattern:new RegExp("^[-\\w\\\\._\\\\(\\\\)]+$"),MaxLength:100,MinLength:1},serializedName:"imageName",required:!0,type:{name:"String"}}},contentType={parameterPath:["options","contentType"],mapper:{defaultValue:"application/json",isConstant:!0,serializedName:"Content-Type",type:{name:"String"}}},body={parameterPath:"body",mapper:Image},body1={parameterPath:"body",mapper:ImageUpdate},nextLink={parameterPath:"nextLink",mapper:{serializedName:"nextLink",required:!0,type:{name:"String"}},skipEncoding:!0},body2={parameterPath:"body",mapper:LabPlan},body3={parameterPath:"body",mapper:LabPlanUpdate},body4={parameterPath:"body",mapper:SaveImageBody},labName={parameterPath:"labName",mapper:{constraints:{MaxLength:100,MinLength:1},serializedName:"labName",required:!0,type:{name:"String"}}},body5={parameterPath:"body",mapper:Lab},body6={parameterPath:"body",mapper:LabUpdate},operationResultId={parameterPath:"operationResultId",mapper:{constraints:{Pattern:new RegExp("^[-\\w\\\\._\\\\(\\\\)]+$"),MaxLength:100,MinLength:1},serializedName:"operationResultId",required:!0,type:{name:"String"}}},scheduleName={parameterPath:"scheduleName",mapper:{constraints:{Pattern:new RegExp("^[-\\w\\\\._\\\\(\\\\)]+$"),MaxLength:100,MinLength:1},serializedName:"scheduleName",required:!0,type:{name:"String"}}},body7={parameterPath:"body",mapper:Schedule},body8={parameterPath:"body",mapper:ScheduleUpdate},location={parameterPath:"location",mapper:{constraints:{Pattern:new RegExp("^[-\\w\\._]+$"),MaxLength:100,MinLength:1},serializedName:"location",required:!0,type:{name:"String"}}},userName={parameterPath:"userName",mapper:{constraints:{Pattern:new RegExp("^[-\\w\\\\._\\\\(\\\\)]+$"),MaxLength:100,MinLength:1},serializedName:"userName",required:!0,type:{name:"String"}}},body9={parameterPath:"body",mapper:User},body10={parameterPath:"body",mapper:UserUpdate},body11={parameterPath:"body",mapper:InviteBody},virtualMachineName={parameterPath:"virtualMachineName",mapper:{constraints:{Pattern:new RegExp("^[-\\w\\\\._\\\\(\\\\)]+$"),MaxLength:100,MinLength:1},serializedName:"virtualMachineName",required:!0,type:{name:"String"}}},body12={parameterPath:"body",mapper:ResetPasswordBody};class ImagesImpl{constructor(e){this.client=e}listByLabPlan(a,t,r){let e=this.listByLabPlanPagingAll(a,t,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.listByLabPlanPagingPage(a,t,r,e)}}}listByLabPlanPagingPage(i,s,n,o){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==o?void 0:o.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._listByLabPlan(i,s,n))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listByLabPlanNext(i,s,a,n)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listByLabPlanPagingAll(o,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listByLabPlanPagingPage(o,l,p));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}_listByLabPlan(e,a,t){return this.client.sendOperationRequest({resourceGroupName:e,labPlanName:a,options:t},listByLabPlanOperationSpec)}get(e,a,t,r){return this.client.sendOperationRequest({resourceGroupName:e,labPlanName:a,imageName:t,options:r},getOperationSpec$6)}createOrUpdate(e,a,t,r,i){return this.client.sendOperationRequest({resourceGroupName:e,labPlanName:a,imageName:t,body:r,options:i},createOrUpdateOperationSpec$4)}update(e,a,t,r,i){return this.client.sendOperationRequest({resourceGroupName:e,labPlanName:a,imageName:t,body:r,options:i},updateOperationSpec$4)}_listByLabPlanNext(e,a,t,r){return this.client.sendOperationRequest({resourceGroupName:e,labPlanName:a,nextLink:t,options:r},listByLabPlanNextOperationSpec)}}let serializer$9=coreClient__namespace.createSerializer(Mappers,!1),listByLabPlanOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans/{labPlanName}/images",httpMethod:"GET",responses:{200:{bodyMapper:PagedImages},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,labPlanName],headerParameters:[accept],serializer:serializer$9},getOperationSpec$6={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans/{labPlanName}/images/{imageName}",httpMethod:"GET",responses:{200:{bodyMapper:Image},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labPlanName,imageName],headerParameters:[accept],serializer:serializer$9},createOrUpdateOperationSpec$4={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans/{labPlanName}/images/{imageName}",httpMethod:"PUT",responses:{200:{bodyMapper:Image},default:{bodyMapper:ErrorResponse}},requestBody:body,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labPlanName,imageName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$9},updateOperationSpec$4={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans/{labPlanName}/images/{imageName}",httpMethod:"PATCH",responses:{200:{bodyMapper:Image},default:{bodyMapper:ErrorResponse}},requestBody:body1,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labPlanName,imageName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$9},listByLabPlanNextOperationSpec={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:PagedImages},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,subscriptionId,resourceGroupName,labPlanName,nextLink],headerParameters:[accept],serializer:serializer$9};class LroImpl{constructor(e,a,t,r=t.path,i=t.httpMethod){this.sendOperationFn=e,this.args=a,this.spec=t,this.requestPath=r,this.requestMethod=i}sendInitialRequest(){return tslib.__awaiter(this,void 0,void 0,function*(){return this.sendOperationFn(this.args,this.spec)})}sendPollRequest(a){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:a,httpMethod:"GET"}))})}}class LabPlansImpl{constructor(e){this.client=e}listBySubscription(a){let e=this.listBySubscriptionPagingAll(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.listBySubscriptionPagingPage(a,e)}}}listBySubscriptionPagingPage(i,s){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==s?void 0:s.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._listBySubscription(i))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listBySubscriptionNext(a,i)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listBySubscriptionPagingAll(o){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listBySubscriptionPagingPage(o));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}listByResourceGroup(a,t){let e=this.listByResourceGroupPagingAll(a,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.listByResourceGroupPagingPage(a,t,e)}}}listByResourceGroupPagingPage(i,s,n){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==n?void 0:n.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._listByResourceGroup(i,s))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listByResourceGroupNext(i,a,s)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listByResourceGroupPagingAll(o,l){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listByResourceGroupPagingPage(o,l));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}_listBySubscription(e){return this.client.sendOperationRequest({options:e},listBySubscriptionOperationSpec$1)}_listByResourceGroup(e,a){return this.client.sendOperationRequest({resourceGroupName:e,options:a},listByResourceGroupOperationSpec$1)}get(e,a,t){return this.client.sendOperationRequest({resourceGroupName:e,labPlanName:a,options:t},getOperationSpec$5)}beginCreateOrUpdate(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labPlanName:t,body:r,options:i},createOrUpdateOperationSpec$3),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"original-uri"});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,a,t,r)).pollUntilDone()})}beginUpdate(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labPlanName:t,body:r,options:i},updateOperationSpec$3),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginUpdateAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginUpdate(e,a,t,r)).pollUntilDone()})}beginDelete(a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labPlanName:t,options:r},deleteOperationSpec$3),e=new coreLro.LroEngine(e,{resumeFrom:null==r?void 0:r.resumeFrom,intervalInMs:null==r?void 0:r.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginDeleteAndWait(e,a,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,a,t)).pollUntilDone()})}beginSaveImage(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labPlanName:t,body:r,options:i},saveImageOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginSaveImageAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginSaveImage(e,a,t,r)).pollUntilDone()})}_listBySubscriptionNext(e,a){return this.client.sendOperationRequest({nextLink:e,options:a},listBySubscriptionNextOperationSpec$1)}_listByResourceGroupNext(e,a,t){return this.client.sendOperationRequest({resourceGroupName:e,nextLink:a,options:t},listByResourceGroupNextOperationSpec$1)}}let serializer$8=coreClient__namespace.createSerializer(Mappers,!1),listBySubscriptionOperationSpec$1={path:"/subscriptions/{subscriptionId}/providers/Microsoft.LabServices/labPlans",httpMethod:"GET",responses:{200:{bodyMapper:PagedLabPlans},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId],headerParameters:[accept],serializer:serializer$8},listByResourceGroupOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans",httpMethod:"GET",responses:{200:{bodyMapper:PagedLabPlans},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName],headerParameters:[accept],serializer:serializer$8},getOperationSpec$5={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans/{labPlanName}",httpMethod:"GET",responses:{200:{bodyMapper:LabPlan},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labPlanName],headerParameters:[accept],serializer:serializer$8},createOrUpdateOperationSpec$3={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans/{labPlanName}",httpMethod:"PUT",responses:{200:{bodyMapper:LabPlan},201:{bodyMapper:LabPlan},202:{bodyMapper:LabPlan},204:{bodyMapper:LabPlan},default:{bodyMapper:ErrorResponse}},requestBody:body2,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labPlanName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$8},updateOperationSpec$3={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans/{labPlanName}",httpMethod:"PATCH",responses:{200:{bodyMapper:LabPlan},201:{bodyMapper:LabPlan},202:{bodyMapper:LabPlan},204:{bodyMapper:LabPlan},default:{bodyMapper:ErrorResponse}},requestBody:body3,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labPlanName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$8},deleteOperationSpec$3={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans/{labPlanName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labPlanName],headerParameters:[accept],serializer:serializer$8},saveImageOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans/{labPlanName}/saveImage",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},requestBody:body4,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labPlanName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$8},listBySubscriptionNextOperationSpec$1={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:PagedLabPlans},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,subscriptionId,nextLink],headerParameters:[accept],serializer:serializer$8},listByResourceGroupNextOperationSpec$1={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:PagedLabPlans},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,subscriptionId,resourceGroupName,nextLink],headerParameters:[accept],serializer:serializer$8};class OperationsImpl{constructor(e){this.client=e}list(a){let e=this.listPagingAll(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.listPagingPage(a,e)}}}listPagingPage(i,s){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==s?void 0:s.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._list(i))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listNext(a,i)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listPagingAll(o){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listPagingPage(o));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}_list(e){return this.client.sendOperationRequest({options:e},listOperationSpec$1)}_listNext(e,a){return this.client.sendOperationRequest({nextLink:e,options:a},listNextOperationSpec$1)}}let serializer$7=coreClient__namespace.createSerializer(Mappers,!1),listOperationSpec$1={path:"/providers/Microsoft.LabServices/operations",httpMethod:"GET",responses:{200:{bodyMapper:OperationListResult},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host],headerParameters:[accept],serializer:serializer$7},listNextOperationSpec$1={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:OperationListResult},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,nextLink],headerParameters:[accept],serializer:serializer$7};class LabsImpl{constructor(e){this.client=e}listBySubscription(a){let e=this.listBySubscriptionPagingAll(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.listBySubscriptionPagingPage(a,e)}}}listBySubscriptionPagingPage(i,s){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==s?void 0:s.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._listBySubscription(i))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listBySubscriptionNext(a,i)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listBySubscriptionPagingAll(o){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listBySubscriptionPagingPage(o));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}listByResourceGroup(a,t){let e=this.listByResourceGroupPagingAll(a,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.listByResourceGroupPagingPage(a,t,e)}}}listByResourceGroupPagingPage(i,s,n){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==n?void 0:n.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._listByResourceGroup(i,s))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listByResourceGroupNext(i,a,s)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listByResourceGroupPagingAll(o,l){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listByResourceGroupPagingPage(o,l));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}_listBySubscription(e){return this.client.sendOperationRequest({options:e},listBySubscriptionOperationSpec)}_listByResourceGroup(e,a){return this.client.sendOperationRequest({resourceGroupName:e,options:a},listByResourceGroupOperationSpec)}get(e,a,t){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,options:t},getOperationSpec$4)}beginCreateOrUpdate(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,body:r,options:i},createOrUpdateOperationSpec$2),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"original-uri"});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,a,t,r)).pollUntilDone()})}beginUpdate(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,body:r,options:i},updateOperationSpec$2),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginUpdateAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginUpdate(e,a,t,r)).pollUntilDone()})}beginDelete(a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,options:r},deleteOperationSpec$2),e=new coreLro.LroEngine(e,{resumeFrom:null==r?void 0:r.resumeFrom,intervalInMs:null==r?void 0:r.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginDeleteAndWait(e,a,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,a,t)).pollUntilDone()})}beginPublish(a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,options:r},publishOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==r?void 0:r.resumeFrom,intervalInMs:null==r?void 0:r.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginPublishAndWait(e,a,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginPublish(e,a,t)).pollUntilDone()})}beginSyncGroup(a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,options:r},syncGroupOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==r?void 0:r.resumeFrom,intervalInMs:null==r?void 0:r.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginSyncGroupAndWait(e,a,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginSyncGroup(e,a,t)).pollUntilDone()})}_listBySubscriptionNext(e,a){return this.client.sendOperationRequest({nextLink:e,options:a},listBySubscriptionNextOperationSpec)}_listByResourceGroupNext(e,a,t){return this.client.sendOperationRequest({resourceGroupName:e,nextLink:a,options:t},listByResourceGroupNextOperationSpec)}}let serializer$6=coreClient__namespace.createSerializer(Mappers,!1),listBySubscriptionOperationSpec={path:"/subscriptions/{subscriptionId}/providers/Microsoft.LabServices/labs",httpMethod:"GET",responses:{200:{bodyMapper:PagedLabs},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId],headerParameters:[accept],serializer:serializer$6},listByResourceGroupOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs",httpMethod:"GET",responses:{200:{bodyMapper:PagedLabs},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName],headerParameters:[accept],serializer:serializer$6},getOperationSpec$4={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}",httpMethod:"GET",responses:{200:{bodyMapper:Lab},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName],headerParameters:[accept],serializer:serializer$6},createOrUpdateOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}",httpMethod:"PUT",responses:{200:{bodyMapper:Lab},201:{bodyMapper:Lab},202:{bodyMapper:Lab},204:{bodyMapper:Lab},default:{bodyMapper:ErrorResponse}},requestBody:body5,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$6},updateOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}",httpMethod:"PATCH",responses:{200:{bodyMapper:Lab},201:{bodyMapper:Lab},202:{bodyMapper:Lab},204:{bodyMapper:Lab},default:{bodyMapper:ErrorResponse}},requestBody:body6,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$6},deleteOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName],headerParameters:[accept],serializer:serializer$6},publishOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/publish",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName],headerParameters:[accept],serializer:serializer$6},syncGroupOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/syncGroup",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName],headerParameters:[accept],serializer:serializer$6},listBySubscriptionNextOperationSpec={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:PagedLabs},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,subscriptionId,nextLink],headerParameters:[accept],serializer:serializer$6},listByResourceGroupNextOperationSpec={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:PagedLabs},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,subscriptionId,resourceGroupName,nextLink],headerParameters:[accept],serializer:serializer$6};class OperationResultsImpl{constructor(e){this.client=e}get(e,a){return this.client.sendOperationRequest({operationResultId:e,options:a},getOperationSpec$3)}}let serializer$5=coreClient__namespace.createSerializer(Mappers,!1),getOperationSpec$3={path:"/subscriptions/{subscriptionId}/providers/Microsoft.LabServices/operationResults/{operationResultId}",httpMethod:"GET",responses:{200:{bodyMapper:OperationResult},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,operationResultId],headerParameters:[accept],serializer:serializer$5};class SchedulesImpl{constructor(e){this.client=e}listByLab(a,t,r){let e=this.listByLabPagingAll(a,t,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.listByLabPagingPage(a,t,r,e)}}}listByLabPagingPage(i,s,n,o){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==o?void 0:o.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._listByLab(i,s,n))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listByLabNext(i,s,a,n)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listByLabPagingAll(o,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listByLabPagingPage(o,l,p));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}_listByLab(e,a,t){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,options:t},listByLabOperationSpec$2)}get(e,a,t,r){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,scheduleName:t,options:r},getOperationSpec$2)}createOrUpdate(e,a,t,r,i){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,scheduleName:t,body:r,options:i},createOrUpdateOperationSpec$1)}update(e,a,t,r,i){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,scheduleName:t,body:r,options:i},updateOperationSpec$1)}beginDelete(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,scheduleName:r,options:i},deleteOperationSpec$1),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginDeleteAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,a,t,r)).pollUntilDone()})}_listByLabNext(e,a,t,r){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,nextLink:t,options:r},listByLabNextOperationSpec$2)}}let serializer$4=coreClient__namespace.createSerializer(Mappers,!1),listByLabOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/schedules",httpMethod:"GET",responses:{200:{bodyMapper:PagedSchedules},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,labName],headerParameters:[accept],serializer:serializer$4},getOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/schedules/{scheduleName}",httpMethod:"GET",responses:{200:{bodyMapper:Schedule},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,scheduleName],headerParameters:[accept],serializer:serializer$4},createOrUpdateOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/schedules/{scheduleName}",httpMethod:"PUT",responses:{200:{bodyMapper:Schedule},201:{bodyMapper:Schedule},default:{bodyMapper:ErrorResponse}},requestBody:body7,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,scheduleName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$4},updateOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/schedules/{scheduleName}",httpMethod:"PATCH",responses:{200:{bodyMapper:Schedule},default:{bodyMapper:ErrorResponse}},requestBody:body8,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,scheduleName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$4},deleteOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/schedules/{scheduleName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,scheduleName],headerParameters:[accept],serializer:serializer$4},listByLabNextOperationSpec$2={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:PagedSchedules},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,subscriptionId,resourceGroupName,nextLink,labName],headerParameters:[accept],serializer:serializer$4};class SkusImpl{constructor(e){this.client=e}list(a){let e=this.listPagingAll(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.listPagingPage(a,e)}}}listPagingPage(i,s){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==s?void 0:s.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._list(i))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listNext(a,i)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listPagingAll(o){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listPagingPage(o));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}_list(e){return this.client.sendOperationRequest({options:e},listOperationSpec)}_listNext(e,a){return this.client.sendOperationRequest({nextLink:e,options:a},listNextOperationSpec)}}let serializer$3=coreClient__namespace.createSerializer(Mappers,!1),listOperationSpec={path:"/subscriptions/{subscriptionId}/providers/Microsoft.LabServices/skus",httpMethod:"GET",responses:{200:{bodyMapper:PagedLabServicesSkus},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId],headerParameters:[accept],serializer:serializer$3},listNextOperationSpec={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:PagedLabServicesSkus},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,subscriptionId,nextLink],headerParameters:[accept],serializer:serializer$3};class UsagesImpl{constructor(e){this.client=e}listByLocation(a,t){let e=this.listByLocationPagingAll(a,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.listByLocationPagingPage(a,t,e)}}}listByLocationPagingPage(i,s,n){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==n?void 0:n.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._listByLocation(i,s))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listByLocationNext(i,a,s)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listByLocationPagingAll(o,l){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listByLocationPagingPage(o,l));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}_listByLocation(e,a){return this.client.sendOperationRequest({location:e,options:a},listByLocationOperationSpec)}_listByLocationNext(e,a,t){return this.client.sendOperationRequest({location:e,nextLink:a,options:t},listByLocationNextOperationSpec)}}let serializer$2=coreClient__namespace.createSerializer(Mappers,!1),listByLocationOperationSpec={path:"/subscriptions/{subscriptionId}/providers/Microsoft.LabServices/locations/{location}/usages",httpMethod:"GET",responses:{200:{bodyMapper:ListUsagesResult},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,location],headerParameters:[accept],serializer:serializer$2},listByLocationNextOperationSpec={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:ListUsagesResult},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,subscriptionId,nextLink,location],headerParameters:[accept],serializer:serializer$2};class UsersImpl{constructor(e){this.client=e}listByLab(a,t,r){let e=this.listByLabPagingAll(a,t,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.listByLabPagingPage(a,t,r,e)}}}listByLabPagingPage(i,s,n,o){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==o?void 0:o.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._listByLab(i,s,n))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listByLabNext(i,s,a,n)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listByLabPagingAll(o,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listByLabPagingPage(o,l,p));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}_listByLab(e,a,t){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,options:t},listByLabOperationSpec$1)}get(e,a,t,r){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,userName:t,options:r},getOperationSpec$1)}beginCreateOrUpdate(a,t,r,i,s){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,userName:r,body:i,options:s},createOrUpdateOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs,lroResourceLocationConfig:"original-uri"});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,a,t,r,i)).pollUntilDone()})}beginUpdate(a,t,r,i,s){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,userName:r,body:i,options:s},updateOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginUpdateAndWait(e,a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginUpdate(e,a,t,r,i)).pollUntilDone()})}beginDelete(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,userName:r,options:i},deleteOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginDeleteAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,a,t,r)).pollUntilDone()})}beginInvite(a,t,r,i,s){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,userName:r,body:i,options:s},inviteOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginInviteAndWait(e,a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginInvite(e,a,t,r,i)).pollUntilDone()})}_listByLabNext(e,a,t,r){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,nextLink:t,options:r},listByLabNextOperationSpec$1)}}let serializer$1=coreClient__namespace.createSerializer(Mappers,!1),listByLabOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/users",httpMethod:"GET",responses:{200:{bodyMapper:PagedUsers},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,labName],headerParameters:[accept],serializer:serializer$1},getOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/users/{userName}",httpMethod:"GET",responses:{200:{bodyMapper:User},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,userName],headerParameters:[accept],serializer:serializer$1},createOrUpdateOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/users/{userName}",httpMethod:"PUT",responses:{200:{bodyMapper:User},201:{bodyMapper:User},202:{bodyMapper:User},204:{bodyMapper:User},default:{bodyMapper:ErrorResponse}},requestBody:body9,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,userName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$1},updateOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/users/{userName}",httpMethod:"PATCH",responses:{200:{bodyMapper:User},201:{bodyMapper:User},202:{bodyMapper:User},204:{bodyMapper:User},default:{bodyMapper:ErrorResponse}},requestBody:body10,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,userName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$1},deleteOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/users/{userName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,userName],headerParameters:[accept],serializer:serializer$1},inviteOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/users/{userName}/invite",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},requestBody:body11,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,userName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$1},listByLabNextOperationSpec$1={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:PagedUsers},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,subscriptionId,resourceGroupName,nextLink,labName],headerParameters:[accept],serializer:serializer$1};class VirtualMachinesImpl{constructor(e){this.client=e}listByLab(a,t,r){let e=this.listByLabPagingAll(a,t,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.listByLabPagingPage(a,t,r,e)}}}listByLabPagingPage(i,s,n,o){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==o?void 0:o.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._listByLab(i,s,n))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listByLabNext(i,s,a,n)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listByLabPagingAll(o,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listByLabPagingPage(o,l,p));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}_listByLab(e,a,t){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,options:t},listByLabOperationSpec)}get(e,a,t,r){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,virtualMachineName:t,options:r},getOperationSpec)}beginStart(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,virtualMachineName:r,options:i},startOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginStartAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginStart(e,a,t,r)).pollUntilDone()})}beginStop(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,virtualMachineName:r,options:i},stopOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginStopAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginStop(e,a,t,r)).pollUntilDone()})}beginReimage(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,virtualMachineName:r,options:i},reimageOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginReimageAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginReimage(e,a,t,r)).pollUntilDone()})}beginRedeploy(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,virtualMachineName:r,options:i},redeployOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginRedeployAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginRedeploy(e,a,t,r)).pollUntilDone()})}beginResetPassword(a,t,r,i,s){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,virtualMachineName:r,body:i,options:s},resetPasswordOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginResetPasswordAndWait(e,a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginResetPassword(e,a,t,r,i)).pollUntilDone()})}_listByLabNext(e,a,t,r){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,nextLink:t,options:r},listByLabNextOperationSpec)}}let serializer=coreClient__namespace.createSerializer(Mappers,!1),listByLabOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/virtualMachines",httpMethod:"GET",responses:{200:{bodyMapper:PagedVirtualMachines},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,labName],headerParameters:[accept],serializer:serializer},getOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/virtualMachines/{virtualMachineName}",httpMethod:"GET",responses:{200:{bodyMapper:VirtualMachine},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,virtualMachineName],headerParameters:[accept],serializer:serializer},startOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/virtualMachines/{virtualMachineName}/start",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,virtualMachineName],headerParameters:[accept],serializer:serializer},stopOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/virtualMachines/{virtualMachineName}/stop",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,virtualMachineName],headerParameters:[accept],serializer:serializer},reimageOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/virtualMachines/{virtualMachineName}/reimage",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,virtualMachineName],headerParameters:[accept],serializer:serializer},redeployOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/virtualMachines/{virtualMachineName}/redeploy",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,virtualMachineName],headerParameters:[accept],serializer:serializer},resetPasswordOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/virtualMachines/{virtualMachineName}/resetPassword",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},requestBody:body12,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,virtualMachineName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer},listByLabNextOperationSpec={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:PagedVirtualMachines},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,subscriptionId,resourceGroupName,nextLink,labName],headerParameters:[accept],serializer:serializer};class LabServicesClient extends coreClient__namespace.ServiceClient{constructor(e,a,t){if(void 0===e)throw new Error("'credentials' cannot be null");if(void 0===a)throw new Error("'subscriptionId' cannot be null");var r,i="azsdk-js-arm-labservices/3.1.1",i=(t=t||{}).userAgentOptions&&t.userAgentOptions.userAgentPrefix?t.userAgentOptions.userAgentPrefix+" "+i:i,i=Object.assign(Object.assign(Object.assign({},{requestContentType:"application/json; charset=utf-8",credential:e}),t),{userAgentOptions:{userAgentPrefix:i},endpoint:null!=(i=null!=(i=t.endpoint)?i:t.baseUri)?i:"https://management.azure.com"});super(i);let s=!1;null!=t&&t.pipeline&&0<t.pipeline.getOrderedPolicies().length&&(r=t.pipeline.getOrderedPolicies(),s=r.some(e=>e.name===coreRestPipeline__namespace.bearerTokenAuthenticationPolicyName)),t&&t.pipeline&&0!=t.pipeline.getOrderedPolicies().length&&s||(this.pipeline.removePolicy({name:coreRestPipeline__namespace.bearerTokenAuthenticationPolicyName}),this.pipeline.addPolicy(coreRestPipeline__namespace.bearerTokenAuthenticationPolicy({credential:e,scopes:null!=(r=i.credentialScopes)?r:i.endpoint+"/.default",challengeCallbacks:{authorizeRequestOnChallenge:coreClient__namespace.authorizeRequestOnClaimChallenge}}))),this.subscriptionId=a,this.$host=t.$host||"https://management.azure.com",this.apiVersion=t.apiVersion||"2022-08-01",this.images=new ImagesImpl(this),this.labPlans=new LabPlansImpl(this),this.operations=new OperationsImpl(this),this.labs=new LabsImpl(this),this.operationResults=new OperationResultsImpl(this),this.schedules=new SchedulesImpl(this),this.skus=new SkusImpl(this),this.usages=new UsagesImpl(this),this.users=new UsersImpl(this),this.virtualMachines=new VirtualMachinesImpl(this),this.addCustomApiVersionPolicy(t.apiVersion)}addCustomApiVersionPolicy(i){i&&this.pipeline.addPolicy({name:"CustomApiVersionPolicy",sendRequest(t,r){return tslib.__awaiter(this,void 0,void 0,function*(){var e,a=t.url.split("?");return 1<a.length&&(e=a[1].split("&").map(e=>-1<e.indexOf("api-version")?"api-version="+i:e),t.url=a[0]+"?"+e.join("&")),r(t)})}})}}exports.LabServicesClient=LabServicesClient,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(t){var r=Object.create(null);return t&&Object.keys(t).forEach(function(e){var a;"default"!==e&&(a=Object.getOwnPropertyDescriptor(t,e),Object.defineProperty(r,e,a.get?a:{enumerable:!0,get:function(){return t[e]}}))}),r.default=t,Object.freeze(r)}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,a){var t;"object"==typeof e&&null!==e&&a&&((t=null!=(t=pageMap.get(e))?t:{}).continuationToken=a,pageMap.set(e,t))}exports.KnownCreatedByType=void 0,(e=>{e.User="User",e.Application="Application",e.ManagedIdentity="ManagedIdentity",e.Key="Key"})(exports.KnownCreatedByType||(exports.KnownCreatedByType={})),exports.KnownOrigin=void 0,(e=>{e.User="user",e.System="system",e.UserSystem="user,system"})(exports.KnownOrigin||(exports.KnownOrigin={})),exports.KnownActionType=void 0,(exports.KnownActionType||(exports.KnownActionType={})).Internal="Internal",exports.KnownLabServicesSkuTier=void 0,(e=>{e.Standard="Standard",e.Premium="Premium"})(exports.KnownLabServicesSkuTier||(exports.KnownLabServicesSkuTier={})),exports.KnownScaleType=void 0,(e=>{e.None="None",e.Manual="Manual",e.Automatic="Automatic"})(exports.KnownScaleType||(exports.KnownScaleType={})),exports.KnownRestrictionType=void 0,(exports.KnownRestrictionType||(exports.KnownRestrictionType={})).Location="Location",exports.KnownRestrictionReasonCode=void 0,(e=>{e.QuotaId="QuotaId",e.NotAvailableForSubscription="NotAvailableForSubscription"})(exports.KnownRestrictionReasonCode||(exports.KnownRestrictionReasonCode={})),exports.KnownUsageUnit=void 0,(exports.KnownUsageUnit||(exports.KnownUsageUnit={})).Count="Count";let PagedImages={type:{name:"Composite",className:"PagedImages",modelProperties:{value:{serializedName:"value",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"Image"}}}},nextLink:{serializedName:"nextLink",readOnly:!0,type:{name:"String"}}}}},SystemData={type:{name:"Composite",className:"SystemData",modelProperties:{createdBy:{serializedName:"createdBy",type:{name:"String"}},createdByType:{serializedName:"createdByType",type:{name:"String"}},createdAt:{serializedName:"createdAt",type:{name:"DateTime"}},lastModifiedBy:{serializedName:"lastModifiedBy",type:{name:"String"}},lastModifiedByType:{serializedName:"lastModifiedByType",type:{name:"String"}},lastModifiedAt:{serializedName:"lastModifiedAt",type:{name:"DateTime"}}}}},ImageUpdateProperties={type:{name:"Composite",className:"ImageUpdateProperties",modelProperties:{enabledState:{serializedName:"enabledState",type:{name:"Enum",allowedValues:["Enabled","Disabled"]}}}}},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"}}}}},ErrorResponse={type:{name:"Composite",className:"ErrorResponse",modelProperties:{error:{serializedName:"error",type:{name:"Composite",className:"ErrorDetail"}}}}},ErrorDetail={type:{name:"Composite",className:"ErrorDetail",modelProperties:{code:{serializedName:"code",readOnly:!0,type:{name:"String"}},message:{serializedName:"message",readOnly:!0,type:{name:"String"}},target:{serializedName:"target",readOnly:!0,type:{name:"String"}},details:{serializedName:"details",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"ErrorDetail"}}}},additionalInfo:{serializedName:"additionalInfo",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"ErrorAdditionalInfo"}}}}}}},ErrorAdditionalInfo={type:{name:"Composite",className:"ErrorAdditionalInfo",modelProperties:{type:{serializedName:"type",readOnly:!0,type:{name:"String"}},info:{serializedName:"info",readOnly:!0,type:{name:"Dictionary",value:{type:{name:"any"}}}}}}},ImageUpdate={type:{name:"Composite",className:"ImageUpdate",modelProperties:{enabledState:{serializedName:"properties.enabledState",type:{name:"Enum",allowedValues:["Enabled","Disabled"]}}}}},PagedLabPlans={type:{name:"Composite",className:"PagedLabPlans",modelProperties:{value:{serializedName:"value",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"LabPlan"}}}},nextLink:{serializedName:"nextLink",readOnly:!0,type:{name:"String"}}}}},LabPlanUpdateProperties={type:{name:"Composite",className:"LabPlanUpdateProperties",modelProperties:{defaultConnectionProfile:{serializedName:"defaultConnectionProfile",type:{name:"Composite",className:"ConnectionProfile"}},defaultAutoShutdownProfile:{serializedName:"defaultAutoShutdownProfile",type:{name:"Composite",className:"AutoShutdownProfile"}},defaultNetworkProfile:{serializedName:"defaultNetworkProfile",type:{name:"Composite",className:"LabPlanNetworkProfile"}},allowedRegions:{serializedName:"allowedRegions",type:{name:"Sequence",element:{type:{name:"String"}}}},sharedGalleryId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"sharedGalleryId",type:{name:"String"}},supportInfo:{serializedName:"supportInfo",type:{name:"Composite",className:"SupportInfo"}},linkedLmsInstance:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"linkedLmsInstance",type:{name:"String"}}}}},ConnectionProfile={type:{name:"Composite",className:"ConnectionProfile",modelProperties:{webSshAccess:{serializedName:"webSshAccess",type:{name:"Enum",allowedValues:["Public","Private","None"]}},webRdpAccess:{serializedName:"webRdpAccess",type:{name:"Enum",allowedValues:["Public","Private","None"]}},clientSshAccess:{serializedName:"clientSshAccess",type:{name:"Enum",allowedValues:["Public","Private","None"]}},clientRdpAccess:{serializedName:"clientRdpAccess",type:{name:"Enum",allowedValues:["Public","Private","None"]}}}}},AutoShutdownProfile={type:{name:"Composite",className:"AutoShutdownProfile",modelProperties:{shutdownOnDisconnect:{serializedName:"shutdownOnDisconnect",type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},shutdownWhenNotConnected:{serializedName:"shutdownWhenNotConnected",type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},shutdownOnIdle:{serializedName:"shutdownOnIdle",type:{name:"Enum",allowedValues:["None","UserAbsence","LowUsage"]}},disconnectDelay:{serializedName:"disconnectDelay",type:{name:"TimeSpan"}},noConnectDelay:{serializedName:"noConnectDelay",type:{name:"TimeSpan"}},idleDelay:{serializedName:"idleDelay",type:{name:"TimeSpan"}}}}},LabPlanNetworkProfile={type:{name:"Composite",className:"LabPlanNetworkProfile",modelProperties:{subnetId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"subnetId",type:{name:"String"}}}}},SupportInfo={type:{name:"Composite",className:"SupportInfo",modelProperties:{url:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"url",type:{name:"String"}},email:{constraints:{MaxLength:254,MinLength:6},serializedName:"email",type:{name:"String"}},phone:{constraints:{MaxLength:31,MinLength:1},serializedName:"phone",type:{name:"String"}},instructions:{serializedName:"instructions",type:{name:"String"}}}}},Identity={type:{name:"Composite",className:"Identity",modelProperties:{principalId:{serializedName:"principalId",readOnly:!0,type:{name:"String"}},tenantId:{serializedName:"tenantId",readOnly:!0,type:{name:"String"}},type:{defaultValue:"SystemAssigned",isConstant:!0,serializedName:"type",type:{name:"String"}}}}},TrackedResourceUpdate={type:{name:"Composite",className:"TrackedResourceUpdate",modelProperties:{tags:{serializedName:"tags",type:{name:"Sequence",element:{type:{name:"String"}}}}}}},SaveImageBody={type:{name:"Composite",className:"SaveImageBody",modelProperties:{name:{serializedName:"name",type:{name:"String"}},labVirtualMachineId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"labVirtualMachineId",type:{name:"String"}}}}},OperationListResult={type:{name:"Composite",className:"OperationListResult",modelProperties:{value:{serializedName:"value",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"Operation"}}}},nextLink:{serializedName:"nextLink",readOnly:!0,type:{name:"String"}}}}},Operation={type:{name:"Composite",className:"Operation",modelProperties:{name:{serializedName:"name",readOnly:!0,type:{name:"String"}},isDataAction:{serializedName:"isDataAction",readOnly:!0,type:{name:"Boolean"}},display:{serializedName:"display",type:{name:"Composite",className:"OperationDisplay"}},origin:{serializedName:"origin",readOnly:!0,type:{name:"String"}},actionType:{serializedName:"actionType",readOnly:!0,type:{name:"String"}}}}},OperationDisplay={type:{name:"Composite",className:"OperationDisplay",modelProperties:{provider:{serializedName:"provider",readOnly:!0,type:{name:"String"}},resource:{serializedName:"resource",readOnly:!0,type:{name:"String"}},operation:{serializedName:"operation",readOnly:!0,type:{name:"String"}},description:{serializedName:"description",readOnly:!0,type:{name:"String"}}}}},PagedLabs={type:{name:"Composite",className:"PagedLabs",modelProperties:{value:{serializedName:"value",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"Lab"}}}},nextLink:{serializedName:"nextLink",readOnly:!0,type:{name:"String"}}}}},LabNetworkProfile={type:{name:"Composite",className:"LabNetworkProfile",modelProperties:{subnetId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"subnetId",type:{name:"String"}},loadBalancerId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"loadBalancerId",type:{name:"String"}},publicIpId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"publicIpId",type:{name:"String"}}}}},LabUpdateProperties={type:{name:"Composite",className:"LabUpdateProperties",modelProperties:{autoShutdownProfile:{serializedName:"autoShutdownProfile",type:{name:"Composite",className:"AutoShutdownProfile"}},connectionProfile:{serializedName:"connectionProfile",type:{name:"Composite",className:"ConnectionProfile"}},virtualMachineProfile:{serializedName:"virtualMachineProfile",type:{name:"Composite",className:"VirtualMachineProfile"}},securityProfile:{serializedName:"securityProfile",type:{name:"Composite",className:"SecurityProfile"}},rosterProfile:{serializedName:"rosterProfile",type:{name:"Composite",className:"RosterProfile"}},labPlanId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"labPlanId",type:{name:"String"}},title:{constraints:{MaxLength:120,MinLength:1},serializedName:"title",type:{name:"String"}},description:{serializedName:"description",type:{name:"String"}}}}},VirtualMachineProfile={type:{name:"Composite",className:"VirtualMachineProfile",modelProperties:{createOption:{serializedName:"createOption",required:!0,type:{name:"Enum",allowedValues:["Image","TemplateVM"]}},imageReference:{serializedName:"imageReference",type:{name:"Composite",className:"ImageReference"}},osType:{serializedName:"osType",readOnly:!0,type:{name:"Enum",allowedValues:["Windows","Linux"]}},sku:{serializedName:"sku",type:{name:"Composite",className:"Sku"}},additionalCapabilities:{serializedName:"additionalCapabilities",type:{name:"Composite",className:"VirtualMachineAdditionalCapabilities"}},usageQuota:{serializedName:"usageQuota",required:!0,type:{name:"TimeSpan"}},useSharedPassword:{serializedName:"useSharedPassword",type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},adminUser:{serializedName:"adminUser",type:{name:"Composite",className:"Credentials"}},nonAdminUser:{serializedName:"nonAdminUser",type:{name:"Composite",className:"Credentials"}}}}},ImageReference={type:{name:"Composite",className:"ImageReference",modelProperties:{id:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"id",type:{name:"String"}},offer:{serializedName:"offer",type:{name:"String"}},publisher:{serializedName:"publisher",type:{name:"String"}},sku:{serializedName:"sku",type:{name:"String"}},version:{serializedName:"version",type:{name:"String"}},exactVersion:{serializedName:"exactVersion",readOnly:!0,type:{name:"String"}}}}},Sku={type:{name:"Composite",className:"Sku",modelProperties:{name:{serializedName:"name",required:!0,type:{name:"String"}},tier:{serializedName:"tier",type:{name:"Enum",allowedValues:["Free","Basic","Standard","Premium"]}},size:{serializedName:"size",type:{name:"String"}},family:{serializedName:"family",type:{name:"String"}},capacity:{serializedName:"capacity",type:{name:"Number"}}}}},VirtualMachineAdditionalCapabilities={type:{name:"Composite",className:"VirtualMachineAdditionalCapabilities",modelProperties:{installGpuDrivers:{serializedName:"installGpuDrivers",type:{name:"Enum",allowedValues:["Enabled","Disabled"]}}}}},Credentials={type:{name:"Composite",className:"Credentials",modelProperties:{username:{serializedName:"username",required:!0,type:{name:"String"}},password:{serializedName:"password",type:{name:"String"}}}}},SecurityProfile={type:{name:"Composite",className:"SecurityProfile",modelProperties:{registrationCode:{serializedName:"registrationCode",readOnly:!0,type:{name:"String"}},openAccess:{serializedName:"openAccess",type:{name:"Enum",allowedValues:["Enabled","Disabled"]}}}}},RosterProfile={type:{name:"Composite",className:"RosterProfile",modelProperties:{activeDirectoryGroupId:{serializedName:"activeDirectoryGroupId",type:{name:"String"}},ltiContextId:{serializedName:"ltiContextId",type:{name:"String"}},lmsInstance:{serializedName:"lmsInstance",type:{name:"String"}},ltiClientId:{serializedName:"ltiClientId",type:{name:"String"}},ltiRosterEndpoint:{serializedName:"ltiRosterEndpoint",type:{name:"String"}}}}},OperationResult={type:{name:"Composite",className:"OperationResult",modelProperties:{id:{serializedName:"id",readOnly:!0,type:{name:"String"}},name:{serializedName:"name",readOnly:!0,type:{name:"String"}},status:{serializedName:"status",required:!0,type:{name:"Enum",allowedValues:["NotStarted","InProgress","Succeeded","Failed","Canceled"]}},startTime:{serializedName:"startTime",type:{name:"DateTime"}},endTime:{serializedName:"endTime",type:{name:"DateTime"}},percentComplete:{serializedName:"percentComplete",type:{name:"Number"}},error:{serializedName:"error",type:{name:"Composite",className:"ErrorDetail"}}}}},PagedSchedules={type:{name:"Composite",className:"PagedSchedules",modelProperties:{value:{serializedName:"value",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"Schedule"}}}},nextLink:{serializedName:"nextLink",readOnly:!0,type:{name:"String"}}}}},ScheduleUpdateProperties={type:{name:"Composite",className:"ScheduleUpdateProperties",modelProperties:{startAt:{serializedName:"startAt",type:{name:"DateTime"}},stopAt:{serializedName:"stopAt",type:{name:"DateTime"}},recurrencePattern:{serializedName:"recurrencePattern",type:{name:"Composite",className:"RecurrencePattern"}},timeZoneId:{constraints:{MaxLength:50},serializedName:"timeZoneId",type:{name:"String"}},notes:{constraints:{MaxLength:1e3},serializedName:"notes",type:{name:"String"}}}}},RecurrencePattern={type:{name:"Composite",className:"RecurrencePattern",modelProperties:{frequency:{serializedName:"frequency",required:!0,type:{name:"Enum",allowedValues:["Daily","Weekly"]}},weekDays:{serializedName:"weekDays",type:{name:"Sequence",element:{type:{name:"Enum",allowedValues:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]}}}},interval:{constraints:{InclusiveMaximum:365,InclusiveMinimum:1},serializedName:"interval",type:{name:"Number"}},expirationDate:{serializedName:"expirationDate",required:!0,type:{name:"DateTime"}}}}},ScheduleUpdate={type:{name:"Composite",className:"ScheduleUpdate",modelProperties:{startAt:{serializedName:"properties.startAt",type:{name:"DateTime"}},stopAt:{serializedName:"properties.stopAt",type:{name:"DateTime"}},recurrencePattern:{serializedName:"properties.recurrencePattern",type:{name:"Composite",className:"RecurrencePattern"}},timeZoneId:{constraints:{MaxLength:50},serializedName:"properties.timeZoneId",type:{name:"String"}},notes:{constraints:{MaxLength:1e3},serializedName:"properties.notes",type:{name:"String"}}}}},PagedLabServicesSkus={type:{name:"Composite",className:"PagedLabServicesSkus",modelProperties:{value:{serializedName:"value",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"LabServicesSku"}}}},nextLink:{serializedName:"nextLink",readOnly:!0,type:{name:"String"}}}}},LabServicesSku={type:{name:"Composite",className:"LabServicesSku",modelProperties:{resourceType:{serializedName:"resourceType",readOnly:!0,type:{name:"String"}},name:{serializedName:"name",readOnly:!0,type:{name:"String"}},tier:{serializedName:"tier",readOnly:!0,type:{name:"String"}},size:{serializedName:"size",readOnly:!0,type:{name:"String"}},family:{serializedName:"family",readOnly:!0,type:{name:"String"}},capacity:{serializedName:"capacity",type:{name:"Composite",className:"LabServicesSkuCapacity"}},capabilities:{serializedName:"capabilities",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"LabServicesSkuCapabilities"}}}},locations:{serializedName:"locations",readOnly:!0,type:{name:"Sequence",element:{type:{name:"String"}}}},costs:{serializedName:"costs",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"LabServicesSkuCost"}}}},restrictions:{serializedName:"restrictions",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"LabServicesSkuRestrictions"}}}}}}},LabServicesSkuCapacity={type:{name:"Composite",className:"LabServicesSkuCapacity",modelProperties:{default:{serializedName:"default",readOnly:!0,type:{name:"Number"}},minimum:{serializedName:"minimum",readOnly:!0,type:{name:"Number"}},maximum:{serializedName:"maximum",readOnly:!0,type:{name:"Number"}},scaleType:{serializedName:"scaleType",readOnly:!0,type:{name:"String"}}}}},LabServicesSkuCapabilities={type:{name:"Composite",className:"LabServicesSkuCapabilities",modelProperties:{name:{serializedName:"name",readOnly:!0,type:{name:"String"}},value:{serializedName:"value",readOnly:!0,type:{name:"String"}}}}},LabServicesSkuCost={type:{name:"Composite",className:"LabServicesSkuCost",modelProperties:{meterId:{serializedName:"meterId",readOnly:!0,type:{name:"String"}},quantity:{serializedName:"quantity",readOnly:!0,type:{name:"Number"}},extendedUnit:{serializedName:"extendedUnit",readOnly:!0,type:{name:"String"}}}}},LabServicesSkuRestrictions={type:{name:"Composite",className:"LabServicesSkuRestrictions",modelProperties:{type:{serializedName:"type",readOnly:!0,type:{name:"String"}},values:{serializedName:"values",readOnly:!0,type:{name:"Sequence",element:{type:{name:"String"}}}},reasonCode:{serializedName:"reasonCode",readOnly:!0,type:{name:"String"}}}}},ListUsagesResult={type:{name:"Composite",className:"ListUsagesResult",modelProperties:{value:{serializedName:"value",type:{name:"Sequence",element:{type:{name:"Composite",className:"Usage"}}}},nextLink:{serializedName:"nextLink",readOnly:!0,type:{name:"String"}}}}},Usage={type:{name:"Composite",className:"Usage",modelProperties:{currentValue:{serializedName:"currentValue",type:{name:"Number"}},limit:{serializedName:"limit",type:{name:"Number"}},unit:{serializedName:"unit",type:{name:"String"}},name:{serializedName:"name",type:{name:"Composite",className:"UsageName"}},id:{serializedName:"id",type:{name:"String"}}}}},UsageName={type:{name:"Composite",className:"UsageName",modelProperties:{localizedValue:{serializedName:"localizedValue",type:{name:"String"}},skuInstances:{serializedName:"skuInstances",type:{name:"Sequence",element:{type:{name:"String"}}}},value:{serializedName:"value",type:{name:"String"}}}}},PagedUsers={type:{name:"Composite",className:"PagedUsers",modelProperties:{value:{serializedName:"value",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"User"}}}},nextLink:{serializedName:"nextLink",readOnly:!0,type:{name:"String"}}}}},UserUpdateProperties={type:{name:"Composite",className:"UserUpdateProperties",modelProperties:{additionalUsageQuota:{serializedName:"additionalUsageQuota",type:{name:"TimeSpan"}}}}},UserUpdate={type:{name:"Composite",className:"UserUpdate",modelProperties:{additionalUsageQuota:{serializedName:"properties.additionalUsageQuota",type:{name:"TimeSpan"}}}}},InviteBody={type:{name:"Composite",className:"InviteBody",modelProperties:{text:{serializedName:"text",type:{name:"String"}}}}},PagedVirtualMachines={type:{name:"Composite",className:"PagedVirtualMachines",modelProperties:{value:{serializedName:"value",readOnly:!0,type:{name:"Sequence",element:{type:{name:"Composite",className:"VirtualMachine"}}}},nextLink:{serializedName:"nextLink",readOnly:!0,type:{name:"String"}}}}},VirtualMachineConnectionProfile={type:{name:"Composite",className:"VirtualMachineConnectionProfile",modelProperties:{privateIpAddress:{serializedName:"privateIpAddress",readOnly:!0,type:{name:"String"}},sshAuthority:{serializedName:"sshAuthority",readOnly:!0,type:{name:"String"}},sshInBrowserUrl:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"sshInBrowserUrl",readOnly:!0,type:{name:"String"}},rdpAuthority:{serializedName:"rdpAuthority",readOnly:!0,type:{name:"String"}},rdpInBrowserUrl:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"rdpInBrowserUrl",readOnly:!0,type:{name:"String"}},adminUsername:{serializedName:"adminUsername",readOnly:!0,type:{name:"String"}},nonAdminUsername:{serializedName:"nonAdminUsername",readOnly:!0,type:{name:"String"}}}}},ResetPasswordBody={type:{name:"Composite",className:"ResetPasswordBody",modelProperties:{username:{serializedName:"username",required:!0,type:{name:"String"}},password:{serializedName:"password",required:!0,type:{name:"String"}}}}},ImageProperties={type:{name:"Composite",className:"ImageProperties",modelProperties:Object.assign(Object.assign({},ImageUpdateProperties.type.modelProperties),{provisioningState:{serializedName:"provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}},displayName:{serializedName:"displayName",readOnly:!0,type:{name:"String"}},description:{serializedName:"description",readOnly:!0,type:{name:"String"}},iconUrl:{serializedName:"iconUrl",readOnly:!0,type:{name:"String"}},author:{serializedName:"author",readOnly:!0,type:{name:"String"}},osType:{serializedName:"osType",readOnly:!0,type:{name:"Enum",allowedValues:["Windows","Linux"]}},plan:{serializedName:"plan",readOnly:!0,type:{name:"String"}},termsStatus:{serializedName:"termsStatus",readOnly:!0,type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},offer:{serializedName:"offer",readOnly:!0,type:{name:"String"}},publisher:{serializedName:"publisher",readOnly:!0,type:{name:"String"}},sku:{serializedName:"sku",readOnly:!0,type:{name:"String"}},version:{serializedName:"version",readOnly:!0,type:{name:"String"}},sharedGalleryId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"sharedGalleryId",readOnly:!0,type:{name:"String"}},availableRegions:{serializedName:"availableRegions",type:{name:"Sequence",element:{type:{name:"String"}}}},osState:{serializedName:"osState",readOnly:!0,type:{name:"Enum",allowedValues:["Generalized","Specialized"]}}})}},ProxyResource={type:{name:"Composite",className:"ProxyResource",modelProperties:Object.assign({},Resource.type.modelProperties)}},TrackedResource={type:{name:"Composite",className:"TrackedResource",modelProperties:Object.assign(Object.assign({},Resource.type.modelProperties),{tags:{serializedName:"tags",type:{name:"Dictionary",value:{type:{name:"String"}}}},location:{serializedName:"location",required:!0,type:{name:"String"}}})}},LabPlanProperties={type:{name:"Composite",className:"LabPlanProperties",modelProperties:Object.assign(Object.assign({},LabPlanUpdateProperties.type.modelProperties),{provisioningState:{serializedName:"provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}}})}},LabPlanUpdate={type:{name:"Composite",className:"LabPlanUpdate",modelProperties:Object.assign(Object.assign({},TrackedResourceUpdate.type.modelProperties),{identity:{serializedName:"identity",type:{name:"Composite",className:"Identity"}},defaultConnectionProfile:{serializedName:"properties.defaultConnectionProfile",type:{name:"Composite",className:"ConnectionProfile"}},defaultAutoShutdownProfile:{serializedName:"properties.defaultAutoShutdownProfile",type:{name:"Composite",className:"AutoShutdownProfile"}},defaultNetworkProfile:{serializedName:"properties.defaultNetworkProfile",type:{name:"Composite",className:"LabPlanNetworkProfile"}},allowedRegions:{serializedName:"properties.allowedRegions",type:{name:"Sequence",element:{type:{name:"String"}}}},sharedGalleryId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"properties.sharedGalleryId",type:{name:"String"}},supportInfo:{serializedName:"properties.supportInfo",type:{name:"Composite",className:"SupportInfo"}},linkedLmsInstance:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"properties.linkedLmsInstance",type:{name:"String"}}})}},LabUpdate={type:{name:"Composite",className:"LabUpdate",modelProperties:Object.assign(Object.assign({},TrackedResourceUpdate.type.modelProperties),{autoShutdownProfile:{serializedName:"properties.autoShutdownProfile",type:{name:"Composite",className:"AutoShutdownProfile"}},connectionProfile:{serializedName:"properties.connectionProfile",type:{name:"Composite",className:"ConnectionProfile"}},virtualMachineProfile:{serializedName:"properties.virtualMachineProfile",type:{name:"Composite",className:"VirtualMachineProfile"}},securityProfile:{serializedName:"properties.securityProfile",type:{name:"Composite",className:"SecurityProfile"}},rosterProfile:{serializedName:"properties.rosterProfile",type:{name:"Composite",className:"RosterProfile"}},labPlanId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"properties.labPlanId",type:{name:"String"}},title:{constraints:{MaxLength:120,MinLength:1},serializedName:"properties.title",type:{name:"String"}},description:{serializedName:"properties.description",type:{name:"String"}}})}},LabProperties={type:{name:"Composite",className:"LabProperties",modelProperties:Object.assign(Object.assign({},LabUpdateProperties.type.modelProperties),{provisioningState:{serializedName:"provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}},networkProfile:{serializedName:"networkProfile",type:{name:"Composite",className:"LabNetworkProfile"}},state:{serializedName:"state",readOnly:!0,type:{name:"Enum",allowedValues:["Draft","Publishing","Scaling","Syncing","Published"]}}})}},ScheduleProperties={type:{name:"Composite",className:"ScheduleProperties",modelProperties:Object.assign(Object.assign({},ScheduleUpdateProperties.type.modelProperties),{provisioningState:{serializedName:"provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}}})}},UserProperties={type:{name:"Composite",className:"UserProperties",modelProperties:Object.assign(Object.assign({},UserUpdateProperties.type.modelProperties),{provisioningState:{serializedName:"provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}},displayName:{serializedName:"displayName",readOnly:!0,type:{name:"String"}},email:{constraints:{MaxLength:254,MinLength:6},serializedName:"email",required:!0,type:{name:"String"}},registrationState:{serializedName:"registrationState",readOnly:!0,type:{name:"Enum",allowedValues:["Registered","NotRegistered"]}},invitationState:{serializedName:"invitationState",readOnly:!0,type:{name:"Enum",allowedValues:["NotSent","Sending","Sent","Failed"]}},invitationSent:{serializedName:"invitationSent",readOnly:!0,type:{name:"DateTime"}},totalUsage:{serializedName:"totalUsage",readOnly:!0,type:{name:"TimeSpan"}}})}},Image={type:{name:"Composite",className:"Image",modelProperties:Object.assign(Object.assign({},ProxyResource.type.modelProperties),{systemData:{serializedName:"systemData",type:{name:"Composite",className:"SystemData"}},enabledState:{serializedName:"properties.enabledState",type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},provisioningState:{serializedName:"properties.provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}},displayName:{serializedName:"properties.displayName",readOnly:!0,type:{name:"String"}},description:{serializedName:"properties.description",readOnly:!0,type:{name:"String"}},iconUrl:{serializedName:"properties.iconUrl",readOnly:!0,type:{name:"String"}},author:{serializedName:"properties.author",readOnly:!0,type:{name:"String"}},osType:{serializedName:"properties.osType",readOnly:!0,type:{name:"Enum",allowedValues:["Windows","Linux"]}},plan:{serializedName:"properties.plan",readOnly:!0,type:{name:"String"}},termsStatus:{serializedName:"properties.termsStatus",readOnly:!0,type:{name:"Enum",allowedValues:["Enabled","Disabled"]}},offer:{serializedName:"properties.offer",readOnly:!0,type:{name:"String"}},publisher:{serializedName:"properties.publisher",readOnly:!0,type:{name:"String"}},sku:{serializedName:"properties.sku",readOnly:!0,type:{name:"String"}},version:{serializedName:"properties.version",readOnly:!0,type:{name:"String"}},sharedGalleryId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"properties.sharedGalleryId",readOnly:!0,type:{name:"String"}},availableRegions:{serializedName:"properties.availableRegions",type:{name:"Sequence",element:{type:{name:"String"}}}},osState:{serializedName:"properties.osState",readOnly:!0,type:{name:"Enum",allowedValues:["Generalized","Specialized"]}}})}},Schedule={type:{name:"Composite",className:"Schedule",modelProperties:Object.assign(Object.assign({},ProxyResource.type.modelProperties),{systemData:{serializedName:"systemData",type:{name:"Composite",className:"SystemData"}},startAt:{serializedName:"properties.startAt",type:{name:"DateTime"}},stopAt:{serializedName:"properties.stopAt",type:{name:"DateTime"}},recurrencePattern:{serializedName:"properties.recurrencePattern",type:{name:"Composite",className:"RecurrencePattern"}},timeZoneId:{constraints:{MaxLength:50},serializedName:"properties.timeZoneId",type:{name:"String"}},notes:{constraints:{MaxLength:1e3},serializedName:"properties.notes",type:{name:"String"}},provisioningState:{serializedName:"properties.provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}}})}},User={type:{name:"Composite",className:"User",modelProperties:Object.assign(Object.assign({},ProxyResource.type.modelProperties),{systemData:{serializedName:"systemData",type:{name:"Composite",className:"SystemData"}},additionalUsageQuota:{serializedName:"properties.additionalUsageQuota",type:{name:"TimeSpan"}},provisioningState:{serializedName:"properties.provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}},displayName:{serializedName:"properties.displayName",readOnly:!0,type:{name:"String"}},email:{constraints:{MaxLength:254,MinLength:6},serializedName:"properties.email",required:!0,type:{name:"String"}},registrationState:{serializedName:"properties.registrationState",readOnly:!0,type:{name:"Enum",allowedValues:["Registered","NotRegistered"]}},invitationState:{serializedName:"properties.invitationState",readOnly:!0,type:{name:"Enum",allowedValues:["NotSent","Sending","Sent","Failed"]}},invitationSent:{serializedName:"properties.invitationSent",readOnly:!0,type:{name:"DateTime"}},totalUsage:{serializedName:"properties.totalUsage",readOnly:!0,type:{name:"TimeSpan"}}})}},VirtualMachine={type:{name:"Composite",className:"VirtualMachine",modelProperties:Object.assign(Object.assign({},ProxyResource.type.modelProperties),{systemData:{serializedName:"systemData",type:{name:"Composite",className:"SystemData"}},provisioningState:{serializedName:"properties.provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}},state:{serializedName:"properties.state",readOnly:!0,type:{name:"Enum",allowedValues:["Stopped","Starting","Running","Stopping","ResettingPassword","Reimaging","Redeploying"]}},connectionProfile:{serializedName:"properties.connectionProfile",type:{name:"Composite",className:"VirtualMachineConnectionProfile"}},claimedByUserId:{serializedName:"properties.claimedByUserId",readOnly:!0,type:{name:"String"}},vmType:{serializedName:"properties.vmType",readOnly:!0,type:{name:"Enum",allowedValues:["User","Template"]}}})}},LabPlan={type:{name:"Composite",className:"LabPlan",modelProperties:Object.assign(Object.assign({},TrackedResource.type.modelProperties),{systemData:{serializedName:"systemData",type:{name:"Composite",className:"SystemData"}},identity:{serializedName:"identity",type:{name:"Composite",className:"Identity"}},defaultConnectionProfile:{serializedName:"properties.defaultConnectionProfile",type:{name:"Composite",className:"ConnectionProfile"}},defaultAutoShutdownProfile:{serializedName:"properties.defaultAutoShutdownProfile",type:{name:"Composite",className:"AutoShutdownProfile"}},defaultNetworkProfile:{serializedName:"properties.defaultNetworkProfile",type:{name:"Composite",className:"LabPlanNetworkProfile"}},allowedRegions:{serializedName:"properties.allowedRegions",type:{name:"Sequence",element:{type:{name:"String"}}}},sharedGalleryId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"properties.sharedGalleryId",type:{name:"String"}},supportInfo:{serializedName:"properties.supportInfo",type:{name:"Composite",className:"SupportInfo"}},linkedLmsInstance:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"properties.linkedLmsInstance",type:{name:"String"}},provisioningState:{serializedName:"properties.provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}}})}},Lab={type:{name:"Composite",className:"Lab",modelProperties:Object.assign(Object.assign({},TrackedResource.type.modelProperties),{systemData:{serializedName:"systemData",type:{name:"Composite",className:"SystemData"}},autoShutdownProfile:{serializedName:"properties.autoShutdownProfile",type:{name:"Composite",className:"AutoShutdownProfile"}},connectionProfile:{serializedName:"properties.connectionProfile",type:{name:"Composite",className:"ConnectionProfile"}},virtualMachineProfile:{serializedName:"properties.virtualMachineProfile",type:{name:"Composite",className:"VirtualMachineProfile"}},securityProfile:{serializedName:"properties.securityProfile",type:{name:"Composite",className:"SecurityProfile"}},rosterProfile:{serializedName:"properties.rosterProfile",type:{name:"Composite",className:"RosterProfile"}},labPlanId:{constraints:{MaxLength:2e3,MinLength:3},serializedName:"properties.labPlanId",type:{name:"String"}},title:{constraints:{MaxLength:120,MinLength:1},serializedName:"properties.title",type:{name:"String"}},description:{serializedName:"properties.description",type:{name:"String"}},provisioningState:{serializedName:"properties.provisioningState",readOnly:!0,type:{name:"Enum",allowedValues:["Creating","Updating","Deleting","Succeeded","Failed","Locked"]}},networkProfile:{serializedName:"properties.networkProfile",type:{name:"Composite",className:"LabNetworkProfile"}},state:{serializedName:"properties.state",readOnly:!0,type:{name:"Enum",allowedValues:["Draft","Publishing","Scaling","Syncing","Published"]}}})}};var Mappers=Object.freeze({__proto__:null,AutoShutdownProfile:AutoShutdownProfile,ConnectionProfile:ConnectionProfile,Credentials:Credentials,ErrorAdditionalInfo:ErrorAdditionalInfo,ErrorDetail:ErrorDetail,ErrorResponse:ErrorResponse,Identity:Identity,Image:Image,ImageProperties:ImageProperties,ImageReference:ImageReference,ImageUpdate:ImageUpdate,ImageUpdateProperties:ImageUpdateProperties,InviteBody:InviteBody,Lab:Lab,LabNetworkProfile:LabNetworkProfile,LabPlan:LabPlan,LabPlanNetworkProfile:LabPlanNetworkProfile,LabPlanProperties:LabPlanProperties,LabPlanUpdate:LabPlanUpdate,LabPlanUpdateProperties:LabPlanUpdateProperties,LabProperties:LabProperties,LabServicesSku:LabServicesSku,LabServicesSkuCapabilities:LabServicesSkuCapabilities,LabServicesSkuCapacity:LabServicesSkuCapacity,LabServicesSkuCost:LabServicesSkuCost,LabServicesSkuRestrictions:LabServicesSkuRestrictions,LabUpdate:LabUpdate,LabUpdateProperties:LabUpdateProperties,ListUsagesResult:ListUsagesResult,Operation:Operation,OperationDisplay:OperationDisplay,OperationListResult:OperationListResult,OperationResult:OperationResult,PagedImages:PagedImages,PagedLabPlans:PagedLabPlans,PagedLabServicesSkus:PagedLabServicesSkus,PagedLabs:PagedLabs,PagedSchedules:PagedSchedules,PagedUsers:PagedUsers,PagedVirtualMachines:PagedVirtualMachines,ProxyResource:ProxyResource,RecurrencePattern:RecurrencePattern,ResetPasswordBody:ResetPasswordBody,Resource:Resource,RosterProfile:RosterProfile,SaveImageBody:SaveImageBody,Schedule:Schedule,ScheduleProperties:ScheduleProperties,ScheduleUpdate:ScheduleUpdate,ScheduleUpdateProperties:ScheduleUpdateProperties,SecurityProfile:SecurityProfile,Sku:Sku,SupportInfo:SupportInfo,SystemData:SystemData,TrackedResource:TrackedResource,TrackedResourceUpdate:TrackedResourceUpdate,Usage:Usage,UsageName:UsageName,User:User,UserProperties:UserProperties,UserUpdate:UserUpdate,UserUpdateProperties:UserUpdateProperties,VirtualMachine:VirtualMachine,VirtualMachineAdditionalCapabilities:VirtualMachineAdditionalCapabilities,VirtualMachineConnectionProfile:VirtualMachineConnectionProfile,VirtualMachineProfile:VirtualMachineProfile});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},apiVersion={parameterPath:"apiVersion",mapper:{defaultValue:"2022-08-01",isConstant:!0,serializedName:"api-version",type:{name:"String"}}},subscriptionId={parameterPath:"subscriptionId",mapper:{constraints:{MinLength:1},serializedName:"subscriptionId",required:!0,type:{name:"String"}}},resourceGroupName={parameterPath:"resourceGroupName",mapper:{constraints:{MaxLength:90,MinLength:1},serializedName:"resourceGroupName",required:!0,type:{name:"String"}}},labPlanName={parameterPath:"labPlanName",mapper:{constraints:{MaxLength:100,MinLength:1},serializedName:"labPlanName",required:!0,type:{name:"String"}}},filter={parameterPath:["options","filter"],mapper:{serializedName:"$filter",type:{name:"String"}}},imageName={parameterPath:"imageName",mapper:{constraints:{Pattern:new RegExp("^[-\\w\\\\._\\\\(\\\\)]+$"),MaxLength:100,MinLength:1},serializedName:"imageName",required:!0,type:{name:"String"}}},contentType={parameterPath:["options","contentType"],mapper:{defaultValue:"application/json",isConstant:!0,serializedName:"Content-Type",type:{name:"String"}}},body={parameterPath:"body",mapper:Image},body1={parameterPath:"body",mapper:ImageUpdate},nextLink={parameterPath:"nextLink",mapper:{serializedName:"nextLink",required:!0,type:{name:"String"}},skipEncoding:!0},body2={parameterPath:"body",mapper:LabPlan},body3={parameterPath:"body",mapper:LabPlanUpdate},body4={parameterPath:"body",mapper:SaveImageBody},labName={parameterPath:"labName",mapper:{constraints:{MaxLength:100,MinLength:1},serializedName:"labName",required:!0,type:{name:"String"}}},body5={parameterPath:"body",mapper:Lab},body6={parameterPath:"body",mapper:LabUpdate},operationResultId={parameterPath:"operationResultId",mapper:{constraints:{Pattern:new RegExp("^[-\\w\\\\._\\\\(\\\\)]+$"),MaxLength:100,MinLength:1},serializedName:"operationResultId",required:!0,type:{name:"String"}}},scheduleName={parameterPath:"scheduleName",mapper:{constraints:{Pattern:new RegExp("^[-\\w\\\\._\\\\(\\\\)]+$"),MaxLength:100,MinLength:1},serializedName:"scheduleName",required:!0,type:{name:"String"}}},body7={parameterPath:"body",mapper:Schedule},body8={parameterPath:"body",mapper:ScheduleUpdate},location={parameterPath:"location",mapper:{constraints:{Pattern:new RegExp("^[-\\w\\._]+$"),MaxLength:100,MinLength:1},serializedName:"location",required:!0,type:{name:"String"}}},userName={parameterPath:"userName",mapper:{constraints:{Pattern:new RegExp("^[-\\w\\\\._\\\\(\\\\)]+$"),MaxLength:100,MinLength:1},serializedName:"userName",required:!0,type:{name:"String"}}},body9={parameterPath:"body",mapper:User},body10={parameterPath:"body",mapper:UserUpdate},body11={parameterPath:"body",mapper:InviteBody},virtualMachineName={parameterPath:"virtualMachineName",mapper:{constraints:{Pattern:new RegExp("^[-\\w\\\\._\\\\(\\\\)]+$"),MaxLength:100,MinLength:1},serializedName:"virtualMachineName",required:!0,type:{name:"String"}}},body12={parameterPath:"body",mapper:ResetPasswordBody};class ImagesImpl{constructor(e){this.client=e}listByLabPlan(a,t,r){let e=this.listByLabPlanPagingAll(a,t,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.listByLabPlanPagingPage(a,t,r,e)}}}listByLabPlanPagingPage(i,s,n,o){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==o?void 0:o.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._listByLabPlan(i,s,n))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listByLabPlanNext(i,s,a,n)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listByLabPlanPagingAll(o,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listByLabPlanPagingPage(o,l,p));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}_listByLabPlan(e,a,t){return this.client.sendOperationRequest({resourceGroupName:e,labPlanName:a,options:t},listByLabPlanOperationSpec)}get(e,a,t,r){return this.client.sendOperationRequest({resourceGroupName:e,labPlanName:a,imageName:t,options:r},getOperationSpec$6)}createOrUpdate(e,a,t,r,i){return this.client.sendOperationRequest({resourceGroupName:e,labPlanName:a,imageName:t,body:r,options:i},createOrUpdateOperationSpec$4)}update(e,a,t,r,i){return this.client.sendOperationRequest({resourceGroupName:e,labPlanName:a,imageName:t,body:r,options:i},updateOperationSpec$4)}_listByLabPlanNext(e,a,t,r){return this.client.sendOperationRequest({resourceGroupName:e,labPlanName:a,nextLink:t,options:r},listByLabPlanNextOperationSpec)}}let serializer$9=coreClient__namespace.createSerializer(Mappers,!1),listByLabPlanOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans/{labPlanName}/images",httpMethod:"GET",responses:{200:{bodyMapper:PagedImages},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,labPlanName],headerParameters:[accept],serializer:serializer$9},getOperationSpec$6={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans/{labPlanName}/images/{imageName}",httpMethod:"GET",responses:{200:{bodyMapper:Image},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labPlanName,imageName],headerParameters:[accept],serializer:serializer$9},createOrUpdateOperationSpec$4={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans/{labPlanName}/images/{imageName}",httpMethod:"PUT",responses:{200:{bodyMapper:Image},default:{bodyMapper:ErrorResponse}},requestBody:body,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labPlanName,imageName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$9},updateOperationSpec$4={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans/{labPlanName}/images/{imageName}",httpMethod:"PATCH",responses:{200:{bodyMapper:Image},default:{bodyMapper:ErrorResponse}},requestBody:body1,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labPlanName,imageName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$9},listByLabPlanNextOperationSpec={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:PagedImages},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,subscriptionId,resourceGroupName,labPlanName,nextLink],headerParameters:[accept],serializer:serializer$9};class LroImpl{constructor(e,a,t,r=t.path,i=t.httpMethod){this.sendOperationFn=e,this.args=a,this.spec=t,this.requestPath=r,this.requestMethod=i}sendInitialRequest(){return tslib.__awaiter(this,void 0,void 0,function*(){return this.sendOperationFn(this.args,this.spec)})}sendPollRequest(a){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:a,httpMethod:"GET"}))})}}class LabPlansImpl{constructor(e){this.client=e}listBySubscription(a){let e=this.listBySubscriptionPagingAll(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.listBySubscriptionPagingPage(a,e)}}}listBySubscriptionPagingPage(i,s){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==s?void 0:s.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._listBySubscription(i))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listBySubscriptionNext(a,i)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listBySubscriptionPagingAll(o){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listBySubscriptionPagingPage(o));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}listByResourceGroup(a,t){let e=this.listByResourceGroupPagingAll(a,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.listByResourceGroupPagingPage(a,t,e)}}}listByResourceGroupPagingPage(i,s,n){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==n?void 0:n.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._listByResourceGroup(i,s))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listByResourceGroupNext(i,a,s)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listByResourceGroupPagingAll(o,l){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listByResourceGroupPagingPage(o,l));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}_listBySubscription(e){return this.client.sendOperationRequest({options:e},listBySubscriptionOperationSpec$1)}_listByResourceGroup(e,a){return this.client.sendOperationRequest({resourceGroupName:e,options:a},listByResourceGroupOperationSpec$1)}get(e,a,t){return this.client.sendOperationRequest({resourceGroupName:e,labPlanName:a,options:t},getOperationSpec$5)}beginCreateOrUpdate(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labPlanName:t,body:r,options:i},createOrUpdateOperationSpec$3),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"original-uri"});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,a,t,r)).pollUntilDone()})}beginUpdate(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labPlanName:t,body:r,options:i},updateOperationSpec$3),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginUpdateAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginUpdate(e,a,t,r)).pollUntilDone()})}beginDelete(a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labPlanName:t,options:r},deleteOperationSpec$3),e=new coreLro.LroEngine(e,{resumeFrom:null==r?void 0:r.resumeFrom,intervalInMs:null==r?void 0:r.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginDeleteAndWait(e,a,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,a,t)).pollUntilDone()})}beginSaveImage(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labPlanName:t,body:r,options:i},saveImageOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginSaveImageAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginSaveImage(e,a,t,r)).pollUntilDone()})}_listBySubscriptionNext(e,a){return this.client.sendOperationRequest({nextLink:e,options:a},listBySubscriptionNextOperationSpec$1)}_listByResourceGroupNext(e,a,t){return this.client.sendOperationRequest({resourceGroupName:e,nextLink:a,options:t},listByResourceGroupNextOperationSpec$1)}}let serializer$8=coreClient__namespace.createSerializer(Mappers,!1),listBySubscriptionOperationSpec$1={path:"/subscriptions/{subscriptionId}/providers/Microsoft.LabServices/labPlans",httpMethod:"GET",responses:{200:{bodyMapper:PagedLabPlans},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId],headerParameters:[accept],serializer:serializer$8},listByResourceGroupOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans",httpMethod:"GET",responses:{200:{bodyMapper:PagedLabPlans},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName],headerParameters:[accept],serializer:serializer$8},getOperationSpec$5={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans/{labPlanName}",httpMethod:"GET",responses:{200:{bodyMapper:LabPlan},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labPlanName],headerParameters:[accept],serializer:serializer$8},createOrUpdateOperationSpec$3={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans/{labPlanName}",httpMethod:"PUT",responses:{200:{bodyMapper:LabPlan},201:{bodyMapper:LabPlan},202:{bodyMapper:LabPlan},204:{bodyMapper:LabPlan},default:{bodyMapper:ErrorResponse}},requestBody:body2,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labPlanName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$8},updateOperationSpec$3={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans/{labPlanName}",httpMethod:"PATCH",responses:{200:{bodyMapper:LabPlan},201:{bodyMapper:LabPlan},202:{bodyMapper:LabPlan},204:{bodyMapper:LabPlan},default:{bodyMapper:ErrorResponse}},requestBody:body3,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labPlanName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$8},deleteOperationSpec$3={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans/{labPlanName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labPlanName],headerParameters:[accept],serializer:serializer$8},saveImageOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labPlans/{labPlanName}/saveImage",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},requestBody:body4,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labPlanName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$8},listBySubscriptionNextOperationSpec$1={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:PagedLabPlans},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,subscriptionId,nextLink],headerParameters:[accept],serializer:serializer$8},listByResourceGroupNextOperationSpec$1={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:PagedLabPlans},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,subscriptionId,resourceGroupName,nextLink],headerParameters:[accept],serializer:serializer$8};class OperationsImpl{constructor(e){this.client=e}list(a){let e=this.listPagingAll(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.listPagingPage(a,e)}}}listPagingPage(i,s){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==s?void 0:s.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._list(i))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listNext(a,i)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listPagingAll(o){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listPagingPage(o));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}_list(e){return this.client.sendOperationRequest({options:e},listOperationSpec$1)}_listNext(e,a){return this.client.sendOperationRequest({nextLink:e,options:a},listNextOperationSpec$1)}}let serializer$7=coreClient__namespace.createSerializer(Mappers,!1),listOperationSpec$1={path:"/providers/Microsoft.LabServices/operations",httpMethod:"GET",responses:{200:{bodyMapper:OperationListResult},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host],headerParameters:[accept],serializer:serializer$7},listNextOperationSpec$1={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:OperationListResult},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,nextLink],headerParameters:[accept],serializer:serializer$7};class LabsImpl{constructor(e){this.client=e}listBySubscription(a){let e=this.listBySubscriptionPagingAll(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.listBySubscriptionPagingPage(a,e)}}}listBySubscriptionPagingPage(i,s){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==s?void 0:s.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._listBySubscription(i))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listBySubscriptionNext(a,i)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listBySubscriptionPagingAll(o){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listBySubscriptionPagingPage(o));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}listByResourceGroup(a,t){let e=this.listByResourceGroupPagingAll(a,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.listByResourceGroupPagingPage(a,t,e)}}}listByResourceGroupPagingPage(i,s,n){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==n?void 0:n.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._listByResourceGroup(i,s))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listByResourceGroupNext(i,a,s)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listByResourceGroupPagingAll(o,l){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listByResourceGroupPagingPage(o,l));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}_listBySubscription(e){return this.client.sendOperationRequest({options:e},listBySubscriptionOperationSpec)}_listByResourceGroup(e,a){return this.client.sendOperationRequest({resourceGroupName:e,options:a},listByResourceGroupOperationSpec)}get(e,a,t){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,options:t},getOperationSpec$4)}beginCreateOrUpdate(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,body:r,options:i},createOrUpdateOperationSpec$2),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"original-uri"});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,a,t,r)).pollUntilDone()})}beginUpdate(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,body:r,options:i},updateOperationSpec$2),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginUpdateAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginUpdate(e,a,t,r)).pollUntilDone()})}beginDelete(a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,options:r},deleteOperationSpec$2),e=new coreLro.LroEngine(e,{resumeFrom:null==r?void 0:r.resumeFrom,intervalInMs:null==r?void 0:r.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginDeleteAndWait(e,a,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,a,t)).pollUntilDone()})}beginPublish(a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,options:r},publishOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==r?void 0:r.resumeFrom,intervalInMs:null==r?void 0:r.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginPublishAndWait(e,a,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginPublish(e,a,t)).pollUntilDone()})}beginSyncGroup(a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,options:r},syncGroupOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==r?void 0:r.resumeFrom,intervalInMs:null==r?void 0:r.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginSyncGroupAndWait(e,a,t){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginSyncGroup(e,a,t)).pollUntilDone()})}_listBySubscriptionNext(e,a){return this.client.sendOperationRequest({nextLink:e,options:a},listBySubscriptionNextOperationSpec)}_listByResourceGroupNext(e,a,t){return this.client.sendOperationRequest({resourceGroupName:e,nextLink:a,options:t},listByResourceGroupNextOperationSpec)}}let serializer$6=coreClient__namespace.createSerializer(Mappers,!1),listBySubscriptionOperationSpec={path:"/subscriptions/{subscriptionId}/providers/Microsoft.LabServices/labs",httpMethod:"GET",responses:{200:{bodyMapper:PagedLabs},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId],headerParameters:[accept],serializer:serializer$6},listByResourceGroupOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs",httpMethod:"GET",responses:{200:{bodyMapper:PagedLabs},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName],headerParameters:[accept],serializer:serializer$6},getOperationSpec$4={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}",httpMethod:"GET",responses:{200:{bodyMapper:Lab},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName],headerParameters:[accept],serializer:serializer$6},createOrUpdateOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}",httpMethod:"PUT",responses:{200:{bodyMapper:Lab},201:{bodyMapper:Lab},202:{bodyMapper:Lab},204:{bodyMapper:Lab},default:{bodyMapper:ErrorResponse}},requestBody:body5,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$6},updateOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}",httpMethod:"PATCH",responses:{200:{bodyMapper:Lab},201:{bodyMapper:Lab},202:{bodyMapper:Lab},204:{bodyMapper:Lab},default:{bodyMapper:ErrorResponse}},requestBody:body6,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$6},deleteOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName],headerParameters:[accept],serializer:serializer$6},publishOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/publish",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName],headerParameters:[accept],serializer:serializer$6},syncGroupOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/syncGroup",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName],headerParameters:[accept],serializer:serializer$6},listBySubscriptionNextOperationSpec={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:PagedLabs},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,subscriptionId,nextLink],headerParameters:[accept],serializer:serializer$6},listByResourceGroupNextOperationSpec={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:PagedLabs},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,subscriptionId,resourceGroupName,nextLink],headerParameters:[accept],serializer:serializer$6};class OperationResultsImpl{constructor(e){this.client=e}get(e,a){return this.client.sendOperationRequest({operationResultId:e,options:a},getOperationSpec$3)}}let serializer$5=coreClient__namespace.createSerializer(Mappers,!1),getOperationSpec$3={path:"/subscriptions/{subscriptionId}/providers/Microsoft.LabServices/operationResults/{operationResultId}",httpMethod:"GET",responses:{200:{bodyMapper:OperationResult},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,operationResultId],headerParameters:[accept],serializer:serializer$5};class SchedulesImpl{constructor(e){this.client=e}listByLab(a,t,r){let e=this.listByLabPagingAll(a,t,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.listByLabPagingPage(a,t,r,e)}}}listByLabPagingPage(i,s,n,o){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==o?void 0:o.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._listByLab(i,s,n))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listByLabNext(i,s,a,n)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listByLabPagingAll(o,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listByLabPagingPage(o,l,p));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}_listByLab(e,a,t){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,options:t},listByLabOperationSpec$2)}get(e,a,t,r){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,scheduleName:t,options:r},getOperationSpec$2)}createOrUpdate(e,a,t,r,i){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,scheduleName:t,body:r,options:i},createOrUpdateOperationSpec$1)}update(e,a,t,r,i){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,scheduleName:t,body:r,options:i},updateOperationSpec$1)}beginDelete(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,scheduleName:r,options:i},deleteOperationSpec$1),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginDeleteAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,a,t,r)).pollUntilDone()})}_listByLabNext(e,a,t,r){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,nextLink:t,options:r},listByLabNextOperationSpec$2)}}let serializer$4=coreClient__namespace.createSerializer(Mappers,!1),listByLabOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/schedules",httpMethod:"GET",responses:{200:{bodyMapper:PagedSchedules},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,labName],headerParameters:[accept],serializer:serializer$4},getOperationSpec$2={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/schedules/{scheduleName}",httpMethod:"GET",responses:{200:{bodyMapper:Schedule},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,scheduleName],headerParameters:[accept],serializer:serializer$4},createOrUpdateOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/schedules/{scheduleName}",httpMethod:"PUT",responses:{200:{bodyMapper:Schedule},201:{bodyMapper:Schedule},default:{bodyMapper:ErrorResponse}},requestBody:body7,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,scheduleName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$4},updateOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/schedules/{scheduleName}",httpMethod:"PATCH",responses:{200:{bodyMapper:Schedule},default:{bodyMapper:ErrorResponse}},requestBody:body8,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,scheduleName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$4},deleteOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/schedules/{scheduleName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,scheduleName],headerParameters:[accept],serializer:serializer$4},listByLabNextOperationSpec$2={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:PagedSchedules},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,subscriptionId,resourceGroupName,nextLink,labName],headerParameters:[accept],serializer:serializer$4};class SkusImpl{constructor(e){this.client=e}list(a){let e=this.listPagingAll(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.listPagingPage(a,e)}}}listPagingPage(i,s){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==s?void 0:s.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._list(i))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listNext(a,i)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listPagingAll(o){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listPagingPage(o));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}_list(e){return this.client.sendOperationRequest({options:e},listOperationSpec)}_listNext(e,a){return this.client.sendOperationRequest({nextLink:e,options:a},listNextOperationSpec)}}let serializer$3=coreClient__namespace.createSerializer(Mappers,!1),listOperationSpec={path:"/subscriptions/{subscriptionId}/providers/Microsoft.LabServices/skus",httpMethod:"GET",responses:{200:{bodyMapper:PagedLabServicesSkus},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId],headerParameters:[accept],serializer:serializer$3},listNextOperationSpec={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:PagedLabServicesSkus},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,subscriptionId,nextLink],headerParameters:[accept],serializer:serializer$3};class UsagesImpl{constructor(e){this.client=e}listByLocation(a,t){let e=this.listByLocationPagingAll(a,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.listByLocationPagingPage(a,t,e)}}}listByLocationPagingPage(i,s,n){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==n?void 0:n.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._listByLocation(i,s))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listByLocationNext(i,a,s)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listByLocationPagingAll(o,l){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listByLocationPagingPage(o,l));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}_listByLocation(e,a){return this.client.sendOperationRequest({location:e,options:a},listByLocationOperationSpec)}_listByLocationNext(e,a,t){return this.client.sendOperationRequest({location:e,nextLink:a,options:t},listByLocationNextOperationSpec)}}let serializer$2=coreClient__namespace.createSerializer(Mappers,!1),listByLocationOperationSpec={path:"/subscriptions/{subscriptionId}/providers/Microsoft.LabServices/locations/{location}/usages",httpMethod:"GET",responses:{200:{bodyMapper:ListUsagesResult},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,location],headerParameters:[accept],serializer:serializer$2},listByLocationNextOperationSpec={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:ListUsagesResult},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,subscriptionId,nextLink,location],headerParameters:[accept],serializer:serializer$2};class UsersImpl{constructor(e){this.client=e}listByLab(a,t,r){let e=this.listByLabPagingAll(a,t,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.listByLabPagingPage(a,t,r,e)}}}listByLabPagingPage(i,s,n,o){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==o?void 0:o.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._listByLab(i,s,n))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listByLabNext(i,s,a,n)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listByLabPagingAll(o,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listByLabPagingPage(o,l,p));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}_listByLab(e,a,t){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,options:t},listByLabOperationSpec$1)}get(e,a,t,r){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,userName:t,options:r},getOperationSpec$1)}beginCreateOrUpdate(a,t,r,i,s){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,userName:r,body:i,options:s},createOrUpdateOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs,lroResourceLocationConfig:"original-uri"});return yield e.poll(),e})}beginCreateOrUpdateAndWait(e,a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginCreateOrUpdate(e,a,t,r,i)).pollUntilDone()})}beginUpdate(a,t,r,i,s){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,userName:r,body:i,options:s},updateOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginUpdateAndWait(e,a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginUpdate(e,a,t,r,i)).pollUntilDone()})}beginDelete(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,userName:r,options:i},deleteOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginDeleteAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginDelete(e,a,t,r)).pollUntilDone()})}beginInvite(a,t,r,i,s){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,userName:r,body:i,options:s},inviteOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginInviteAndWait(e,a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginInvite(e,a,t,r,i)).pollUntilDone()})}_listByLabNext(e,a,t,r){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,nextLink:t,options:r},listByLabNextOperationSpec$1)}}let serializer$1=coreClient__namespace.createSerializer(Mappers,!1),listByLabOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/users",httpMethod:"GET",responses:{200:{bodyMapper:PagedUsers},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,labName],headerParameters:[accept],serializer:serializer$1},getOperationSpec$1={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/users/{userName}",httpMethod:"GET",responses:{200:{bodyMapper:User},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,userName],headerParameters:[accept],serializer:serializer$1},createOrUpdateOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/users/{userName}",httpMethod:"PUT",responses:{200:{bodyMapper:User},201:{bodyMapper:User},202:{bodyMapper:User},204:{bodyMapper:User},default:{bodyMapper:ErrorResponse}},requestBody:body9,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,userName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$1},updateOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/users/{userName}",httpMethod:"PATCH",responses:{200:{bodyMapper:User},201:{bodyMapper:User},202:{bodyMapper:User},204:{bodyMapper:User},default:{bodyMapper:ErrorResponse}},requestBody:body10,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,userName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$1},deleteOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/users/{userName}",httpMethod:"DELETE",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,userName],headerParameters:[accept],serializer:serializer$1},inviteOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/users/{userName}/invite",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},requestBody:body11,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,userName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer$1},listByLabNextOperationSpec$1={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:PagedUsers},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,subscriptionId,resourceGroupName,nextLink,labName],headerParameters:[accept],serializer:serializer$1};class VirtualMachinesImpl{constructor(e){this.client=e}listByLab(a,t,r){let e=this.listByLabPagingAll(a,t,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.listByLabPagingPage(a,t,r,e)}}}listByLabPagingPage(i,s,n,o){return tslib.__asyncGenerator(this,arguments,function*(){let e,a=null==o?void 0:o.continuationToken;var t;for(a||(setContinuationToken(t=(e=yield tslib.__await(this._listByLab(i,s,n))).value||[],a=e.nextLink),yield yield tslib.__await(t));a;){e=yield tslib.__await(this._listByLabNext(i,s,a,n)),a=e.nextLink;var r=e.value||[];setContinuationToken(r,a),yield yield tslib.__await(r)}})}listByLabPagingAll(o,l,p){return tslib.__asyncGenerator(this,arguments,function*(){var e,a,t;try{for(var r,i=!0,s=tslib.__asyncValues(this.listByLabPagingPage(o,l,p));!(e=(r=yield tslib.__await(s.next())).done);i=!0){var n=r.value,i=!1;yield tslib.__await(yield*tslib.__asyncDelegator(tslib.__asyncValues(n)))}}catch(e){a={error:e}}finally{try{i||e||!(t=s.return)||(yield tslib.__await(t.call(s)))}finally{if(a)throw a.error}}})}_listByLab(e,a,t){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,options:t},listByLabOperationSpec)}get(e,a,t,r){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,virtualMachineName:t,options:r},getOperationSpec)}beginStart(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,virtualMachineName:r,options:i},startOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginStartAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginStart(e,a,t,r)).pollUntilDone()})}beginStop(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,virtualMachineName:r,options:i},stopOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginStopAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginStop(e,a,t,r)).pollUntilDone()})}beginReimage(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,virtualMachineName:r,options:i},reimageOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginReimageAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginReimage(e,a,t,r)).pollUntilDone()})}beginRedeploy(a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,virtualMachineName:r,options:i},redeployOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==i?void 0:i.resumeFrom,intervalInMs:null==i?void 0:i.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginRedeployAndWait(e,a,t,r){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginRedeploy(e,a,t,r)).pollUntilDone()})}beginResetPassword(a,t,r,i,s){return tslib.__awaiter(this,void 0,void 0,function*(){let n=(e,a)=>tslib.__awaiter(this,void 0,void 0,function*(){return this.client.sendOperationRequest(e,a)});var e=new LroImpl((i,s)=>tslib.__awaiter(this,void 0,void 0,function*(){let e,t=void 0,r=null==(e=i.options)?void 0:e.onResponse;var a=Object.assign(Object.assign({},i),{options:Object.assign(Object.assign({},i.options),{onResponse:(e,a)=>{t=e,null!=r&&r(e,a)}})});return{flatResponse:yield n(a,s),rawResponse:{statusCode:t.status,body:t.parsedBody,headers:t.headers.toJSON()}}}),{resourceGroupName:a,labName:t,virtualMachineName:r,body:i,options:s},resetPasswordOperationSpec),e=new coreLro.LroEngine(e,{resumeFrom:null==s?void 0:s.resumeFrom,intervalInMs:null==s?void 0:s.updateIntervalInMs,lroResourceLocationConfig:"location"});return yield e.poll(),e})}beginResetPasswordAndWait(e,a,t,r,i){return tslib.__awaiter(this,void 0,void 0,function*(){return(yield this.beginResetPassword(e,a,t,r,i)).pollUntilDone()})}_listByLabNext(e,a,t,r){return this.client.sendOperationRequest({resourceGroupName:e,labName:a,nextLink:t,options:r},listByLabNextOperationSpec)}}let serializer=coreClient__namespace.createSerializer(Mappers,!1),listByLabOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/virtualMachines",httpMethod:"GET",responses:{200:{bodyMapper:PagedVirtualMachines},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion,filter],urlParameters:[$host,subscriptionId,resourceGroupName,labName],headerParameters:[accept],serializer:serializer},getOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/virtualMachines/{virtualMachineName}",httpMethod:"GET",responses:{200:{bodyMapper:VirtualMachine},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,virtualMachineName],headerParameters:[accept],serializer:serializer},startOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/virtualMachines/{virtualMachineName}/start",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,virtualMachineName],headerParameters:[accept],serializer:serializer},stopOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/virtualMachines/{virtualMachineName}/stop",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,virtualMachineName],headerParameters:[accept],serializer:serializer},reimageOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/virtualMachines/{virtualMachineName}/reimage",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,virtualMachineName],headerParameters:[accept],serializer:serializer},redeployOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/virtualMachines/{virtualMachineName}/redeploy",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,virtualMachineName],headerParameters:[accept],serializer:serializer},resetPasswordOperationSpec={path:"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LabServices/labs/{labName}/virtualMachines/{virtualMachineName}/resetPassword",httpMethod:"POST",responses:{200:{},201:{},202:{},204:{},default:{bodyMapper:ErrorResponse}},requestBody:body12,queryParameters:[apiVersion],urlParameters:[$host,subscriptionId,resourceGroupName,labName,virtualMachineName],headerParameters:[accept,contentType],mediaType:"json",serializer:serializer},listByLabNextOperationSpec={path:"{nextLink}",httpMethod:"GET",responses:{200:{bodyMapper:PagedVirtualMachines},default:{bodyMapper:ErrorResponse}},urlParameters:[$host,subscriptionId,resourceGroupName,nextLink,labName],headerParameters:[accept],serializer:serializer};class LabServicesClient extends coreClient__namespace.ServiceClient{constructor(e,a,t){if(void 0===e)throw new Error("'credentials' cannot be null");if(void 0===a)throw new Error("'subscriptionId' cannot be null");var r,i="azsdk-js-arm-labservices/3.1.1",i=(t=t||{}).userAgentOptions&&t.userAgentOptions.userAgentPrefix?t.userAgentOptions.userAgentPrefix+" "+i:i,i=Object.assign(Object.assign(Object.assign({},{requestContentType:"application/json; charset=utf-8",credential:e}),t),{userAgentOptions:{userAgentPrefix:i},endpoint:null!=(i=null!=(i=t.endpoint)?i:t.baseUri)?i:"https://management.azure.com"});super(i);let s=!1;null!=t&&t.pipeline&&0<t.pipeline.getOrderedPolicies().length&&(r=t.pipeline.getOrderedPolicies(),s=r.some(e=>e.name===coreRestPipeline__namespace.bearerTokenAuthenticationPolicyName)),t&&t.pipeline&&0!=t.pipeline.getOrderedPolicies().length&&s||(this.pipeline.removePolicy({name:coreRestPipeline__namespace.bearerTokenAuthenticationPolicyName}),this.pipeline.addPolicy(coreRestPipeline__namespace.bearerTokenAuthenticationPolicy({credential:e,scopes:null!=(r=i.credentialScopes)?r:i.endpoint+"/.default",challengeCallbacks:{authorizeRequestOnChallenge:coreClient__namespace.authorizeRequestOnClaimChallenge}}))),this.subscriptionId=a,this.$host=t.$host||"https://management.azure.com",this.apiVersion=t.apiVersion||"2022-08-01",this.images=new ImagesImpl(this),this.labPlans=new LabPlansImpl(this),this.operations=new OperationsImpl(this),this.labs=new LabsImpl(this),this.operationResults=new OperationResultsImpl(this),this.schedules=new SchedulesImpl(this),this.skus=new SkusImpl(this),this.usages=new UsagesImpl(this),this.users=new UsersImpl(this),this.virtualMachines=new VirtualMachinesImpl(this),this.addCustomApiVersionPolicy(t.apiVersion)}addCustomApiVersionPolicy(i){i&&this.pipeline.addPolicy({name:"CustomApiVersionPolicy",sendRequest(t,r){return tslib.__awaiter(this,void 0,void 0,function*(){var e,a=t.url.split("?");return 1<a.length&&(e=a[1].split("&").map(e=>-1<e.indexOf("api-version")?"api-version="+i:e),t.url=a[0]+"?"+e.join("&")),r(t)})}})}}exports.LabServicesClient=LabServicesClient,exports.getContinuationToken=getContinuationToken;
|